张量流访问张量中的元素,使用索引上的期限



如何使用张量索引访问张量流Tensor中的男高音元素,如下所示:

import tensorflow as tf
import numpy as np
# indexing in numpy [Working]
matrix = np.random.randint(0, 10, [100, 100])
indices = np.random.randint(0, 100, [1000, 100])
elements = matrix[indices[:, 0], indices[:, 1]]
# indexing in tensorflow [Not working]
tf_matrix = tf.constant(matrix, dtype=tf.int32)
tf_indices = tf.constant(indices, dtype=tf.int32)
tf_elements = tf_matrix[tf_indices[:, 0], tf_indices[:, 1]]  # Error
session = tf.Session()
session.run(tf_elements)

我收到这些错误:

tensorflow.python.framework.errors_impl。无效参数错误:形状 必须是等级 1,但对于"strided_slice_2"(OP: "StridedSlice"(,输入形状为:[100,100]、[2,1000]、[2,1000]、[2]。

值错误:形状必须是等级 1,但对于"strided_slice_2",形状的等级为 2 (op: 'StridedSlice'( 输入形状: [100,100], [2,1000], [2,1000], [2]。

tf_elements = tf.gather_nd(tf_matrix, tf_indices[:, 0:2])

最新更新