Гарантирует ли перенастройка CNN на одном (пару примеров), что фоновая реализация верна? - PullRequest
0 голосов
/ 30 января 2020

Я написал CNN типа L eNet с нуля, чтобы изучить все концепции и способы их реализации. Сейчас я пытаюсь заставить его изучать MNIST с помощью градиентного спуска Stochasti c (один пример за раз), но обучение, кажется, колеблется вокруг среднего значения для одного класса (2.30-2.35). Очевидно, что отладка необходима. Проблема в том, что net самодельного производства, и я не могу быть уверен, что фон правильный, поэтому радиус потенциальных ошибок очень велик. Я удостоверился, что у меня есть следующее:

  1. Нормализация изображения
  2. Инициализация Ксавье
  3. Фиксированное случайное начальное число
  4. Введен график снижения скорости обучения
  5. Я протестировал net на одном примере в соответствии с этим контрольным списком отладки. Он переоснащен за пару десятков итераций. Я попытался использовать больше примеров (3 примера), и это заняло гораздо больше времени. Ниже приведена визуализация потерь для 3 примеров (может быть, это будет полезно). enter image description here

Я понимаю, что, не видя реального кода, трудно сказать что-либо конкретное c, поэтому я постараюсь сформулировать свой вопрос следующим образом. Я хотел бы выделить некоторые потенциальные проблемы с ошибками. Например, может ли быть возможность надеть, что фон CNN правильный? Или нет гарантии? Если бы я знал, что мое распространение градиента правильно, я бы сделал отладку более направленной.

Я был бы рад услышать любое предложение, основанное на вашем интуитивном понимании и опыте. Спасибо.

...