LSI на русском часть 1.
Многие из вас наверняка уже сталкивались с термином LSI (Latent semantic indexing). Теорий и мифов о том что это такое, и как это используется гуглом, в интернете много, но достоверной информации на русском никто не публиковал. Поэтому я попросил своего переводчика адаптировать наиболее интересную и полноценную статью по данной тематике.
Для тех кто знаком с английским рекомендую читать оригинал, а также заглянуть на сайт сотрудника микрософта где можно найти не только дополнительную информацию но и соответствующее програмное обеспечение....
Итак...
Распостранение заблужений через форумы провоцирует взрывной феномен, который мы назвали раньше блогономией. Таким образом, эта статья призвана развеять блогономию поискового маркетинга, относящуюся к SVD и LSI.
Операторы поисковых запросов не являются частью LSI. LSI применяется не только к английскому, но и к испанскому и другим языкам. LSI не делает никаких предположений по поводу того, являются ли слова в запросах или документах существительными, глаголами, прилагательными или чем то иным. LSI не делает анализ по темам (в СЕО называется ’тематизацией’). Современные алгоритмы LSI не используют информацию о порядке слов (их следовании), хотя Синтагматическая Парадигматическая Модель и Алгоритм Предикации предполагались для того, чтобы анализировать и эту информацию.
Ещё один предубежением является то, что глубинная семантика разботает по принципу совместного употребления (слов). На самом деле это не так, по крайней мере, совместное употребление не играет в этой технологии ведущую роль. LSI отлично определяет слова, которые являются синонимичными, на маленьких пространствах, но исследования учёных под руководством Тома Ландауэра показывают, что более 99% пар слов, обладающие синонимией, никогда не опоявляются вместе в одном абзаце.
Необходимо напомнить читателям, что синонимы и слова, синонимичные по смыслу, чаще всего не появляются вместе, но появляются в том же, похожем или связанном контексте. Несмотря на то, что технология LSI сама по себе не является ориентированное на совместное словоупотребление, этот термин важен для тго, чтобы понять природу LSI..
Существующим мифом в поисковом маркетинге является также и то, что LSI использует в работе контекстуальность, то есть ТЕРМы, появляющиеся в одном и том же контексте. На деле это не всегда так. Давайте рассмотим два документа, Х и Y, и три ТЕРМа А, B, и C; А и В не появляются вместе. В документе Х упоминаются ТЕРМы А и С, а в документе Y упоминаются В и С.
Общим знаменателем для А и В является С, следовательно, мы определяем это отношение как интранзитивное (непереходное) совместное словоупотребление, так как и А, и В появляются вместе, когда появляется элемент С. Это называется совместным словоупотреблением второго порядка и является частным случаем соместного словоупотребления высшего порядка..
Тем не менее, ошибочным будет считать наличие контекстуальности только потому, что ТЕРМы А и В состоят в отношенеиях неперходного словоупотребления с С, так как ТЕРМы могут употребляться в документах Х и Y в различных контекстах. К примеру, таким случаем будут являться документы Х и Y, обсуждающие различные темы.
Длинные документы более склонны к этому, чем короткие. Даже если документы Х и Y обсуждают одну и ту же тему, они могут затрагивать различные темы. Так, будет ошибочным утверждать, что наличие совместного словоупотребления высшего порядка между А и В (непереходное по отношению к С) равнозначно конеткстуальному родству между этими ТЕРМами.
Стоит добавить к этому проблему полисемичности, и ситуация ухудшится, так как LSI может потерпеть неудачу, применённый к словам, обладающим полисемией..
Есть и другие вопросы, требующие рассмотрения. LSI требует больших вычислительных затрат, и эти затраты увеличиваются при использовании коллекций больших объёмов. Очевидно и то, что LSI, вопреки некоторым мнениям, не является ассоциативным индексированием. Это также не технология индексирования документов. Эта технология используется с уже проиндексированными коллекциями, ТЕРМы которых уже просчитаны в соответствии со схемой пересчёта значимости конкретных ТЕРМов.
Более того, понимание запроса, т.е. предположение, что запрос будет сделан на естественном языке, не является обязательным условием для примения LSI..
К тожу же, утверждение, что ТЕРМы должны содержаться в конкретном участке документа (например, тексте ссылки, самой ссылки, или конкреном адресе) не является верным и не является необходимым для применения LSI. Это ошибочное представление некоторое время распостранялось теми сервисами, которые продают линки, но не представляют математической основы того, как же работает LSI.
Верно то, что некоторые исследования по широкомасштабно распределяемомоу LSI упоминают слово ’домен’ в связи с LSI, но этот термин применятеся там к т.н. информационным доменам (домен в научных документах означает область), а не доменам в смысле ссылкам, проще говоря, веб-сайтам. Верно то, что LSI можно применять к коллекциям, которые были рассортированы по веб-сайтам, но это представлляет собой по большей части фильрацию и первичную классификацию и не является частью алгоритма SVD, используемом в LSI.
Позвольте заметить, что техника деконструкции единичного значения (SVD), используемая в LSI, не является основанной на искуственном интеллекте, но является техникой матричной деконструкции, разработанной в 60е годы. Грубо говоря, SVD сама по себе – одна из технологий матричной деконструкции. Конечно, существует много способов деконструкции и анализа данной матрицы; многие альтернативные техники доступны в режиме он-лайн (LU, QR, и другие).
Верно то, что SVD, как и NMF (не-негативная факторизация матрицы) используется для ведения правительственной электронной почты. Верно, что SVD используется как подслушивающее средство для определения паттернов слов в несовершеннолетних веб-сообществ, но LSI – это не секретное оружие Правительства, созданное для того, чтобы читать Ваши мысли – по крайней мере, пока.
Последним, но крайне важным замчеанием является то, что, «LSI-дружественных» документов несуществует. Это всего лишь очередной миф, придуманный оптимизаторами, выдуманный компаниями, занимающими раскруткой для того, чтобы лучше продавать свою продукцию.
Я предполагаю, что у читатлей есть хорошее представление о линейной алгебре или, говоря другими словами, что они понимают материал следующих тем:
- 1: Стохастические Матрицы
- 2: Основные Матричные Операции
- 3: Собственные значения (Характеристические числа) и Собственные Вектора.
Методика обучения, которую я собираюсь использовать, заключается в так называемом моделировании схем tf*IDF – то есть, общие знания излагаются в начале и затем связываються с более конкретными, локальными знаниями.
К тому же, вместо того, чтобы читать лекции по поводу того, что же это такое – SVD, я хочу показать Вам, как это работает – шаг за шагом, так что запаситесь карандашом и бумагой. После того, как вы вручную просчитыете SVD для маленькиз матриц, Вам, возможно, захочется использовать программное обеспечение для того, чтобы перепроверить результаты.
С большими матрицами (чей порядок больше 3) Вам, возможно, пригодился бы программный пакет вроде MathLab или же версию с открытм исходным кодом, типа SciLаb, которая доступна для свободной загрузки. Для относительно маленьких матриц я бы рекомендорвал использование матричных калькуляторов, таких, как BlueBit и его Matrix ActiveX Component.
Вы можете использовать этот компонент в Ваших проектах SVD и LSI для того, чтобы ошеломить других. Для того, чтобы те знания, которые вы вот-вот получите, оказались в интернете, я бы рекомендовал Вам использовать JavaScript-утилиты, такие как Singular Value Decompression Calculator. Будьте внимательны: некторые из этих инструментов поставляются со своими собственными обучающими курсами..
продолжение следует...
