当前位置: 首页 > wzjs >正文

wordpress产品列表插件平台seo

wordpress产品列表插件,平台seo,自己做视频网站能赚钱吗,中博建设集团有限公司网站【1】引言 前序文章中,已经学习了pytorch基本运算中的生成随机张量、生成多维张量,以及张量的变形、加减和广播运算。 今天的文章在之前学习的基础上,进一步探索。 前序文章链接为: 深度学习|pytorch基本运算-CSDN博客 【2】…

【1】引言

前序文章中,已经学习了pytorch基本运算中的生成随机张量、生成多维张量,以及张量的变形、加减和广播运算。

今天的文章在之前学习的基础上,进一步探索。

前序文章链接为:

深度学习|pytorch基本运算-CSDN博客

【2】广播失效

前序文章在最后给出了广播运算的基础代码:

# 导入包
import torch
# 生成多为维张量
y=torch.tensor([1,2,3])
z=torch.tensor([[3],[2],[1]
])
#打印
print('y=',y)
print('z=',z)
# 
a=y+z
print('a=',a)

在这个项目中,行向量y会沿着行广播(复制),列向量z会沿着列广播(复制),实际运行效果和下述代码一样:

# 导入包
import torch
# 生成多为维张量
y=torch.tensor([[1,2,3],[1,2,3],[1,2,3]])
z=torch.tensor([[3,3,3],[2,2,2],[1,1,1]
])
#打印
print('y=',y)
print('z=',z)
#
a=y+z
print('a=',a)

实际运行后的效果为:

图1  广播运行效果 

但实际上,如果稍微修改代码,就会有广播失效的情况:

# 导入包
import torch
# 生成多为维张量
y=torch.tensor([[1,2,3,1],[1,2,3,1],[1,2,3,1]])
z=torch.tensor([[3,3,3],[2,2,2],[1,1,1]
])
#打印
print('y=',y)
print('z=',z)
#
a=y+z
print('a=',a)

上述代码运行后,会直接报错:

    a=y+z
      ~^~
RuntimeError: The size of tensor a (4) must match the size of tensor b (3) at non-singleton dimension 1

这里报错的意思是:在非单例维度1上,第一个矩阵a有4个数,第二个矩阵b有3个数,无法匹配。

在pytorch中,对于维度的规定是:

在竖直方向是第0维度, 代码中的y和z都有3行,匹配;

在水平方向是第1维度, 代码中的y和z分别有4列和3列,不匹配,无法广播。

需要注意到报错信息中,a(4)和b(3)是python语言报错的惯用写法,实际对应的就是y(4)和z(3)。

真实的不匹配来源是:矩阵y有4列数据,矩阵z有3列数据,矩阵z既不可能每一列都复制一遍来广播,也不可能任选一列复制来广播,所以无法广播;但对于单独的一列,则没有这样的烦恼,直接每一列都复制即可。比如下述代码:

# 导入包
import torch
# 生成多为维张量
y=torch.tensor([[1,2,3,1],[1,2,3,1],[1,2,3,1]])
z=torch.tensor([[3],[2],[1]
])
#打印
print('y=',y)
print('z=',z)
#
a=y+z
print('a=',a)

运行后的效果为:

 图2  单列多行广播运行效果 

 上述情况是第1维度即列的原因造成的无法广播,如果修改第0维度即行来测试,有如下代码:

# 导入包
import torch
# 生成多为维张量
y=torch.tensor([[1,2,3,1],[1,2,3,1],[1,2,3,1]])
z=torch.tensor([[3],[2],[1],[1]
])
#打印
print('y=',y)
print('z=',z)
#
a=y+z
print('a=',a)

代码运行后的报错为:

    a=y+z
      ~^~
RuntimeError: The size of tensor a (3) must match the size of tensor b (4) at non-singleton dimension 0

和前述分析的原因一样:3行和4行不对应,无法广播。

矩阵y有3行数据,矩阵z有4行数据,矩阵y既不可能每一行都复制一遍来广播,也不可能任选一行复制来广播,所以无法广播。

【3】总结

探索了pytorch的基本运算中广播失效的情况及其原因。 

http://www.dtcms.com/wzjs/404721.html

相关文章:

  • 花生壳怎么建设网站各大网站域名大全
  • 网站做打火机如何百度推广获客成本大概多少
  • 网站域名注销电话网站流量统计分析的维度包括
  • 城口集团网站建设百度关键词排名代做
  • 一流的上海网站建设公上海空气中检测出病毒
  • 基金公司网站建设免费网站建设制作
  • 广州科 外贸网站建设怎么做一个属于自己的网站
  • 做网站建设科技公司网络服务包括哪些内容
  • 哈尔滨网站制作招聘网络营销推广方式都有哪些
  • 四川建设厅电子证书官方网站百度推广账户登陆
  • java做网站有多少哪里有正规的电商培训班
  • 定制家具网站平台优化大师绿色版
  • 南通网站建设方案服务如何做关键词优化
  • 当当网网站建设策划书seo实战密码第三版
  • mvc5网站开发之美电子版免费友情链接交换平台
  • 西安+美院+网站建设宁波seo在线优化公司
  • 永康营销型网站建设网络营销技巧培训
  • 百度地图开发网站如何搭建一个网站
  • 为什么做图书管理网站百度推广关键词排名规则
  • 齐全的赣州网站建设推广团队
  • 大学生互助联盟网站建设需求分析说明表百度推广助手手机版
  • 安徽网站建设大全小程序开发公司
  • 网站上打广告软文文案
  • 专业做视频的网站怎么创建一个自己的网站
  • 专业手机建站公司windows优化大师和鲁大师
  • 网站建设公司的发展前景seo排名公司
  • 福鼎网站建设培训设计师经常用的网站
  • 佛山网站优化流程搜索引擎网站排名优化方案
  • 南城仿做网站网站生成app
  • 免费建站网站号经典seo伪原创