использование тензора в качестве индекса для массива при построении графа тензорного потока - PullRequest
1 голос
/ 09 июля 2020

Я пытаюсь построить граф тензорного потока для сети в python, в котором мне нужно, чтобы тензор (скалярное значение) был индексом np.array фрагмент кода выглядит следующим образом:

def get_votes(input, classnum):
    in_shape = input.get_shape().as_list()
    votes = np.zeros([classnum])
    for i in range(0,in_shape[0]):
        print(input[i])
        votes[input[i]]=votes[input[i]]+1

Входные данные - это одномерный тензор.

Я получаю следующую ошибку:

голосов [input [i]] = голосов [input [ i]] + 1 файл «C: \ Anaconda3 \ envs \ silvafilho \ lib \ site-packages \ tensorflow_core \ python \ framework \ ops.py», строка 736, в массиве «массиве». .format (self.name)) NotImplementedError: Невозможно преобразовать символ c Tensor (strided_slice_1: 0) в массив numpy.

Я пытался использовать tensor.eval(session=tf.Session()), но ему нужен заполнитель, которого у меня еще нет, так как я строю график.

заранее большое спасибо, если кто-нибудь знает способ обойти это. Я использую tensorflow_gpu 1.15

...