Резюме самых последних научных работ по теме

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

Мы сосредоточимся на изучении изучения кросс-языковых отображений без присмотра, обобщив несколько статей по этой теме и без уравнений!

Для каждой языковой пары существует линейное отображение

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

вектор («Король») - вектор («Мужчина») + вектор («Женщина») = вектор («Королева»)

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

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

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

f (vector («собака»)) = vector («perro»)
f (vector («cat»)) = vector («gato»)

Используя двуязычный лексикон из нескольких тысяч пар слов (Mikolov et al., 2013b), мы можем легко достичь этого, изучая параметры с помощью контролируемых подходов, минимизируя расстояние между отображенными векторами и правильными векторами в лексиконе.

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

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

1 - Противоречивый подход

Этот подход использует знаменитую архитектуру генеративной состязательной сети (GAN) для изучения линейного отображения. Первую убедительную реализацию идеи предложили Zhang et al. (2017) , которые не достигли таких интересных результатов, как контролируемые подходы. Но чуть позже Conneau et al. (2017) предложили несколько улучшений этого состязательного подхода, которые привели к гораздо лучшим результатам.

Генеративная состязательная сеть

Основной принцип архитектуры GAN, представленный Goodfellow et al. (2014) , заключается в использовании двух моделей, генератора и дискриминатора, цель которых состоит в том, чтобы первая обмануть вторую, а вторая - хорошо выполнить классификацию. или задача регрессии. Затем необходимо сформулировать исходную задачу как состязательную игру. Обратите внимание, что одной из распространенных проблем такой архитектуры является стабильность, которая затрудняет обучение ,, но вы можете прочитать больше в этой замечательной, хотя и технической статье, чтобы разобраться в проблеме.

В этом методе линейным отображением будут веса генератора.

Zhang et al. (2017) предлагают три разных метода, но можно предположить, что лучшим с точки зрения производительности является третий, который называется состязательный автокодер. Идея этого метода такова: «после того, как генератор G преобразует исходное слово, встраиваемое x, в представление целевого языка Gx, мы должны иметь возможность восстановить исходное слово, встраиваемое x, путем обратного преобразования с транспонированием G.» Интуитивно это означает, что если вы можете переводить с английского на испанский, вы сможете использовать тот же словарь (скорее, сопоставление), чтобы вернуться с испанского на английский.

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

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

Тем не менее состязательный подход жив: Conneau et al. (2017) имеют улучшенный метод, и он также оказался более стабильным.

Уточнение и CSLS

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

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

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

Некоторые результаты

Эта таблица 2 из статьи Conneau et al. Показывает, что метод Adversarial - Refined - CSLS превосходит контролируемые подходы в наборе данных Wikipedia. Но этот метод оценки подвергался критике: этот набор данных Wiki мог иметь сопоставимый корпус на разных языках, что означало бы, что параллельные данные неявно присутствуют в наборе данных.

2 - Самообучающийся подход

Этот подход, предложенный Artetxe et al. (2018) имеет несколько иную цель, чем другие. Хотя и контролируемый, и состязательный методы пытаются найти линейную функцию, которая напрямую сопоставляет слово на исходном языке другому на целевом языке, Artetxe et al. сосредоточены на получении общего пространства между двумя языками, из которого они вычисляют словарь с итеративным самообучающимся алгоритмом, и в этом общем пространстве оба вложения слов отображаются через их собственная функция.

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

Четыре последовательных шага

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

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

После завершения нормализации их неконтролируемая инициализация словаря основана на сильном предположении, что два эквивалентных слова на разных языках должны иметь одинаковое распределение сходства, то есть «бульдог» должен быть как можно ближе к «собаке». в английском языке слово «bouledogue» должно быть как можно ближе к слову «chien» во французском языке. Используя это предположение, они могут построить начальный словарь, который дает гораздо лучшие результаты, чем случайность.

Тем не менее, этот только что построенный начальный словарь - не то, что в первую очередь подпитывает их алгоритм самообучения! На самом деле они должны предложить несколько улучшений, чтобы сделать его отличным: стохастическая индукция по словарю (случайный выбор значений для сохранения в словаре), частотное ограничение словарного запаса (сохранение только k наиболее часто встречающиеся слова), поиск CSLS (тот же метод, что и Conneau et al., см. выше) и двунаправленная индукция по словарю (последний словарь представляет собой сумму англо-французского словаря и французско-английского словаря ).

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

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

Некоторые результаты

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

Таблица 3 в их статье показывает, что их метод, несмотря на то, что он неконтролируемый, превосходит предыдущие контролируемые методы в мировой задаче перевода. Учтите, что точность равна p @ 1.

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

3 - Общий подход LSTM

В машинном обучении каждый хочет получить отличные результаты с минимальным объемом данных. В этой статье Wada and Iwata (2018) утверждается, что они пошли дальше по этому пути, достигнув самых современных результатов с помощью всего лишь тысяч одноязычных предложений, и их подход сильно отличается от всех остальных.

Они предлагают двунаправленную архитектуру LSTM с общими параметрами для нескольких языков и пользовательскими отдельными параметрами для каждого языка. Более того, в то время как контролируемый и предыдущий неконтролируемые подходы используют вложения слов, которые уже были вычислены и готовы к использованию, метод Вады и Иваты вычисляет их одновременно как межъязыковые сопоставления!

Долговременная кратковременная память

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

Однако слабость этого утверждения состоит в том, что ячейка использует только ту информацию, которая поступает раньше, а самые удаленные ячейки тоже почти не влияют. Один из способов решить первую проблему - использовать двунаправленные рекуррентные сети, которые просто удваивают количество ячеек для получения прямого RNN и обратного RNN, что означает, что для позиции t мы вычисляем скрытые состояния с информацией, поступающей справа (вперед), и с информацией, поступающей слева (назад), и объединяем эти значения.

Многоязычные нейронные языковые модели

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

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

Интересно, что это просто дает вложения слов, но не дает перевода или сопоставления. Чтобы получить перевод, они выравнивают вложения в соответствии с распределениями подобия, и снова они используют Conneau et al. (2017) метод CSLS для получения переводов на целевой язык. Конкретно это означает, что они берут одно слово в матрице встраивания исходного языка, которое является вектором, и ищут наиболее похожий вектор в матрице встраивания целевого языка, но с некоторой коррекцией, применяемой сначала к матрице (CSLS).

Некоторые результаты

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

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

Последнее слово

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

Надеемся, вам понравился этот пост! Пожалуйста, оставьте комментарий и помогите нам развиваться на основе ваших отзывов :-)