我有一个2DTensor,它具有各种阵列,定义如下:
x = tf.constant([[0,1,2],[-1,0,1],[-1,-2,0]])
我想把每个数组转换成一个对角矩阵
diag_x =
[[[ 0, 0, 0],
[ 0, 1, 0],
[ 0, 0, 2]],
[[-1, 0, 0],
[ 0, 0, 0],
[ 0, 0, 1]],
[[-2, 0, 0],
[ 0, -1, 0],
[ 0, 0, 0]]]
但是如果我使用操作 * tf.diag(x)*,输出不是这个。
2条答案
按热度按时间xxslljrj1#
我终于找到了解决办法:
tkclm6bt2#
编辑:对于TF 2.0,您可以使用
您可以尝试: