Как работает переводчик нейросеть

0
23

Машинный перевод: как это работает

Источники

Системы НМП обучаются на крупных корпусах текстов, что придает им сходство с СМП, однако подход к обработке текста у них совершенно иной. В 2013 году Н. Калкбреннер и Ф. Блансом разработали модель, способную с применением сверточной нейросети-кодера преобразовать исходный текст в непрерывный вектор, а затем с помощью рекуррентной нейросети-декодера перевести этот вектор в текст на языке перевода. Год спустя К. Чо с коллегами предложили в качестве кодера использовать рекуррентные нейросети — по их мнению, РНС лучше подходят для обработки текста. Давайте посмотрим, как это работает.

НМП появился в 2016 году. На сегодняшний день это самое успешное программное обеспечение для перевода. Помимо того, что он смог снизить погрешность на 60 % — по сравнению со своим предшественником, статистическим машинным переводом (СМП), НМП также значительно быстрее работает.

В 1980-х годах появился машинный перевод на основе статистических моделей (СМП) — компьютер генерировал текст перевода с помощью параллельных корпусов на языках рабочей пары, выискивая наиболее частотные соответствия слов. Параллельный корпус — это множество пар «текст + перевод». Такие тексты можно выравнивать между собой по абзацам или предложениям. Когда это сделано, на текстах можно обучать статистические модели. Скажем, если у вас есть предложения со словом кошка в русских текстах, то будет огромное количество параллельных английских предложений, где это переводится как cat. Постепенно статистическая система сама обучится тому, что кошка — это cat. Более сложные системы учитывали с помощью статистики и контекст — чтобы научиться не переводить слово «кошки» как cats, если предыдущее слово — альпинистские. Статистический машинный перевод играл ключевую роль вплоть до начала XXI века. И на разных этапах развития этого подхода машина переводила по-разному: по словам, по фразам и на основе синтаксиса.

Постоянное совершенствование с учетом развития собственного языка означает, что НМП может использоваться для выполнения так называемых переводов Zero-Shot (при отсутствии примеров переводов). Это означает, что он может переводить с одного языка сразу на несколько других языков без использования английского языка в качестве промежуточного варианта. Как и в случае с людьми, к машинам, по-видимому, также применима фраза «Практика приводит к совершенству».

У статистического переводчика есть как достоинства, так и недостатки. С одной стороны, он хорошо запоминает редкие и сложные слова и фразы. Если они встречались в параллельных текстах, переводчик запомнит их и впредь будет переводить правильно. С другой стороны, результат перевода бывает похож на собранный пазл: общая картина вроде бы понятна, но если присмотреться, то видно, что она составлена из отдельных кусочков.

В течение последующих тридцати лет исследователи развивали машинный перевод на основе правил: предъявленный текст на исходном языке компьютер переводил с помощью правил и предварительно загруженных словарей. Системы дословного перевода, трансферные системы и системы перевода на примерах считаются разновидностями этого подхода.

ПОНИМАНИЕ КОНТЕКСТА

Как и статистический переводчик, нейронная сеть анализирует массив параллельных текстов и учится находить в них закономерности. Но при переводе нейросеть работает не со словами и фразами, а с более крупными единицами — предложениями. Она получает на вход предложение на одном языке, а на выходе выдаёт предложение на другом языке. Дробления на слова и фразы не происходит — в нём нет необходимости.

Именно такая система работала в Яндекс.Переводчике с момента его запуска в 2011 году. Через шесть лет у неё появился напарник — нейронная сеть. Она тоже обучается на огромном массиве текстов, но перевод в ней устроен немного по-другому. В чём-то нейросетевая модель сильнее статистической, в других аспектах — уступает ей. Работая вместе, они компенсируют недостатки друг друга.

Чтобы сравнить СМП и НМП, в 2016 году провели эксперимент на параллельном корпусе ООН — это 15 языковых пар и 30 направлений перевода. Результаты оценивали с помощью шкалы BLEU (оценивает близость машинного перевода к эталонному человеческому, выполненному профессиональным переводчиком), и по качеству перевода нейросеть не уступала или превосходила СМП во всех 30 направлениях. Исследователи пришли к выводу, что нейросеть делает меньше морфологических и синтаксических ошибок.

ЧИТАТЬ ТАКЖЕ:  Нейросеть которая рисует слова

Сейчас архитектура «кодер-декодер» на основе РНС, встроенный механизм внимания и длительная кратковременная память (LSTM) — обязательный минимум для среднестатистического онлайн-переводчика (хотя в июне 2017 года появилась новая модель, в которой используются только механизмы внимания). Кроме того, в некоторых системах стали внедрять механизм краудсорсинга. Тот же Google Translate предлагает пользователю отметить наиболее удачный вариант перевода и запоминает самые часто выбираемые из них.

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

Удачным этот опыт можно считать лишь с некоторыми оговорками. Система была построена на простом наборе правил, могла переводить только очень небольшой набор фраз и работала очень долго. Однако Джорджтаунский эксперимент привлек внимание к вопросу машинного перевода. Многие поверили, что еще пара лет — и наступит эра искусственного интеллекта. Правительство, военные и частные корпорации начали щедро вливать деньги в разработки.

ИСКУССТВЕННЫЙ ЯЗЫК

В Яндекс.Переводчике свои варианты перевода генерируют обе модели, а потом специальный алгоритм оценивает/отбирает/комбинирует их и выдает результат. Эксперименты показывают, что переключение модели часто зависит от длины текста и того, есть ли в нем полные предложения — на совсем коротких примерах нейросети иногда еще проигрывают классической статистике. Легкий способ переключиться с обычной статистической модели на нейросеть — добавить точку:

Несмотря на то, что машинный перевод в последние годы уже сделал большие шаги, ему пока не удается достичь литературного стандарта. Генри Джеймс подчеркивал важность понимания текста на языке оригинала, заметив, что идеальным литературным переводчиком должен быть «человек, от которого ничто не ускользает». По крайней мере, в случае с литературой машинам, чтобы соответствовать этому идеалу, предстоит пройти еще очень длинный путь.

Как и мозг, расшифровывающий различную информацию, эта искусственная нейронная сеть смотрит на получаемую информацию и генерирует следующее слово на основе предыдущего. Со временем она выучит, на каких словах следует сосредоточиться и, опираясь на существующие примеры, определит, какой контекст имеет основополагающее значение. Этот метод представляет собой один из видов многоуровневого обучения и способствует тому, что система заучивает все больше и больше данных и постоянно совершенствуется. В НМП расшифровка контекста называется «выравниванием», оно происходит с помощью механизма Attention («Внимание»), который занимает в системе промежуточное место между шифрованием и дешифрованием.

Такой подход позволяет учесть смысловые связи внутри предложения — иными словами, понять его контекст. Слова и фразы не существуют в вакууме — они сочетаются с другими словами и фразами, образуя новые смыслы. Нейросеть улавливает смыслы даже в случае, если слова, которые их передают, находятся в разных частях предложения. Важность контекста сложно переоценить — именно на него в первую очередь обращают внимание люди-переводчики.

Модели на нейронных сетях отлично справляются с обработкой естественной информации, например голоса или картинок. Задача перевода — превратить текст на одном языке в текст на другом языке, сохранив содержание и смысл. Текст — это тоже естественная информация, поэтому для нейронной сети такая задача вполне по силам.

1. Нейросеть-кодер добавляет к уже существующему (предварительно полученному) представлению для пробела E») представление первого слова e(«мой») и получает E(«Мой»).
2. Затем нейросеть-кодер добавляет к E(«Мой») векторное представление e(«рейс») и получает E(«Мой рейс»).
3. На следующих этапах к E(«Мой рейс») кодер добавляет e(«был») и получает E(«Мой рейс был») — и так до тех пор, пока не выдаст представление всего предложения — E(«Мой рейс был задержан.»).

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь