Развернуть тильду в домашний каталог

Чтобы установить эти значения значимым образом, вам нужно иметь несколько бит информации о ваших данных:

1. Тренировочный набор определяет общее количество примеров обучения, назовем это количество T. 2. Размер партии тренировки - количество примеров обучения, обработанных вместе в одной партии, обычно устанавливается уровнем входных данных в 'train_val.prototxt'. Например, в этот файл размер партии поезда установлен на 256. Обозначим эту величину через tb. 3. Validation set size - общее количество примеров, которые вы отложили для проверки вашей модели, обозначим это V. 4. Значение размера партии проверки, установленное в batch_size для фазы TEST. В в этом примере установлено значение 50. Назовем это vb.

Теперь, во время обучения, вы хотели бы получить непредвзятую оценку эффективности вашего сетью каждый раз в то время. Для этого вы запускаете свою сеть на основе проверки для итераций test_iter. Чтобы охватить весь набор проверок, вам необходимо иметь test_iter = V/vb. Как часто вы хотели бы получить эту оценку? Это действительно зависит от вас. Если у вас очень большой набор валидаций и медленная сеть, проверка слишком часто сделает процесс обучения слишком длинным. С другой стороны, недостаточно проверять достаточно часто, чтобы вы не заметили, когда и когда ваш процесс обучения не сходится. test_interval определяет, как часто вы проверяете: обычно для больших сетей, которые вы устанавливаете test_interval в порядке 5K, для небольших и более быстрых сетей вы можете выбрать более низкие значения. Опять же, все зависит от вас.

Чтобы покрыть весь набор тренировок (завершение «эпохи»), вам нужно запустить итерации T/tb. Обычно для нескольких эпох, а значит, max_iter=#epochs*T/tb.

Что касается iter_size: это позволяет усреднять градиенты над несколькими обучающими мини-партиями, см. эту нить для получения дополнительной информации.

25
задан lukad 5 July 2014 в 19:11
поделиться