Как реализовать определение возраста DEEPExpectation (DEX)? - PullRequest
0 голосов
/ 25 января 2019

Прежде всего, я новичок в платформе Deep Learning , пожалуйста, исправьте меня, если я допустил ошибку.

Я пытаюсь реализовать определение возраста с помощью DEX метод.На данный момент я понимаю, что они пытались обучить модель веса CNN, используя архитектуру VGG-16.Я использую IMDB_WIKI набор данных, как они предлагают в своей статье.

Я использую TensorFlow, Keras для обучения моей модели веса в Python3 language.

Мои шаги по обучению модели (я только начинаю с набора IMDB):

  1. Загрузите файл IMDB mat и получите данные обучения инабор проверочных данных (10% от общего набора данных)
  2. Создание модели VGG-16 с ImageNet весом (я считаю, что это большой набор данных)
  3. Так как ImageNet имеет 1000 классов, удалите последний слой модели и поместите вместо него выходной слой моего возрастного класса.
  4. Также добавьте выпадающий слой в верхней части выходного слоя (откровенно говоря,не знаю, как это работает)

Мой эксперимент начинается отсюда:)

  1. Замораживание слоев по предварительной подготовке в архитектуру VGG-16, кромемои новые добавленные слои, теперь есть несколько необучаемых объектов.В этом случае моя точность тренировочного возраста составляет всего 19%, что слишком мало, я надеюсь, что при определении реального возраста это должно быть 50-56%.
  2. Видя, что, возможно, это связано с тем, что я нетренировать все слои.Я удаляю замораживание слоев и пытаюсь тренироваться, но это показывает мне исключение нехватки памяти. После этого я просто замораживаю 8 слоев моей общей архитектуры, после обучения 40 эпох я обнаружил, что возрастная точность составляет 11%, что меньшедо: (

Может ли кто-нибудь помочь мне правильно понять этот документ, пожалуйста?

Спасибо.

1 Ответ

0 голосов
/ 25 января 2019

«Также добавьте выпадающий слой в верхней части выходного слоя (честно говоря, не знаю, как он работает)» - это просто неправильно. Наборы выпадающего слоя умножают вывод на 0, делая активацию и градиент 0. Если вы используете его в качестве вашего последнего слоя с k процентами, то ваш результат будет мусором в k процентах случаев, например, снижая вашу точность. Просто удалите это, и это должно быть лучше.

...