例如,如果我有一个张量x为:
[[1.0, 2.0, 3.0]]
我想得到张量:
[[1.0, 2.0, 3.0], [1.0, 2.0, 0.0], [1.0, 0.0, 0.0]]
我尝试使用 tf.tile(),但这只是完全复制了张量的维度。我想知道是否有办法只使用Tensor Transformations而没有任何循环结构...
答案 0 :(得分:1)
tf.lingalg.band_part(input, 0, -1)
会将方形矩阵的左下角三角形清零。
所以你的代码将是
tiled = tf.tile(x, (tf.shape(x)[1], 1))
tf.linalg.band_part(tiled, 0, -1)