torch.diagonal_scatter#
- torch.diagonal_scatter(input, src, offset=0, dim1=0, dim2=1) Tensor#
將
src張量的值嵌入到input張量中,沿著input張量的對角線元素,相對於dim1和dim2。此函式返回一個具有新儲存的張量;它不返回檢視。
引數
offset控制要考慮的對角線如果
offset= 0,則為主對角線。如果
offset> 0,則位於主對角線之上。如果
offset< 0,則位於主對角線之下。
- 引數
注意
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.]])