Python 多维Tensorflow嵌入查找
我想选择这个张量的一部分Python 多维Tensorflow嵌入查找,python,tensorflow,embedding,Python,Tensorflow,Embedding,我想选择这个张量的一部分 A = tf.constant([[[1,1],[2,2],[3,3]], [[4,4],[5,5],[6,6]]]) A的输出将是 [[[1 1] [2 2] [3 3]] [[4 4] [5 5] [6 6]]] 我想从A中选择的索引是[1,0]。我是指这个张量第一部分的[2]和第二部分的[4],所以我的预期结果是 [2 2] [4 4] 我如何使用嵌入查找函数来实现它 B = tf.nn.embedding_lookup(A, [1, 0
A = tf.constant([[[1,1],[2,2],[3,3]], [[4,4],[5,5],[6,6]]])
A的输出将是
[[[1 1]
[2 2]
[3 3]]
[[4 4]
[5 5]
[6 6]]]
我想从A中选择的索引是[1,0]。我是指这个张量第一部分的[2]和第二部分的[4],所以我的预期结果是
[2 2]
[4 4]
我如何使用嵌入查找函数来实现它
B = tf.nn.embedding_lookup(A, [1, 0])
我已经试过了
但这不是我的期望
[[[4 4]
[5 5]
[6 6]]
[[1 1]
[2 2]
[3 3]]]
有人能帮我解释一下怎么做吗 试试下面的方法
A = tf.constant([[[1,1],[2,2],[3,3]], [[4,4],[5,5],[6,6]]])
B = [1,0]
inds = [(a,b) for a,b in zip(np.arange(len(B)), B)]
C = tf.gather_nd(params=A, indices=inds)
为什么您需要准确地使用
embedded\u lookup
函数?您可以使用其他函数吗?@thushv89不需要嵌入查找函数。我只知道这个函数。如果有任何其他功能可以实现我所期望的,我很想知道。谢谢,它可以工作。然而,我的原始模型更复杂,如果我的B是张量,而不是数组。如果不把张量转换成数组,我怎么做呢@thushv89@PlafishyPhannakan你能举例说明你的意思吗?