Tensorflow 给定一个张量[5,4,3,4],如何生成一个常数张量,其中每行有n个1和m个0,n=5,4,3,4,m=0,1,2,1。

Tensorflow 给定一个张量[5,4,3,4],如何生成一个常数张量,其中每行有n个1和m个0,n=5,4,3,4,m=0,1,2,1。,tensorflow,tensor,Tensorflow,Tensor,给定一个张量a:[5,4,3,4],我想创建一个张量B: [[1,1,1,1,1], [1,1,1,1,0], [1,1,1,0,0], [1,1,1,1,0] 根据A,B的每一行有n个1,其中n=5,4,3,4。剩余位置用零填充 我可以在tensorflow中实现这一点吗?如何实现?您可以使用它 将tensorflow导入为tf A=tf.常数([5,4,3,4],dtype=tf.int32) max_len=tf.reduce_max(A) B=tf.sequence\u mask(A,m

给定一个张量a:
[5,4,3,4]
,我想创建一个张量B:

[[1,1,1,1,1],
[1,1,1,1,0],
[1,1,1,0,0],
[1,1,1,1,0]

根据A,B的每一行有n个1,其中n=5,4,3,4。剩余位置用零填充

我可以在tensorflow中实现这一点吗?如何实现?您可以使用它

将tensorflow导入为tf
A=tf.常数([5,4,3,4],dtype=tf.int32)
max_len=tf.reduce_max(A)
B=tf.sequence\u mask(A,max\u len,dtype=tf.int32)
使用tf.Session()作为sess:
打印(sess.run(B))
印刷品:

[[1]
[1 1 1 1 0]
[1 1 1 0 0]
[1 1 1 1 0]]
您可以使用它

将tensorflow导入为tf
A=tf.常数([5,4,3,4],dtype=tf.int32)
max_len=tf.reduce_max(A)
B=tf.sequence\u mask(A,max\u len,dtype=tf.int32)
使用tf.Session()作为sess:
打印(sess.run(B))
印刷品:

[[1]
[1 1 1 1 0]
[1 1 1 0 0]
[1 1 1 1 0]]