Дистрибутивная семантика

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

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

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

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

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

  1. удаление определенных измерений векторов в соответствии с лингвистическими или статистическими критериями;
  2. сингулярное разложение;
  3. метод главных компонент (PCA);
  4. случайное индексирование.

Методы уменьшения размерности нашли применение в нейронных моделях. При обучении этих моделей целевым представлением каждого слова является сжатый вектор относительно небольшого размера, для которого максимизируется сходство с векторами соседей и минимизируется сходство с векторами слов, его соседями не являющихся. Таким образом можно быстро получать векторные представления слов во много тысяч раз компактнее, чем при традиционном подходе. При этом они демонстрируют отличное качество на стандартных семантических метриках. Типичный и самый известный представитель подобного подхода — word2vec, представленный несколькими сотрудниками Google в 2013 году. Пример применения подобных моделей к русскому языку представлен на веб-сервисе RusVectōrēs.

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

20.07.2016









 
архив

подписка