torch.Tensor.fill_diagonal_¶
- Tensor.fill_diagonal_(fill_value, wrap=False) Tensor ¶
填充至少具有 2 维的张量主对角线。当 dims>2 时,输入的所有维度长度必须相等。此函数会原地修改输入张量,并返回输入张量。
- 参数:
fill_value(标量)- 填充值
wrap(布尔值)- 对于高矩阵,对角线在 N 列后“环绕”。
示例:
>>> a = torch.zeros(3, 3) >>> a.fill_diagonal_(5) tensor([[5., 0., 0.], [0., 5., 0.], [0., 0., 5.]]) >>> b = torch.zeros(7, 3) >>> b.fill_diagonal_(5) tensor([[5., 0., 0.], [0., 5., 0.], [0., 0., 5.], [0., 0., 0.], [0., 0., 0.], [0., 0., 0.], [0., 0., 0.]]) >>> c = torch.zeros(7, 3) >>> c.fill_diagonal_(5, wrap=True) tensor([[5., 0., 0.], [0., 5., 0.], [0., 0., 5.], [0., 0., 0.], [5., 0., 0.], [0., 5., 0.], [0., 0., 5.]])