Машинный перевод (MT) использует возможности машин для «автоматического перевода текста с одного естественного языка (исходного языка) на другой (целевой язык)» [1]. Идея выполнения машинного перевода была впервые высказана Уорреном Уивером в 1949 году. В течение долгого времени (1950-е - 1980-е годы) машинный перевод осуществлялся путем изучения лингвистической информации об исходном и целевом языках и создания переводов на основе словарей. и грамматики, называемые машинным переводом на основе правил (RBMT). С развитием статистики статистические модели начали применяться к машинному переводу, который генерирует переводы на основе анализа корпуса двуязычных текстов. Этот метод известен как статистический машинный перевод (SMT), который имел лучшую производительность, чем RBMT, и доминировал в этой области с 1980-х по 2000-е годы. В 1997 году Рамон Неко и Микель Форкада придумали идею использования структуры «кодировщик-декодер» для машинных переводов [2]. Несколько лет спустя, в 2003 году, группа исследователей из Монреальского университета во главе с Йошуа Бенжио разработала языковую модель на основе нейронных сетей [3], которая улучшила проблему разреженности данных в традиционных моделях SMT. Их работа заложила основу для будущего использования нейронных сетей в машинном переводе.

Память на большие расстояния

В 2013 году Нал Калчбреннер и Фил Блансом предложили новую структуру сквозного кодировщика-декодера для машинного перевода [4]. Эта модель будет кодировать заданный исходный текст в непрерывный вектор с использованием сверточной нейронной сети (CNN), а затем использовать рекуррентную нейронную сеть (RNN) в качестве декодера для преобразования вектора состояния в целевой язык. Их работу можно рассматривать как рождение нейронного машинного перевода (NMT), метода, использующего нейронные сети глубокого обучения для сопоставления естественного языка. Нелинейное отображение NMT отличается от линейных моделей SMT и описывает семантическую эквивалентность с использованием векторов состояния, которые соединяют кодер и декодер. Вдобавок предполагается, что RNN способна захватывать информацию за бесконечной длиной предложений и решать проблему «переупорядочивания на большом расстоянии» [29]. Однако проблема «взрывающегося / исчезающего градиента» [28] затрудняет обработку RNN зависимостей на больших расстояниях; соответственно, модель NMT вначале не показала хороших результатов.

Внимание, внимание, внимание

Годом позже (2014 г.) Суцкевер и др. и Cho et al. разработал метод, называемый обучением от последовательности к последовательности (seq2seq) с использованием RNN как для кодировщика, так и для декодера [5] [6], и представил Long Short-Term Memory (LSTM, разновидность RNN) для NMT. Благодаря механизму затвора, который допускает явное удаление и обновление памяти в LSTM, проблема «взрывающихся / исчезающих градиентов» контролируется, так что модель может гораздо лучше фиксировать «зависимости на большом расстоянии» в предложении.

Введение LSTM решило проблему «переупорядочения на большом расстоянии», в то время как основная задача NMT сместилась на проблему «вектора фиксированной длины»: как показано на рисунке 1, независимо от того, насколько длинным или коротким Исходное предложение состоит в том, что нейронная сеть должна сжать исходное предложение в вектор фиксированной длины, что приведет к увеличению сложности и неопределенности во время декодирования, особенно когда исходное предложение длинное [6].

Рис. 1. Механизм оригинального нейронного машинного перевода без «внимания» [5]

NMT против SMT

Проблема «вектора фиксированной длины» начала решаться после того, как группа Йошуа Бенжио представила механизм «внимания» в NMT [7] в 2014 году. Механизм внимания был первоначально предложен DeepMind для классификации изображений [23], который «позволяет нейронная сеть, чтобы сосредоточиться на релевантных частях ввода больше, чем на нерелевантных частях при выполнении задачи прогнозирования »[24]. Когда декодер генерирует слово для формирования целевого предложения, релевантна только небольшая часть исходного предложения; таким образом, для динамического создания (взвешенного) вектора контекста на основе исходного предложения применяется механизм внимания, основанный на содержании (как показано на рисунке 2, прозрачность фиолетовой линии демонстрирует веса). Затем целевое слово будет предсказано на основе векторов контекста вместо вектора фиксированной длины. С тех пор производительность NMT была значительно улучшена, и «сети кодировщика-декодера внимания» стали самой современной моделью в области NMT.

Рисунок 2: Механизм архитектуры «сетей кодировщика-декодера внимания» из Google Neural Machine Translation (GNMT) [8]

Гонка вооружений началась

Хотя NMT добился замечательных достижений в конкретных экспериментах по переводу, исследователи задавались вопросом, сохраняется ли хорошая производительность при других задачах и может ли NMT действительно заменить SMT. Соответственно, Junczys-Dowmunt et al. провели эксперименты с «Параллельным корпусом Организации Объединенных Наций», который включает 15 языковых пар и 30 направлений перевода, и NMT был либо на одном уровне с SMT, либо превзошел SMT во всех 30 направлениях перевода в эксперименте, измеренном с помощью баллов BLEU («метод автоматической оценки машинный перевод », чем выше, тем лучше [33]). Кроме того, на конкурсе Workshop on Statistical Machine Translation (WMT) в 2015 году команда из Монреальского университета успешно заняла первое место по переводу с английского на немецкий и третье место по переводам с немецкого на английский, чешско-английский, англо-чешский с использованием NMT. [31].

По сравнению с SMT, NMT может обучать несколько функций совместно и не требует предварительных знаний в предметной области, что обеспечивает преобразование с нулевым выстрелом [32]. В дополнение к более высокому баллу BLEU и лучшей структуре предложения, NMT также может помочь уменьшить ошибки морфологии, синтаксические ошибки и ошибки порядка слов, которые обычно наблюдались в SMT. С другой стороны, все еще существуют проблемы и проблемы, которые необходимо решить с помощью NMT: процесс обучения и декодирования довольно медленный; стиль перевода одного и того же слова может быть противоречивым; существует проблема "вне словарного запаса" результатов перевода; механизм нейронной сети «черный ящик» приводит к плохой интерпретируемости; Таким образом, параметры обучения в основном подбираются на основе опыта.

Будущее за NMT?

Из-за характеристик NMT и его превосходства над SMT, NMT также начал использоваться в отрасли в последнее время: в сентябре 2016 года команда Google Brain опубликовала блог, показывающий, что они начали использовать NMT для замены Фразовый машинный перевод (PBMT, разновидность SMT) для китайско-английских переводов в их продукте - Google Translate [8]. Развернутый ими NMT называется Google Neural Machine Translation (GNMT), и в то же время была опубликована статья, в которой подробно объясняется эта модель [9]. Всего за один год (2017 г.) компания Facebook AI Research (FAIR) объявила о своем способе внедрения NMT с CNN, который может достичь такой же производительности, что и NMT на основе RNN [10] [11] во время работы. в девять раз быстрее. В ответ Google выпустил в июне модель NMT, основанную исключительно на внимании, в которой не использовались ни CNN, ни RNN, и основывалась исключительно на механизме «внимания» [12]. Другие технологические гиганты, такие как Amazon, только что выпустили свою реализацию NMT с MXNet в июле [13]; Microsoft рассказала об использовании NMT в 2016 году, но пока не раскрыла никаких дополнительных технических подробностей [27]. IBM Watson (ветеран машинного перевода), NVIDIA (лидер в области вычислений искусственного интеллекта) и SYSTRAN (пионер в области машинного перевода) [35] все в той или иной степени участвовали в разработке NMT. На Дальнем Востоке восходящая звезда в области ИИ, Китай, еще больше компаний, включая Baidu, NetEase-Youdao, Tencent, Sogou, iFlytek, Alibaba и т. Д., Уже развернули NMT. Все они изо всех сил стараются получить конкурентное преимущество в следующем витке эволюции машинного перевода.

Еще кое-что

Технология NMT значительно развивается в быстро меняющейся и высококонкурентной среде. На последней конференции ACL 2017 все 15 статей, принятых в категории машинного перевода, посвящены нейронному машинному переводу [34]. Мы видим, что в NMT постоянно вносятся улучшения в различных аспектах, включая:

  • Использование одноязычных данных [16] [17]
  • Многоязычный перевод / многоязычный NMT [18]
  • Механизм памяти [19]
  • Лингвистическая интеграция [20]
  • Проблема покрытия [21]
  • Учебный процесс [22]
  • Интеграция априорных знаний [25]
  • Мультимодальные переводы [26]
  • Tensorflow [Google-GNMT]: «https://github.com/tensorflow/nmt»

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

использованная литература

Чтобы помочь вам ощутить магию NMT, мы перечислили некоторые реализации NMT с открытым исходным кодом с использованием различных инструментов, которые вы можете изучить на практике:

  • Факел [Facebook-fairseq]: https://github.com/facebookresearch/fairseq
  • MXNet [Amazon-Sockeye]: https://github.com/awslabs/sockeye
  • Theano [NEMATUS]: https://github.com/EdinburghNLP/nematus
  • Theano [THUMT]: https://github.com/thumt/THUMT
  • Факел [OpenNMT]: https://github.com/opennmt/opennmt
  • PyTorch [OpenNMT]: https://github.com/OpenNMT/OpenNMT-py
  • Matlab [StanfordNMT]: https://nlp.stanford.edu/projects/nmt/
  • DyNet-lamtram [CMU]: https://github.com/neubig/nmt-tips
  • EUREKA [MangoNMT]: https://github.com/jiajunzhangnlp/EUREKA-MangoNMT
  • [1] Рассел С. и Норвиг П. (1995). Искусственный интеллект: современный подход.
    [2] Неко Р. П. и Форкада М. Л. (1997, июнь). Асинхронные переводы с повторяющимися нейронными сетями. В Neural Networks, 1997., International Conference on (Vol. 4, pp. 2535–2540). IEEE.
    [3] Бенжио, Ю., Дюшарм, Р., Винсент, П., и Жовен, К. (2003). Нейронно-вероятностная языковая модель. Журнал исследований в области машинного обучения, 3 (февраль), 1137–1155.
    [4] Kalchbrenner, N., & Blunsom, P. (2013, октябрь ). Рекуррентные модели непрерывного перевода. В EMNLP (Vol. 3, №39, p. 413).
    [5] Суцкевер, И., Виньялс, О., & Ле, К. В. (2014). Последовательность для последовательного обучения с помощью нейронных сетей. В книге Достижения в системах обработки нейронной информации (стр. 3104–3112).
    [6] Чо, К., Ван Мерриенбоер, Б., Гульчере, К., Богданау, Д., Бугарес, Ф., Швенк, Х., и Бенжио, Ю. (2014). Изучение представлений фраз с использованием кодировщика-декодера RNN для статистического машинного перевода. препринт arXiv arXiv: 1406.1078.
    [7] Богданау Д., Чо К. и Бенжио Ю. (2014). Нейронный машинный перевод путем совместного обучения выравниванию и переводу. Препринт arXiv arXiv: 1409.0473.
    [8] Нейронная сеть для машинного перевода в производственном масштабе. (2017). Исследовательский блог. Получено 26 июля 2017 г. с сайта https://research.googleblog.com/2016/09/a-neural-network-for-machine.html
    [9] Wu, Y., Schuster, M., Чен, З., Ле, К.В., Норузи, М., Машери, В.,… и Клингнер, Дж. (2016). Система нейронного машинного перевода Google: устранение разрыва между человеческим и машинным переводом. Препринт arXiv arXiv: 1609.08144.
    [10] Геринг, Дж., Аули, М., Гранжер, Д., и Дофин, Ю. Н. (2016). Модель сверточного кодировщика для нейронного машинного перевода. Препринт arXiv arXiv: 1611.02344.
    [11] Геринг, Дж., Аули, М., Гранжер, Д., Ярат, Д., & Дофин, Ю. Н. (2017). Сверточная последовательность для последовательного обучения. препринт arXiv arXiv: 1705.03122.
    [12] Васвани, А., Шазир, Н., Пармар, Н., Ушкорейт, Дж., Джонс, Л., Гомес, А.Н.,… & Полосухин, И. (2017). Внимание - все, что вам нужно. Препринт arXiv arXiv: 1706.03762.
    [13] Обучите модели нейронного машинного перевода с помощью Sockeye | Amazon Web Services. (2017). Amazon Web Services. Получено 26 июля 2017 г. с сайта https://aws.amazon.com/blogs/ai/train-neural-machine-translation-models-with-sockeye/
    [14] Джин, С. , Чо, К., Мемишевич, Р., и Бенжио, Ю. (2014). Об использовании очень большого целевого словаря для нейронного машинного перевода. препринт arXiv arXiv: 1412.2007.
    [15] Луонг, М. Т., Суцкевер, И., Ле, К. В., Виньялс, О., и Заремба, В. (2014). Решение проблемы редких слов в нейронном машинном переводе. Препринт arXiv arXiv: 1410.8206.
    [16] Сеннрих Р., Хаддоу Б. и Берч А. (2015). Улучшение моделей нейронного машинного перевода с одноязычными данными. препринт arXiv arXiv: 1511.06709.
    [17] Ченг, Ю., Сюй, В., Хе, З., Хе, В., Ву, Х., Сунь, М., И Лю Ю. (2016). Полуавтоматическое обучение нейронному машинному переводу. Препринт arXiv arXiv: 1606.04596.
    [18] Донг Д., Ву Х., Хе В., Ю Д. и Ван Х. (2015). Многозадачное обучение для многоязычного перевода. В ACL (1) (стр. 1723–1732).
    [19] Wang, M., Lu, Z., Li, H., & Liu, Q. (2016) . Декодер с улучшенной памятью для нейронного машинного перевода. Препринт arXiv arXiv: 1606.02003.
    [20] Сеннрих Р., Хаддоу Б. (2016). Функции лингвистического ввода улучшают нейронный машинный перевод. Препринт arXiv arXiv: 1606.02892.
    [21] Ту, З., Лу, З., Лю, Й., Лю, X., и Ли, Х. (2016). Моделирование покрытия для нейронного машинного перевода. препринт arXiv arXiv: 1601.04811.
    [22] Шен, С., Ченг, Ю., Хе, З., Хе, В., Ву, Х., Сунь, М., И Лю Ю. (2015). Тренинг с минимальным риском для нейронного машинного перевода. Препринт arXiv arXiv: 1512.02433.
    [23] Мних В., Хесс Н. и Грейвс А. (2014). Рекуррентные модели зрительного внимания. В книге Достижения в системах обработки нейронной информации (стр. 2204–2212).
    [24] Дандекар Н. (2017). Как работает механизм внимания при глубоком обучении для обработки естественного языка?. Quora. Получено 26 июля 2017 г. с сайта https://www.quora.com/How-does-an-attention-mechanism-work-in-deep-learning-for-natural-language-processing
    [25] Кон, Т., Хоанг, CDV, Вымолова, Э., Яо, К., Дайер, К., и Хаффари, Г. (2016). Включение смещений структурного выравнивания в модель нейронной трансляции внимания. Препринт arXiv arXiv: 1601.01085.
    [26] Хитшлер, Дж., Шамони, С., и Ризлер, С. (2016). Мультимодальные опоры для перевода подписей к изображениям. Препринт arXiv arXiv: 1601.03916.
    [27] Microsoft Translator запускает переводы на основе нейронной сети для всех языков речи. (2017). Переводчик. Получено 27 июля 2017 г. с сайта https://blogs.msdn.microsoft.com/translation/2016/11/15/microsoft-translator-launching-neural-network-based-translations-for-all-its-speech-languages. /
    [28] Паскану, Р., Миколов, Т., и Бенжио, Ю. (2013, февраль). О сложности обучения рекуррентных нейронных сетей. В Международной конференции по машинному обучению (стр. 1310–1318).
    [29] Судо, К., Дух, К., Цукада, Х., Хирао, Т., И Нагата, М. (2010, июль). Разделяй и переводи: улучшение переупорядочивания на больших расстояниях в статистическом машинном переводе. В материалах Труды совместного пятого семинара по статистическому машинному переводу и MetricsMATR (стр. 418–427). Ассоциация компьютерной лингвистики.
    [30] Джунцис-Даумант, М., Двояк, Т., и Хоанг, Х. (2016). Готов ли нейронный машинный перевод к развертыванию. Пример использования, 30.
    [31] Боджар О., Чаттерджи Р., Федерманн С. и др. Результаты семинара 2015 года по статистическому машинному переводу [C]. Технический семинар по статистическому машинному переводу, 2015 г.
    [32] Джонсон, М., Шустер, М., Ле, К.В., Крикун, М., Ву, Й., Чен, З.,… и Хьюз, М. . (2016). Многоязычная система нейронного машинного перевода Google: перевод с нуля. препринт arXiv arXiv: 1611.04558.
    [33] Бартоломе, Диего и Хема Рамирес. За шумихой вокруг нейронного машинного перевода, MIT Technology Review (23 мая 2016 г.), bit.ly/2aG4bvR.
    [34] ACL 2017. (2017). Принятые статьи, демонстрации и статьи TACL для ACL 2017. [онлайн] Доступно по адресу: https://chairs-blog.acl2017.org/2017/04/05/accepted-papers-and-demonstrations/ [Доступно 7 августа 2017 г.].
    [35] Crego , Дж., Ким, Дж., Кляйн, Г., Реболло, А., Янг, К., Сенелларт, Дж.,… И Эноуэ, С. (2016). Чистые системы нейронного машинного перевода SYSTRAN. Препринт arXiv arXiv: 1610.05540.

Если вам интересно узнать больше о NMT, вам предлагается прочитать статьи, перечисленные в справочном разделе: [5] [6] [7] - это основные статьи, которые необходимо прочитать, чтобы помочь вам узнать о NMT. [9] - это комплексная демонстрация механизма и реализации NMT. Кроме того, мы рассмотрели машинный перевод как один из разделов нашего текущего отчета по технологиям искусственного интеллекта. Краткий обзор отчета доступен здесь, и вы можете подписаться на получение полного отчета после его публикации.

Проблема с редкими словами [14] [15]

Аналитик: Мос Чжан | Технический отчет и анализ, подготовленные Synced Lab

История и рубежи нейронного машинного перевода