torch.triu()
torch.triu(input, diagonal=0, out=None) → Tensor
返回矩阵上三角部分,其余部分定义为0。
Parameters:
input (Tensor) – the input tensor
diagonal (int, optional) – the diagonal to consider
out (Tensor, optional) – the output tensor
如果diagonal为空,输入矩阵保留主对角线与主对角线以上的元素;
如果diagonal为正数n,输入矩阵保留主对角线与主对角线以上除去n行的元素;
如果diagonal为负数-n,输入矩阵保留主对角线与主对角线以上与主对角线下方h行对角线的元素;
>>> a = torch.randn(3, 3)
>>> a
tensor([[ 0.2309, 0.5207, 2.0049],
[ 0.2072, -1.0680, 0.6602],
[ 0.3480, -0.5211, -0.4573]])
>>> torch.triu(a)
tensor([[ 0.2309, 0.5207, 2.0049],
[ 0.0000, -1.0680, 0.6602],
[ 0.0000, 0.0000, -0.4573]])
>>> torch.triu(a, diagonal=1)
tensor([[ 0.0000, 0.5207, 2.0049],
[ 0.0000, 0.0000, 0.6602],
[ 0.0000, 0.0000, 0.0000]])
>>> torch.triu(a, diagonal=-1)
tensor([[ 0.2309, 0.5207, 2.0049],
[ 0.2072, -1.0680, 0.6602],
[ 0.0000, -0.5211, -0.4573]])
————————————————
版权声明:本文为CSDN博主「danerer」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/danerer/article/details/82932891