Модель векторного пространства или векторная модель термина - это алгебраическая модель для представления текстовых документов (и любых объектов в целом) в виде векторов идентификаторов (таких как термины индекса). Он используется в информационной фильтрации , поиска информации , индексации и релевантности рейтинга. Его первое использование было в системе поиска информации SMART .
Определения [ править ]
Документы и запросы представлены в виде векторов.
Каждому измерению соответствует отдельный термин. Если термин встречается в документе, его значение в векторе не равно нулю. Было разработано несколько различных способов вычисления этих значений, также известных как (термины) веса. Одна из самых известных схем - взвешивание tf-idf (см. Пример ниже).
Определение термина зависит от приложения. Обычно термины представляют собой отдельные слова, ключевые слова или более длинные фразы. Если в качестве терминов выбраны слова, размерность вектора - это количество слов в словаре (количество различных слов, встречающихся в корпусе ).
Векторные операции можно использовать для сравнения документов с запросами.
Приложения [ править ]
Значимость рейтинг документов в поиске по ключевому слову можно рассчитать, используя предположение документа Сходства теории, сравнивая отклонения углов между каждым вектором документа и исходным вектором запроса , где запрос представляются в виде вектора с тем же размерностью, что и векторы, представляют другие документы.
На практике проще вычислить косинус угла между векторами, чем сам угол:
Где - пересечение (то есть скалярное произведение ) векторов документа (d 2 на рисунке справа) и запроса (q на рисунке), - это норма вектора d 2 и норма вектора q. Норма вектора вычисляется так:
Используя косинус, сходство между документом d j и запросом q можно рассчитать как:
Поскольку все векторы, рассматриваемые этой моделью, являются неотрицательными по элементам, значение косинуса, равное нулю, означает, что вектор запроса и документа ортогональны и не имеют совпадений (т.е. термин запроса не существует в рассматриваемом документе). См. Косинусное подобие для получения дополнительной информации.
Частота терминов обратно пропорциональна весам частотности документа [ править ]
В классической модели векторного пространства, предложенной Салтоном , Вонгом и Янгом [1], веса терминов в векторах документа являются произведениями локальных и глобальных параметров. Эта модель известна как частотно-обратная частотная модель документа . Вектор веса для документа d равен , где
и
- частота термина t в документе d (локальный параметр)
- - обратная частота документа (глобальный параметр). - общее количество документов в наборе документов; - количество документов, содержащих термин t .
Преимущества [ править ]
Модель векторного пространства имеет следующие преимущества перед стандартной булевой моделью :
- Простая модель на основе линейной алгебры
- Веса терминов не двоичные
- Позволяет вычислять постоянную степень сходства между запросами и документами
- Позволяет ранжировать документы по их возможной релевантности
- Допускает частичное соответствие
Большинство этих преимуществ является следствием разницы в плотности представления коллекции документов между логическим подходом и подходом, обратным частотности термина. При использовании логических весов любой документ лежит в вершине n-мерного гиперкуба . Следовательно, возможные представления документов равны, а максимальное евклидово расстояние между парами равно. По мере добавления документов в коллекцию документов область, определяемая вершинами гиперкуба, становится более населенной и, следовательно, более плотной. В отличие от логического значения, когда документ добавляется с использованием весов частот, обратных к частоте, обратные частоты терминов в новом документе уменьшаются, в то время как частота остальных терминов увеличивается. В среднем по мере добавления документов область расположения документов расширяется, регулируя плотность представления всей коллекции. Такое поведение моделирует исходную мотивацию Солтона и его коллег, согласно которой коллекция документов, представленная в области с низкой плотностью, может дать лучшие результаты поиска.
Ограничения [ править ]
Модель векторного пространства имеет следующие ограничения:
- Длинные документы плохо представлены, потому что у них плохие значения сходства (небольшое скалярное произведение и большая размерность )
- Ключевые слова для поиска должны точно соответствовать условиям документа; подстроки слов могут привести к « ложноположительному совпадению»
- Семантическая чувствительность; документы с похожим контекстом, но с другим термином не будут связаны, что приведет к « ложноотрицательному совпадению».
- Порядок, в котором термины появляются в документе, теряется в представлении векторного пространства.
- Теоретически предполагает, что термины статистически независимы.
- Взвешивание интуитивно понятно, но не очень формально.
Однако многие из этих трудностей можно преодолеть за счет интеграции различных инструментов, включая математические методы, такие как разложение по единичным значениям, и лексические базы данных, такие как WordNet .
Модели, основанные на модели векторного пространства и расширяющие ее [ править ]
Модели, основанные на модели векторного пространства и расширяющие ее, включают:
- Обобщенная модель векторного пространства
- Скрытый семантический анализ
- Срок
- Классификация Роккио
- Случайная индексация
Программное обеспечение, реализующее модель векторного пространства [ править ]
Следующие программные пакеты могут быть интересны тем, кто хочет поэкспериментировать с векторными моделями и реализовать на их основе поисковые сервисы.
Бесплатное программное обеспечение с открытым исходным кодом [ править ]
- Apache Lucene . Apache Lucene - это высокопроизводительная полнофункциональная библиотека системы текстового поиска, полностью написанная на Java.
- Elasticsearch . Еще одна высокопроизводительная полнофункциональная поисковая система с использованием Lucene.
- Gensim - это среда Python + NumPy для моделирования векторного пространства. Он содержит инкрементные (эффективные с точки зрения памяти) алгоритмы для определения частоты терминов с обратной частотой документа , скрытого семантического индексирования , случайных прогнозов и скрытого распределения Дирихле .
- Weka . Weka - популярный пакет интеллектуального анализа данных для Java, включая модели WordVectors и Bag Of Words .
- Word2vec . Word2vec использует векторные пространства для встраивания слов.
Дальнейшее чтение [ править ]
- Г. Солтон (1962), « Некоторые эксперименты по созданию ассоциаций слов и документов » Proceeding AFIPS '62 (Fall) Proceedings of the 4-6 декабря 1962, осенняя совместная компьютерная конференция , страницы 234-250. (Ранняя работа Солтона, использующая формализацию матрицы термина-документа)
- Г. Солтон , А. Вонг и К. С. Ян (1975), " Модель векторного пространства для автоматического индексирования " Связь ACM , т. 18, н. 11, страницы 613–620. (Статья, в которой была представлена модель векторного пространства)
- Дэвид Дубин (2004), Самая влиятельная статья, которую никогда не писал Джерард Салтон (объясняет историю модели векторного пространства и отсутствие часто цитируемой публикации)
- Описание модели векторного пространства
- Описание классической модели векторного пространства доктором Э. Гарсиа
- Связь поиска в векторном пространстве с поиском "k-ближайшего соседа"
См. Также [ править ]
- Модель мешка слов
- Обработка сложных терминов
- Концептуальное пространство
- Собственные значения и собственные векторы
- Инвертированный индекс
- Поиск ближайшего соседа
- Редкая распределенная память
- шинглинг
Ссылки [ править ]
- ↑ G. Salton, A. Wong, CS Yang, Модель векторного пространства для автоматического индексирования , Communications of the ACM, v.18, n.11, p.613–620, Nov. 1975