Встраивание слов - Word embedding

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

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

Было показано, что встраивание слов и фраз при использовании в качестве базового входного представления повышает производительность в задачах НЛП, таких как синтаксический синтаксический анализ и анализ тональности .

Развитие и история подхода

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

Понятие семантического пространства с лексическими элементами (словами или многословными терминами), представленными в виде векторов или вложений, основано на вычислительных задачах захвата характеристик распределения и их использования для практического применения для измерения сходства между словами, фразами или целыми документами. Первое поколение моделей семантического пространства - это модель векторного пространства для поиска информации. Такие модели векторного пространства для слов и их распределительных данных, реализованные в их простейшей форме, приводят к очень разреженному векторному пространству высокой размерности (см. Проклятие размерности ). Уменьшение количества измерений с использованием методов линейной алгебры, таких как разложение по сингулярным значениям, привело к внедрению скрытого семантического анализа в конце 1980-х годов и подхода случайной индексации для сбора контекстов совпадения слов. В 2000 году Bengio et al. представил в серии статей «Нейронные вероятностные языковые модели» для уменьшения высокой размерности представлений слов в контекстах путем «изучения распределенного представления для слов». Вложения слов бывают двух разных стилей, в одном из которых слова выражаются как векторы совпадающих слов, а в другом слова выражаются как векторы лингвистических контекстов, в которых эти слова встречаются; эти разные стили изучаются в (Lavelli et al., 2004). Роуис и Сол опубликовали в Science, как использовать « локально линейное встраивание » (LLE) для открытия представлений многомерных структур данных. Большинство новых методов встраивания слов примерно после 2005 года полагаются на архитектуру нейронной сети, а не на более вероятностные и алгебраические модели, начиная с некоторых основополагающих работ Йошуа Бенжио и его коллег.

Этот подход был принят многими исследовательскими группами после того, как примерно в 2010 году были достигнуты успехи в теоретической работе по качеству векторов и скорости обучения модели, а достижения в области аппаратного обеспечения позволили с пользой изучить более широкое пространство параметров. В 2013 году команда Google под руководством Томаса Миколова создала word2vec , набор инструментов для встраивания слов, который может обучать модели векторного пространства быстрее, чем предыдущие подходы. Подход word2vec широко использовался в экспериментах и ​​способствовал повышению интереса к встраиванию слов как технологии, перемещению исследовательского направления из специализированных исследований в более широкие эксперименты и, в конечном итоге, проложив путь для практического применения.

Ограничения

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

Большинство подходов, которые производят многозначные вложения, можно разделить на две основные категории по их словесному представлению, т. Е. Неконтролируемые и основанные на знаниях. На основе пропуска word2vec программа Multi-Sense Skip-Gram (MSSG) выполняет распознавание смысла слов и встраивание одновременно, сокращая время обучения, предполагая при этом определенное количество смыслов для каждого слова. В непараметрической мультисмысловой пропускной грамме (NP-MSSG) это число может варьироваться в зависимости от каждого слова. Комбинируя предварительные знания лексических баз данных (например, WordNet , ConceptNet , BabelNet ), встраивания слов и устранение неоднозначности смысла слов, наиболее подходящая смысловая аннотация (MSSA) маркирует смысловые значения слов с помощью неконтролируемого и основанного на знаниях подхода с учетом контекста слова в предварительном -определяемое скользящее окно. Как только слова устранены, их можно использовать в стандартной технике встраивания слов, так что создаются многосмысленные вложения. Архитектура MSSA позволяет периодически выполнять процесс устранения неоднозначности и аннотации в самоулучшающейся манере.

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

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

Для биологических последовательностей: BioVectors

Вложения слов для n- граммов в биологические последовательности (например, ДНК, РНК и белки) для приложений биоинформатики были предложены Асгари и Мофрадом. Названные био-векторы (BioVec) для обозначения биологических последовательностей в целом с белковыми векторами (ProtVec) для белков (аминокислотными последовательностями) и ген-векторами (GeneVec) для последовательностей генов, это представление может широко использоваться в приложениях глубокого анализа. обучение протеомике и геномике . Результаты, представленные Асгари и Мофрадом, предполагают, что BioVectors могут характеризовать биологические последовательности с точки зрения биохимических и биофизических интерпретаций лежащих в основе паттернов.

Векторы мысли

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

Программное обеспечение

Программное обеспечение для обучения и с использованием вложений слова включает в себя Томас Mikolov в Word2vec , Стэнфордский университет перчаточного , GN-перчатке, Flair вложение, AllenNLP в Elmo , BERT , FastText , Gensim , Индр и Deeplearning4j . Анализ главных компонентов (PCA) и T-распределенное стохастическое соседнее вложение (t-SNE) используются для уменьшения размерности векторных пространств слов и визуализации вложений слов и кластеров .

Примеры применения

Например, fastText также используется для расчета вложений слов для текстовых корпусов в Sketch Engine , доступных в Интернете.

Смотрите также

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