Разное

Переводчик нейронный: О машинном переводе. Руководство разработчика

Содержание

Компания Яндекс — Технологии — Машинный перевод

Каждый день сайт и приложение Яндекс.Переводчик помогают миллионам людей разобраться с чем-нибудь по учёбе, сделать покупку на иностранном сайте, понять, что написано на табличке в незнакомом городе или о чём поют в их любимых песнях. Полностью устранить языковой барьер Переводчик пока не может (хотя в перспективе мы хотим добиться именно этого), но уже сейчас сильно помогает через него перешагнуть. Он умеет переводить почти с сотни языков, включая те, на которых говорят малые народы и даже эльфы. Как он это делает?

Есть много способов обучить машину переводить с одного языка на другой. Например, можно дать ей словари и грамматики разных языков: с их помощью она освоит правила. Или можно показать ей много параллельных текстов — то есть таких, в которых одно и то же написано на разных языках. Сравнивая их, машина научится находить соответствия — например, поймёт, что слова dog и собака являются вероятными переводами друг друга. В основе такого подхода лежат не правила, а статистика, поэтому он называется статистическим.

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

Статистический перевод

Статистическая модель разделяет предложение, которое нужно перевести, на отдельные слова и фразы, перебирает все варианты перевода для каждого фрагмента и взвешивает вероятность каждого из них. Делает он это исходя из того, как часто встречался тот или иной вариант перевода в текстах, на которых она училась. Например, spring — с большей вероятностью весна, чем пружина. Статистическая модель помнит и о том, вместе с какими словами обычно встречается слово: если рядом со spring стоит прилагательное early, то речь, должно быть, о весне; если metal — скорее, о пружине. Руководствуясь этой логикой, модель составляет несколько вариантов переводов всего предложения целиком и выбирает из них тот, в котором содержатся фрагменты с наибольшим вероятностным весом и фрагменты которого сочетаются лучше всего.

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

Нейросетевой перевод

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

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

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

Поскольку нейросеть работает не с фрагментами, а с предложениями целиком, перевод получается более связным и «гладким». Чтобы избежать несогласований — например, папа пошла или сильный боль, — Яндекс.Переводчик проводит дополнительную проверку. Предложение, переведённое нейросетью, проходит через модель языка. Если в перевод вкрались грамматические ошибки, модель их исправит.

Гибридная система

У нейросетевого перевода тоже есть свои недостатки. Если по каким-то причинам нейронной сети трудно перевести то или иное предложение — а такое время от времени случается, — она поведёт себя примерно как студент на экзамене: начнёт что-то выдумывать от себя в надежде угадать правильный ответ.

Кроме того, нейросеть не всегда хорошо справляется с переводом мало распространённых имён, топонимов и других редких слов. Зато для статистического перевода, как вы помните, это нетрудная задача — если слово было в параллельных текстах, машина его запомнит. Поэтому в Яндекс.Переводчике используется гибридная система, которая объединяет статистический и нейросетевой перевод.

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

Сейчас гибридная система используется только для самого популярного направления перевода — с английского на русский, на него приходится около 80% запросов пользователей. В дальнейшем она включится и для других направлений — пока на них работает статистическая модель.


Владельцы сайтов и приложений могут добавить в свои продукты статистический перевод Яндекса с помощью API.

Как работает нейросеть Google Translate. Читайте на Cossa.ru


Google Translate по праву считается машинным переводчиком № 1 в мире. Сервис поддерживает работу со 103 языками и каждый день обрабатывает около 500 миллионов запросов.


В 2016 году Google представила систему нейронного машинного перевода (GNMT), которая использует искусственную нейронную сеть для улучшения качества перевода.


Действительно ли перевод стал лучше с её помощью? Давайте узнаем!

Тонкости нейронного перевода: как это работает


Нейронная модель машинного перевода использует иные принципы работы с текстом, чем стандартный статистический метод перевода.


До появления нейронных сетей перевод проводился пословно — система переводила отдельные слова и фразы с учётом грамматики. Поэтому при сложных оборотах или длинных предложениях качество перевода оставляло желать лучшего.


GNMT же переводит предложение целиком, учитывая контекст. Система не запоминает сотни вариантов перевода фраз — она оперирует семантикой текста.


При переводе предложение разбивается на словарные сегменты. Затем с помощью специальных декодеров система определяет «вес» каждого сегмента в тексте. Далее вычисляется максимально вероятные значения и перевод сегментов. Последний этап — соединить переведённые сегменты с учётом грамматики.

Свяжите сервисы между собой без программистов за 5 минут!

Cossa рекомендует использовать ApiX-Drive для самостоятельной интеграции разных сервисов между собой. Доступно 200+ готовых интеграций!

  • Автоматизируйте работу интернет-магазина или лендинга;
  • Расширяйте возможности за счёт интеграций;
  • Не тратьте деньги на программистов и интеграторов;
  • Экономьте время за счёт автоматизации рутинных задач.

Бесплатно протестируйте работу сервиса прямо сейчас и начните экономить до 30% времени!
Перейти


Реклама


Отрывок из презентации GNMT, в котором показано, как нейронная сеть переводит предложение с китайского языка, разбивая его на смысловые сегменты

Как действует алгоритм переводчика


Чтобы понять принципы работы нейронного перевода от Google, давайте немного углубимся в технические детали.


В основе Google Neural Machine Translation лежит принцип работы рекуррентных двунаправленных нейронных сетей (Bidirectional Recurrent Neural Networks), работающих с матричными вычислениями вероятности.


Разберём подробнее, что всё это значит.


«Рекуррентный» говорит, что система вычисляет значение слова или фразы на основе предыдущих значений в последовательности. Именно это позволяет системе учитывать контекст и правильно выбирать среди разных вариантов перевода.


К примеру, в словосочетании «лук из красного дерева» слово «лук» система переведёт как «bow», а не «onion».


Двунаправленность означает, что нейросеть разделена на два потока — анализирующий и синтезирующий. Каждый поток состоит из восьми слоёв, которые и проводят векторный анализ.


Первый поток разбивает предложение на смысловые элементы и анализирует их, а второй высчитывает наиболее вероятный вариант перевода, исходя из контекста и модулей внимания.


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


В нейронной системе наименьшим элементом является не слово, а фрагменты слова. Это позволяет сосредоточить вычислительные мощности не на словоформах, а на контексте и смыслах предложения. GNMT использует около 32 000 таких фрагментов. По словам разработчиков, это позволяет обеспечить высокую скорость и точность перевода без потребления чрезмерных вычислительных мощностей.


Анализ фрагментов сильно уменьшает риски неточного перевода слов и словосочетаний с различными суффиксами, префиксами и окончаниями.


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


Но это ещё не всё. Нейросеть может работать и побуквенно. К примеру, при транслитерации имен собственных с одного алфавита на другой.

Статистика: действительно ли стало лучше?


С момента запуска системы GNMT прошло 2 года, поэтому можно оценить результаты.


Почему именно сейчас? Дело в том, что нейронная система работает без установленной базы данных, и ей требуется время, чтобы построить и скорректировать методы перевода.


К примеру, настройка машинной модели перевода, которая использует статистические методы, занимает от 1 до 3 дней. При этом построение нейронной модели такого же размера займёт больше 3 недель.


Примечательно, что при увеличении базы время на обработку статистической модели растёт в арифметической прогрессии, а для нейронной сети — в геометрической. Чем больше база, тем больше разрыв во времени.


А если учесть, что Google Translate работает с 10 000 языковых пар (103 языка), то понятно, что адекватные итоги можно подводить только сейчас.


В ноябре 2016 года после полного окончания обучения системы и официального запуска аналитики Google представили подробный анализ результатов GNMT. Из него следует, что улучшения в точности перевода несущественные — в среднем 10%.


Наибольший прирост дали самые популярные языковые пары вроде испанский-английский или французский-английский — с результатом точности в 85–87%.


В 2017 компания Google проводила масштабные опросы пользователей Google Translate: их просили оценить 3 варианта переводов: машинный статистический, нейронный и человеческий. Здесь результаты оказались более интересными. Перевод с помощью нейросетей в некоторых языковых парах оказался очень приближён к человеческому.











Статистическая модель

Нейронная сеть

Человеческий перевод



Английский — Испанский

4,885

5,428

5,550



Английский — Французский

4,932

5,295

5,496



Английский — Китайский

4,035

4,594

4,987



Испанский — Английский

4,872

5,187

5,372



Французский — Английский

5,046

5,343

5,404



Китайский — Английский

3,694

4,263

4,636


За основу взята 6-балльная система оценивания качества перевода.  6 — максимальная оценка, 0 — минимальная


Как видите, качество перевода в языковых парах «английский-испанский» и «французский-английский» практически соответствует человеческому. Но это и не странно, ведь именно на этих языковых парах происходило глубокое обучение алгоритмов.


Вот те же результаты в графическом отображении, чтобы вы наглядно увидели разницу со стандартным машинным переводом.


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


При этом стоит заметить, что разработчики при запуске нейронной сети не пытались достичь максимальной точности перевода. Всё потому, что он потребовал бы сложных эвристических конструкций, а это сильно снизило бы скорость работы системы. Разработчики постарались найти баланс между точностью и скоростью работы. На наше субъективное мнение, это у них получилось.


И небольшой бонус напоследок


Специалисты утверждают, что если нейронная система Google Translate научится оперировать не только текстами, но также и аудио- и видеофайлами, то в таком случае нужно ожидать резкий скачок в развитии машинного перевода. Первые шаги в этих сферах уже сделаны, активно ведутся разработки новых алгоритмов для анализа видео и аудио. Поэтому пользователи могут уже в ближайшие несколько лет ожидать новых сюрпризов от Google.


Читайте также: 9 малоизвестных, но полезных функций переводчика Google


Тизер: © Kylli Sparre


Мнение редакции может не совпадать с мнением автора. Ваши статьи присылайте нам на [email protected]. А наши требования к ним — вот тут.

Как работает нейросеть Google Translate. Читайте на Cossa. ru


Google Translate по праву считается машинным переводчиком № 1 в мире. Сервис поддерживает работу со 103 языками и каждый день обрабатывает около 500 миллионов запросов.


В 2016 году Google представила систему нейронного машинного перевода (GNMT), которая использует искусственную нейронную сеть для улучшения качества перевода.


Действительно ли перевод стал лучше с её помощью? Давайте узнаем!

Тонкости нейронного перевода: как это работает


Нейронная модель машинного перевода использует иные принципы работы с текстом, чем стандартный статистический метод перевода.


До появления нейронных сетей перевод проводился пословно — система переводила отдельные слова и фразы с учётом грамматики. Поэтому при сложных оборотах или длинных предложениях качество перевода оставляло желать лучшего.


GNMT же переводит предложение целиком, учитывая контекст. Система не запоминает сотни вариантов перевода фраз — она оперирует семантикой текста.


При переводе предложение разбивается на словарные сегменты. Затем с помощью специальных декодеров система определяет «вес» каждого сегмента в тексте. Далее вычисляется максимально вероятные значения и перевод сегментов. Последний этап — соединить переведённые сегменты с учётом грамматики.


Отрывок из презентации GNMT, в котором показано, как нейронная сеть переводит предложение с китайского языка, разбивая его на смысловые сегменты

Как действует алгоритм переводчика


Чтобы понять принципы работы нейронного перевода от Google, давайте немного углубимся в технические детали.


В основе Google Neural Machine Translation лежит принцип работы рекуррентных двунаправленных нейронных сетей (Bidirectional Recurrent Neural Networks), работающих с матричными вычислениями вероятности.


Разберём подробнее, что всё это значит.


«Рекуррентный» говорит, что система вычисляет значение слова или фразы на основе предыдущих значений в последовательности. Именно это позволяет системе учитывать контекст и правильно выбирать среди разных вариантов перевода.


К примеру, в словосочетании «лук из красного дерева» слово «лук» система переведёт как «bow», а не «onion».


Двунаправленность означает, что нейросеть разделена на два потока — анализирующий и синтезирующий. Каждый поток состоит из восьми слоёв, которые и проводят векторный анализ.


Первый поток разбивает предложение на смысловые элементы и анализирует их, а второй высчитывает наиболее вероятный вариант перевода, исходя из контекста и модулей внимания.


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


В нейронной системе наименьшим элементом является не слово, а фрагменты слова. Это позволяет сосредоточить вычислительные мощности не на словоформах, а на контексте и смыслах предложения. GNMT использует около 32 000 таких фрагментов. По словам разработчиков, это позволяет обеспечить высокую скорость и точность перевода без потребления чрезмерных вычислительных мощностей.


Анализ фрагментов сильно уменьшает риски неточного перевода слов и словосочетаний с различными суффиксами, префиксами и окончаниями.


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


Но это ещё не всё. Нейросеть может работать и побуквенно. К примеру, при транслитерации имен собственных с одного алфавита на другой.

Статистика: действительно ли стало лучше?


С момента запуска системы GNMT прошло 2 года, поэтому можно оценить результаты.


Почему именно сейчас? Дело в том, что нейронная система работает без установленной базы данных, и ей требуется время, чтобы построить и скорректировать методы перевода.


К примеру, настройка машинной модели перевода, которая использует статистические методы, занимает от 1 до 3 дней. При этом построение нейронной модели такого же размера займёт больше 3 недель.


Примечательно, что при увеличении базы время на обработку статистической модели растёт в арифметической прогрессии, а для нейронной сети — в геометрической. Чем больше база, тем больше разрыв во времени.


А если учесть, что Google Translate работает с 10 000 языковых пар (103 языка), то понятно, что адекватные итоги можно подводить только сейчас.


В ноябре 2016 года после полного окончания обучения системы и официального запуска аналитики Google представили подробный анализ результатов GNMT. Из него следует, что улучшения в точности перевода несущественные — в среднем 10%.


Наибольший прирост дали самые популярные языковые пары вроде испанский-английский или французский-английский — с результатом точности в 85–87%.


В 2017 компания Google проводила масштабные опросы пользователей Google Translate: их просили оценить 3 варианта переводов: машинный статистический, нейронный и человеческий. Здесь результаты оказались более интересными. Перевод с помощью нейросетей в некоторых языковых парах оказался очень приближён к человеческому.











Статистическая модель

Нейронная сеть

Человеческий перевод



Английский — Испанский

4,885

5,428

5,550



Английский — Французский

4,932

5,295

5,496



Английский — Китайский

4,035

4,594

4,987



Испанский — Английский

4,872

5,187

5,372



Французский — Английский

5,046

5,343

5,404



Китайский — Английский

3,694

4,263

4,636


За основу взята 6-балльная система оценивания качества перевода.  6 — максимальная оценка, 0 — минимальная


Как видите, качество перевода в языковых парах «английский-испанский» и «французский-английский» практически соответствует человеческому. Но это и не странно, ведь именно на этих языковых парах происходило глубокое обучение алгоритмов.


Вот те же результаты в графическом отображении, чтобы вы наглядно увидели разницу со стандартным машинным переводом.


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


При этом стоит заметить, что разработчики при запуске нейронной сети не пытались достичь максимальной точности перевода. Всё потому, что он потребовал бы сложных эвристических конструкций, а это сильно снизило бы скорость работы системы. Разработчики постарались найти баланс между точностью и скоростью работы. На наше субъективное мнение, это у них получилось.


И небольшой бонус напоследок


Специалисты утверждают, что если нейронная система Google Translate научится оперировать не только текстами, но также и аудио- и видеофайлами, то в таком случае нужно ожидать резкий скачок в развитии машинного перевода. Первые шаги в этих сферах уже сделаны, активно ведутся разработки новых алгоритмов для анализа видео и аудио. Поэтому пользователи могут уже в ближайшие несколько лет ожидать новых сюрпризов от Google.


Читайте также: 9 малоизвестных, но полезных функций переводчика Google


Тизер: © Kylli Sparre


Мнение редакции может не совпадать с мнением автора. Ваши статьи присылайте нам на [email protected]. А наши требования к ним — вот тут.

с какими языками лучше всего справляется нейросеть?

Разбираемся на примере перевода руководства пользователя iPhone.

Специалисты компании «ТрансЛинк» решили провести эксперимент, чтобы узнать, с каким языком нейронный машинный перевод справится лучше и почему.

«ТрансЛинк» уже несколько лет изучает и применяет технологии машинного перевода. В этом году компания также запустила новый продукт TransМасhine — сервис на основе технологии Yandex.Translate, которая доступна напрямую из Облака. С помощью облачного сервиса можно интегрировать алгоритмы Яндекс.Переводчика в приложения или веб-проекты для конечных пользователей.

Синтетический vs аналитический

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

Например, в английском языке, считающемся аналитическим, фраза I love you может быть правильно воспринята только при такой последовательности слов. При изменении последовательности страдает смысл и, зачастую, грамматика. Так, нельзя сказать Love you I или I you love.

В то же время в русском языке, считающемся синтетическим, фраза «Я тебя люблю» может достаточно легко трансформироваться в «Тебя люблю я», «Тебя я люблю» и так далее. Это происходит за счёт того, что грамматические конструкции находятся внутри самих слов, что позволяет легко идентифицировать их значение вне зависимости от положения в предложении.

Оценка по коэффициенту

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

В качестве материала для исследования было взято руководство

Машинный перевод и не только: гид по онлайн-переводчикам

Онлайн-переводчики можно назвать одними из самых популярных сервисов 21 века. В среднем каждый житель планеты переводит по семь слов в день — такова статистика посещаемости только одного, хоть и самого популярного онлайн-сервиса по переводу.

Но таких сервисов сегодня очень много, и возникает вопрос: какой из них выбрать? В этом обзоре я рассмотрела четыре известных онлайн-сервиса: Google Translate, PROMT.One, «Яндекс.Переводчик» и DeepL, и сравнила их по качеству перевода, доступным языкам, юзабилити и другим возможностям.

Качество перевода

Самый важный критерий для сервиса — это качество перевода. Несколько лет назад в мире начался бум нейронных сетей. Новая технология стала использоваться в самых разнообразных сферах: от распознавания объектов на изображениях до создания текстов и даже сочинения стихов.

Машинный перевод не стал исключением, и сегодня нейросети — это основа большинства онлайн-переводчиков. Технологии нейронного машинного перевода (NMT) позволяют получить перевод высокого качества, без машинного акцента (все же помнят про «углепластик» из GTA?). Порой его даже трудно отличить от перевода, выполненного человеком, а специалисты говорят, что качество NMT лучше перевода, выполненного неносителем языка.

Ниже приведены примеры того, как одни и те же тексты переводят Google Translate, PROMT.One, «Яндекс.Переводчик» и DeepL с английского на русский.

При переводе одного и того же текста на разных сервисах я обратила внимание на высокое качество перевода: везде можно отметить связный и понятный текст. Однако DeepL справился с задачей чуть хуже остальных, так как перевел имя собственное — Nvidia Shield. Кроме того, на сервисе некорректно переведено словосочетание I wonder.

Google преодолевает барьер между человеческим и машинным переводом

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

Чем хорош нейронный переводчик

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

Однако на практике НМП оказывается менее точным, чем системы, основанные на статистике фраз (Phrase-Based Machine Translation, PBMT). Особенно это проявляется при обучении на больших наборах данных. 

Чем плох нейронный переводчик

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

Первый недостаток связан с тем, что для обучения системы НМП требуется очень много времени и вычислительных ресурсов. Медленный вывод — следствие использования большого количества параметров. Вторая слабая сторона проявляется в нехватке устойчивости при переводе редких слов. И последний недостаток таких систем — иногда они оказываются не способны перевести все части исходного предложения, то есть полностью «покрыть» входные данные. Это может привести к неожиданным вариантам перевода.

Как же с этим справился Google?

В их реализации (Google’s Neural Machine Translation, GNMT) используются рекуррентные сети (Recurrent neural network, RNN) с долгой краткосрочной памятью (Long Short-Term Memory, LSTM): декодер и энкодер. Они состоят из 8 слоёв с промежуточными остаточными соединениями. 

Способы, которые Google применил для решения названных выше проблем:

Ускорить обучение и вывод: обе сети обучаются параллельно с помощью механизма внимания. Нижний слой сети декодера соединён с верхним слоем сети энкодера. Для сокращения времени вывода используется низкая точностью арифметики и ускорение с помощью TPU (Tensor Processing Unit).

Переводить редкие слова: для качественного перевода используются так называемые подслова (“wordpieces”) входных и выходных данных: символы или их последовательности. Неизвестное слово можно перевести по частям или по буквам.

Избегать пробелов в переводе: во время декодирования происходит сравнение длины переведённого предложения и исходного. Если эти длины сильно различаются, то модель «штрафуется» — это заставляет её обрабатывать все входные данные.

Модель GNMT надёжная и хорошо работает с различными датасетами на многих парах языков. Она показала гораздо лучшие результаты по сравнению с системой перевода по фразам от того же Google. Тестировавшие её люди отметили, что GNMT сократила ошибки перевода на 60% на многих парах языков и её качество приближается к людям-переводчикам.

Архитектура модели

Модель обучается по стратегии «от последовательности к последовательности» (sequence-to-sequence) с механизмом внимания. Она состоит из трёх компонентов: сеть энкодера, сеть декодера и сеть внимания. Декодер представляет собой комбинацию сети RNN и слоя softmax. Энкодер преобразует исходное предложение в список векторов, по одному на каждый входной символ. Из этого списка декодер производит по одному символу за раз, пока не будет создан специальный символ конца предложения (end-of-sentence symbol, EOS). Сети соединены через модуль внимания, который позволяет декодеру фокусироваться на разных областях входного предложения в процессе декодирования. 

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

Для ускорения обучения модель разбита на несколько графических процессоров. Она состоит из 8 LSTM-слоёв энкодера (1 двунаправленный и 8 однонаправленных) и 8 слоёв декодера. Каждая из сетей размещается на 8 GPU, обычно принадлежащих одному хосту. Слой softmax тоже размещён на нескольких графических процессорах. В зависимости от размера выходного словаря используются либо те же GPU, что и для сетей энкодера и декодера, либо выделенные процессоры.

В ходе экспериментов было обнаружено, что для достижения хорошей точности RNN энкодера и декодера должны быть достаточно глубокими. Это поможет им улавливать неравномерности в исходном и целевом языках. В реализации Google каждый дополнительный слой уменьшал перплексию почти на 10%. Перплексия — мера того, насколько хорошо модель предсказывает детали тестовой коллекции (чем меньше перплексия, тем лучше модель).

Остаточные соединения

Несмотря на глубину сетей, недостаточно просто использовать большое число идущих друг за другом слоёв. Чем глубже нейросеть, тем более медленной и труднообучаемой она становится. Скорее всего, это связано с проблемами взрыва или вымывания градиента. В опытах Google простые LSTM сети хорошо работали с 4 слоями, более-менее с 6 и совсем плохо с 8 и более.

Для решения этой проблемы исследователи ввели остаточные соединения между слоями. Они значительно улучшают спуск градиента и позволяют обучать очень глубокие сети энкодера и декодера. В большинстве экспериментов используется 8 слоёв, но можно обучать и гораздо более глубокие архитектуры.

На рисунке слева изображены простые слои LSTM, справа — слои с остаточными соединениями. Входные данные для нижнего слоя поэлементно добавляются к его выходным данным, и их сумма будет служить новым входом для верхнего слоя.

Двунаправленный слой энкодера

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

Рисунок ниже иллюстрирует использование двунаправленных LSTM на нижнем слое энкодера.

Слой LSTMf обрабатывает предложение слева направо, а LSTMb — справа налево. Выходы из них объединяются и подаются на следующий слой LSTM1.

Перевод редких слов

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

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

Наиболее успешным оказалось применение второго способа сегментации с помощью модели Wordpiece (Wordpiece model, WPM), которая изначально разрабатывалась для решения этой проблемы в японском и корейском языках. Она полностью основана на данных и генерирует подслова для любой возможной последовательности символов. 

Модель Wordpiece работает следующим образом: сначала слова разбиваются на подслова с добавлением символов границы. Затем во время декодирования последовательность подслов снова преобразуется в последовательность слов. Более наглядно это можно увидеть на примере:

— Слова: Jet makers feud over seat width with big orders at stake

— Подслова: : _J et _makers _fe ud _over _seat _width _with _big _orders _at _stake  

Здесь слово “Jet” разбито на две части: “_J” и “et”, а слово “feud” на “_fe” и “ud”. Остальные слова остались без изменений. “_” — символ, обозначающий начало слова.

Подслова помогают модели работать практически с бесконечным словарём и улучшают её показатели BLEU. BLEU (bilingual evaluation understudy) — это алгоритм оценки качества текста, автоматически переведённого с одного языка на другой. Мерой качества считается соответствие между эффективностью машины и человека.

Эксперименты и результаты

Эксперименты проводились на двух общедоступных датасетах: WMT’14 English-to-French (WMT En→Fr) и English-to-German (WMT En→De). На этих наборах исследователи Google сравнили модели GNMT четырёх видов: основанные на словарных, символьных, смешанных (слово/символ) и wordpiece-словарях. Также им удалось улучшить эффективность модели с помощью точной настройки обучения с подкреплением и применения ансамбля методов (ансамбль методов использует несколько обучающих алгоритмов для получения лучшей эффективности прогнозирования). Основная цель — показать вклад этих компонентов в реализацию.

Оценка метода максимального правдоподобия

Рассмотрим четыре вида моделей с различными размерами словарей.

Для словарной модели выбрано 212 тыс. наиболее часто встречающихся слов в качестве исходного обучающего словаря и 80 тыс. популярных слов в качестве целевого словаря. Неизвестные слова преобразуются в специальные символы <first_char>_UNK_<last_char>. С помощью механизма внимания исходное слово копируется и заменяет неизвестное слово во время декодирования. 

Словарный запас для смешанной модели составляет 32 тыс. слов.  Для символьной модели слова разделяются на составные элементы, в результате чего обычно получается набор из нескольких сотен основных символов. Модель Wordpiece обучена на трёх словарях размером 8, 16 и 32 тыс. слов.

В таблице ниже отражены результаты на наборах данных WMT En→Fr (слева) и WMT En→De (справа). В нижней части таблицы также приведены результаты архитектур, в которых не используется ансамбль методов.

Перевод с английского на немецкий (WMT En→De) считается более сложным, чем с английского на французский, поскольку в нём гораздо меньше обучающих данных. Модель WPM-32K показала наилучший результат и самую быструю скорость вывода (здесь используется средняя оценка восьми разных моделей).

Оценка моделей обучения с подкреплением

Модели из предыдущего раздела оптимизируются с помощью логарифмической функции правдоподобия. Но поскольку они могут плохо коррелировать с качеством перевода, для них использовалось обучение с подкреплением. Результаты точной настройки лучших моделей En→Fr и En→De представлены в таблице:

Точная настройка обучения с подкреплением на WMT En → Fr помогает улучшить оценку BLEU почти на 1 балл, хотя на En → De эффективность немного снизилась. Исследователи предположили, что в менее точно настроенном декодере оценка была бы выше, как видно из сравнения результатов предыдущих моделей.

Оценка ансамбля методов 

Оценки для En→Fr:

Оценки для En→De:

Ансамбль методов существенно повысил оценки BLEU для обоих моделей.

Результаты на данных Google

Оценка BLUE не полностью отражает качество перевода. По этой причине введены параллельные оценки (“side-by-side evaluations”) для сравнения машинного и человеческого переводов. Параллельные оценки варьируются от 0 до 6, где 0 — совершенно бессмысленный перевод, 6 — идеальный перевод. Оценки ставятся людьми, которые совершенно свободно владеют обоими языками.

Google провели обширные эксперименты на своих внутренних наборах данных. Поскольку из приведённых выше опытов не было ясно, улучшает ли обучение с подкреплением качество перевода или просто повышает метрику BLEU, они не использовали его на этих данных. 

Исследователи попросили людей оценивать три способа перевода:

  1. перевод системы, основанной на статистике фраз (PBMT)
  2. перевод GNMT
  3. перевод людей, свободно говорящих на обоих языках.

В таблице приведены усреднённые оценки для датасетов English ↔ French, English ↔ Spanish и English ↔ Chinese. Оценивающие данные состоят из 500 произвольно выбранных предложений из Википедии и новостных вебсайтов, а также соответствующих им человеческих переводов.

Результаты показывает, что модель GNMT уменьшает ошибки перевода более чем на 60% по сравнению с моделью PBMT. Распределение оценок показано на рисунке:

Гистограмма параллельных оценок для 500 выборочных предложений из Википедии и новостных сайтов для пары языков английский → испанский (синий — PBMT, красный — GNMT, оранжевый — человек). 

В некоторых случаях (обычно в простых предложениях) человеческий и GNMT-перевод почти неразличимы. Хотя стоит учитывать, что оценщики могут не в полной мере понимать контекст каждого предложения из выборки, а переводчики — предлагать наилучший вариант перевода. Поэтому однозначно оценить качество довольно затруднительно. 

Что дальше?

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

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

Вот пример сравнения машинного и человеческого переводов:

Оригинал: Green Lantern can’t turn lemons into lemonade and I’m left equally equipped to make smart decisions about the spectrum which shades our world.

Google: Зеленый Фонарь не может превратить лимоны в лимонад, и я остаюсь в равной степени способным принимать разумные решения относительно спектра, который затеняет наш мир.

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

Оригинал: But the truth is that color is too dependent on personal experiences to be universally translated to specific feelings.

Google: Но правда в том, что цвет слишком зависит от личного опыта, чтобы повсеместно переводиться на конкретные чувства.

Человек: Однако истина заключается в том, что восприятие цвета слишком сильно зависит от личного опыта.

(Пример взят из перевода статьи “The Psychology of Color in Marketing and Branding” сайтом vc.ru)

С оригинальной статьёй можно ознакомиться на портале arxiv.org.

нейронный машинный перевод с Python | Сьюзан Ли

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

Вот и мы, мы собираемся использовать глубокие нейронные сети для задачи машинного перевода. Мы узнаем, как разработать модель нейронного машинного перевода для перевода с английского на французский.Наша модель будет принимать английский текст в качестве входных и возвращать французский перевод. Если быть более точным, мы будем практиковаться в построении 4 моделей, а именно:

  • Простая RNN.
  • РНС с встраиванием.
  • Двунаправленный RNN.
  • Модель кодировщика-декодера.

Обучение и оценка глубоких нейронных сетей — задача с большим объемом вычислений. Я использовал экземпляр AWS EC2 для запуска всего кода. Если вы планируете продолжить, у вас должен быть доступ к экземплярам GPU.

 import collectionsimport helper 
import numpy as np
import project_tests as testsfrom keras.preprocessing.text import Tokenizer
from keras.preprocessing.sequence import pad_sequences
from keras.models import Model
from keras.layers import GRU, Input, Dense, TimeDistributed, Activation, RepeatVector, Bidirectional
из keras.layers.embeddings import Embedding
из keras.optimizers import Adam
из keras.losses import sparse_categorical_crossentropy

Я использую справку .py для загрузки данных, а project_test.py для тестирования наших функций.

Набор данных содержит относительно небольшой словарный запас, и его можно найти здесь. Файл small_vocab_en содержит английские предложения и их французские переводы в файле small_vocab_fr .

Загрузить данные

 english_sentences = helper.load_data ('data / small_vocab_en') 
french_sentences = helper.load_data ('data / small_vocab_fr') print ('Dataset Loaded')

Dataset Loaded

Примеры предложений

Каждая строка в small_vocab_en содержит английское предложение с соответствующим переводом в каждой строке small_vocab_fr .

 для sample_i в диапазоне (2): 
print ('small_vocab_en Line {}: {}'. Format (sample_i + 1, english_sentences [sample_i]))
print ('small_vocab_fr Line {}: {}'. Format ( sample_i + 1, french_sentences [sample_i]))

Нейронный машинный перевод (NMT) | SYSTRAN

Искусственный интеллект и глубокие нейронные сети
в применении к языковой обработке

Нейронный машинный перевод (NMT):
давайте вернемся к истокам

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

За последние два года было проведено много исследований по применению искусственных нейронных сетей для обработки естественного языка. Результаты делятся между сообществом открытого исходного кода, в котором SYSTRAN активно участвует и делится своими ноу-хау.

Самообучающаяся переводческая машина

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

Искусственная нейронная сеть (ИНС) состоит из слоев искусственных нейронов, слои связаны вместе с помощью весов, называемых параметрами сети.

Ключевым элементом нейронной сети является ее способность автоматически корректировать свои параметры на этапе обучения (несколько недель). Технически сгенерированный выходной сигнал сравнивается с ожидаемым эталонным сигналом и корректирующей обратной связью, отправляемой «назад» для корректировки весов и настройки сетевых подключений.

Эта технология, основанная на сложных алгоритмах, лежащих в основе глубокого обучения, позволяет механизму PNMT ™ (Pure Neural ™ Machine Translation) обучаться, генерировать правила языка из заданного переведенного текста, а производить перевод, превосходящий текущий по последнему слову техники и лучше, чем не носитель языка.

Запросить демо

Все поля обязательны для заполнения

Некоторая информация неправильно заполнена

CountryAfghanistanAndorraAngolaAnguillaAland IslandsAlgeriaAntarcticaAntigua и BarbudaAlbaniaArgentinaArmeniaArubaAustraliaAustriaAzerbaijanBahamasBahrainBangladeshBarbadosBelarusBelgiumBelizeBeninBermudaBhutanBolivia, многонациональное государство ofBonaire, Синт-Эстатиус и SabaBosnia и HerzegovinaBotswanaBouvet IslandBrazilBritish Индийский океан TerritoryBrunei DarussalamBulgariaBurkina FasoBurundiCambodiaCameroonCanadaCape VerdeCayman IslandsCentral африканских RepublicChadChileChinaChristmas IslandCroatiaCocos (Килинг) IslandsColombiaComorosCongoCongo, Демократическая Республика theCook IslandsCosta RicaCote d’IvoireCubaCuraçaoCyprusCzech RepublicDenmarkDjiboutiDominicaDominican RepublicEcuadorEgyptEl SalvadorEquatorial GuineaEritreaEstoniaEthiopiaFalkland (Мальвинских) островах Фарерских ОстроваФиджиФинляндияФранцияФранцузская ГвианаФранцузская ПолинезияФранцузские Южные территорииГабонГамбияГрузияГерманияГанаГибралтарГренадаГренадаГваделупаГватемалаГернсиГвинеяГвинея-БисауГрецияГайанаГайтиHeard Island an d McDonald IslandsHoly Престол (Ватикан) HondurasHungaryIcelandIndiaIndonesiaIraqIran, Исламская Республика ofIrelandIsle из ManIsraelItalyJamaicaJapanJerseyJordanKazakhstanKenyaKiribatiKyrgyzstanKorea, Корейская Народно-Демократическая Республика ofKorea, Республика ofKosovoKuwaitLao Народная Демократическая RepublicLatviaLebanonLesothoLiberiaLibyaLiechtensteinLithuaniaLuxembourgMacaoMacedonia, бывшая югославская Республика ofMadagascarMalawiMalaysiaMaldivesMaliMaltaMartiniqueMauritaniaMauritiusMayotteMexicoMoldova, Республика ofMonacoMongoliaMontenegroMontserratMoroccoMozambiqueMyanmarNamibiaNauruNepalNetherlandsNew CaledoniaNew ZealandNicaraguaNigerNigeriaNiueNorfolk IslandNorwayOmanPakistanPalestinePanamaPapua Новый GuineaParaguayPeruPhilippinesPitcairnPolandPortugalPuerto RicoQatarReunionRomaniaRussian FederationRwandaSaint BarthelemySaint Елены, Вознесения и Тристан-да КуньяСент-Китс и НевисСент-ЛюсияСент-Мартен (французская часть) Сен-Пьер и МикелонСент-Винсент и ГренадиныСан-МариноСао То я и PrincipeSamoaSaudi ArabiaSerbiaSeychellesSenegalSierra LeoneSingaporeSint Маартен (Голландская часть) SlovakiaSloveniaSolomon IslandsSomaliaSouth AfricaSouth Джорджия и Южные Сандвичевы IslandsSouth SudanSpainSri LankaSudanSurinameSvalbard и Ян MayenSwazilandSwedenSwitzerlandSyrian Arab RepublicTanzania, Объединенная Республика ofTaiwanTajikistanThailandTimor-LesteTogoTokelauTongaTrinidad и TobagoTunisiaTurkeyTurkmenistanTurks и Кайкос IslandsTuvaluUgandaUkraineUnited арабского EmiratesUnited KingdomUnited StatesUruguayUzbekistanVanuatuVenezuela, Боливарианская Республика ofViet NamVirgin остров, BritishWallis и ФутунаЗападная Сахара Йемен Замбия Зимбабве

представить

Мы уважаем вашу конфиденциальность и будем использовать эту информацию только в контактных целях.

Как успешно внедрить бережливое управление процессами в глобальном масштабе?

PNMT стр.

form-pnmt-page-request

Помогая компаниям добиться успеха в эпоху реального времени

В цифровую эпоху языковые барьеры до сих пор представляли собой одну из самых больших проблем на пути быстрого внедрения бизнес-стратегий на глобальных рынках.Компании теперь имеют возможность исследовать новые перспективы благодаря достижениям в области искусственного интеллекта и исследований и разработок машинного перевода .

С помощью этого инновационного решения SYSTRAN продолжает поиски технологического совершенства, чтобы помочь компаниям добиться успеха в эпоху глобальной связи в режиме реального времени 24/7. SYSTRAN предлагает организациям доступ к лучшего качества перевода на рынке , ближе, чем когда-либо, к человеческому уровню и адаптированному к конкретным условиям каждого клиента, от юридической и автомобильной промышленности до информационных технологий и туризма.

Компании могут реализовать свою бизнес-стратегию в нескольких странах одновременно, преодолеет языковой барьер и обеспечит феноменальный выигрыш с точки зрения времени выхода на рынок и производительности .

Отзывы

«Новая технология PNMT ™ предлагает непревзойденное качество перевода и плавность в истории автоматического перевода.Есть еще области, над которыми группы НИОКР уже работают. Эта технология, несомненно, откроет новые перспективы для переводчиков и сотрудников в глобализованном мире. »

Хайди Депретере, основательница Crosslang

«Технология PNMT ™ от SYSTRAN — это новый шаг в человеческом общении в целом и в туризме в частности. Он приносит великолепные возможности, новые впечатления и увлекательное языковое путешествие! Дополненный турист 2.0 — это ReadyToGo. »

Доминик Аузиас, основатель Petit Futé

«В основном движок SYSTRAN PNMT ™ понимал то, что я хотел сказать, и очень плавно переводил это. По большей части терминология была правильной, а предложения звучали по-человечески. »

Лори Тик, генеральный директор Lexcelera

Благодаря специализации потенциал PNMT ™ значительно увеличивается.

Благодаря новому механизму PNMT ™ SYSTRAN может оптимизировать нейронные сети в процессе пост-обучения, который называется специализацией.Этот метод значительно улучшает качество перевода в рекордно короткие сроки.

«Адаптация перевода к конкретной области, такой как юридическая, маркетинговая, техническая, фармацевтическая, является абсолютной необходимостью для глобальных компаний и организаций. Предложение профессионалам специализированных решений для перевода их профессиональной терминологии было частью ДНК SYSTRAN на протяжении многих лет. Поколение нейронных двигателей предлагает новые возможности в адаптации предметной области.PNMT ™ может адаптировать общую модель к новым данным и даже к каждому переводчику. Generic NMT, несомненно, является большим усовершенствованием технологии перевода, но Specialized NMT — это технология, которая действительно поможет компаниям решить свои глобальные задачи. »

Жан Сенеллар, генеральный директор SYSTRAN

ресурса

  • Гарвард запускает систему нейронного машинного перевода с открытым исходным кодом

    Узнать больше

  • Откройте для себя новую эру машинного перевода: Машинный перевод Pure Neural ™

    Скачать

  • Расцвет переводчиков ИИ

    Читать

Топ-10 лучших API-интерфейсов перевода [2020] для разработчиков.Рассмотрено более 20 API

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

К счастью, существует несколько API перевода , которые были разработаны, чтобы сделать процесс перевода веб-страниц, фраз и слов безболезненным.

Что такое API перевода?

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

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

Чтобы помочь вам принять наилучшее решение о наиболее подходящем API для использования, мы рассмотрели несколько API перевода на основе следующих четырех основных критериев:

  • Функции API: Мы оценили выдающиеся характеристики каждого из API перевода
  • Поддерживаемые языки : Мы оценили языки, поддерживаемые каждым из API.
  • Цена : Мы проанализировали стоимость интеграции каждого из API в приложения.
  • Простота использования : Мы рассмотрели простоту использования каждого из API.

В итоге мы составили следующий список из 10 лучших API для перевода:

10 лучших API для перевода

TL; DR: Вот таблица, в которой обобщены наши основные выводы.

API

Характеристики API Поддерживаемые языки Стоимость Простота использования
Google Translate API Перевести текст, определить исходный язык Более 100 Бесплатно для 50 запросов в день, затем 0 долларов США.05 за каждый дополнительный запрос Легко
Microsoft Translation API Перевод текста, определение исходного языка, транслитерация слов, возможности двуязычного словаря Более 60 Бесплатные и различные платные планы от 25 до 200 долларов в месяц Легко
Перевести API Перевести текст, определить исходный язык 104 Бесплатные и различные платные планы от 19 до 59 долларов в месяц Легко
API перевода текста Перевести текст, перевести текст на веб-странице HTML Более 12 Бесплатные и различные платные планы от 20 до 75 долларов в месяц Легко
SYSTRAN.io Translation API Перевести текст, определить исходный язык Более 130 Бесплатно Легко
MyMemory Translation API Поиск человеческих или машинных переводов, вставка переводов Несколько Бесплатные и платные планы стоимостью 299 долларов США или 499 долларов США в месяц Легко
Мой переводчик Pro API Перевести текст, определить исходный язык Более 64 Бесплатные и платные варианты на сумму 269 и 469 долларов в месяц Легко
Linguatools Translate API Переводчик с и на немецкий язык для шести других языков 6 Бесплатные и различные платные планы от 4 долларов.От 90 до 24,90 долл. США в месяц Легко
Яндекс Переводчик API Перевод текста, интеллектуальный набор текста, примеры произношения и использования, словарь с транскрипцией Более 90 Бесплатно Легко
API переводчика языков IBM Watson Перевод текста, создание моделей для конкретной предметной области, настройка переводов Более 20 Бесплатно Легко

API Google Translate позволяет использовать мощную облачную технологию машинного обучения Google для автоматического перевода текстов с одного языка на другой.

Возможности API: С помощью Google Translate API вы можете быстро перевести произвольную строку текста с одного языка на другой. Кроме того, если исходный язык неизвестен, API может определить предоставленный язык. Технология, лежащая в основе API, постоянно обновляется с учетом улучшений исследовательских групп Google, что приводит к усовершенствованию услуг перевода.

Поддерживаемые языки: API поддерживает более 100 языков.

Стоимость: На платформе Rakuten RapidAPI API доступен бесплатно, но вы ограничены 50 запросами в день. Если вы превысите дневной лимит бесплатного использования, вы заплатите 0,05 доллара США за каждый дополнительный запрос.

Простота использования: Как и другие продукты Google, Translate API хорошо документирован с множеством примеров интеграции, что упрощает его использование. Кроме того, существует активное сообщество, которое поможет вам с любыми проблемами интеграции.

Как мне интегрировать Google Translate API? Если у вас есть этот вопрос, перейдите к руководству Google Translate API Tutorial. Вы также получите бесплатный ключ API Google Translate, зарегистрировавшись у нас.

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

Функции API: Помимо возможности перевода текста на несколько языков, Microsoft Translation API включает функции автоматического определения языка исходного текста, транслитерации слов и предложений из одного сценария в другой, а также возможности двуязычного словаря для показаны альтернативные переводы с английского языка или на английский.

Поддерживаемые языки: API поддерживает более 60 языков.

Стоимость: На Rakuten RapidAPI вы можете использовать API бесплатно, если вы делаете менее 2500 запросов в месяц. Для более длительного использования вы можете выбрать любой из его платных планов, стоимость которых начинается от 25 долларов в месяц до 200 долларов в месяц.

Простота использования: Корпорация Майкрософт предоставляет руководства по быстрому запуску, учебные пособия и другие полезные ресурсы, которые помогут вам максимально эффективно использовать API.

Является ли Microsoft Translator API бесплатным? У него есть бесплатный уровень, который дает вам 2500 запросов в месяц. Платные планы стоят от 0,003 до 0,002 доллара за запрос.

Translate API — это простой API, который позволяет переводить произвольную строку текста с одного языка на другой.

Функции API: Помимо перевода текстов, вы можете использовать Translate API для определения языка входных текстов. API полагается на переводчиков исходного кода из надежных и мощных систем, таких как Google, Oxford и многих других.

Поддерживаемые языки: API поддерживает 104 языка.

Стоимость: Существует бесплатный план, который ограничен до 2000 запросов в месяц. Платные планы варьируются от 19 до 59 долларов в месяц.

Простота использования: Имеется простая документация, которая позволяет легко приступить к работе с API в течение нескольких минут.

API перевода текста — это простой API, который позволяет легко переводить тексты с одного языка на другой.

Функции API: С помощью API перевода текста вы можете выполнять переводы с одного поддерживаемого языка на другой поддерживаемый язык. Кроме того, API позволяет переводить текст веб-страницы HTML на другой язык. Вы можете указать HTML-теги для извлечения и перевода.

Поддерживаемые языки: API поддерживает более 12 языков.

Стоимость: Пока вы делаете менее 5 запросов в день, вы можете использовать API бесплатно.Для более широкого использования вы можете выбрать любой из его платных планов, стоимость которых начинается от 20 долларов в месяц до 75 долларов в месяц.

Простота использования: Существует простая документация, которая поможет вам как можно быстрее приступить к работе с API.

SYSTRAN — это компания, предоставляющая широкий спектр API-сервисов, которые вы можете использовать, чтобы добавить впечатляющие возможности языковой обработки в свои приложения.

Функции API: SYSTRAN.io Translation и NLP API предоставляют программный доступ к технологии машинного перевода SYSTRAN для автоматического перевода документов с одного языка на другой.API также может определять язык исходного документа, если он не определен.

Поддерживаемые языки: API поддерживает более 130 языков.

Цена: На Rakuten RapidAPI API перевода SYSTRAN.io доступен бесплатно.

Простота использования: SYSTRAN предоставляет подробную документацию и примеры кода, чтобы упростить интеграцию API в приложения и веб-сайты.

MyMemory — это обширная онлайн-база данных, содержащая миллиарды слов, переведенных профессиональными переводчиками-людьми.

Функции API: С помощью MyMemory Translation API вы можете искать переводы, доступные в обширной базе данных MyMemory. Переводы ранжируются по качеству и схожести, что позволяет вам получить лучший перевод для данного исходного текста. Если человеческий перевод недоступен, API обеспечивает современный машинный перевод. Кроме того, вы можете использовать API для вставки переводов в базу данных MyMemory.

Поддерживаемые языки: API поддерживает несколько языков.

Стоимость: На Rakuten RapidAPI вы можете использовать API бесплатно, если вы переводите менее 10 000 слов в месяц. Помимо бесплатного плана, вы можете платить 299 или 499 долларов в месяц и переводить 500 000 или 1 000 000 слов в месяц соответственно.

Простота использования: API был разработан таким образом, чтобы его было легко реализовать. Существует также исчерпывающая документация, которая поможет вам быстро начать работу.

My Translator Pro API — это простой в использовании API для выполнения переводов текста.

Возможности API: My Translator Pro API позволяет получить доступ к первоклассной технологии перевода для точного перевода текстов с одного языка на другой. Более того, если исходный язык не определен, API автоматически определяет его.

Поддерживаемые языки: API поддерживает более 64 языков.

Стоимость: С бесплатной версией API вы можете делать до 11 000 запросов в месяц. Платные варианты оцениваются в 269 долларов в месяц и 469 долларов в месяц.

Простота использования: API поставляется с простой и понятной документацией, позволяющей ускорить интеграцию.

API Linguatools Translate ищет слово в двуязычном словаре и возвращает его переводы, упорядоченные по частоте.

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

Поддерживаемые языки: API поддерживает переводы с и на немецкий язык для различных языков, таких как английский, голландский, чешский, испанский, итальянский и польский.

Стоимость: Linguatools Translate API доступен бесплатно, но вы можете ограничить количество запросов до 1000 в месяц. Для более расширенного использования вы можете выбрать любой из его платных планов, стоимость которых начинается от 4,90 долларов в месяц до более 24,90 долларов в месяц.

Простота использования: Существует простая документация, которая поможет вам легко интегрировать API в ваше приложение.

API Яндекс Переводчика предлагает программный доступ к облачной службе машинного перевода Яндекса для упрощения встраивания в мобильные или веб-приложения.

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

Поддерживаемые языки: API поддерживает более 90 языков.

Цена: На Rakuten RapidAPI API Яндекс Переводчика доступен бесплатно.

Простота использования: Яндекс предоставляет исчерпывающую документацию, подробные описания и другие вспомогательные материалы, которые помогут вам с легкостью использовать API.

API Яндекс Переводчика не бесплатен. Вы должны внести минимальный платеж в размере 15 долларов США.

API IBM Watson Language Translator позволяет использовать мощную технологию нейронного машинного перевода IBM и переводить тексты с одного языка на другой.

Функции API: С помощью API-интерфейса IBM Watson Language Translator вы можете легко переводить тексты на разные языки. API поставляется с несколькими моделями для конкретной предметной области, которые увеличивают скорость и точность переводов. Кроме того, вы можете настроить свои переводы в соответствии с вашими предпочтениями терминологии и языка.

Поддерживаемые языки: API поддерживает более 20 языков.

Цена: На Rakuten RapidAPI вы можете использовать API бесплатно.

Простота использования: IBM известна тем, что предоставляет исчерпывающую документацию для разработчиков и другие полезные ресурсы, чтобы упростить использование своих API-сервисов, и этот API не является исключением.

Заключение

Это список 10 лучших API-интерфейсов перевода Rakuten RapidAPI. Мы надеемся, что вы найдете API, который можно использовать для добавления многоязычных возможностей в свои приложения.

Вы можете нажать здесь, чтобы найти другие удивительные API для перевода на нашей платформе.

О Rakuten RapidAPI

Rakuten RapidAPI — это крупнейшая в мире торговая площадка API с более чем 8000 сторонних API, которую используют более 500000 активных разработчиков. Мы позволяем разработчикам создавать трансформирующие приложения с помощью API. Находите, тестируйте и подключайтесь ко всем необходимым API в одном месте!

Ознакомьтесь с некоторыми из лучших в мире API-интерфейсов, включая Microsoft, Sendgrid, Crunchbase и Skyscanner.

Facebook | LinkedIn | Twitter

Учебник

: нейронный машинный перевод — seq2seq

Фон нейронного машинного перевода

Это руководство не предназначено для общего введения в нейронный машинный перевод и не рассматривает подробно, как эти модели работают внутри.Для получения дополнительных сведений о теории моделей «последовательность-последовательность» и «Машинный перевод» мы рекомендуем следующие ресурсы:

Формат данных

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

sources.en (английский):

  Госпожа Президент, я хотел бы обратить ваше внимание на дело, к которому этот парламент постоянно проявляет интерес.Это случай Александра Никитина.
  

targets.de (немецкий):

  Frau Präsidentin! Ich möchte Sie auf einen Fall aufmerksam machen, mit dem sich dieses Parlament immer wieder befaßt hat.
Das ist der Fall фон Александра Никитина.
  

Каждая строка соответствует последовательности из токенов , разделенных пробелами. В простейшем случае токены — это слова в предложении. Обычно мы используем токенизатор для разделения предложений на токены с учетом основы слов и знаков препинания.Например, обычным выбором для токенизаторов являются сценарий Moses tokenizer.perl или библиотеки, такие как spaCy, nltk или Stanford Tokenizer.

Однако изучение модели на основе слов имеет несколько недостатков. Поскольку модели NMT выводят распределение вероятностей для слов, они могут стать очень медленными при большом количестве возможных слов. Если вы включаете орфографические ошибки и производные слова в свой словарь, количество возможных слов по существу бесконечно, и нам нужно наложить искусственный предел того, как из наиболее распространенных слов мы хотим, чтобы наша модель обрабатывала.Это также называется размером словаря и обычно устанавливается в диапазоне от 10 000 до 100 000. Другой недостаток обучения токенам слов заключается в том, что модель не узнает об общих «основах» слов. Например, он будет рассматривать «любимый» и «любящий» как совершенно разные классы, несмотря на их общий корень.

Один из способов справиться с проблемой открытого словаря — выучить единиц подслова для данного текста. Например, слово «любимый» можно разделить на «любить» и «эд», а слово «любить» можно разделить на «любить» и «инг».Это позволяет моделировать обобщение для новых слов, а также приводит к меньшему объему словарного запаса. Существует несколько методов изучения таких подсловных единиц, в том числе парное байтовое кодирование (BPE), которое мы использовали в этом руководстве. Чтобы сгенерировать BPE для заданного текста, вы можете следовать инструкциям в официальном репозитории subword-nmt:

  # Клон с Github
git clone https://github.com/rsennrich/subword-nmt
cd subword-nmt

# Изучите словарный запас с помощью 10 000 операций слияния
./learn_bpe.py -s 10000  code.bpe

# Применить словарь к учебному файлу
./apply_bpe.py -c codes.bpe  train.tok.bpe
  

После токенизации и применения BPE к набору данных исходные предложения могут выглядеть следующим образом. Обратите внимание, что имя «Никитин» — это редкое слово, которое было разбито на подсловные блоки, разделенные @@ .

  Госпожа Президент, я хотел бы обратить ваше внимание на дело, к которому этот парламент постоянно проявляет интерес.Это случай Александра Ни @@ ki @@ tin.
  
  Frau Präsidentin! Ich möchte Sie auf einen Fall aufmerksam machen, mit dem sich dieses Parlament immer wieder befaßt hat.
Das ist der Fall von Alexander Ni @@ ki @@ tin
  

Загрузить данные

Чтобы упростить начало работы, мы подготовили уже предварительно обработанный набор данных на основе англо-немецкой задачи перевода WMT’16. Чтобы узнать больше о том, как были созданы данные, вы можете взглянуть на файл wmt16_en_de.sh скрипт генерации данных. Скрипт загружает данные, токенизирует их с помощью Moses Tokenizer, очищает обучающие данные и изучает словарь из ~ 32000 подслов.

После извлечения вы должны увидеть следующие файлы:

Имя файла Описание
train.tok.clean.bpe.32000.en Данные для обучения английскому языку, одно предложение в строке, обработанные с использованием BPE.
поезд.tok.clean.bpe.32000.de Данные обучения немецкого языка, одно предложение в строке, обработанные с использованием BPE.
словарь bpe.32000 Полный словарь, используемый в обучающих данных, по одному токену в строке.
новостиtestXXXX. * Наборы данных для разработки и тестирования в том же формате, что и данные для обучения. Мы предоставляем как предварительно обработанные, так и исходные файлы данных, используемые для оценки.

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

  # Установите здесь, где вы извлекли загруженный файл
экспорт DATA_PATH =

экспорт VOCAB_SOURCE = $ {DATA_PATH} / vocab.bpe.32000
экспорт VOCAB_TARGET = $ {DATA_PATH} /vocab.bpe.32000
экспорт TRAIN_SOURCES = $ {DATA_PATH} /train.tok.clean.bpe.32000.en
экспорт TRAIN_TARGETS = $ {DATA_PATH} /train.tok.clean.bpe.32000.de
экспорт DEV_SOURCES = $ {DATA_PATH} /newstest2013.tok.bpe.32000.en
экспорт DEV_TARGETS = $ {DATA_PATH} /newstest2013.tok.bpe.32000.de

экспорт DEV_TARGETS_REF = $ {DATA_PATH} /newstest2013.tok.de
экспорт TRAIN_STEPS = 1000000
  

Альтернатива: создание данных игрушек

Обучение работе с данными реального перевода может занять очень много времени.Если у вас нет доступа к машине с графическим процессором, но вы хотите поэкспериментировать с меньшим набором данных, мы предоставим способ создания игрушечных данных. Следующая команда сгенерирует набор данных, в котором целевые последовательности являются обратными исходными последовательностями. То есть модели необходимо изучить обратные входные данные. Хотя эта задача не очень полезна на практике, мы можем быстро обучить такую ​​модель и использовать ее в качестве проверки работоспособности, чтобы убедиться, что сквозной конвейер работает должным образом.

  DATA_TYPE = обратный./bin/data/toy.sh
  

Вместо данных перевода используйте файлы, созданные скриптом:

  экспорт VOCAB_SOURCE = $ {HOME} /nmt_data/toy_reverse/train/vocab.sources.txt
экспорт VOCAB_TARGET = $ {HOME} /nmt_data/toy_reverse/train/vocab.targets.txt
экспорт TRAIN_SOURCES = $ {HOME} /nmt_data/toy_reverse/train/sources.txt
экспорт TRAIN_TARGETS = $ {HOME} /nmt_data/toy_reverse/train/targets.txt
экспорт DEV_SOURCES = $ {HOME} /nmt_data/toy_reverse/dev/sources.txt
экспорт DEV_TARGETS = $ {HOME} / nmt_data / toy_reverse / dev / target.текст

экспорт DEV_TARGETS_REF = $ {HOME} /nmt_data/toy_reverse/dev/targets.txt
экспорт TRAIN_STEPS = 1000
  

Определение модели

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

  модель: AttentionSeq2Seq
model_params:
  внимание.class: seq2seq.decoders.attention.AttentionLayerBahdanau
  внимание. параметры:
    num_units: 256
  bridge.class: seq2seq.models.bridges.ZeroBridge
  embedding.dim: 256
  encoder.class: seq2seq.encoders.BidirectionalRNNEncoder
  encoder.params:
    rnn_cell:
      cell_class: GRUCell
      cell_params:
        num_units: 256
      dropout_input_keep_prob: 0.8
      dropout_output_keep_prob: 1.0
      num_layers: 1
  decoder.class: seq2seq.decoders.AttentionDecoder
  decoder.params:
    rnn_cell:
      cell_class: GRUCell
      cell_params:
        num_units: 256
      dropout_input_keep_prob: 0.8
      dropout_output_keep_prob: 1.0
      num_layers: 2
  optimizer.name: Адам
  optimizer.learning_rate: 0,0001
  source.max_seq_len: 50
  source.reverse: false
  target.max_seq_len: 50
  

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

Обучение

Теперь, когда у нас есть и конфигурация модели, и t

Нейронный машинный перевод: использование Open-NMT для обучения модели перевода

@dataturks DataTurks: упрощение аннотаций данных

Полное руководство по изучению переводов между любым языком pair

Цель этого блога — предоставить пошаговое руководство по созданию переводов с заданного языка на любой целевой язык.Методология, которую мы используем для решения поставленной задачи, полностью мотивирована библиотекой с открытым исходным кодом, реализация которой в pyTorch доступна на языке Python и называется Open-NMT (нейронный машинный перевод с открытым исходным кодом). Он разработан для энтузиастов глубокого обучения, чтобы они могли реализовать свои идеи в области машинного перевода, реферирования, преобразования изображений в текст, морфологии и т. Д.

Хотя довольно много эффективных систем перевода от Google Translate, Microsoft, и т. д., они либо не имеют открытого исходного кода, либо закрыты по ограничительной лицензии.Другие библиотеки, такие как модели tensorflow-seq2seq , существуют для этой цели, но в качестве исследовательского кода.

Open-NMT не только с открытым исходным кодом, но также предоставляет хорошо документированный, модульный и читаемый код для быстрого обучения и эффективного выполнения моделей.

Мы доработаем подробное руководство по настройке библиотеки и использованию инструментария для обучения вашей собственной системе перевода. Этот блог посвящен созданию перевода для языка хинди из заданного английского текста.

Краткий обзор архитектуры Open-NMT

Open-NMT основан на исследовании Guillaume Klein et al., Которое можно найти здесь.

Согласно документу, следующие подробности раскрываются об его архитектуре:

OpenNMT — это полная библиотека для обучения и развертывания моделей нейронного машинного перевода. Система является преемником seq2seq-attn, разработанной в Гарварде, и была полностью переписана для повышения эффективности, удобочитаемости и универсальности.Он включает стандартные модели NMT, а также поддержку внимания, стробирования, суммирования, подачи входных данных, регуляризации, поиска луча и всех других опций, необходимых для современной производительности.

Основная система реализована в математической структуре Lua / Torch и может быть легко расширена с помощью внутренних стандартных компонентов нейронной сети Torch. Он также был расширен Адамом Лерером из Facebook Research для поддержки инфраструктуры Python / PyTorch с тем же API.

Установка требуемых модулей

Главный пакет, необходимый для обучения вашей пользовательской системы перевода, по сути, pyTorch, в котором реализованы модели Open-NMT.

Первым шагом, конечно же, является клонирование репозитория OpenNMT-py :

  git clone https://github.com/OpenNMT/OpenNMT-py
cd OpenNMT-py  

Вот файл requirements.txt для сбора всех необходимых пакетов:

  шесть
tqdm
факел> = 0,4,0
git + https: //github.com/pytorch/text
будущее  

Поскольку PyTorch постоянно развивается, мы рекомендуем разветвить версию PyTorch 0.4, чтобы обеспечить стабильную производительность кодовой базы.

Выполните следующую команду для автоматического сбора необходимых зависимостей:

  pip install -r requirements.txt  

Сбор наборов данных

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

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

  • src-train.txt : Учебный файл, содержащий 10000 английского языка (исходный язык)
  • предложенияstgt-train.txt : Учебный файл содержит 10000 хинди (целевой язык)
  • предложенияssrc-val.txt : данные проверки, состоящие из 1000 английского языка (исходный язык)
  • предложения stgt-val.txt : данные проверки, состоящие из 1000 хинди (целевой язык)
  • предложенияssrc-test.txt : данные оценки теста, состоящие из 1000 английских (исходный язык)
  • предложенияstgt-test.txt : данные оценки теста, состоящие из 1000 предложений хинди (целевой язык)

Все вышеуказанные файлы помещены в / data каталог.

ПРИМЕЧАНИЕ: Мы использовали ограниченный объем данных для объяснения и экспериментов в этом руководстве. Однако рекомендуется использовать большие корпуса с миллионами предложений, чтобы обеспечить обширный словарный запас уникальных слов для лучшего усвоения, и перевод, близкий к человеческому .

Данные проверки используются для оценки модели на каждом этапе для определения точки схождения. Обычно он должен содержать максимум 5000 предложений.

Вот пример, показывающий, как текстовые данные расположены в соответствующих файлах:

  Исходные файлы:
Они также издают ряд еженедельных тамильских газет.

Это трудолюбивые люди, и большинство из них работают разнорабочими.
Тамильские фильмы демонстрируются также в местных кинозалах.
Здесь проживает довольно много малаяльцев.Целевые файлы: तमिल भाषा में वे अनेक समाचार पत्र व पत्रिकाएं भी निकालते हैं.
ये लोग काफी परिश्रमी हैं, अधिकांश लोग मजदूरी करते हैं.
स्थानीय सिनेमा हालों में तमिल चलचित्रों का प्रदर्शन अक्सर किया जाता है.
मलयालम लोगों की बहुत बडी संख्या है.  

Предварительная обработка текстовых данных

Выполните следующую команду для предварительной обработки данных обучения и проверки и извлечения функций для обучения и создания файлов словаря для модели.

  препроцесс Python.ру
-train_src данные / src-train.txt
-train_tgt данные / tgt-train.txt
-valid_src data / src-val.txt
-valid_tgt данные / tgt-val.txt
-save_data data / demo
  
  python preprocess.py -train_src data / src-train.txt -train_tgt data / tgt-train.txt -valid_src data / src-val.txt -valid_tgt data / tgt-val.txt -save_data data / demo
  

Обучение переводчика модель

Основная команда для трианирования действительно проста в использовании. По сути, он принимает в качестве входных данных файл данных и файл сохранения.

Краткое описание используемой по умолчанию модели выглядит следующим образом:

  NMTModel (
  (кодировщик): RNNEncoder (
    (вложения): вложения (
      (make_embedding): Последовательный (
        (emb_luts): Поэлементно (
          (0): Вложение (20351, 500, padding_idx = 1)
        )
      )
    )
    (rnn): LSTM (500, 500, num_layers = 2, dropout = 0,3)
  )
  (декодер): InputFeedRNNDecoder (
    (вложения): вложения (
      (make_embedding): Последовательный (
        (emb_luts): Поэлементно (
          (0): Встраивание (20570, 500, padding_idx = 1)
        )
      )
    )
    (выпадение): выпадение (p = 0.3)
    (rnn): StackedLSTM (
      (выпадение): выбывание (p = 0,3)
      (слои): ModuleList (
        (0): LSTMCell (1000, 500)
        (1): LSTMCell (500, 500)
      )
    )
    (attn): GlobalAttention (
      (linear_in): линейный (in_features = 500, out_features = 500, bias = False)
      (linear_out): линейный (in_features = 1000, out_features = 500, bias = False)
      (softmax): Softmax ()
      (танх): Танх ()
    )
  )
  (генератор): Последовательный (
    (0): линейный (in_features = 500, out_features = 20570, bias = True)
    (1): LogSoftmax ()
  )
)  
  поезд питона.py -data data / demo -save_model demo-model  

Приведенная выше команда запустит модель по умолчанию, состоящую из двухуровневого LSTM, имеющего 500 скрытых единиц для кодера и декодера. Чтобы указать использование вашего графического процессора для обучения, укажите аргумент -gpuid в приведенной выше команде (скажем, -gpuid 1 для указания использования графического процессора 1).

Обычно модель по умолчанию продолжается до 100000 эпох, так что контрольная точка сохраняется после каждых 5000 эпох. Поэтому, если ваша модель сходится и точность проверки достигает стабильной точки раньше, вы можете прекратить дальнейшее обучение и использовать ранее сохраненную контрольную точку.

Переведите свои собственные данные

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

  python translate.py -model demo-model_XYZ.pt - src data / src-test.txt -output pred.txt -replace_unk -verbose  

Это сгенерирует переведенный вывод и сохранит прогнозы в файле с именем pred.txt.

Модель обучалась 10000 эпох на графическом процессоре NVIDIA GEFORCE 2GB.Обучение на ЦП потребует очень высоких вычислительных затрат, поэтому рекомендуется использовать высокопроизводительный графический процессор для обучения модели с большим объемом данных с большей скоростью.

Примеры прогнозов модели

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

  Деревья способны поглощать больше углекислого газа,
таким образом поддерживая равновесие в составе воздуха  
  ПРОГНОЗ: पेडों में कार्बन डाईआक्साइड के बुरे लोग
इस प्रकार पेड - पौधे का प्रयोग करने के लिए मौजूद हैं. 
  У него есть надежда, что боги сбросят с небес добрые дела,
на них  
  ПРОГНОЗИРОВАННЫЙ: वे उमीद है कि वे घर से कुछ नहीं बची हैं  
  Буддийский храм,
Дворец Далай-ламы и Тибетский диспансер являются достопримечательностями здесь  
  ПРОГНОЗ: यहां का बौद्ध मंदिर दलाई लामा का आवास तथा तिब्बती औषधालय स्थानिय में मिलता है.  
  Он позволяет волосам отрасти.
ПРЕДНАЗНАЧЕН: वह अपने बढा लेता है. 

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

Оцените свою обученную модель

Двуязычная оценка Оценка дублера

Оценка неадекватности двуязычной оценки, или Оценка BLEU, относится к метрике оценки для целей оценки систем машинного перевода путем сравнения сгенерированного предложения со справочным предложением.

Идеальное совпадение в этом сравнении дает оценку BLEU, равную 1,0, тогда как полное несоответствие дает оценку BLEU, равную 0,0.

Оценка BLEU — это универсально адаптированная метрика для оценки моделей перевода, поскольку она не зависит от языка, проста для интерпретации и имеет высокую корреляцию с ручной оценкой.

Показатель BLEU был предложен в исследовании, проведенном Кишоре Папинени и соавт. «BLEU: метод автоматической оценки машинного перевода».

Оценка BLEU создается после подсчета n-граммов в подходящем переводе, совпадающем с n-граммами в

Google Translated vs Professional, форматы файлов, целевые языки

Это 21 век, и технологии сделали онлайн-перевод документов простым делом.У нас есть множество услуг, предлагающих плавный перевод в различные форматы файлов.

Это должно быть легко получить профессиональный перевод этих документов. Но почему-то не всегда так получается. В некотором смысле подавляющий выбор предполагаемого высококачественного перевода заставляет нас тщательно перебирать предложения, пытаясь найти лучшие инструменты для наших уникальных потребностей. Мы спрашиваем себя: стоит ли доверять онлайн-сервисам машинного перевода? Стоит ли выбирать услуги профессионального переводчика? Или есть возможность совместить два?

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

Машинный перевод: рост машин

На первый взгляд кажется, что машинный перевод отвечает на все ваши молитвы. Если вы верите этим утверждениям, вы просто вводите текст, требующий перевода, и автоматическая система, скрывающаяся где-то в глубинах Интернета, волшебным образом вернет вам ваши документы, переведенные и готовые к работе. Кроме того, это не всегда так, как принято считать. Хотя машинный перевод значительно улучшился за последние несколько лет, эти автоматизированные службы по-прежнему подвержены ошибкам и неточностям.Тонкости и нюансы языка настолько часты и незаметны, что невозможно ожидать, что автоматический перевод каждый раз будет давать идеальные результаты.

Так зачем вообще заниматься машинным переводом? Как и в большинстве случаев в бизнесе, все сводится к двум вещам: удобству и стоимости. Конечно, машинный перевод может быть не всегда точным на 100%, но он довольно хорош, и, возможно, вам нужен только хороший перевод. Это также невероятно экономично. С небольшой комиссией или вообще без нее, возможность мгновенно переводить огромное количество контента, безусловно, является привлекательной перспективой, особенно для тех, кто хочет выйти на международный уровень с ограниченным бюджетом.

Хорошо, мне интересно, какие варианты машинного перевода мне доступны?

Google Translate. Предлагая множество функций и бесплатный доступ, веб-служба Google мгновенно переводит слова, фразы и веб-страницы с английского на более чем 100 других языков.

Bing Translator — эта облачная служба перевода от Microsoft бесплатна и проста в использовании, предоставляя возможность быстро и эффективно переводить на сотни различных языков.

Microsoft Translator — использует ту же технологию, что и Bing Translator, но требует загрузки приложения для использования службы.

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

Amazon Translate — Amazon Translate — это служба нейронного машинного перевода, обеспечивающая быстрый и качественный перевод.

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

Добавьте человеческий фактор — профессиональные услуги машинного перевода

Если вам нужна более высокая точность перевода, автоматические услуги не являются решением. Чтобы добиться профессионального тона, вам необходимо профессиональное участие человека.В настоящее время ничто не может заменить использование профессионального переводчика, говорящего на родном языке, для сканирования текста на предмет несоответствий и неточностей. К счастью, есть поставщики, которые предоставляют эту услугу, сочетая простоту автоматического перевода с критически важным человеческим фактором. Эти профессиональные машинные услуги выводят перевод на новый уровень, позволяя вашему тексту выглядеть написанным хорошо осведомленным носителем языка.

Это может быть то, что мне нужно, где мне найти эти услуги?

ProZ

«ProZ.миссия com — предоставить инструменты и возможности, которые переводчики, переводческие компании и другие представители языковой индустрии могут использовать для: установления контактов, расширения своего бизнеса, улучшения своей работы и получения дополнительного удовольствия от своей профессиональной деятельности ».

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

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

Gengo

«Благодаря 21 000+ сертифицированных переводчиков, работающих во всех основных часовых поясах, мы можем с комфортом идти в ногу с вашими потребностями в содержании, независимо от объема».

Плюсы: Gengo предлагает быстрый перевод. Загрузите необходимые документы, произведите оплату, и перевод будет возвращен, как правило, в тот же день. Также можно отслеживать статус вашего заказа, хотя это зависит от платформы.

Минусы: Вы платите за возможность быстрого ответа, переводы с использованием Gengo стоят недешево.Одним из основных недостатков является невозможность выбора и проверки переводчиков. Для общих переводов это может не представлять проблемы, но для отраслей, требующих специальных знаний, необходим базовый уровень понимания. Специалисты в области маркетинга, медицины, техники и права должны знать, что их переводы будут иметь смысл для их целевой аудитории, а тщательный выбор переводчика с солидной репутацией является ключевым моментом в обеспечении этого. Если вам требуется быстрый перевод простых документов, Gengo может удовлетворить все ваши требования.Если вы ищете что-то более глубокое, возможно, вам лучше поискать в другом месте.

Smartcat

«Единая платформа, объединяющая предприятия и переводчиков в оптимизированный цикл доставки контента».

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

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

Звучит хорошо, но будет ли мой метод перевода меняться в зависимости от формата файла?

Точно так же, как различные типы контента требуют множества соображений по переводу, исходный и целевой типы файлов также должны быть включены в ваши обсуждения.Но как тип файла влияет на процесс перевода?

Как мне переводить документы Word?

Документы Word — это, пожалуй, один из самых простых и распространенных типов файлов, требующих перевода. Убедитесь, что в документе нет внутренних комментариев — если они также не требуют перевода — в противном случае перевод будет стоить больше, чем необходимо. В Smartcat можно выбрать перевод с комментариями к документу или без них.

А как насчет перевода PDF-документов?

PDF-документы часто представляют собой проблему.Их формат идеально подходит для обмена с коллегами и клиентами, но контентом бывает сложно манипулировать, редактировать и, в конечном итоге, переводить. Любой документ PDF потребует преобразования в другой формат файла, что может вызвать проблемы, такие как плохо распознаваемый текст и неточно адаптированный макет. В Smartcat вы можете конвертировать документы из PDF в редактируемый формат, проверяя макет и точность преобразования, прежде чем передавать их переводчикам.

Что делать, если у меня есть контент в другом формате?

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

А как насчет документов на специальном языке?

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

Перевод маркетинговых документов

На первый взгляд маркетинговые документы кажутся легко переводимыми, но если за дело взяться не тем человеком, результат может быть скучным и унылым. Обязательно привлекайте переводчиков, которые имеют опыт работы с маркетинговым контентом.

Перевод юридических документов

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

Перевод медицинских документов

Нет ничего важнее точного перевода медицинских документов. На кону буквально жизнь, поэтому внимание к деталям решает все. Будьте уверены в качестве своего медицинского перевода, выбрав переводчика с правильным профессиональным образованием. Медицинские документы часто представлены в формате PDF, поэтому инструменты оптического распознавания символов (OCR) могут быть полезны для повышения скорости и качества перевода.

Что делать, если вам нужно перевести документы на разные языковые пары?

Различные языковые пары предъявляют разные требования к профессионалу-переводчику.

Если вы переводите на английский…

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

Если вы переводите на популярные языки…

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

Если вы переводите на менее популярные языки…

Если ваш переводческий проект требует использования так называемого «длиннохвостого» языка, вы можете обнаружить, что вам предоставляется выбор из меньшего количества переводчиков. В этом случае важно максимально расширить поле деятельности талантов, используя услугу, обеспечивающую максимальное взаимодействие с широким кругом поставщиков. В Smartcat работает более 250 000 переводчиков, специализирующихся как на длинных, так и на коротких языках. Менее популярные языки плохо подходят для машинного перевода, поэтому очень важно привнести человеческий фактор в процесс перевода.

Итак, вот и все, что вам нужно знать о переводе документа онлайн в 2019 году.

Для получения дополнительной информации о том, как Smartcat может помочь с вашими требованиями к переводу, посетите нашу домашнюю страницу. А чтобы быть в курсе отраслевых тенденций и разработок, загляните в блог Smartcat.

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *