快捷方式

torch.diagonal_scatter

torch.diagonal_scatter(input, src, offset=0, dim1=0, dim2=1) Tensor

src 张量的值嵌入到 input 中,沿 input 的对角元素,相对于 dim1dim2

此函数返回一个具有新存储的张量;它不返回视图。

参数 offset 控制要考虑的对角线

  • 如果 offset = 0,则它是主对角线。

  • 如果 offset > 0,则它位于主对角线上方。

  • 如果 offset < 0,则它位于主对角线下方。

参数
  • input (Tensor) – 输入张量。必须至少是二维的。

  • src (Tensor) – 要嵌入到 input 中的张量。

  • offset (int, 可选) – 要考虑的对角线。默认值:0(主对角线)。

  • dim1 (int, 可选) – 要获取对角线的第一个维度。默认值:0。

  • dim2 (int, 可选) – 要获取对角线的第二个维度。默认值:1。

注意

src 必须具有适当的大小才能嵌入到 input 中。具体来说,它应该与 torch.diagonal(input, offset, dim1, dim2) 的形状相同

示例

>>> a = torch.zeros(3, 3)
>>> a
tensor([[0., 0., 0.],
        [0., 0., 0.],
        [0., 0., 0.]])

>>> torch.diagonal_scatter(a, torch.ones(3), 0)
tensor([[1., 0., 0.],
        [0., 1., 0.],
        [0., 0., 1.]])

>>> torch.diagonal_scatter(a, torch.ones(2), 1)
tensor([[0., 1., 0.],
        [0., 0., 1.],
        [0., 0., 0.]])

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

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

查看教程

资源

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

查看资源