位置: IT常识 - 正文

Pytorch中的广播机制(Broadcast)(pytorch广播相乘)

编辑:rootadmin
Pytorch中的广播机制(Broadcast) 1. Pytorch中的广播机制

推荐整理分享Pytorch中的广播机制(Broadcast)(pytorch广播相乘),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:pytorch broadcast,pytorch audio,python 广播函数,pytorch 广播,pytorch broadcasting,python的广播运算,python的广播运算,pytorch 广播,内容如对您有帮助,希望把文章链接给更多的朋友!

如果一个Pytorch运算支持广播的话,那么就意味着传给这个运算的参数会被自动扩张成相同的size,在不复制数据的情况下就能进行运算,整个过程可以做到避免无用的复制,达到更高效的运算。 广播机制实际上是在运算过程中,去处理两个形状不同向量的一种手段。 pytorch中的广播机制和numpy中的广播机制一样, 因为都是数组的广播机制。

2. 广播机制的理解

以数组A和数组B的相加为例, 其余数学运算同理 核心:如果相加的两个数组的shape不同, 就会触发广播机制:       1)程序会自动执行操作使得A.shape==B.shape;       2)对应位置进行相加运算,结果的shape是:A.shape和B.shape对应位置的最大值,比如:A.shape=(1,9,4),B.shape=(15,1,4),那么A+B的shape是(15,9,4)

3. 两个张量进行广播机制的条件

3.1 两个张量都至少有一个维度

#像下面这种情况下就不行,因为x不满足这个条件。x=torch.empty((0,))y=torch.empty(2,2)Pytorch中的广播机制(Broadcast)(pytorch广播相乘)

3.2 按从右往左顺序看两个张量的每一个维度,x和y每个对应着的两个维度都需要能够匹配上。什么情况下算是匹配上了?满足下面的条件就可以:       a.这两个维度的大小相等       b. 某个维度 一个张量有,一个张量没有       c.某个维度 一个张量有,一个张量也有但大小是1 如下举例:

x=torch.empty(5,3,4,1)y=torch.empty( 3,1,1)

如上面代码中,首先将两个张量维度向右靠齐,从右往左看,两个张量第四维大小相等,都为1,满足上面条件a;第三个维度大小不相等,但第二个张量第三维大小为1,满足上面条件b;第二个维度大小相等都为3,满足上面条件a;第一个维度第一个张量有,第二个张量没有,满足上面条件b,因此两个张量每个维度都符合上面广播条件,因此可以进行广播。 两个张量维度从右往左看,如果出现两个张量在某个维度位置上面,维度大小不相等,且两个维度大小没有一个是1,那么这两个张量一定不能进行广播。

4 当两个张量满足可广播条件后,具体怎么进行广播x=torch.empty(5,3,4,1)y=torch.empty( 3,1,1)

如上面代码所示:      a. 首先第一步,将上面条件b的类型变成条件c的类型,也即是把第二个张量在缺失维度的位置上新增一个维度,维度大小为1,新增的维度如下面所示。

统一前:x=torch.empty(5,3,4,1)y=torch.empty( 3,1,1)统一后:x=torch.empty(5,3,4,1)y=torch.empty(1,3,1,1)

     b. 第二步,x、y对应维度不等的位置,把size为1的维度会被广播得和对应维度一样大,比如y中0维的1会变成5,y中2维的1会变成4,最后两个张量的维度大小变成一样,然后再进行张量运算,转变的维度如下所示。

统一前:x=torch.empty(5,3,4,1)y=torch.empty(1,3,1,1)统一后:x=torch.empty(5,3,4,1)y=torch.empty(5,3,4,1)5. 从空间上理解广播机制

5.1 一维张量进行广播,b被自动广播得和a一样的维度大小,完成了张量相乘运算,如下图所示。

a = torch.tensor([1,2,3])b = torch.tensor([2])c = a*ba,a.shape,b,b.shape,c,c.shape输出结果如下:(tensor([1, 2, 3]), torch.Size([3]), tensor([2]), torch.Size([1]), tensor([2, 4, 6]), torch.Size([3]))

5.1 二维张量进行广播,b被自动广播得和a一样的维度大小,完成了张量相加运算,如下图所示。

a = torch.tensor([[0],[10],[20],[30]])b = torch.tensor([1,2,3])c = a+ba,a.shape,b,b.shape,c,c.shape输出结果如下:(tensor([[ 0], [10], [20], [30]]), torch.Size([4, 1]), tensor([1, 2, 3]), torch.Size([3]), tensor([[ 1, 2, 3], [11, 12, 13], [21, 22, 23], [31, 32, 33]]), torch.Size([4, 3]))

上面二维张量和一维张量相加运算进行广播过程为:a的形状是(4,1),b的形状是(3),如果a和b要匹配上,第一步给b新添一个维度,我们有:a的形状是(4,1),b的形状是(1,3);第二步二者各自把为1的维度进行广播,就如上图中那样进行广播,最后运算完成。

本文链接地址:https://www.jiuchutong.com/zhishi/300164.html 转载请保留说明!

上一篇:Vue懒加载(vue懒加载机构树刷新)

下一篇:https是如何保证安全的

  • QQ黄钻官方团队送我礼物怎么屏蔽(qq黄钻官方团队在哪)

    QQ黄钻官方团队送我礼物怎么屏蔽(qq黄钻官方团队在哪)

  • 三星s10与s10+的区别(三星s10和s10+的区别)

    三星s10与s10+的区别(三星s10和s10+的区别)

  • 没有路由器只有光猫可以上网吗(没有路由器只有光猫可以改密码吗)

    没有路由器只有光猫可以上网吗(没有路由器只有光猫可以改密码吗)

  • 小电会员怎么关闭(小电会员卡怎么取消)

    小电会员怎么关闭(小电会员卡怎么取消)

  • 相机开不了机(三星蓝调nv3相机开不了机)

    相机开不了机(三星蓝调nv3相机开不了机)

  • breeno能删除吗(怎么清除breeno数据)

    breeno能删除吗(怎么清除breeno数据)

  • iphone录屏发送出去会模糊(iphone录屏发给别人很模糊)

    iphone录屏发送出去会模糊(iphone录屏发给别人很模糊)

  • 抖音支付失败是什么意思(抖音支付异常是什么原因)

    抖音支付失败是什么意思(抖音支付异常是什么原因)

  • word文字填充色怎么设置(word文档填充字体颜色快捷键)

    word文字填充色怎么设置(word文档填充字体颜色快捷键)

  • md511ch/a是ipad几(md511cha是ipad几)

    md511ch/a是ipad几(md511cha是ipad几)

  • mate20pro有耳机孔吗(mate20pro自带耳机)

    mate20pro有耳机孔吗(mate20pro自带耳机)

  • 苹果手机流量打不开是怎么回事(苹果手机流量打开显示E)

    苹果手机流量打不开是怎么回事(苹果手机流量打开显示E)

  • word自动生成数字序号(word怎么12345自动生成)

    word自动生成数字序号(word怎么12345自动生成)

  • 手机版qq怎么打开邮箱(手机版qq怎么打开消息管理)

    手机版qq怎么打开邮箱(手机版qq怎么打开消息管理)

  • oppoa73指示灯在哪(oppoa72提示灯)

    oppoa73指示灯在哪(oppoa72提示灯)

  • 小米2s能用移动4g吗(小米2s能用移动卡吗)

    小米2s能用移动4g吗(小米2s能用移动卡吗)

  • 个人可以在亚马逊开店(个人可以在亚马逊卖苹果手机吗)

    个人可以在亚马逊开店(个人可以在亚马逊卖苹果手机吗)

  • iphone5s有没有录屏功能(苹果5s有没有屏幕录制功能)

    iphone5s有没有录屏功能(苹果5s有没有屏幕录制功能)

  • 利用网络交换文字信息的非交互式服务称为(利用网络交换文字信息的非交互服务称为)

    利用网络交换文字信息的非交互式服务称为(利用网络交换文字信息的非交互服务称为)

  • 定位权限在哪里打开(定位权限在哪里设置)

    定位权限在哪里打开(定位权限在哪里设置)

  • Javaweb学生信息管理系统(Mysql+JSP+MVC+CSS)(javaweb学生信息管理系统idea)

    Javaweb学生信息管理系统(Mysql+JSP+MVC+CSS)(javaweb学生信息管理系统idea)

  • Video.js 使用教程 - 手把手教你基于 Vue 搭建 HTML 5 视频播放器(video.js能播放什么格式)

    Video.js 使用教程 - 手把手教你基于 Vue 搭建 HTML 5 视频播放器(video.js能播放什么格式)

  • dedecms织梦二次开发独立点赞功能(织梦可以放两个模板吗)

    dedecms织梦二次开发独立点赞功能(织梦可以放两个模板吗)

  • 营业税加收滞纳金的规定
  • 营销策划代理合同
  • 农产品是零税率还是免税税率
  • 股息红利增值税和企业所得税
  • 小规模纳税人增值税起征点
  • 土地转让缴纳增值税政策
  • 收到捐赠设备
  • 银行承兑汇票到期日后多久可以承兑
  • 银行承兑汇票利息怎么算
  • 两笔不同业务能做一个凭证吗
  • 出口货物免抵退税额城市维护建设税
  • 企业以前年度的关联交易与预约定价安排
  • 员工社保异地缴纳
  • 增值税税负率税率怎么算
  • 没有三方协议怎么缴纳社保
  • 提供物业管理服务的纳税人如何认定
  • 自然人借款给企业的涉税风险
  • 公司邀请外国人来华邀请函模板
  • 固定资产后续支出是指固定资产在使用过程中发生的
  • 电脑无损音乐播放软件哪个最好
  • 抵扣联必须当月认证吗
  • 衍生金融资产属于投资性资产吗
  • 公司车过户给个人流程
  • php处理的图片格式是什么
  • PHP:mb_encode_mimeheader()的用法_mbstring函数
  • php字符串数组函数
  • 共管账户的定义
  • 内置管理员无法打开此应用
  • php异常处理和错误处理
  • php数据类型分为哪几类
  • 售后回购方式销售商品如何确认收入
  • ios.开发
  • 医院装修设计费用取费标准表
  • 非上市公司股票期权个人所得税
  • 跨年费用入账
  • php短网址生成算法
  • 随手写-精美笔记本-日记本安卓下载
  • 微信小程序用电脑怎么打开
  • python编程100例
  • win11设置项改中文
  • 10年未被强制修复!黑客利用Windows旧漏洞攻击通信公司并分发恶意文件
  • 税收返还会计处理办法
  • 长期股权投资哪些用成本法
  • 规模以上企业纳税要求
  • 收入纳税退税
  • 客户多付款不要了多这部分是哪种收入?
  • 增值税专票开户行账号错了,可以抵扣吗
  • 收到房租的租金怎么做账
  • 去年一个月工资未计提直接计入成本,现在如何调整
  • 坏账损失的定义
  • 坏账损失的会计核算方法
  • 应收账款未收到是否要交税
  • 电子商务交易类应用发展现状
  • 员工报销固定资产怎么算
  • 委托出口由谁办理退税
  • 房租增值税专票税点
  • 公司装修费用如何计算
  • 待发货订单是什么意思
  • 长期股权投资减值准备是什么意思
  • mysql 高效分页
  • win8.1打开软件显示Error远程配置获取失败请重新启动
  • 苹果电脑bim
  • linux系统了解
  • qclean.exe - qclean是什么进程 有什么用
  • windows xp快捷键设置在哪
  • WIN10系统安装EXCEL打开会报警
  • grep命令用法
  • win8怎么设置自启动
  • win7系统通过wmic命令
  • js explode
  • 手机屏幕尺寸测量工具
  • perl cgi
  • shader入门
  • python如何开发
  • node.js利用cas实现单点登录
  • 修改jquery版本号不生效
  • python编程简单案例
  • 广东每年交多少税给国家
  • 新疆地方税务局
  • 审计验资费计入什么科目
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设