что такое машинный перевод
Linguis
Изучение языков как хобби
Что такое машинный перевод и где он используется
За последние десятилетия компьютер, подключённый к интернету, стал самым главным инструментом переводчика. Ведь благодаря ему обеспечивается доступ к огромным объёмам информации, а также к электронным словарям и переводчикам. Машинный перевод сегодня стал повседневностью.
Термином «машинный перевод» (МП, он же Machine Translation или MT) называют действие, когда один естественный язык переводится на другой с использованием для этого специального программного обеспечения. Программа при этом может быть установлена непосредственно на компьютере (или мобильном устройстве) или быть доступной только при подключении к интернету.
Немного истории
Идея задействовать для перевода вычислительное устройство появилась ещё в 1947 году. Но реализация подобного в те годы была просто невозможна, поскольку вычислительная техника находилась в зачаточном состоянии. Однако уже в 1954 году была предпринята первая попытка машинного перевода. Самый первый словарь включал в себя только 250 слов, а грамматика исчерпывалась 6-ю правилами. Тем не менее, этого оказалось достаточно, чтобы убедиться в большом будущем машинного перевода. Работы в данном направлении начались во многих странах, стали появляться первые системы машинного перевода (СМП), создаваться специальные теории.
В начале развитию машинного перевода мешал низкий уровень вычислительной техники, её очень высокая стоимость. Однако постепенное проникновение в нашу жизнь сначала персональных компьютеров, а затем и интернета, привело к стремительному развитию этой отрасли. Сегодня машинный перевод активно используется в самых разных сферах человеческой деятельности.
Кому это нужно
Развитию машинного перевода способствовало расширение международных отношений. Люди стали чаще ездить в другие страны, выход бизнеса за рубеж перестал быть чем-то исключительным, даже по меркам небольших компаний. А раз так, то всё чаще возникают трудности в общении. Как следствие, машинный перевод сегодня всё чаще используется в бизнесе. Пусть даже результат переводов, предоставляемых компьютером, далёк от идеального, это всё же лучше, чем вообще ничего.
При помощи СМП появляется возможность очень быстро понять содержимое больших объёмов текстов, что просто невозможно при традиционном подходе. Это может быть очень полезно, например, при необходимости классификации большого количества информации на иностранном языке. Или для проведения лингвистического анализа.
Также МП стал обычным явлением при общении в интернете, когда очень важна высокая скорость перевода, понимания того, что сказал вам собеседник. Впрочем, о передаче литературных образов в таком случае можно смело забыть, если вы хотите, чтобы вас правильно понимали. Только «сухие» фразы, без каких-либо двусмысленностей.
Участие человека
Несмотря на создание различных подходов и решение вопросов с вычислительными мощностями, качество машинного перевода всё ещё далеко от идеального. Пусть даже успехи в этом деле и можно назвать впечатляющими, но только по сравнению с самыми первыми системами.
Современные СМП уже научились более-менее достойно переводить технические тексты, которые, как известно, не содержат в себе тех литературных вольностей, так часто встречающихся в текстах художественных. На качество перевода сильное влияние оказывает родственность языков. Например, при переводе с польского на украинский результат будет куда более достойным, чем с норвежского на корейский. Во втором случае полученный текст может оказаться просто нечитабельной бессмыслицей.
По этой причине машинный перевод пока не может обходиться без участия человека. Который либо изначально адаптирует текст, устраняя все возможные двусмысленности (предредактирование), либо редактирует уже готовый перевод, убирая из него почти неизбежные ошибки (постредактирование). Существует также и понятие интерредактирования, когда человек непосредственно вмешивается в работу системы, исправляя возникающие неточности «на лету».
Какие бывают СМП
На сегодняшний день работы в сфере МП разделились на два основных направления:
В первом случае перед нами самообучающиеся системы. Перевод становится возможным в результате постоянного анализа огромного количества текстов одинакового содержания, но на разных языках. Система находит и использует всегда существующие закономерности. Качество перевода в случае использования SMT считается достаточно высоким. Но только в том случае, если система уже успела проанализировать огромное количество информации. А для этого необходимо обладать не только самими тестами, но и внушительными вычислительными мощностями. Это означает, что работать в данном направлении могут только крупные компании. Примеры таких систем: Google Translator, Яндекс.Переводчик, а также Bing Translator от Microsoft.
В случае с RBMT-системами все правила создаются людьми, которые затем занимаются их непрестанным «обкатыванием». Соответственно качество результата зависит от того, насколько полно лингвисты сумеют описать естественный язык, с которым они работают. Именно необходимость постоянной поддержки созданной лингвистической базы данных в актуальном состоянии и является главным недостатком RBMT-систем. Зато для создания переводчика, способного обеспечить удовлетворительный результат, не требуются внушительные вычислительные мощности, что позволяет работать в данном направлении небольшим компаниям. В качестве примеров можно привести такие системы, как Multillect, Linguatec и PROMT.
Можно также выделить ещё и третий вариант: гибридный машинный перевод (Hybrid Machine Translation, HMT). Этот метод объединяет в себе оба подхода, SMT и RBMT. В теории такой подход позволяет получить преимущества обеих технологий. Именно его использует компания Systran, основанная в 1968 году и считающаяся старейшим коммерческим предприятием, работающим в сфере МП.
Для чего и для кого годится машинный перевод?
Илон Маск не тратит время своих детей на изучение иностранных языков. Он верит, что они-то – уж точно доживут до фантастически достоверного и полезного машинного перевода. Действительно, у нас на глазах научная фантастика становится реальностью: «умные» дома встречают нас с работы горячим ужином, голосовые помощники шутят с нами в чатах, а антропоморфные роботы поддерживают диалог на нескольких языках. Так когда же уже равноценный человеку переводчик появится в каждом смартфоне?
Никогда! Или очень нескоро – вот первая неутешительная новость. Дело в том, что люди, владеющие языками, способны передавать смысл написанного своими словами, не привязываясь к структуре исходника. Машины же переводят пословно или пофразово и научить их оперировать не словами, а образами – это все равно, что изобрести искусственный интеллект. Что значит «оперировать образами?» Это значит – понимать переводимый текст, интерпретировать его. То есть, ни больше, ни меньше – обладать сознанием.
Хорошая новость в том, что за более чем 70 лет существования машинного перевода мы уже прошли довольно большой путь от статистических методов до искусственных нейронных сетей.
Сети умеют читать предложения и слева направо, и справа налево, побуквенно транслитерируют собственные имена и вместо того, чтобы запоминать множество вариантов перевода, оперируют семантикой целого текста, разбивая его на сегменты, после чего анализируют и синтезируют их. Результат получается достойный, причем, в некоторых случаях, система переводит даже фразеологизмы.
Нейронные сети не справляются
Язык – это очень гибкая система с неограниченным набором размытых правил. И хотя нейронные сети уже схватывают семантические и синтаксические связи в предложениях и даже распознают акцент говорящего, они не умеют (и, скорее всего, не научатся) учитывать культурологические, когнитивные, литературные и прочие аспекты перевода. Иными словами, контекст может кардинальным образом нарушить коммуникацию, потому что:
Компьютер не может понять культуру:
Компьютер плохо переводит идиомы:
Компьютер не способен передать эмоции песен и стихов:
Эмоционально-окрашенные тексты, фразеологические обороты, культурный подтекст – это тоже не к машине:
Договоры, гарантийные письма, маркетинговые материалы, медицинские документы, ошибка в которых может стоить кому-то жизни – это не к машине:
Рекламные лозунги, любые художественные тексты – это слишком тяжело, многозначно и не формализовано для машинного перевода. Да и сам термин «перевод» по отношению к литературному тексту, вероятно, не вполне корректен. Здесь задача переводчика – не декодировать текст, а найти эквивалентную по значению лексику в языке перевода. Переводчик работает со смыслами, а не со словами и в работе полагается на литературное чутье:
Ведь земля совершает оборот за двадцать четыре часа…
– Оборот? – повторила Герцогиня задумчиво.
И, повернувшись к кухарке, прибавила:
– Возьми-ка ее в оборот! Для начала оттяпай ей голову!
Доверяя машине, мы отрезаем от текстов всю потрясающую лингвистическую игру, на которой строится юмор известных шоу, фильмов и сериалов, из которой вырастает сентиментальное послевкусие любимых песен:
Для чего и для кого годится машинный перевод?
Для не знающих язык людей, которым нужно в самых общих чертах понять содержание какого-то текста. Для переводчиков, которым необходим «шаблон» для редактирования. Ну, и конечно, для бизнеса, которому нужно ускорять процессы межкультурных коммуникаций.
Другое дело, что машинный перевод все равно придется редактировать человеку, а для этого нужно уметь замечать и исправлять ошибки, сделанные машиной. Это отдельный трудоемкий процесс, который требует специфического навыка. Этот навык – базовый для филолога, а вот обычного студента обучить ему почти так же трудозатратно, как… английскому языку в степени, необходимой для понимания большинства текстов.
Какие выводы?
Машинный перевод может послужить хорошим бойцом в формальной деловой переписке, но предаст вас в живой коммуникации. Полагаясь на машинный перевод, мы вообще лишаем себя элементарной радости общения, ведь никто не хочет разговаривать со смартфоном – во всяком случае, пока он не торчит на месте вашей собственной головы. Но такого нам даже научная фантастика не предсказывала.
Делая ставку на машинный перевод, мы фактически ставим на скорое появление сознания у компьютеров, подобного человеческому. То есть, самосознания, позволившего бы машине понять, что именно она «читает» и перевести это по-человечески. Все ли процессы человеческого мозга можно свести к алгоритмам? Маловероятно, что этот вопрос будет решен в ближайшее время. А вот изучение английского языка с применением всех достижений научного прогресса – вещь быстрая и результативная.
Для тех, кто не готов променять теплое живое общение с прекрасными людьми по всему миру на бездушный машинный перевод, мы кое-что приготовили. По ссылке – запись на бесплатное занятие по английскому языку в школе Skyeng. Введите при регистрации промокод HABR2: в подарок добавятся 2 урока при первой оплате.
Как работает нейронный машинный перевод?
Описание процессов машинного перевода основанного на базе правил (Rule-Based), машинного перевода на базе фраз (Phrase-Based) и нейронного перевода
В этой публикации нашего цикла step-by-step статей мы объясним, как работает нейронный машинный перевод и сравним его с другими методами: технологией перевода на базе правил и технологией фреймового перевода (PBMT, наиболее популярным подмножеством которого является статистический машинный перевод — SMT).
Результаты исследования, полученные Neural Machine Translation, удивительны в части того, что касается расшифровки нейросети. Создается впечатление, что сеть на самом деле «понимает» предложение, когда переводит его. В этой статье мы разберем вопрос семантического подхода, который используют нейронные сети для перевода.
Давайте начнем с того, что рассмотрим методы работы всех трех технологий на различных этапах процесса перевода, а также методы, которые используются в каждом из случаев. Далее мы познакомимся с некоторыми примерами и сравним, что каждая из технологий делает для того, чтобы выдать максимально правильный перевод.
Очень простой, но все же полезной информацией о процессе любого типа автоматического перевода является следующий треугольник, который был сформулирован французским исследователем Бернардом Вокуа (Bernard Vauquois) в 1968 году:
В этом треугольнике отображен процесс преобразования исходного предложения в целевое тремя разными путями.
Левая часть треугольника характеризует исходный язык, когда как правая — целевой. Разница в уровнях внутри треугольника представляет глубину процесса анализа исходного предложения, например синтаксического или семантического. Теперь мы знаем, что не можем отдельно проводить синтаксический или семантический анализ, но теория заключается в том, что мы можем углубиться на каждом из направлений. Первая красная стрелка обозначает анализ предложения на языке оригинала. Из данного нам предложения, которое является просто последовательностью слов, мы сможем получить представление о внутренней структуре и степени возможной глубины анализа.
Например, на одном уровне мы можем определить части речи каждого слова (существительное, глагол и т.д.), а на другом — взаимодействие между ними. Например, какое именно слово или фраза является подлежащим.
Когда анализ завершен, предложение «переносится» вторым процессом с равной или меньшей глубиной анализа на целевой язык. Затем третий процесс, называемый «генерацией», формирует фактическое целевое предложение из этой интерпретации, то есть создает последовательность слов на целевом языке. Идея использования треугольника заключается в том, что чем выше (глубже) вы анализируете исходное предложение, тем проще проходит фаза переноса. В конечном итоге, если бы мы могли преобразовать исходный язык в какой-то универсальный «интерлингвизм» во время этого анализа, нам вообще не нужно было бы выполнять процедуру переноса. Понадобился бы только анализатор и генератор для каждого переводимого языка на любой другой язык (прямой перевод прим. пер.)
Эта общая идея и объясняет промежуточные этапы, когда машина переводит предложения пошагово. Что еще более важно, эта модель описывает характер действий во время перевода. Давайте проиллюстрируем, как эта идея работает для трех разных технологий, используя в качестве примера предложение «The smart mouse plays violin» (Выбранное авторами публикации предложение содержит небольшой подвох, так как слово «Smart» в английском языке, кроме самого распространенного смысла «умный», имеет по словарю в качестве прилагательного еще 17 значений, например «проворный» или «ловкий» прим. пер.)
Машинный перевод на базе правил
Машинный перевод на базе правил является самым старым подходом и охватывает самые разные технологии. Однако, в основе всех их обычно лежат следующие постулаты:
Тут мы видим несколько простых уровней анализа:
Применение этих правил приведет к следующей интерпретации на целевом языке перевода:
Тогда как правила генерации на французском будут иметь следующий вид:
Машинный перевод на базе фраз
Машинный перевод на базе фраз — это самая простая и популярная версия статистического машинного перевода. Сегодня он по-прежнему является основной «рабочей лошадкой» и используется в крупных онлайн-сервисах по переводу.
Выражаясь технически, машинный перевод на базе фраз не следует процессу, сформулированному Вокуа. Мало того, в процессе этого типа машинного перевода не проводится никакого анализа или генерации, но, что более важно, придаточная часть не является детерминированной. Это означает, что технология может генерировать несколько разных переводов одного и того же предложения из одного и того же источника, а суть подхода заключается в выборе наилучшего варианта.
Эта модель перевода основана на трех базовых методах:
Далее из этой таблицы генерируются тысячи возможных вариантов перевода предложения, например:
Однако благодаря интеллектуальным вычислениям вероятности и использованию более совершенных алгоритмов поиска, будет рассмотрен только наиболее вероятные варианты перевода, а лучший сохранится в качестве итогового.
В этом подходе целевая языковая модель крайне важна и мы можем получить представление о качестве результата, просто поискав в Интернете:
Поисковые алгоритмы интуитивно предпочитают использовать последовательности слов, которые являются наиболее вероятными переводами исходных с учетом таблицы изменения порядка. Это позволяет с высокой точностью генерировать правильную последовательность слов на целевом языке.
В этом подходе нет явного или неявного лингвистического или семантического анализа. Нам было предложено множество вариантов. Некоторые из них лучше, другие — хуже, но, на сколько нам известно, основные онлайн-сервисы перевода используют именно эту технологию.
Нейронный машинный перевод
Подход к организации нейронного машинного перевода кардинально отличается от предыдущего и, опираясь на треугольник Вокуа, его можно описать следующим образом:
Нейронный машинный перевод имеет следующие особенности:
Последовательность исходных контекстов (ContextS 1,… ContextS 5) являет внутренней интерпретацией исходного предложения по треугольнику Вокуа и, как упоминалось выше, представляет из себя последовательность чисел с плавающей запятой (обычно 1000 чисел с плавающей запятой, связанных с каждым исходным словом). Пока мы не будем обсуждать, как кодировщик выполняет это преобразование, но хотелось бы отметить, что особенно любопытным является первоначальное преобразование слов в векторе «float».
На самом деле это технический блок, как и в случае с основанной на правилах системой перевода, где каждое слово сначала сравнивается со словарем, первым шагом кодера является поиск каждого исходного слова внутри таблицы.
Предположим, что вам нужно вообразить разные объекты с вариациями по форме и цвету в двумерном пространстве. При этом объекты, находящиеся ближе всего друг к другу должны быть похожи. Ниже приведен пример:
На оси абсцисс представлены фигуры и там мы стараемся поместить наиболее близкие по этому параметру объекты другой формы (нам нужно будет указать, что делает фигуры похожими, но в случае этого примера это кажется интуитивным). По оси ординат располагается цвет — зеленый между желтым и синим (расположено так, потому что зеленый является результатом смешения желтого и синего цветов, прим. пер.) Если бы у наших фигур были разные размеры, мы бы могли добавить этот третий параметр следующим образом:
Если мы добавим больше цветов или фигур, мы также сможем увеличить и число измерений, чтобы любая точка могла представлять разные объекты и расстояние между ними, которое отражает степень их сходства.
Основная идея в том, что это работает и в случае размещения слов. Вместо фигур есть слова, пространство намного больше — например, мы используем 800 измерений, но идея заключается в том, что слова могут быть представлены в этих пространствах с теми же свойствами, что и фигуры.
Следовательно, слова, обладающие общими свойствами и признаками будут расположены близко друг к другу. Например, можно представить, что слова определенной части речи — это одно измерение, слова по признаку пола (если таковой имеется) — другое, может быть признак положительности или отрицательности значения и так далее.
Мы точно не знаем, как формируются эти вложения. В другой статье мы будем более подробно анализировать вложения, но сама идея также проста, как и организация фигур в пространстве.
Вернемся к процессу перевода. Второй шаг имеет следующий вид:
На этом этапе формируется полная последовательность с упором на «исходный контекст», после чего один за другим целевые слова генерируются с использованием:
Весь процесс, несомненно, весьма загадочен и нам потребуется несколько публикаций, чтобы рассмотреть работу его отдельных частей. Главное, о чем следует помнить — это то, что операции процесса нейронного машинного перевода выстроены в той же последовательности, что и в случае машинного перевода на базе правил, однако характер операций и обработка объектов полностью отличается. И начинаются эти отличия с преобразования слов в векторы через их вложение в таблицы. Понимания этого момента достаточно для того, чтобы осознать, что происходит в следующих примерах.
Примеры перевода для сравнения
Давайте разберем некоторые примеры перевода и обсудим, как и почему некоторые из предложенных вариантов не работают в случае разных технологий. Мы выбрали несколько полисемических (т.е. многозначных, прим. пер.) глаголов английского языка и изучим их перевод на французский.
Мы видим, что машинный перевод на базе фраз, интерпретирует «render» как смысл — за исключением очень идиоматического варианта «оказание помощи». Это можно легко объяснить. Выбор значения зависит либо от проверки синтаксического значения структуре предложения, либо от семантической категории объекта.
Для нейронного машинного перевода видно, что слова «help» и «assistance» обрабатываются правильно, что показывает некоторое превосходство, а также очевидную способность этого метода получать синтаксические данные на большом расстоянии между словами, что мы более детально рассмотрим в другой публикации.
На этом примере опять видно, что нейронный машинный перевод имеет семантические различия с двумя другими способами (в основном они касаются одушевленности, обозначает слово человека или нет).
Однако отметим, что было неправильно переведено слово «rounds», которое в данном контексте имеет значение слова «bullet». Мы объясним этот типа интерпретации в другой статье, посвященной тренировке нейронных сетей. Что касается перевода на базе правил, то он распознал только третий смысл слова «rounds», который применяется в отношении ракет, а не пуль.
Выше еще один интересный пример того, как смысловые вариации глагола в ходе нейронного перевода взаимодействуют с объектом в случае однозначного употребления предлагаемого к переводу слова (crime или destination).
Другие варианты со словом «crime» показали тот же результат…
Переводчики работающие на базе слов и фраз так же не ошиблись, так как использовали те же глаголы, приемлемые в обоих контекстах.