Многоколоночная глубокая нейронная сеть с TFLearn и Tensorflow

Я пытаюсь построить глубокую нейронную сеть с несколькими столбцами (MDNN) с помощью tflearn и tensorflow. MDNN объясняется в этой статье. Часть, с которой я борюсь, заключается в том, как я могу добавить два или более входных данных вместе для подачи в тензорный поток.

Для одного столбца у меня есть:

network = tflearn.input_data(shape=[None, image_shape, image_shape, 3])

и

model.fit(X_input, y_train, n_epoch=50, shuffle=True,
      validation_set=(X_test_norm, y_test),
      show_metric=True, batch_size=240, run_id='traffic_cnn2')

где X_input имеет форму (31367, 32, 32, 3). Я новичок в numpy, tensorflow и tflearn. Трудность на данный момент действительно заключается в том, как указать несколько входных данных для tflearn.

Любая помощь приветствуется.


person Stereo    schedule 14.01.2017    source источник


Ответы (1)


MDNN, описанный в статье, по отдельности обучает несколько моделей, используя случайные (но ограниченные) искажения данных. После того, как все модели обучены, они производят прогнозы с помощью ансамблевого классификатора, усредняя выходные данные всех моделей на разных версиях данных.

Насколько я понимаю, колонны тренируются не совместно, а самостоятельно. Таким образом, вы должны создавать разные модели и подгонять каждую из них. Я рекомендую вам начать обучение одной модели, и как только вы получите хорошие результаты в настройках обучения, воспроизведите ее. Для создания прогнозов необходимо вычислить среднее значение прогнозируемых вероятностей с помощью функции predict и выбрать наиболее вероятный класс.

Одним из способов получения данных из ваших входных данных является использование добавления данных. Однако вместо создания новых данных вы должны заменить их измененными версиями.

person DaniM    schedule 03.03.2017