【pytorch07】broadcast广播

news2024/10/6 12:22:09

Broadcasting

  • expand(与上一节说的expand功能相同,可以扩展维度,但是这里是自动的,扩展的时候不需要拷贝数据)
  • without coping data

broadcast实施

  1. 从最小的维度开始匹配,如果前面没有维度的话,插入一个新的维度
  2. 插入的维度的size为1,我们把它扩张成与要计算的tensor相同的size

例如:feature maps:[4,32,14,14]
假设要对这个tensor增加一个偏置值,因此我们的偏置是添加在每一个channel上面的,因此我们需要的偏置的数量一共是32个,为了让bias符合broadcast的条件,插入两个1的维度
bias:[32,1,1] =>[1,32,1,1]=>[4,32,14,14]
size一致,可以进行对应位置元素相加

在这里插入图片描述
broadcast存在的意义
实例1
学校成绩单的统计:[class,students,socres]=[4,32,8]
现在我们发现学生的成绩太低了或者今年的考试太难了,校长决定给每个学生都加5分,意味着[4,32,8]这个tensor必须和一个相同shape的tensor相加,5分很明显是一个标量或者是一个维度为1的向量[4,32,8] + [5.0]

要理解数据的内容和数据的shape之间的区别

我们希望能够按照规则来完成相加操作,但是又不希望这个步骤由我们自己做

如果要自己做的话
[5.0]的dimension为1 [1].unsqueeze(0).unsqueeze(0) 变成[c,s,score]=[1,1,1]再使用.expand_as(A)会把[1,1,1]变成[4,32,8]即跟A的shape一样

我们想要[4,32,8]和[1]这样的操作是运行的,但是又要确保数学上单的规则即相加的shape必须一致也就是[4,32,8]必须和[4,32,8]相叠加,所以可以用broadcast,不需要写onsqueeze和expand

什么情况可以使用广播?
首先需要有两个tensor一个A和一个B,小维度指定大维度随意,例如上面加5分这个例子,最后一维这个属性是我们指定的规则来做,即每一门课都加0.5分,如果[5.0]的前面没有维度就插入1维,再来比较,如果shape上面的维度是1意味着1适合于这条轴上所有的案例因此把它扩张成为相同的地方,已经是1的地方也把它扩张成为相同的,其他的地方就是不能广播

比如a的tensor[4,32,8],4个班级每个班级32个人8门课成绩,我们希望每门课成绩都加5分给b的tensor的shape是[1],如果1之前没有任何维度,就意味着维度都适合即对于每个学生、每个班级都适合,此时成绩的维度也是1,即对八门课也都适合,所以会广播成[4,32,8]

或者不希望对所有的课都加5分,比如发现英语考完了,给b的tensor为[8] [0,0,5,0,0,0,0,0]英语考完了加5分其他的都不加分, 没有维度的都扩张成1,但是加分的维度已经是8了即意味着不是所有的维度都要加5分,而是哪一门课程加几分,所以最终的tensor是[4,32,8]

不符合规则的情况
A还是[4,32,8],B为[4]=[0,0,0,5]这个4怎么理解呢?我们有8门课,但是你只给了4门课的信息,不知道该怎么加,所以没办法完成自动扩展

具体案例
在这里插入图片描述
在这里插入图片描述
不管对于哪一个图片或者哪一个通道来说都叠加一个14×14的长宽

在这里插入图片描述
只给了两张照片的参数,剩下两张照片的参数没有给,不知道怎么加

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1859519.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

BFS:解决拓扑排序问题

文章目录 什么是拓扑排序?关于拓扑排序的题1.课程表2.课程表Ⅱ3.火星词典 总结 什么是拓扑排序? 要知道什么拓扑排序我们首先要知道什么是有向无环图,有向无环图我们看名字其实就很容易理解,有向就是有方向,无环就是没…

类的默认成员函数——构造与析构函数

如果一个类中什么成员都没有,简称为空类。但是空类中真的什么都没有吗? 当然不是,任何类在什么都不写的情况下,编译器会自动生成6个默认成员函数 1.构造函数 1.1概念引入 对于以下这个Date类,可以通过Init公有方法给…

北邮《计算机网络》传输层笔记

内容一览 缩写复习单词复习传输层前言传输协议的要点拥塞控制UDPTCP VS UDPTCP 缩写复习 AIMD XCP ECN WFQ max-min-fair ARQ PAWS TSAP NSAP TCP UDP RTT SCTP SACK NAK RST MSS 单词复习 inverse multiplexing(SCTP) convergence crashed machine protocol scenarios asym…

IIC学习笔记

目录 #I2C涉及相关知识 #I2C相关介绍 欢迎指正,希望对你,有所帮助!!! 个人学习笔记,参考文献,链接最后!!! #I2C涉及相关知识 SDA串行数据线: Ser…

GB28181视频汇聚平台EasyCVR接入Ehome设备视频播放出现异常是什么原因?

多协议接入视频汇聚平台EasyCVR视频监控系统采用了开放式的架构,系统可兼容多协议接入,包括市场标准协议:国标GB/T 28181协议、GA/T 1400协议、JT808、RTMP、RTSP/Onvif协议;以及主流厂家私有协议及SDK,如:…

RK3568平台(音频篇)耳机插拔检测

一.硬件原理图 耳机输出硬件原理图: 耳机实物图: 耳机插入硬件原理: 耳机插入后HP_DET_L会连接耳机的GND,从而实现HP_DET_L叫从高到低的状态。 耳机插入软件原理: 软件需要在驱动里面定时的读取gpio的状态&#xf…

2024期权交易佣金手续费最低是多少?期权交易有哪些成本?

显性成本 期权交易的显性成本包含期权交易的佣金和交易所费用,分别支付给券商和交易所,统一由券商代收。 佣金 期权佣金是期权交易时支付给券商的费用,佣金通常以交易金额的一定比例计算,可以是固定费用,也可以是滑…

尽管与 ChatGPT 达成了合作,但据报道苹果仍在与 Meta 进行人工智能谈判

苹果最近宣布计划将人工智能纳入 iOS 18 以及新的 iPhone 16 和 iPhone 16 Pro 机型中,并开始与潜在的生成式人工智能合作伙伴 Meta 进行讨论。 据《华尔街日报》报道,苹果已与 Meta 就将其跨平台使用的生成式人工智能模型整合到 Apple Intelligence 中…

avi格式视频提示无法播放错误,怎么解决?

AVI视频属于一种无损质量的视频格式,一般来说是兼容Windows系统播放的。播不了可能是由以下原因导致的: 1.文件损坏:可能是原文件在转码压缩的过程中操作不当,导致数据丢失、文件损坏。 2.播放器格式不支持:可能系统的…

计算机图形学入门16:阴影映射

1.前言 前面几篇关于光栅化的文章中介绍了如何计算物体表面的光照,但是着色并不会进行阴影的计算,阴影需要单独进行处理,目前最常用的阴影计算技术之一就是Shadow Mapping技术,也就是俗称的阴影映射技术。 2.阴影映射 Shadow Map…

使用Tauri+vite+koa2+mysql开发了一款待办效率应用

🎉使用Taurivitekoa2mysql开发了一款待办效率应用 📝项目概述 这是一个基于taurivite的应用,它采用了一些最新的前端技术,包括 Tauri、Vue3、Vite5、koa2 和 mysql。它提供了丰富的效率管理工具。 应用地址:https:/…

excel字符串列的文本合并

excel表有两列,第一列是“姓名”,第二列是“诊断”,有高血压、糖尿病等。我想出一个统计表,统计“姓名”,把某一个姓名的诊断不重复的用、拼接起来,比如“张三”的诊断为“点高血压”、糖尿病。我们可以用T…

轻量级SEO分析工具网站源码去授权

轻量级SEO分析工具网站全新去授权发布,这款工具将助您轻松生成直观、简洁、易于理解的SEO报告,为您的网页排名和表现提供有力支持。 测试环境: Apache PHP 8.0 MySQL 5.7 更新日志 v12.0 – 2024年2月20日 新增功能: 正常运行…

LabVIEW在核磁共振实验室的应用

​核磁共振(NMR)实验室在进行复杂的核磁共振实验时,需要一个高效、灵活且易于操作的实验控制和数据采集系统。传统的NMR实验系统往往使用专门的硬件和软件,存在系统封闭、扩展性差、维护成本高等问题。为了解决这些问题&#xff0…

【JavaEE】Spring Boot 统一功能处理

一.拦截器使用. 1.什么是拦截器? 拦截器是Spring框架提供的核心功能之⼀, 主要用来拦截用户的请求, 在指定方法前后, 根据业务需要执行预先设定的代码 也就是说, 允许开发人员提前预定义一些逻辑, 在用户的请求响应前后执行. 也可以在用户请求前阻止其执行. 在拦截器当中&am…

Flutter 像素编辑器#05 | 缩放与平移

theme: cyanosis 本系列,将通过 Flutter 实现一个全平台的像素编辑器应用。源码见开源项目 【pix_editor】。在前三篇中,我们已经完成了一个简易的图像编辑器,并且简单引入了图层的概念,支持切换图层显示不同的像素画面。 《Flutt…

Web服务器与Apache(LAMP架构+搭建论坛)

一、Web基础 1.HTML概述 HTML&#xff08;Hypertext Markup Language&#xff09;是一种标记语音,用于创建和组织Web页面的结构和内容&#xff0c;HTML是构建Web页面的基础&#xff0c;定义了页面的结构和内容&#xff0c;通过标记和元素来实现 2.HTML文件结构 <html>…

抖音电商618国货数据:洗护、服饰等受欢迎,活力28环比增长40%

发布 | 大力财经 6月21日&#xff0c;抖音电商发布“抖音商城618好物节”消费数据报告&#xff08;下称“报告”&#xff09;&#xff0c;披露618期间平台全域经营情况及大众消费趋势&#xff0c;其中国货表现亮眼。 本次大促恰逢传统节日端午节&#xff0c;报告显示&#xf…

实验08 软件设计模式及应用

目录 实验目的实验内容一、能播放各种声音的软件产品Sound.javaDog.javaViolin.javaSimulator.javaApplication.java运行结果 二、简单工厂模式--女娲造人。Human.javaWhiteHuman.javaYellowHuman.javaBlackHuman.javaHumanFactory.javaNvWa.java运行结果 三、工厂方法模式--女…

React 扩展

文章目录 PureComponent1. 使用 React.Component&#xff0c;不会进行浅比较2. 使用 shouldComponentUpdate 生命周期钩子&#xff0c;手动比较3. 使用 React.PureComponent&#xff0c;自动进行浅比较 Render Props1. 使用 Children props&#xff08;通过组件标签体传入结构&…