- 自动补全功能
-
具体地假如有一个m×n的矩阵(或者张量),让它加、减、乘、除一个非m×n的矩阵,那么会自动补全矩阵让两个矩阵可以进行运算。
-
例如
a = torch.arange(3).reshape((3, 1))
b = torch.arange(2).reshape((1, 2))
打印a b得到(tensor([0], [1], [2])), tensor([[0, 1]])
a+b
(tensor([0, 1], [1, 2], [2, 3]))
-
- 上面将3×1的矩阵变为3×2的矩阵,把1×2的矩阵变为3×2的矩阵,那么就可以进行相加。我们把这种现象称为广播机制(broadcasting mechanism)。
- 广播主要发生在两种情况,一种是两个数组的维数不相等,但是它们的后缘维度的轴长相符,另外一种是有一方的长度为1。
- 数组维数不同,后缘维度的轴长相符 4×3 加 1×3(二维加一维)3×4×2 与 4×2 = 3×4×2(三维)
- 数组维数相同,其中一个轴为1。4×3 加4×1 = 4×3



