neural machine что это

Нейросеть Google Translate составила единую базу смыслов человеческих слов

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это
«Универсальный язык» нейронной сети Google Neural Machine Translation (GNMT). На левой иллюстрации разными цветами показаны кластеры значений каждого слова, справа внизу — смыслы слова, полученные для него из разных человеческих языков: английского, корейского и японского

За последние десять лет система автоматического перевода текстов Google Translate выросла с нескольких языков до 103, а сейчас она переводит 140 млрд слов ежедневно. В сентябре сообщалось, что разработчики приняли решение полностью перевести сервис Google Translate на глубинное обучение. У этого подхода есть много преимуществ. Перевод становится гораздо лучше. Более того, система может переводить тексты на языки, для которых никогда не видела переводов, то есть не обучалась специально для этой языковой пары.

Нейросеть Google для машинного перевода называется Google Neural Machine Translation (GNMT). От самого начала и до конца перевод текста теперь полностью выполняет нейросеть. Традиционно ИИ использовался в Google Translate в ограниченном режиме, для некоторых вспомогательных задач. Например, для сравнения текстов, доступных на нескольких языках, вроде официальных документов ООН или Европарламента. В таком режиме сравнивался перевод каждого слова в текстах.

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

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это
Модель архитектуры GNMT (Google’s Neural Machine Translation). Слева сеть энкодера, справа — декодера, в середине модуль внимания. Нижний слой энкодера двусторонний: розовые модули собирают информацию слева направо, а зелёные — в обратном направлении

Эта внутренняя репрезентация внутри сети и является в каком-то определении универсальным языком человечества. К сожалению, люди не смогут разговаривать на этом универсальном языке. Он представляет собой машинный код, с которым происходит работа на внутреннем промежуточном уровне нейросети. Это машинный язык-посредник между любыми языковыми парами всех человеческих языков, поддерживаемых системой. Тем не менее, существование такой универсальной базы смыслов, которая объединяет все языки мира, впечатлит любого лингвиста. Вообще говоря, разработка подобной базы со всеми коннотациями, тщательным описанием всех возможных значений каждого слова, — это словно словно чаша Грааля в лингвистике. О ней мечтали десятилетиями. Благодаря нейросети Google эта мечта постепенно воплощается в жизнь. Нейросеть уже де-факто имеет такую базу смыслов внутри «чёрного ящика», с указанием возможных значений каждого слова. Проблема только в том, что пока что с этой базой умеет работать только она сама, эта нейросеть. Для человеческого понимания база смыслов в машинных кодах недоступна просто так, она требует специальной обработки.

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это
Новая универсальная архитектура GNMT, которая переводит любые языковые пары

Что самое интересное, благодаря универсальной базе смыслов всех человеческих слов нейросеть перевода может работать даже для тех языковых пар, на которых её не обучали. Возьмём пример на анимации. Система обучена для языковых пар «японский⇄английский» и «корейский⇄английский». После этого через универсальную составленную базу смыслов нейросеть сможет переводить также языковую пару «японский⇄корейский», хотя она не тренировалась на ней.

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это
Некоторые примеры смешивания целевых языков в многоязычной модели

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

Действительно, «новый универсальный язык» — это звучит очень красиво и загадочно. Хотя на самом деле это просто единое многомерное пространство, составленное при помощи техники t-SNE, то есть методом нелинейного снижения размерности и визуализации многомерных переменных (t-distributed stochastic neighbor embedding).

Визуализация многомерного пространства данных в нейросети

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

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

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

Новый метод универсального перевода, названный разработчиками «Zero-Shot Translation», не требует никаких изменений в архитектуре нейросети Google Neural Machine Translation.

Научная работа с описанием многоязычной системы машинного перевода Neural Machine Translation System на базе нейросети за авторством Мелвина Джонсона, Максима Крикуна и других сотрудников Google опубликована 14 ноября 2016 года в открытом доступе.

Источник

Передача знания и Нейронный машинный перевод на практике

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

Мы собираем чувашско-русский корпус и параллельно смотрим, что можно сделать с имеющимся объемом данных. В этом примере использовали корпус из 90 000 пар предложений. Самый хороший результат на данный момент дал метод передачи знания (англ. Transfer Learning), о нем и пойдет речь в статье. Цель статьи — дать практический пример реализации, который легко можно было бы воспроизвести.

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

В качестве родительского корпуса пробовали брать 1 миллион пар предложений из англо-русского параллельного корпуса и 1 миллион из казахско-русского корпуса. В казахских данных 5 миллионов предложений. Из них взяли только те, у которых коэффициент соответствия (третья колонка) больше 2. Казахский вариант дал результаты чуть лучше. Интуитивно кажется, что это понятно, поскольку чувашский и казахский языки более похожи друг на дурга. Но на самом деле это не доказано, а также сильно зависит от качества корпуса. Более подробно про подбор родительского корпуса можно прочесть в этой статье. Про дочерний корпус из 90 000 пар предложений узнать и запросить пример данных можно тут.

Теперь к коду. Если нет своей быстрой видеокарты, можно тренировать модель на площадке Colab. Для обучения мы использовали библиотеку Sockeye. Предполагается, что уже установлен Python3.

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

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

На выходе получаются такие токенизированные предложения:

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

так как дообучение дочерней модели происходит на том же словаре.

Теперь небольшое, но важное отступление. В МП предложения разбивают на атомы в виде слов и далее оперируют предложениями как последовательностями слов. Но этого как правило недостаточно, потому что образуется огромный хвост из слов, которые встречаются в корпусе по одному разу. Построить для них вероятностную модель сложно. Особенно это актуально для языков с развитой морфологией (падеж, род, число). И русский, и чувашский именно такие языки. Но есть решение. Можно разбить предложение на более низкий уровень, на подслова. Мы использовали Byte pair encoding.

Получим примерно такие последовательности подслов

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

И применить их к токенам, например:

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

Теперь перейдем непосредственно к обучению нейронной модели. Сначала нужно подготовить общие модельные словари:

Далее обучим родительскую модель. Более подробно простой пример описан на странице Sockeye. Технически процесс состоит из двух шагов: подготовки данных с использованием созданных ранее модельных словарей

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

Для обучения дочерней модели выполним

Код запуска обучения выглядит так

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

Подводя итоги, сравним результаты. Обычная модель машинного перевода дала качество 24,96 BLEU, тогда как модель с передачей знания 32,38 BLEU. Разница видна и визуально на примерах переводов. Поэтому, пока продолжаем собирать корпус, будем пользоваться этой моделью.

Источник

Визуализируя нейронный машинный перевод (seq2seq модели с механизмом внимания)

Sequence-to-sequence модели (seq2seq) – это модели глубокого обучения, достигшие больших успехов в таких задачах, как машинный перевод, суммаризация текста, аннотация изображений и др. Так, например, в конце 2016 года подобная модель была встроена в Google Translate. Основы же seq2seq моделей были заложены еще в 2014 году с выходом двух статей — Sutskever et al., 2014, Cho et al., 2014.

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

Sequence-to-sequence модель – это модель, принимающая на вход последовательность элементов (слов, букв, признаков изображения и т.д.) и возвращающая другую последовательность элементов. Обученная модель работает следующим образом:

В нейронном машинном переводе, последовательность элементов – это набор слов, обрабатываемых поочередно. Выводом также является набор слов:

Заглянем под капот

Под капотом у модели находятся энкодер и декодер.

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

То же самое происходит и в случае машинного перевода.

Применительно к машинному переводу контекст представляет собой вектор (массив чисел), а энкодер и декодер, в свою очередь, чаще всего являются рекуррентными нейронными сетями (см. введение в RNN — A friendly introduction to Recurrent Neural Networks).

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

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

При обучении модели можно задать размер контекстного вектора – число скрытых нейронов (hidden units) в энкодере RNN. Данные визуализации показывают 4-мерный вектор, но в реальных приложениях контекстый вектор будет иметь размерность порядка 256, 512 или 1024.

По умолчанию в каждый временной отрезок RNN принимает на вход два элемента: непосредственно входной элемент (в случае энкодера, одно слово из исходного предложения) и скрытое состояние (hidden state). Слово, однако, должно быть представлено вектором. Для преобразования слова в вектор прибегают к ряду алгоритмов, называемых «эмбеддинги слов» (word embeddings). Эмбеддинги отображают слова в векторные пространства, содержащие смысловую и семантическую информацию о них (например, «король» – «мужчина» + «женщина» = «королева»).

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

Прежде чем обрабатывать слова, необходимо преобразовать их в векторы. Эта трансформация осуществляется с помощью алгоритма эмбеддингов слов. Можно использовать как предобученные эмбеддинги, так и обучить эмбеддинги на своем наборе данных. 200-300 — типичная размерность вектора эмбеддинга; в данной статье для простоты используется размерность 4.

Теперь, когда мы познакомились с нашими основными векторами/тензорами, давайте вспомним механизм работы RNN и создадим визуализации для его описания:

На следующем шаге RNN берет второй входной вектор и скрытое состояние #1 для формирования выхода на данном временном отрезке. Далее в статье подобная анимация используется для описания векторов внутри модели нейронного машинного перевода.

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

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

Обратимся теперь к другому виду визуализации sequence-to-sequence моделей. Эта анимация поможет понять статическую графику, которая описывает эти модели – т.н. развернутое (unrolled) представление, где вместо того, чтобы показывать один декодер, мы показываем его копию для каждого временного отрезка. Так мы можем посмотреть на входные и выходные элементы на каждом временном отрезке.

Обратите внимание!

Контекстный вектор является бутылочным горлышком для такого типа моделей, благодаря чему, им сложно иметь дело с длинными предложениями. Решение было предложено в статьях Bahdanau et al., 2014 и Luong et al., 2015, где была представлена техника, получившая название «механизм внимания» (attention). Данный механизм значительно улучшает качество систем машинного перевода, позволяя моделям концентрироваться на релевантных частях входных последовательностей.

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

На 7-ом временном отрезке механизм внимания позволяет декодеру сфокусироваться на слове «étudiant» («student» по-французски), прежде чем сгенерировать перевод на английский. Эта способность усиливать сигнал от релевантной части входной последовательности позволяет моделям, основанным на механизме внимания, получать лучший результат по сравнению с остальными моделями.

При рассмотрении модели с механизмом внимания на высоком уровне абстракции можно выделить два основных отличия от классической sequence-to-sequence модели.

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

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

Это «упражнение с оценками» производится в декодере на каждом временном отрезке.

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

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

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

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

Если вы чувствуете, что готовы научиться применять эту модель, обратитесь к руководству Neural Machine Translation (seq2seq) на TensorFlow.

Источник

Как работает нейронный машинный перевод?

Описание процессов машинного перевода основанного на базе правил (Rule-Based), машинного перевода на базе фраз (Phrase-Based) и нейронного перевода

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

В этой публикации нашего цикла step-by-step статей мы объясним, как работает нейронный машинный перевод и сравним его с другими методами: технологией перевода на базе правил и технологией фреймового перевода (PBMT, наиболее популярным подмножеством которого является статистический машинный перевод — SMT).

Результаты исследования, полученные Neural Machine Translation, удивительны в части того, что касается расшифровки нейросети. Создается впечатление, что сеть на самом деле «понимает» предложение, когда переводит его. В этой статье мы разберем вопрос семантического подхода, который используют нейронные сети для перевода.

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

Очень простой, но все же полезной информацией о процессе любого типа автоматического перевода является следующий треугольник, который был сформулирован французским исследователем Бернардом Вокуа (Bernard Vauquois) в 1968 году:

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

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

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

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

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

Эта общая идея и объясняет промежуточные этапы, когда машина переводит предложения пошагово. Что еще более важно, эта модель описывает характер действий во время перевода. Давайте проиллюстрируем, как эта идея работает для трех разных технологий, используя в качестве примера предложение «The smart mouse plays violin» (Выбранное авторами публикации предложение содержит небольшой подвох, так как слово «Smart» в английском языке, кроме самого распространенного смысла «умный», имеет по словарю в качестве прилагательного еще 17 значений, например «проворный» или «ловкий» прим. пер.)

Машинный перевод на базе правил

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

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

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

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

Применение этих правил приведет к следующей интерпретации на целевом языке перевода:

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

Тогда как правила генерации на французском будут иметь следующий вид:

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

Машинный перевод на базе фраз

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

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

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

Эта модель перевода основана на трех базовых методах:

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

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

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

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

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

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

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

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

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

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

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

Нейронный машинный перевод имеет следующие особенности:

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

Последовательность исходных контекстов (ContextS 1,… ContextS 5) являет внутренней интерпретацией исходного предложения по треугольнику Вокуа и, как упоминалось выше, представляет из себя последовательность чисел с плавающей запятой (обычно 1000 чисел с плавающей запятой, связанных с каждым исходным словом). Пока мы не будем обсуждать, как кодировщик выполняет это преобразование, но хотелось бы отметить, что особенно любопытным является первоначальное преобразование слов в векторе «float».

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

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

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

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

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

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

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

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

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

Вернемся к процессу перевода. Второй шаг имеет следующий вид:

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

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

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

Примеры перевода для сравнения

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

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это
neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

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

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

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это
neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

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

Однако отметим, что было неправильно переведено слово «rounds», которое в данном контексте имеет значение слова «bullet». Мы объясним этот типа интерпретации в другой статье, посвященной тренировке нейронных сетей. Что касается перевода на базе правил, то он распознал только третий смысл слова «rounds», который применяется в отношении ракет, а не пуль.

neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это
neural machine что это. Смотреть фото neural machine что это. Смотреть картинку neural machine что это. Картинка про neural machine что это. Фото neural machine что это

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

Другие варианты со словом «crime» показали тот же результат…

Переводчики работающие на базе слов и фраз так же не ошиблись, так как использовали те же глаголы, приемлемые в обоих контекстах.

Источник

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

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