2017-01-13 10 views
5

Добрый день всем.Deeplearning4j: Итерации, эпохи и оценкаИсторияListener

Я довольно новичок в библиотеке Deepleaning4j, и есть еще несколько вещей, которые до сих пор не ясны. Концепция «эпохи» не нова, поэтому ясно, что она представляет полный цикл тренировочного набора. Мое первое сомнение связано с понятием «итерация». Что такое итерация над учебным комплексом? Соответствует ли это анализу мини-пакета количества учебных экземпляров или чего-то еще?

В моем коде я установил «.iterations (1)»; Однако, когда я запускаю мой код, я вижу много:

... ScoreIterationListener - Счет на итерации XX является yy.yyyyyy «

Таким образом, если установить» .iterations (1)», почему Я продолжаю видеть значения XX больше 1? Есть ли, может быть, некоторые различия между идеей «итерации» в качестве параметра конфигурации сети и что означает «итерация» для класса ScoreIterationListener?

Спасибо всем за любые ответ или ссылка на полезную информацию.

Best, Mauro.

ответ

3

DeepLearning4J documentation имеет хорошее представление, особенно в отношении разницы между эпохой и итерацией.

Согласно документации DL4J в:.

"итерация является просто одно обновление параметров нейронной сети модели Не следует путать с эпохи, который один полный проход через набор данных . Многие итерации могут произойти до того, как закончится эпоха. Эпоха и итерация являются только синонимами, если вы обновляете свои параметры один раз для каждого прохода через весь набор данных: если вы обновляете мини-партии, они означают разные вещи. Скажем, у ваших данных есть 2 мини-бара: A и B. .numIterations(3) выполняет тренировки, такие как AAABBB, в то время как 3 эпохи выглядят как ABABAB. "

Что касается вашего вопроса, и как ссылка на этот отрывок, если вы установите .iterations(1) и имел только одну партию, итерация будет синонимом 1 эпохи, или один проход через полный набор данных. Тем не менее, если вы обновляете используя мини-партии, эпоха и итерация будут немного отличаться - итерация приведет к АААБББ, а не к эпохе, которая будет производить ABABAB (ссылка приведена в примере выше).

Надеюсь, этот ответ и связанная с ним документация отвечает на ваш вопрос!

PS Прошу прощения за последний ответ, я наткнулся на этот вопрос совсем недавно!