По словам профессора Массачусетского технологического института Гилберта Стрэнга, «прекрасная вещь, случившаяся в линейной алгебре при его жизни, — это «разложение по сингулярным значениям». Процесс, при котором прямоугольный фрагмент данных (матрица) разбивается на несколько частей. Сначала самая важная часть, затем следующая важная часть и так далее… Если специалист по данным может найти эти самые важные части, остановиться на этом, аппроксимировать все данные этими важными частями, вот и все». Вы можете творить магию.

Основная идея SVD заключается в том, что каждую матрицу можно разложить как произведение трех матриц. «Матрица вращения», за которой следует «растяжение», а затем еще одно «вращение». Каждый может довольно четко представить себе эти 3 операции.

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

Постановка проблемы:

Для представления модели векторного пространства любого документа существуют две основные проблемы.

Синонимия: множество способов обращения к одному и тому же объекту, например, автомобиль и автомобиль, что приводит к плохому запоминанию.

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

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

Решение:

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

Каждый документ может быть представлен в виде вектора. Каждое слово может быть представлено в виде вектора (через CBOW или Skip Gram), которые семантически связаны.

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

С помощью SVD мы можем представить термины (слова) и документы в виде набора латентных (скрытых) понятий.

Математически это представляется как произведение 3-х матриц. Это просто означает, что вес слова (ti) в документе (dj) представлен как линейная комбинация весов термина-понятия и документа-понятия.

Рассмотрим документ с очень большой размерностью MxN, который представлен в виде матрицы W. Мы можем разложить его на 3 разные матрицы.

Здесь T и D — новые базисы, которые являются ортогональными (ортонормированными), которые представляют собой матрицу сходства терминов и понятий и матрицу подобия документов и понятий соответственно.

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

Ссылаясь на примеры, приведенные в статье Дирвестера,

Комплект документов от c1 до c5 и от m1 до m4,

Эти 9 документов содержат 12 важных слов, которые представляют содержание каждого документа.

Эти документы можно разложить на представление SVD, как показано ниже:

Представление Документов только Терминами-Концептами или Документами-Концептами.

Расширяя SVD, мы можем представить документ только с его пространством терминов-понятий или пространством документов-понятий. Это преобразование поможет нам сделать прогноз. Математика этого преобразования объясняется ниже как произведение матрицы на ее транспонирование. Это может быть записано, как показано ниже,

WW' является действительно симметричным (матрица сходства терминов), столбцы T являются собственными векторами.

W’W является универсальным и симметричным (матрица подобия документ-документ), столбцы D являются собственными векторами такой матрицы.

(Δ)^(2) — собственные значения W’W и WW’.

Вращение + растяжение + вращение

•Каждый документ может быть представлен в своей плоскости «Термины-Концепция»

•Каждый Документ может быть представлен в своей плоскости «Документ-Концепция».

  • Терминальная плоскость и документная плоскость ортогональны.
  • Концепция Matrix помогает в этом преобразовании.

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

Таким образом, любой документ запроса Wq может быть преобразован с помощью его матриц вектора термина-понятия и понятия и может быть дополнительно представлен в виде вектора в его сокращенном пространстве документа-понятия Dq как,

Уменьшение размерности:

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

Из «Бумаги Дирвестера»,

Для этого примера мы выбрали значение k равным 2.

Теперь весь документ представлен в 2 концептах,

Новый вектор запроса Q может быть представлен в двумерном пространстве концепции документа.

Через косинусное сходство мы можем идентифицировать аналогичные документы запрашиваемого вектора (/ документа).

Другое чтение от Дину Томаса:

Разработка логистической регрессии