Есть ли ограничения для seq2seq LSTM? - PullRequest
0 голосов
/ 21 сентября 2019

У меня есть хобби-проект, который включает создание LSTM уровня персонажа seq2seq2.В моей задаче я даю текст как ввод (максимум 40 символов), а LSTM генерирует вывод, который рифмуется с вводом.

Я создал очень большие базы данных с рифмованными строками.

НаВначале я обучил свою модель следующим параметрам:

batch_size = 200
epochs = 250
latent_dim = 300
num_samples = 10000

С этими параметрами моя модель приблизилась к 0,4 после 75 эпох, но я ждал все 250 эпох и тестировал эту модель.Результат был не таким уж плохим, но я хотел большего.

После этого я попробовал очень большие размеры партий, с более чем 200k тренировочными данными (почти всеми возможными параметрами), и каждый результат приводит к перегрузке;это означает, что моя модель бросила одно и то же предложение для каждого ввода.Но (!), После того, как я попробовал 250-эпохную модель, я использовал сохранение контрольной точки и протестировал только лучшую модель, после того как она не сходилась больше.Обычно он останавливается на уровне 0,29.

Я знаю, что LSTM на уровне персонажа в этой задаче имеет свои ограничения, но действительно ли это будет 10к тренировочных данных?Возможно ли, что в этом случае конвергенция не имеет значения, и модели просто нужно больше эпох?

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

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

Что мне делать?

...