Латентно-семантический анализ
Оригинальное название: Latent Semantic Analysis (LSA)
Коротко
Математический метод, который по совместной встречаемости слов в большом наборе текстов находит скрытые смысловые связи между словами и документами.
Что такое «Латентно-семантический анализ»
Метод описали в 1990 году Скотт Дирвестер, Сьюзан Дюмейн и соавторы в статье «Indexing by Latent Semantic Analysis». Применительно к поиску его называют латентно-семантическим индексированием, LSI. Задача была практической: поиск по словам не находил документ про «автомобиль», если в запросе стояло «машина». LSA позволял сопоставлять тексты по смыслу, даже когда общих слов у них мало.
Как это работает
Строится матрица «термин — документ»: строки — слова, столбцы — тексты, в ячейках — вес слова в тексте, часто по TF-IDF. Затем матрицу раскладывают сингулярным разложением (SVD) и оставляют несколько сотен самых значимых измерений. В этом сжатом пространстве слова, которые встречаются в похожих контекстах, оказываются рядом, а документы можно сравнивать по близости векторов.
Пример на Python
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.decomposition import TruncatedSVD
docs = ["ремонт двигателя автомобиля",
"замена масла в машине",
"рецепт яблочного пирога"]
X = TfidfVectorizer().fit_transform(docs)
lsa = TruncatedSVD(n_components=2)
coords = lsa.fit_transform(X) # документы в 2-мерном пространстве
На трёх строках метод ничего не выучит: ему нужны тысячи текстов, чтобы связь «машины» и «автомобиля» проявилась через общих соседей. Пример показывает лишь последовательность шагов.
LSA и «LSI-ключи» в SEO
В русскоязычном SEO популярны LSI-ключи — списки «тематических слов», которые советуют добавить в текст. С исходным методом их роднит только название: свидетельств, что Google или Яндекс используют LSA для ранжирования, нет, и представители Google говорили об этом прямо. Метод плохо справляется с многозначностью и не учитывает порядок слов. Его вытеснили нейросетевые модели — от word2vec до BERT, который Google применяет в поиске с 2019 года. Но идея близости слов по контексту, общая для LSA и совместной встречаемости, в этих моделях живёт дальше.

