Обработка естественного языка

Machine Translation

Предварительные знания

  • Encoder-Decoder архитектура и механизм attention
  • Beam Search декодирование и Teacher Forcing - база для генерации перевода
  • Sequence-to-Sequence и Attention

От Джорджтаунского эксперимента к нейронному переводу

В 1954 году Джорджтаунский эксперимент совместно с IBM публично перевёл около 60 русских предложений на английский по 6 грамматическим правилам и словарю на 250 слов. Прессе обещали полный машинный перевод за несколько лет - оптимизм, который рухнул и привёл к докладу ALPAC (1966) и заморозке финансирования. Возрождение пришло со статистическим переводом: в 1990-1993 годах Питер Браун с коллегами из IBM ввели модели выравнивания IBM Models 1-5, где перевод оценивался по вероятностям, выученным из параллельных корпусов, а не по ручным правилам. Фразовый статистический перевод доминировал ~15 лет. В 2016 году Google запустил GNMT (Google Neural Machine Translation) - end-to-end seq2seq с attention, резко сокративший разрыв с человеческим переводом и позже показавший zero-shot перевод между языковыми парами без прямых примеров. Путь от правил (1954) через статистику (1990-е) к нейросетям (2016) - это микрокосм всей истории NLP

В 2016 году Google перешёл от фразового статистического перевода к нейронному. За одну ночь качество перевода для 8 языковых пар улучшилось больше, чем за предыдущие 10 лет разработки. Но самое поразительное открытие: модель, обученная на нескольких языках, начала переводить между языками, на которых никогда не видела прямых примеров перевода. Это первое свидетельство того, что нейронные сети создают универсальное межъязыковое пространство смыслов.

  • **DeepL** использует специализированные нейронные модели для 30+ языков и по ряду метрик превосходит Google Translate на европейских языках - секрет в качестве параллельного корпуса из профессиональных переводов
  • **Meta NLLB-200** (No Language Left Behind) - первая система с качественным переводом для 200 языков, включая редкие языки Африки и Азии. Открытый исходный код, 54 млрд параметров для лучшей версии
  • **Zoom** использует real-time машинный перевод субтитров на встречах - модели специально оптимизированы для spoken language с неполными предложениями и разговорными конструкциями

Параллельный корпус: фундамент машинного перевода

В 1957 году лингвист Бар-Хиллел написал меморандум, доказывающий, что полностью автоматический высококачественный перевод невозможен без глубокого понимания контекста. Он был прав - и всё же Google Translate обрабатывает 140 миллиардов слов в день. Секрет: параллельный корпус. Это миллионы пар предложений на двух языках - перевод и оригинал - из которых модель учится статистическим паттернам соответствия. Europarl corpus (заседания Европарламента на 21 языке), UN Parallel Corpus (6 языков, 1.5 млн документов), Common Crawl - вот откуда берётся топливо для современных переводчиков.

Качество параллельного корпуса критичнее объёма. Корпус из 100 тысяч чистых выровненных пар даёт лучший результат, чем миллион зашумлённых. Выравнивание (alignment) - задача сопоставления предложений в оригинале и переводе - само по себе нетривиальна: одно предложение может соответствовать двум или трём.

Что такое sentence alignment в контексте параллельного корпуса?

BLEU: числовая оценка перевода

До 2002 года оценка качества перевода требовала людей-экспертов - дорого и медленно. Papineni и соавторы предложили BLEU (Bilingual Evaluation Understudy): автоматическую метрику, коррелирующую с человеческими оценками. BLEU считает долю n-грамм из предсказанного перевода, которые встречаются в эталонном переводе. Штраф за краткость (brevity penalty) предотвращает мошенничество через очень короткие переводы. BLEU от 0 до 1, коммерческие системы достигают 0.4-0.5 на стандартных бенчмарках.

BLEU критикуют за слабую корреляцию с человеческим восприятием на уровне предложений - он работает лучше для корпуса из тысяч предложений. Современные альтернативы: COMET (нейронная метрика), BERTScore (семантическое сходство через BERT эмбеддинги), chrF (character n-gram F-score, лучше для морфологически богатых языков).

Почему BLEU = 1.0 (идеальный) не гарантирует, что перевод воспринимается людьми как идеальный?

Subword токенизация: BPE и SentencePiece

Немецкое слово 'Donaudampfschifffahrtsgesellschaft' (судоходное общество на Дунае) ломает word-level словари: оно встретится в тренировочном корпусе один раз и никогда - в тесте. Символьная токенизация решает OOV (out-of-vocabulary) проблему, но создаёт очень длинные последовательности. BPE (Byte Pair Encoding) находит золотую середину: итеративно объединяет самые частые пары символов в один токен. Словарь из 32-64 тысяч subword единиц покрывает любой язык без OOV.

SentencePiece от Google работает прямо с raw текстом без предварительной токенизации по пробелам - это критично для Chinese, Japanese, Thai. Используется в T5, ALBERT, XLNet. Unigram Language Model (альтернатива BPE в SentencePiece) выбирает токенизацию вероятностно, что даёт data augmentation эффект при обучении.

Почему BPE предпочтительнее word-level токенизации для машинного перевода?

Мультиязычный перевод: один model для 100 языков

Google в 2016 году показал, что единственная модель нейронного перевода, обученная на нескольких языках, превосходит отдельные двуязычные модели на малоресурсных языках. Причина: transfer learning между языками. Свахили -> Английский улучшается от добавления в обучение Французского -> Английского. Самый поразительный результат: модель начала переводить между языками, на которых не видела прямых примеров перевода (zero-shot translation). NLLB-200 от Meta (No Language Left Behind) поддерживает 200 языков, включая редкие.

Мультиязычные модели используют language token в начале входной последовательности: __en__ для английского, __fr__ для французского. Модель учится ассоциировать токен с целевым языком. Обратная сторона: capacity dilution - при фиксированном размере модели добавление языков снижает качество для каждого отдельного языка. Решение: conditional computation через Mixture of Experts (MoE).

Мультиязычная модель всегда хуже специализированной двуязычной модели для конкретной пары языков

Для высокоресурсных пар (EN-DE, EN-FR) специализированные модели действительно лучше, но для малоресурсных языков мультиязычная модель превосходит двуязычную за счёт transfer learning из богатых языков

Суахили-Английская модель видела лишь несколько сотен тысяч пар предложений. Мультиязычная модель переносит знания из миллиардов примеров на других языках - особенно полезны генетически близкие языки

Что такое zero-shot translation в контексте мультиязычных моделей?

Ключевые идеи

  • **Параллельный корпус** - основа обучения. Качество пар важнее объёма: зашумлённые данные снижают качество модели. Europarl, UN Corpus, Common Crawl - стандартные источники
  • **BLEU** - быстрая автоматическая метрика через сравнение n-грамм с эталоном. Для production: COMET или BERTScore дают лучшую корреляцию с человеческим восприятием
  • **BPE/SentencePiece** решает OOV проблему: любое слово раскладывается на subword части из фиксированного словаря 32-64K токенов. Мультиязычные модели через transfer learning особенно эффективны для редких языков

Связанные темы

Машинный перевод строится на фундаментальных NLP компонентах:

  • Sequence-to-Sequence и Attention — Encoder-decoder архитектура с attention - архитектурная основа современного машинного перевода
  • BERT и маскированные LM — BERT-based модели используются как энкодеры в гибридных системах перевода и для вычисления BERTScore

Вопросы для размышления

  • Как бы оценивали качество перевода для языка, на котором нет профессиональных лингвистов для создания эталонных переводов?
  • Почему специализированные переводчики (медицинский, юридический, технический) качественно отличаются от общего перевода, и как это учитывается при обучении моделей?
  • Мультиязычная модель создаёт 'универсальное пространство смыслов' между языками. Что это означает для теории Сепира-Уорфа о влиянии языка на мышление?

Связанные уроки

  • nlp-10 — Энкодер-декодер с вниманием - основа нейронного перевода
  • nlp-14 — T5 и BART формулируют перевод как text-to-text
  • nlp-01 — Subword токенизация обрабатывает редкие слова в разных языках
  • it-01 — BLEU и перплексия опираются на идеи теории информации
  • alg-31-edit-distance — Расстояние редактирования лежит в основе выравнивания и метрик
  • ml-01-intro
Machine Translation

0

1

Войти