声明
此篇内容,只作学习用途,部分内容涉及引用(会标注引用来源)
++++++++++
++++++++++
++++++++++
广播机制
Pytorch广播机制是处理两个形状不相同向量的一种手段
pytorch
中的广播机制和numpy
中的广播机制一样, 因为都是数组的广播机制。
广播机制的使用前提
:
按从右往左
顺序看两个张量的每一个维度,x和y每个对应着的两个维度都需要能够匹配上。什么情况下算是匹配上了?满足下面的条件就可以:
1. 这两个维度的大小相等
2. 某个维度 一个张量有,一个张量没有
3. 某个维度 一个张量有,一个张量也有但大小是1
具体:
x = torch.empty((4,3,2,1))
y = torch.empty((3,1,1))
4 3 2 1
+ 3 1 1
---------
4 3 2 1 :可以广播、
x = torch.empty((4,3,3,1))
y = torch.empty((3,2,1))
4 3 3 1
+ 3 2 1
---------
4 3 ?1 :不可以广播
广播机制的细节:
从空间上去理解: