Что такое эпоха в нейросетях

0
16

Нейросеть: в чём разница между Batch и Epoch

Что такое эпоха?

Каждый шаг включает использование модели с текущим набором внутренних параметров для прогнозирования некоторых выборок, сравнение прогнозов с реальными ожидаемыми результатами, вычисление ошибки и использование ошибки для обновления внутренних параметров модели.

Привет,
В настоящее время я работаю с Word2Vec. В связи с эпохами и размером партии я все еще не совсем понимаю, что такое образец. Выше вы описали, что образец представляет собой одну строку данных. В своей программе я сначала редактирую свой текстовый файл с помощью SentenceIterator, чтобы получить по одному предложению на строку, а затем использую маркер для получения отдельных слов в этих строках. Является ли образец в Word2Vec словом из набора данных или это строка (содержащая предложение)? Заранее большое вам спасибо ?

В протоколе Ethereum (ETH), например, эпоха — это время, необходимое для завершения 30 000 блоков на блокчейне. Продолжительность эпохи определяется темпом, с которым обрабатываются транзакции и достигаются соглашения, однако темп остается равномерным, с продолжительностью эпохи примерно в 100 часов.

Действительно, в последнем примере общее количество мини-пакетов составляет 40 000, но это верно только в том случае, если пакеты выбраны без перетасовки обучающих данных или выбраны с перетасовкой данных, но без повторения. В противном случае, если в течение одной эпохи мини-пакеты создаются путем выбора обучающих данных с повторением, у нас могут быть некоторые точки, которые появляются более одного раза в одну эпоху (они появляются в разных мини-пакетах в одну эпоху), а другие — только один раз. Таким образом, общее количество мини-партий в этом случае может превысить 40 000.

Когда все обучающие выборки используются для создания одного пакета, алгоритм обучения называется пакетным градиентным спуском. Когда пакет имеет размер одной выборки, алгоритм обучения называется стохастическим градиентным спуском. Когда размер пакета больше одной выборки и меньше размера обучающего набора данных, алгоритм обучения называется мини-пакетным градиентным спуском.

Если вы создаете модель прогнозирования временных рядов (скажем, что-то со слоем lstm), будут ли пакетные наблюдения обучающего набора храниться в “кусках” (то есть группы времени не будут разбиты, и, следовательно, основной шаблон нарушен)? Это имеет значение, верно?

Еще раз спасибо за отличный пост в блоге. Для данных временных рядов в LSTM имеет ли смысл когда-либо иметь размер пакета больше одного?
Я искал и искал, и я не мог найти ни одного примера, где размер пакета больше одного, но я также не нашел никого, кто сказал бы, что это не имеет смысла.

Большое вам спасибо за то, что написали простым для понимания способом. Кроме того, попробуйте добавить фотографии, график или схематическое представление для представления вашего текста. Как я видел здесь, вы привели один пример, он делает многие вещи очень ясными. В каком-то предыдущем посте вы также добавили график…

ЧИТАТЬ ТАКЖЕ:  Искусственный интеллект и человек как называется

Но с помощью программы Word2Vec у вас также есть гиперпараметры Эпох, итераций и размера пакета, которые вы можете установить… Не кажется ли вам, что они также влияют на результаты Word2Vec.
Как я теперь понял, набор, передаваемый как пакет, содержит одно предложение. Однако я удивлен, что количество итераций не меняется, если я изменяю количество эпох и размеры пакетов, но не определяю итерации конкретно. Ты знаешь, как это работает?

Когда полный массив данных передается вперед, а затем назад через нейронную сеть, это называется эпохой. Мы разбиваем эпоху на несколько меньших партий, потому что одна эпоха слишком велика, чтобы отправить на компьютер все сразу.

Каждый шаг включает использование модели с текущим набором внутренних параметров для прогнозирования некоторых выборок, сравнение прогнозов с реальными ожидаемыми результатами, вычисление ошибки и использование ошибки для обновления внутренних параметров модели.

В мире искусственных нейронных сетей эпоха (англ. epoch) — это один цикл обучения на массиве данных. Обучение нейронной сети обычно занимает много эпох. Проще говоря, если мы снабжаем нейронную сеть обучающими данными в различных паттернах на протяжении более чем одной эпохи, мы ожидаем улучшения генерализации, когда даем ей свежий ненаблюдаемый вход (тестовые данные).

Когда значение размера партии задано как единица, for-loop содержит уровень, который позволяет ему пробежаться по заданной выборке за одну партию. Определение того, сколько эпох должна выполнить модель для обучения, зависит от нескольких параметров, связанных как с данными, так и с целью модели. Чтобы преобразовать эту процедуру в алгоритм, обычно требуется глубокое понимание данных.

Вы можете придумать цикл для определения количества эпох, в течение которых каждый цикл выполняется по набору обучающих данных. В этом цикле for есть еще один вложенный цикл for, который повторяется над каждой партией образцов, где одна партия имеет указанное количество образцов “размера партии».

Оптимизация — это тип процесса поиска, и вы можете рассматривать этот поиск как обучение. Алгоритм оптимизации называется “градиентный спуск“, где “градиент” относится к вычислению градиента ошибки или наклона ошибки, а “спуск” относится к движению вниз по этому склону к некоторому минимальному уровню ошибки.

Количество эпох может быть задано целочисленным значением от единицы до бесконечности. Вы можете запускать алгоритм так долго, как вам нравится, и даже останавливать его, используя другие критерии, помимо фиксированного числа эпох, такие как изменение (или отсутствие изменений) ошибки модели с течением времени.

ОСТАВЬТЕ ОТВЕТ

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