Пейторх переопределение генерирующих предложений из непрерывного пространства Bowman et al. 2015.
Примечание: эта реализация в данный момент не поддерживает LSTM, а RNN и GRU.




Обучение было остановлено после 4 эпох. Истинный Elbo был оптимизирован для приблизительно 1 эпохи (как можно увидеть на графике выше). Результаты усредняются по всему расколу.
| Расколоть | Nll | КЛ |
|---|---|---|
| Тренироваться | 99,821 | 7.944 |
| Валидация | 103,220 | 7.346 |
| Тест | 103,967 | 7.269 |
Sentenes были получены после отбора проб из z ~ n (0, i).
Мистер . n, кто не был со своим собственным персоналом и NNNNN
в n n u. с Компании вряд ли не будут достигнуты для комментариев
Когда они были n в N, а затем они были Нанном
Но компания заявила, что к концу NN и NN будет N
Но компания сказала, что это будет NN u. с экономика
Sentenes были получены после отбора проб из z ~ n (0, i) и интерполяции двух образцов.
Компания заявила, что это будет N, за исключением компании
Но компания заявила, что это будет N, за исключением акций компании в обращении
Но компания заявила, что компания SNN и NN
Но компания SNN за последние два года назад
Но компания SNN за последние два года назад
Но последние несколько лет назад компания SNN
но последние несколько лет назад они не были раскрыты
но последние несколько лет назад они не были раскрыты
но в заявлении, что они не знали о миллионе долларов за последние несколько недель
но в заявлении, что им не было заплачено к концу последних нескольких недель
Чтобы запустить обучение, первым скачайте данные Penn Lee Bank (скачать со веб -страницы Томаса Миколова). Код рассчитывает найти хотя бы ptb.train.txt и ptb.valid.txt в указанном каталоге данных. Данные также могут быть загружены с помощью скрипта dowloaddata.sh .
Затем обучение может быть выполнено со следующей командой:
python3 train.py
Доступны следующие аргументы:
--data_dir Путь к каталогу, где хранятся данные PTB, и будут храниться вспомогательные файлы данных.
--create_data Если предоставлено, будут созданы новые вспомогательные файлы данных с исходными данными.
--max_sequence_length определяет отключение длинных предложений.
--min_occ Если слово происходит меньше, чем время «min_occ» в корпусе, оно будет заменено токеном.
--test если предоставлен, производительность также будет измерена на тестовом наборе.
-ep , --epochs
-bs , --batch_size
-lr , --learning_rate
-eb , --embedding_size
-rnn , --rnn_type либо 'rnn', или 'gru'.
-hs , --hidden_size
-nl , --num_layers
-bi , --bidirectional
-ls , --latent_size
-wd , --word_dropout Word dropout applied to the input of the Decoder, which means words will be replaced by <unk> with a probability of word_dropout .
-ed , --embedding_dropout Word Enceding Dropout, применяемый к вводу декодера.
-af , --anneal_function либо «логистический» или «линейный».
-k , --k крутиза логистического отжига функции.
-x0 , --x0 для «логистики», это средняя точка (т.е. когда вес 0,5); Для «линейного» это знаменатель.
-v , --print_every
-tb , --tensorboard_logging Если предоставлено, прогресс обучения контролируется с помощью Tensorboard.
-log , --logdir Directory файлов журнала для Tensorboard.
-bin , --save_model_path DICELOGER Где хранить модель контрольных точек.
Для получения образцов и интерполяции между стражными.
python3 inference.py -c $CHECKPOINT -n $NUM_SAMPLES