#nlp #neural-network #language-model
#nlp #нейронная сеть #язык-модель
Вопрос:
Я новичок в области исследований в области НЛП. Я хочу реализовать документ Могут ли искусственные нейронные сети изучать языковые модели?В этой статье впервые был сделан шаг, позволяющий нейронной сети изучать языковую модель. Я понял статью, все понятно, только некоторые путаницы в последнем разделе статьи.
Я не нашел ни одного его кода.Бумага слишком старая (2000) Я даже не нашел обучающих данных (Communicator Telephone Air Travel Information System), которые использовались в то время.
Я также отправил электронное письмо об этом обоим профессорам газеты, но срок действия идентификатора электронной почты одного из них истек, и он ожидает ответа от другого.
Кто-нибудь может мне помочь в этой ситуации? Ваши рекомендации будут полезны для новичков в области исследований. Я был бы вам благодарен.
Ответ №1:
Действительно старый документ в соответствии с NLP, но для меня этот документ выглядит как начало новой ЭРЫ NLP, которая использует технику черного ящика для изучения языковой модели, и, похоже, его дальнейшее развитие превратилось в ВСТРАИВАНИЕ СЛОВ — насколько я помню, идея была представлена в 2008 году Миколовым из Google (googleназвал его technic — word2vec). Это использование повторяющейся нейронной сети для изучения модели таким образом, что слова представлены в виде вектора n-размерности (в word2vec Google это n = 128). Это представление оказалось очень хорошим, поскольку похожие слова находятся ближе друг к другу в пространстве, чем другие. Там также работает арифметика, например: Германия-столица Париж = Франция. Здесь у вас есть хорошая статья, объяснение, а также реализация в tensorflow в соответствии с вложениями word: https://www.tensorflow.org/versions/r0.10/tutorials/word2vec/index.html Таким образом, уже есть некоторые реализации, а также готовый корпус данных для изучения собственных моделей.
ОТРЕДАКТИРОВАНО
Я исправил ссылку — была неправильная. Существует также реализация word2vec в Google code на c , но что очень полезно в проекте Google code, так это множество дополнительных данных. Вот ссылка: https://code.google.com/archive/p/word2vec / Там вы можете найти предварительно обученные модели (1,5 ГБ), а также ссылки на обучающие данные: где получить обучающие данные
Качество векторов слов значительно возрастает с увеличением количества обучающих данных. В исследовательских целях можно рассмотреть возможность использования наборов данных, доступных в режиме онлайн:
- Первый миллиард символов из википедии (используйте сценарий предварительной обработки perl внизу страницы Мэтта Махони)
- Последний дамп Википедии Используйте тот же сценарий, что и выше, для получения чистого текста. Должно быть более 3 миллиардов слов.
- Сайт WMT11: текстовые данные для нескольких языков (повторяющиеся предложения должны быть удалены перед обучением моделей)
- Набор данных из «Эталонного теста языкового моделирования на миллиард слов», почти 1B слов, уже предварительно обработанный текст.
- Веб-база UMBC насчитывает около 3 миллиардов слов, подробнее здесь. Требуется дальнейшая обработка (в основном токенизация). -Текстовые данные с большего количества языков могут быть получены на statmt.org и в проекте «Полиглот».
Комментарии:
1. Спасибо за ваш ответ. В этой ссылке используется набор данных MNIST. Можете ли вы поделиться каким-нибудь примером, в котором используются некоторые реальные данные NLP? Это было бы более относительным.
2. О, извините, я поставил неправильную ссылку. Я отредактировал его. Это правильный вариант: tensorflow.org/versions/r0.10/tutorials/word2vec/index.html
3. Я отредактировал ответ, добавив еще несколько полезных вещей, которые могут показаться вам интересными.