快捷方式

torch.addr

torch.addr(input, vec1, vec2, *, beta=1, alpha=1, out=None) Tensor

执行向量 vec1vec2 的外积,并将其添加到矩阵 input 中。

可选值 betaalpha 分别是 vec1vec2 之间的外积以及添加的矩阵 input 的缩放因子。

out=β input+α (vec1vec2)\text{out} = \beta\ \text{input} + \alpha\ (\text{vec1} \otimes \text{vec2})

如果 beta 为 0,则将忽略 input,并且不会传播其中的 naninf

如果 vec1 是大小为 n 的向量,而 vec2 是大小为 m 的向量,则 input 必须与大小为 (n×m)(n \times m) 的矩阵广播兼容,并且 out 将是大小为 (n×m)(n \times m) 的矩阵。

参数
  • input (张量) – 要添加的矩阵

  • vec1 (张量) – 外积的第一个向量

  • vec2 (张量) – 外积的第二个向量

关键字参数
  • beta (数字, 可选) – input 的乘数 (β\beta)

  • alpha (数字, 可选) – vec1vec2\text{vec1} \otimes \text{vec2} 的乘数 (α\alpha)

  • out (张量, 可选) – 输出张量。

示例

>>> vec1 = torch.arange(1., 4.)
>>> vec2 = torch.arange(1., 3.)
>>> M = torch.zeros(3, 2)
>>> torch.addr(M, vec1, vec2)
tensor([[ 1.,  2.],
        [ 2.,  4.],
        [ 3.,  6.]])

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得问题的解答

查看资源