Нейронный машинный перевод

Нейронный машинный перевод (англ. Neural Machine Translation, NMT) — это подход к машинному переводу, при котором используется искусственная нейронная сеть для прогнозирования вероятности последовательности слов, обычно моделируя целые предложения в единой интегрированной модели.

Обзор

В настоящее время этот подход является доминирующим[1][2] и обеспечивает качество перевода, сопоставимое с человеческим при переводе между языками с достаточными ресурсами при определённых условиях[3]. Тем не менее, сохраняются серьёзные вызовы, особенно при работе с языками с недостаточным количеством высококачественных данных[1][4][5], а также при изменении предметной области между обучающими данными и реальными переводимыми текстами[1]. Кроме того, системы нейронного машинного перевода, как правило, склонны к передаче довольно буквальных переводов[5].

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

Модели нейронного машинного перевода вычисляют вероятность [2][6] разных вариантов перевода и выбирают наиболее вероятный из множества возможных. Большинство моделей NMT являются автрорегрессионными: они вычисляют вероятность каждого следующего токена на целевом языке как функцию исходного предложения и ранее предсказанных токенов целевого языка. Итоговая вероятность перевода равна произведению вероятностей отдельных токенов:[2][6]

Различия между моделями NMT прежде всего касаются реализации функции , однако большинство моделей придерживаются архитектуры «кодировщик—декодировщик»[6][7]. Сначала сеть-кодировщик обрабатывает и преобразует исходное предложение в вектор (или матрицу) признаков. Затем декодер пошагово генерирует перевод, учитывая это представление и уже предсказанные токены до момента генерации специального токена конца предложения. Поскольку декодер опирается на собственные предыдущие выходы, такой процесс называется автрорегрессионным.

История

Ранние подходы

В 1987 году Роберт Б. Аллен продемонстрировал применение прямой нейронной сети для перевода автоматически сгенерированных английских предложений с ограниченным словарём из 31 слова на испанский язык. Архитектура сети подбиралась таким образом, чтобы входной и выходной слой соответствовали длине максимальных предложений на исходном и целевом языке, поскольку не существовало универсальных механизмов для кодирования последовательностей произвольной длины в фиксированное представление. Аллен также выдвинул концепцию использования автоассоциативных моделей — одной для кодирования источника и другой для декодирования[8].

В 1991 году Лонни Крисман развил эту идею, обучая раздельные рекурсивные автоассоциативные памяти (RAAM), разработанные Джорданом Б. Поллаком[9] для исходного и целевого языков. Каждая из сетей училась преобразовывать предложение произвольной длины в скрытое представление фиксированной длины и восстанавливать исходное предложение из этого представления. Дополнительно обе сети обучались совместному использованию скрытого слоя, что позволяло энкодеру источника создавать представление, расшифруемое декодером целевого языка[10]. Форкада и Ньеко упростили эту модель в 1997 году, предложив прямое обучение энкодера и декодера (под названием «рекурсивная гетероассоциативная память»)[11].

В том же 1997 году Кастаньо и Касакуберта применили рекуррентную сеть Элмана для перевода с очень ограниченным словарём ичислами предложений и низкой сложностью[12][13].

Несмотря на концептуальное сходство указанных подходов с современным NMT, вычислительные ресурсы конца 1980-х — 1990-х годов не позволяли обрабатывать достаточно большие корпуса данных для практического машинного перевода[1][14]. Доминирующими оставались статистические методы машинного перевода.

Гибридные подходы

Во времена преобладания статистического машинного перевода отдельные элементы системы заменялись нейронными модулями при сохранении логлинейной интеграции[1][2]. Например, Хольгер Швенк с коллегами заменил традиционную n-граммная языковая модель на нейронную[15][16], а вероятности перевода фраз — предсказывались с помощью прямых нейронных сетей[17].

seq2seq

Прорыв в сквозном нейронном машинном переводе произошёл в 2013—2014 годах: Кальхбреннер и Блунсом использовали сверточную нейронную сеть для кодирования исходного предложения[18], в то время как Чо с соавторами и Сутскевер с коллегами опирались на рекуррентные сети[19][20]. Все три исследования строили декодер на основе RNN, использующего фиксированное векторное представление исходного текста. Однако на длинных предложениях такие модели показывали низкую эффективность[1][2][21]. Проблема частично решилась с появлением внимания (attention): Бахданау с соавторами добавили модуль attention к архитектуре энкодер—декодер: на каждом шаге декодирования состояния декодера вычисляют взвешенное представление исходного предложения, позволяющее сосредотачиваться на разных его частях[22]. На базе подобных архитектур Baidu запустила первую крупномасштабную систему NMT[23] в 2015 году, а Google Neural Machine Translation — в 2016[24]. С тех пор нейронные модели стали основными на ведущих конференциях по машинному переводу[25].

В 2017 году Геэринг с коллегами объединили сверточный энкодер с attention, улучшив обработку дальних зависимостей в тексте и ускорив перевод за счёт параллелизации[26]. В том же году «Microsoft Translator» запустил онлайновый нейросетевой перевод[27]. Тогда же вышел DeepL Translator, построенный на сверточном энкодере, и по мнению ряда СМИ на тот момент превосходил конкурентов[28][29][30]. Также было показано, что GPT-3 от OpenAI, выпущенная в 2020 году, способна функционировать как система нейронного машинного перевода. Подобные нейросетевые модули используют Microsoft Translator и SYSTRAN.

Трансформер

Реализация трансформера (англ. transformer) — ещё одна сетевая архитектура, хорошо параллелизуемая и предложенная Васвани с соавторами в 2017 году[31]. Как и прежние модели, трансформер задействует механизм внимания для вычисления весов выходов кодировщика при декодировании. Однако сами кодировщик и декодер основаны не на рекуррентности или свёртках, а на механизме внимания (self-attention): каждая новая слой применяет механизм самовнимания к предыдущему. Поскольку внимание само по себе не учитывает порядок токенов, используется явное позиционное кодирование признаков[2][6]. Благодаря отсутствию рекуррентности энкодеры и декодеры этой архитектуры можно обучать параллельно, но оригинальный декодер трансформера остаётся автрорегрессионным, то есть на этапе вывода он по-прежнему генерирует текст по одному токену.

Модель трансформера быстро стала стандартом для промышленных систем NMT[2] и сохраняет преобладание на ведущих конференциях по машинному переводу по состоянию на 2022–2023 годы[32][33].

Весовые коэффициенты NMT-моделей обычно инициализируются случайно и обучаются на параллельных корпусах. Однако большой успех в области обработки естественного языка (NLP) показали большие языковые модели (LLM) (например, BERT), заранее обученные на массивных монолингвальных данных и далее дообучаемые на задачах перевода. Такая стратегия особенно эффективна для языков с малым количеством параллельных корпусов[4]. Пример — модель mBART: сначала трансформер обучается по многоязычному корпусу на задаче восстановления замаскированных токенов, затем дообучается как автоэнкодер на задаче перевода[34].

Генеративные большие языковые модели

Вместо дообучения предобученных языковых моделей для перевода достаточно мощные генеративные модели могут быть напрямую промптированы на перевод произвольных предложений. Такой подход впервые был всесторонне исследован для GPT-3.5 в 2023 году Хенди с соавторами, которые показали, что «системы GPT способны создавать очень беглые и конкурентоспособные переводы даже в нулевом режиме обучения (zero-shot), особенно для пар ресурсово насыщенных языков»[35].

На Конференции по машинному переводу 2023 года были протестированы десятки LLM, большинство из которых показали качество, сравнимое с ручным переводом[33].

Сравнение с статистическим машинным переводом

Нейронный машинный перевод решает ряд проблем статистического подхода:

  • Использование непрерывных представлений токенов устранило проблему разрежённости для редких слов и фраз — модели стали лучше обобщать[18][36].
  • Ограничение по длине n-граммовых моделей, характерное для статистического подхода, приводило к потере контекста. В NMT нет произвольной жёсткой границы контекста, кроме того, attention-модули позволяют явно выбирать важные токены для генерации следующего слова[36].
  • Сквозное обучение одной модели (end-to-end) повысило качество перевода и упростило сам процесс.
  • Для SMT требовались огромные n-граммные модели (вплоть до 7-грамм), занимавшие большие объёмы памяти[37], что для NMT не требуется.

Обучение

Кросс-энтропийный риск

Модели NMT обычно обучаются максимизации правдоподобия обучающих данных. Пусть имеется набор исходных предложений и соответствующих целевых переводов . Необходимо найти параметры модели , максимизирующие сумму правдоподобий всех переводов (для каждого исходного):

На уровне токенов это эквивалентно:

Поскольку интересует максимум, на практике максимизируют логарифм выражения (что предотвращает потери точности из-за перемножения низких вероятностей):

Используя тождество между логарифмом произведения и суммой логарифмов, задача сводится к минимизации кросс-энтропийного риска:

На практике оптимизация производится по мини-батчам методом стохастического градиента.

Teacher forcing

При инференсе автрорегрессионные декодеры на каждом шаге используют предыдущий сгенерированный токен как входной. Однако из-за размера целевого словаря на ранних этапах обучения модель почти всегда ошибается, и следующие шаги обучаются уже на неправильном входе, что сильно замедляет процесс. Поэтому в фазе обучения применяется приём teacher forcing: на каждом шаге модель получает правильный токен из эталонного перевода, игнорируя свои предсказания на предыдущем шаге.

Перевод с помощью запроса большим языковым моделям

Как показано в разделе «История», вместо специальной NMT-системы, обученной на параллельных корпусах, можно просто промптировать генеративную LLM на перевод текста[35]:

  • Генеративные языковые модели не обучаются конкретно на задаче перевода, а лишь на задачи языкового моделирования (предсказания следующего слова) на огромных корпусах разных языков (но доминирующим является английский текст)[38]. После этого организуется дообучение на задачах исполнения инструкций[39].
  • Эти модели не используют архитектуру кодировщик—декодировщик, а состоят только из декодера трансформера.
  • Для сформирования конкурентного качества перевода LLM должны быть намного больше обычных систем NMT. Например, у GPT-3 — 175 млрд параметров[40], у mBART — 680 млн[34], у изначального transformer-big — «лишь» 213 млн[31]. Это увеличивает вычислительные затраты на обучение и использование.

Обобщённо, генеративную LLM можно использовать для перевода в «zero-shot» режиме — просто задав в качестве промпта перевод без примеров. Или предоставить примеры переводов («one-shot» или «few-shot learning»). Например, для таких экспериментов использовались промпты[35]:

### Переведи это предложение с [язык источника] на [целевой язык], Source:
[предложение]
### Target:
Переведите это на 1. [целевой язык]:
[пример 1 — оригинал]
1. [пример 1 — перевод]
Переведите это на 1. [целевой язык]:
[входное предложение]
1.

Примечания

  1. 1 2 3 4 5 6 Koehn, Philipp. Neural Machine Translation. — Cambridge University Press, 2020.
  2. 1 2 3 4 5 6 7 Stahlberg, Felix (29 сентября 2020). “Neural Machine Translation: A Review and Survey”. arXiv preprint arXiv:1912.02047v2. Дата обращения 2024-06-30.
  3. Popel, Martin (1 сентября 2020). “Transforming machine translation: a deep learning system reaches news translation quality comparable to human professionals”. Nature Communications [англ.]. 11 (1): 4381. DOI:10.1038/s41467-020-18073-9. Дата обращения 2024-06-30. |access-date= требует |url= (справка)
  4. 1 2 Haddow, Barry (2022). “Survey of Low-Resource Machine Translation”. Computational Linguistics [англ.]. 48 (3): 673—732. Дата обращения 2024-06-30.
  5. 1 2 Poibeau, Thierry (2022). “On "Human Parity" and "Super Human Performance" in Machine Translation Evaluation”. Proceedings of the Thirteenth Language Resources and Evaluation Conference [англ.]. Марсель: European Language Resources Association: 6018—6023. Дата обращения 2024-06-30.
  6. 1 2 3 4 Tan, Zhixing (31 декабря 2020). “Neural Machine Translation: A Review of Methods, Resources, and Tools”. arXiv preprint arXiv:2012.15515 [англ.]. Дата обращения 2024-06-30.
  7. Goodfellow, Ian. 12.4.5 Neural Machine Translation // Deep Learning. — MIT Press, 2016. — P. 468–471.
  8. Allen, Robert B. (1987). Several Studies on Natural Language and Back-Propagation. IEEE First International Conference on Neural Networks. 2. Сан-Диего. pp. 335—341. Дата обращения 2024-06-30.
  9. Chrisman, Lonnie (1991). “Learning Recursive Distributed Representations for Holistic Computation”. Connection Science [англ.]. 3 (4): 345—366. DOI:10.1080/09540099108946592. Дата обращения 2024-06-30.
  10. Pollack, Jordan B. (1990). “Recursive distributed representations”. Artificial Intelligence. 46 (1): 77—105. DOI:10.1016/0004-3702(90)90005-K.
  11. Forcada, Mikel L. Recursive hetero-associative memories for translation // Biological and Artificial Computation: From Neuroscience to Technology. — 1997. — Vol. 1240. — P. 453–462. — ISBN 978-3-540-63047-0. — doi:10.1007/BFb0032504.
  12. Castaño, Asunción (1997). A connectionist approach to machine translation. 5th European Conference on Speech Communication and Technology (Eurospeech 1997). Родос. pp. 91—94. DOI:10.21437/Eurospeech.1997-50.
  13. Castaño, Asunción (23 июля 1997). Machine translation using neural networks and finite-state models. Proceedings of the 7th Conference on Theoretical and Methodological Issues in Machine Translation of Natural Languages. Колледж Сент-Джон, Санта-Фе.
  14. Yang, Shuoheng (18 февраля 2020). “A Survey of Deep Learning Techniques for Neural Machine Translation”. arXiv preprint arXiv:2002.07526 [англ.]. Дата обращения 2024-06-30.
  15. Schwenk, Holger (2006). Continuous Space Language Models for Statistical Machine Translation. COLING/ACL 2006 Main Conference Poster Sessions. Сидней. pp. 723—730.
  16. Schwenk, Holger (2007). “Contiuous space language models”. Computer Speech and Language. 21 (3): 492—518. DOI:10.1016/j.csl.2006.09.003.
  17. Schwenk, Holger (2012). Continuous Space Translation Models for Phrase-Based Statistical Machine Translation. COLING 2012: Posters. Мумбаи. pp. 1071—1080.
  18. 1 2 Kalchbrenner, Nal (2013). “Recurrent Continuous Translation Models”. Proceedings of the Association for Computational Linguistics: 1700—1709.
  19. Cho, Kyunghyun (2014). Learning Phrase Representations using RNN Encoder–Decoder for Statistical Machine Translation. Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP). Доха. pp. 1724—1734. arXiv:1406.1078. DOI:10.3115/v1/D14-1179.
  20. Sutskever, Ilya (2014). “Sequence to Sequence Learning with Neural Networks”. Advances in Neural Information Processing Systems. 27. arXiv:1409.3215. Архивировано из оригинала 27 января 2025. Дата обращения 2024-06-30. Используется устаревший параметр |url-status= (справка)
  21. Cho, Kyunghyun (2014). On the Properties of Neural Machine Translation: Encoder–Decoder Approaches. SSST-8, Eighth Workshop on Syntax, Semantics and Structure in Statistical Translation. Доха. pp. 103—111. arXiv:1409.1259. DOI:10.3115/v1/W14-4012.
  22. Bahdanau, Dzmitry (2014). “Neural Machine Translation by Jointly Learning to Align and Translate”. arXiv preprint arXiv:1409.0473 [англ.]. Дата обращения 2024-06-30.
  23. Wang, Haifeng (1 ноября 2022). “Progress in Machine Translation”. Engineering. 18: 143—153. DOI:10.1016/j.eng.2021.03.023. Дата обращения 2024-06-30. |access-date= требует |url= (справка)
  24. Wu, Yonghui (2016). “Google's Neural Machine Translation System: Bridging the Gap between Human and Machine Translation”. arXiv preprint arXiv:1609.08144 [англ.]. Дата обращения 2024-06-30.
  25. Bojar, Ondrej (2016). “Findings of the 2016 Conference on Machine Translation” (PDF). ACL 2016 First Conference on Machine Translation (WMT16): 131—198. Архивировано из оригинала (PDF) 27 января 2018. Дата обращения 2018-01-27. Используется устаревший параметр |url-status= (справка)
  26. Gehring, Jonas (2017). A Convolutional Encoder Model for Neural Machine Translation. 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers). Ванкувер. pp. 123—135. arXiv:1611.02344. DOI:10.18653/v1/P17-1012. Дата обращения 2024-06-30.
  27. Microsoft brings AI-powered translation to end users and developers, whether you're online or offline (амер. англ.). Microsoft Translator Blog (18 апреля 2018). Дата обращения: 19 апреля 2024. Архивировано 30 августа 2025 года.
  28. Coldewey, Devin. DeepL schools other online translators with clever machine learning, TechCrunch (29 августа 2017). Архивировано 26 сентября 2025 года. Дата обращения: 30 июня 2024.
  29. Quel est le meilleur service de traduction en ligne?, Le Monde (29 августа 2022). Архивировано 4 сентября 2025 года. Дата обращения: 30 июня 2024.
  30. Pakalski, Ingo. DeepL im Hands On: Neues Tool übersetzt viel besser als Google und Microsoft, Golem (29 августа 2017). Архивировано 30 августа 2017 года. Дата обращения: 30 июня 2024.
  31. 1 2 Vaswani, Ashish (2017). Attention Is All You Need. Advances in Neural Information Processing Systems 30 (NIPS 2017). pp. 5998—6008. Дата обращения 2024-06-30.
  32. Kocmi, Tom (2022). Findings of the 2022 Conference on Machine Translation (WMT22). Proceedings of the Seventh Conference on Machine Translation. Абу-Даби. pp. 1—45. Дата обращения 2024-06-30.
  33. 1 2 Kocmi, Tom (2023). Findings of the 2023 Conference on Machine Translation (WMT23). Proceedings of the Eighth Conference on Machine Translation. Сингапур. pp. 1—42. DOI:10.18653/v1/2023.wmt-1.1. Дата обращения 2024-06-30.
  34. 1 2 Liu, Yinhan (2020). “Multilingual Denoising Pre-training for Neural Machine Translation”. Transactions of the Association for Computational Linguistics. 8: 726—742. arXiv:2001.08210. DOI:10.1162/tacl_a_00343. Дата обращения 2024-06-30. |access-date= требует |url= (справка)
  35. 1 2 3 Hendy, Amr (18 февраля 2023), How Good Are GPT Models at Machine Translation? A Comprehensive Evaluation, arΧiv:2302.09210 [cs.CL]. 
  36. 1 2 Russell, Stuart. Artificial Intelligence: A Modern Approach. — 4-е, глобальное. — Pearson.
  37. Federico, Marcello (2007). “Efficient Handling of N-gram Language Models for Statistical Machine Translation”. Proceedings of the Second Workshop on Statistical Machine Translation. Прага: Association for Computational Linguistics: 88—95. DOI:10.3115/1626355.1626367. Дата обращения 2024-06-30.
  38. GPT 3 dataset statistics: languages by character count (англ.). OpenAI (1 июня 2020). Дата обращения: 30 июня 2024. Архивировано 4 июня 2025 года.
  39. Radford, Alec Improving Language Understanding by Generative Pre-Training (англ.) (2018). Дата обращения: 30 июня 2024. Архивировано 1 октября 2025 года.
  40. Brown, Tom (2020). “Language Models are Few-Shot Learners”. Advances in Neural Information Processing Systems. 33: 1877—1901. Дата обращения 2024-06-30.

Литература