Python 3.x 使用tensordot获取意外形状
我想做两个形状张量之间的点积 (2000, 1, 64) (2000, 30, 64) 当我使用以下代码在这两者之间执行tf.tensorbot时Python 3.x 使用tensordot获取意外形状,python-3.x,tensorflow,deep-learning,tensor,attention-model,Python 3.x,Tensorflow,Deep Learning,Tensor,Attention Model,我想做两个形状张量之间的点积 (2000, 1, 64) (2000, 30, 64) 当我使用以下代码在这两者之间执行tf.tensorbot时 test = tf.tensordot(enc_op,tf.transpose(query_with_time_axis),axes=1) 我得到的输出形状如下 (2000, 30, 1, 2000) 但我必须保持身材(2000,30,1) 我这样做是为了注意力机制。 有人能帮我吗。试试使用 a=tf.transpose(a,perm=[0,2,1
test = tf.tensordot(enc_op,tf.transpose(query_with_time_axis),axes=1)
我得到的输出形状如下
(2000, 30, 1, 2000)
但我必须保持身材(2000,30,1)
我这样做是为了注意力机制。
有人能帮我吗。试试使用
a=tf.transpose(a,perm=[0,2,1])
然后呢,
test=tf.matmul(b,a)
其中,a
是第一个张量,b
是第二个张量