В качестве основы глубокого обучения модель искусственной нейронной сети всегда была центром исследований искусственного интеллекта, а также играет важную роль в различных областях. Хорошая модель часто сопровождается огромным объемом и большим количеством параметров, что не способствует воспроизведению и развертыванию модели.
В качестве примера возьмем наиболее распространенную векторную модель слов в области обработки естественного языка (NLP). Для обучения высококачественной векторной модели слов требуется большой объем высококачественного корпуса для ее поддержки. Для широко используемых языков, таких как английский, относительно легко получить корпус и обучить модель. Напротив, некоторые небольшие языки имеют мало корпусов и их трудно получить.Независимо от того, насколько хороша структура сети, производительность обученной модели неудовлетворительна.
Может ли быть так, что исследования НЛП на малых языках не могут быть продвинуты?
дистилляция знаний
Алгоритм дистилляции знаний дает новую идею для решения такого рода проблем. В химии перегонка является эффективным методом разделения компонентов с разными температурами кипения.Точно так же просто поймите перегонку знаний,Он может извлекать знания из сложной модели (Учитель) и передавать их в другую облегченную модель (Ученик) для достижения цели сжатия модели.Такой подход не только снижает требования к аппаратным средствам, сокращает время расчета, но и обучает способности к обобщению в сложных моделях и достигает эффекта аппроксимации исходной модели.
Что такое вектор слов
Все задачи обработки естественного языка начинаются с представления текста на компьютере. С непрерывным развитием методов представления текста наиболее популярным методом является модель вектора слов.Его основная идея состоит в том, чтобы преобразовывать слова в плотные векторы с помощью большого объема корпусного обучения и отображать их в векторное пространство, а для слов с похожими значениями их соответствующие векторы также похожи.
Точная модель вектора слов является основой и гарантией для других последующих задач (текстовое сходство, классификация настроений, извлечение информации и т. д.). Для получения качественной векторной модели слов требуется поддержка большого количества качественных корпусов. Однако у подавляющего большинства существующих методов встраивания слов есть одна общая черта — они поддерживают только один язык, обычно английский. Это делает их неприменимыми напрямую к другим языковым сценариям.
На рисунке выше показан простой пример вектора слов:
Модель вектора слов может отображать слова "король", "королева", "мужчина" и "женщина" в векторное пространство. С помощью основных операций с векторами (таких как сложение и вычитание) мы можем вычислить разницу между этими словами. смысловое отношение.
В этом примере королева=король-мужчина+женщина
Вектор слов + дистилляция знаний = ?
В последние годы широкое внимание уделяется многоязычным методам представления текста, и для решения этой проблемы было предложено множество схем. Обычный метод заключается в использовании каждого языка для обучения соответствующей векторной модели слов, но из-за отсутствия корпуса на некоторых языках трудно удовлетворить требованиям обучения модели.
Некоторые ученые предложили использовать классическую структуру кодировщика-декодера на основе последовательностей, чтобы сначала реализовать модель машинного перевода с одного языка на другой, а затем использовать выходные данные слоя кодировщика в качестве вектора предложений (модель LASER). .
Эта модель хорошо работает при идентификации предложений, которые точно переведены на разные языки, но модели трудно оценить их сходство для предложений, которые не были точно переведены. Кроме того, обучение этой модели также требует чрезвычайно высокой аппаратной поддержки: чтобы получить векторную модель слов, поддерживающую 93 языка, требуется около 5 дней для обучения на 16 графических процессорах NVIDIA V100.
Недавно некоторые смежные исследователи предложили решить эту проблему: для предложений с одинаковым значением, но переведенных на разные языки, их позиции отображения в векторном пространстве должны быть одинаковыми. Исходя из этого, он предложил использовать дистилляцию знаний для расширения существующей одноязычной векторной модели слов на новые языки.
Общее решение выглядит следующим образом:
В качестве модели учителя нам нужна модель словарного вектора исходного языка, параллельный корпус ((s1,t1),… ,(sn, tn)) из исходного языка s в целевой язык t, стоит отметить, что ti может быть на другом языке. Затем, используя среднеквадратичную ошибку как потерю, обучите модель ученика так, чтобы выходные данные модели ученика были как можно ближе к модели учителя.
Таким образом, модель ученика может хорошо изучить способность модели учителя к обобщению и обладает двумя очень важными свойствами:
A. Векторные пространства в разных языках также демонстрируют согласованность. Другими словами, векторы разных языков при переводе одного и того же предложения очень близки;
Б. Свойства векторного пространства, содержащиеся в модели учителя, могут быть хорошо перенесены на другие языки.
По сравнению с другими методами обучения многоязычных векторных моделей слов этот метод имеет следующие преимущества:
A. Существующие модели могут быть расширены на новые языки только с очень небольшим количеством образцов;
B. Он может легче обеспечить желаемую производительность в векторном пространстве;
C. Требования к оборудованию для всего процесса обучения очень низкие.
Чтобы проверить осуществимость идеи, соответствующие исследователи провели следующие эксперименты:
По поводу выбора модели, в основном с использованием английской модели SBERT в качестве модели учителя и XLM-RoBERTa (XLM-R) в качестве модели ученика. Словарь модели английского языка SBERT содержит 30 тыс. английских токенов и обеспечивает самые современные результаты в задачах с несколькими векторами предложений. XLM-R использует SentencePiece в качестве текстового токенизатора, что позволяет избежать специальной предварительной обработки, необходимой для некоторых языков, и может быть непосредственно применено к исходному тексту всех языков.Кроме того, его словарь содержит данные из более чем 100 языков.250 тыс. токенов, очень подходит для многоязычной векторной модели слова.
по тренировочным данным, в основном используя следующие наборы данных:
Для некоторых языков с небольшим количеством ресурсов сложно получить параллельный корпус, поэтому для расширения корпуса также используются некоторые двуязычные словари.Основные словари, использованные в этом эксперименте, следующие:
• МУЗА
• Викизаголовки
Чтобы проверить эффект модели, исследователи в основном проводили эксперименты по трем задачам: много- и межъязыковое семантическое текстовое сходство (STS), поиск битекста и поиск межъязыкового сходства.
Основная цель задачи STS — вывести значение пары предложений, отражающее семантическое сходство между ними.Например, оценка 0 может использоваться для указания на то, что два предложения совершенно не связаны между собой, а оценка 5 может использоваться для указания на то, что семантика двух предложений полностью согласована.
В общедоступном наборе данных STS 2017 авторы используют ранговый коэффициент корреляции Спирмена для оценки влияния различных моделей. Взяв среднее значение оценок нескольких языков, мы можем обнаружить, что результат модели дистилляции XLM-R ← SBERT-парафразов (83,7) лучше, чем у других моделей традиционных алгоритмов LASER (67,0), mUSE (81,1), LaBSE (73,5). ).
Задача Bitext Retrieval направлена на выявление взаимно переведенных пар предложений из двух корпусов на разных языках.Автор использует набор данных в задаче майнинга BUCC для расчета значения F1 модели, результата модели дистилляции XLM-R ← SBERT-перефразирования (88,6) и других моделей традиционных алгоритмов LASER (93,0), mUSE (87,7), LaBSE (93,5) Есть максимумы и минимумы. Поскольку модель дистилляции также будет оценивать некоторые предложения с похожей семантикой, но с отсутствующими некоторыми подробными элементами (такими как дата, местоположение и т. д.), как пары предложений, которые переводятся друг в друга, ее результат в этой задаче не самый лучший. Но это все же показывает, что он очень подходит для поиска семантически сходных пар предложений.
Что касается задачи поиска межъязыкового сходства, автор решил провести эксперименты с базой данных Tatoeba.В этом задании нужно найти предложения на других языках, наиболее похожие на предложения на всех исходных языках, и результаты следующие:
Видно, что в малых языках эффект дистилляционной модели значительно лучше, чем у традиционной модели.
Сегодня я делюсь с вами методом обучения векторных моделей слов, основанным на идее дистилляции, который может распространить высококачественную одноязычную модель на другие языки. Судя по экспериментальным результатам, для общих проблем модель дистилляции также может иметь хороший эффект, особенно на небольших языках.В то же время модель дистилляции также экономит большую часть стоимости оборудования, и это метод, который стоит попробовать.
В будущем мы будем делиться другими статьями в смежных областях.Заинтересованные друзья не забудьте подписаться на наш аккаунт.LigaAI@juejin, и добро пожаловать на наш официальный сайтLigaAI — интеллектуальная платформа управления исследованиями и разработками нового поколения., познакомьтесь с нами ~
использованная литература:
[1] Reimers N , Gurevych I . Making Monolingual Sentence Embeddings Multilingual using Knowledge Distillation[J]. 2020.
[2] Artetxe M , Schwenk H . Massively Multilingual Sentence Embeddings for Zero-Shot Cross-Lingual Transfer and Beyond[J]. 2019.
[3] Chidambaram M , Yang Y , Cer D , et al. Learning Cross-Lingual Sentence Representations via a Multi-task Dual-Encoder Model[C]// Proceedings of the 4th Workshop on Representation Learning for NLP (RepL4NLP-2019). 2019.
[4] Yang Y , Cer D , Ahmad A , et al. Multilingual Universal Sentence Encoder for Semantic Retrieval[J]. 2019.
[5] Feng F , Yang Y , Cer D , et al. Language-agnostic BERT Sentence Embedding[J]. 2020.
Источник:Woohoo.Quota.AC.UK/информатика…