Что не так с этим кодом, почему потери в этом коде не уменьшаются?

Я реализовал VGG-16 в тензорном потоке, VGG-16 — достаточно глубокая сеть, поэтому потери определенно должны уменьшиться. Но в моем коде это не сокращается. Но когда я снова и снова запускаю модель в одной и той же партии, потери уменьшаются. Любая идея, почему такое может произойти.

VGG-net следует здесь.

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

Параметры сети следующие:

lr_rate: 0,001 размер партии = 16

Найдите код @ GitHubGist

Вывод, как показано ниже:

Вывод


person danishansari    schedule 05.03.2019    source источник
comment
Всякий раз, когда моя NN не учится, я начинаю с этого list и проработайте его. Кроме того, в вашем коде отсутствуют некоторые отступы.   -  person Edgar H    schedule 05.03.2019
comment
@EdgarH Извините, но отступ неправильный, потому что StackOverflow не поддерживает раздел кода за один раз. Так что я поместил сегменты кода в секцию кода, думаю, это испортило отступ.   -  person danishansari    schedule 05.03.2019
comment
вы можете поместить свой код в суть (gist.github.com) и предоставить ссылку здесь   -  person Mirodil    schedule 05.03.2019


Ответы (1)


Я предполагаю, что вы следуете варианту архитектуры E из статьи Симоняна и Зиссермана, на которую вы ссылались, - тогда я обнаружил несколько проблем с вашим кодом:

  • Используйте activation='relu' для всех скрытых слоев.

  • Максимальное объединение должно выполняться в окне 2 x 2, поэтому используйте pool_size=[2, 2] вместо pool_size=[3, 3] в слоях объединения.

  • Правильно соедините pool13 с conv13:

pool13 = tf.layers.max_pooling2d(conv13, [2, 2], 2, name='pool13')

У меня нет графического процессора для тестирования, но при достаточном количестве итераций потери должны уменьшиться.

person prouast    schedule 05.03.2019
comment
спасибо за ваш обзор, я изменил этот код, как вы предложили, для очевидных ошибок, которые я сделал, но это мне не помогло, потери все еще не уменьшаются. - person danishansari; 06.03.2019