Создайте граф, который работает с переменным размером партии, используя Tensorflow

Я использую tf.placeholders () ops для подачи переменного размера пакета ввода, которые являются тензорами 2D, и используют механизм подачи для подачи различных значений для этих тензоров при вызове run (). я получил

TypeError: объект Tensor не является итерируемым.

Ниже приведен мой код:

with graph.as_default(): train_index_input = tf.placeholder(tf.int32, shape=(None, window_size)) train_embeddings = tf.Variable(tf.random_uniform([vocabulary_size, embedding_dimension], -1.0, 1.0)) embedding_input = [tf.nn.embedding_lookup(train_embeddings, x) for x in train_index_input] ...... ...... 

Поскольку я не могу видеть содержимое тензора «train_index_input» без запуска графика, поэтому ошибка объекта «Tensor» не повторяется »повышает код:

 embedding_input = [tf.nn.embedding_lookup(train_embeddings, x) for x in train_index_input] 

То, что я хочу получить, является матрицей внедрения «embedding_input», которая имеет форму [batch_size, embedding_dimension], где batch_size не фиксирован. Должен ли я определять новую операцию в Tensorflow для встраивания поиска 2D-тензоров? Или любые другие способы сделать это?

One Solution collect form web for “Создайте граф, который работает с переменным размером партии, используя Tensorflow”

Вы пытаетесь выполнить понимание списка на уровне python ( for x in train_index_input ) над заполнитель Tensorflow. Это не сработает – Python не знает, что внутри объекта tf.

Чтобы выполнить пакетный поиск встраивания, вы можете просто сгладить свою партию:

 train_indexes_flat = tf.reshape(train_index_input, [-1]) 

запустить его через поиск встраивания:

 looked_up_embeddings = tf.nn.embedding_lookup(train_embeddings, train_indexes_flat) 

и затем переформатируйте его обратно в нужные группы:

 embedding_input = tf.reshape(looked_up_embeddings, [-1, window_size]) 
  • Невозможно преобразовать частично преобразованный тензор в TensorFlow
  • Tensorflow: Как заменить узел в графе вычисления?
  • Я хочу читать данные поездов и испытаний по tf.cond
  • Почему пример TensorFlow не работает при увеличении размера партии?
  • Исходная ошибка перехвата: tensorflow.python.framework.errors_impl.FailedPreconditionError
  • Восстановить подмножество переменных в Tensorflow
  • как конвертировать одно горячее кодирование в целые числа
  • Прогнозы и индексы Tensorflow Grab для значений выше пороговых значений
  • Python - лучший язык программирования в мире.