Вводить композитные входы в модель

Мне нужно передать изображение и вектор, взятые из нормального распределения одновременно. Поскольку набор данных изображений, который я использую, слишком велик, я создаю ImageDeserializer для этой части. Но мне также нужно добавить случайный вектор (сэмплированный из простого нормального распределения) во входную карту перед подачей его в сеть. Есть ли способ добиться этого?

Я также проверяю:

mb_data = reader_train.next_minibatch(mb_size, input_map=input_map)
mb_data[random_input_node] = np.random.normal((mb_size, 100))

но получите следующую ошибку:

Ошибка типа: невозможно преобразовать значение словаря в N4CNTK13MinibatchDataE

1 ответ

Проблема решена с помощью следующего фрагмента для подачи данных тренеру:

mb_data = reader_train.next_minibatch(mb_size, input_map=input_map)
z = np.random.normal(mb_size)
my_trainer.train_minibatch({feature_image: mb_data[image].data, feature_z: z})

Также спасибо @mewahl. Определение нового читателя является еще одним подходящим способом решения проблемы, и я думаю, что это должно быть быстрее, чем я сделал.

Другие вопросы по тегам