Поисковые системы, а так же большие языковые модели, например ChatGPT работают с цифрами, что логично. Соответственно первое, что нужно сделать получив текст на вход – оцифровать его. Процесс оцифровки называется токенизация. На следующем шаге каждый токен(слово) переводится в матрицу определенной размерности. Так в Яндексе это матрица [1, 256], в моделях Сбера [1,768], а у модели ada-002 ChatGPT - [1,1536]
Провалилось? Идём дальше!
Вспомним курс школьной математики за 8 класс. Каждый вектор в пространстве X и Y можно разложить на 2 координаты, в 3-х мерном пространстве уже на 3 координаты, а в 768 мерном пространстве на матрицу [1,768].
Диапазон изменений каждой координаты от -1 до 1. Вот так на языке цифр выглядит слово окно. В силу ограничений я не стал писать все 256 значений.
[ 0.03356934 -0.02557373 -0.12902832 0.01093292 0.05551147 … -0.02572632]
Ок, а причем тут SEO?
Фишка в том, что когда люди начали смотреть куда направлены вектора, выяснилось, что у слов близких по тематике вектора направленны в одну и ту же область. И получилось так, что это свойство очень удобно использовать для поиска информации, для классификации текстов и массы других задач. То есть мы можем повысить общую релевантность документа используя данную технологию.
Сама идея повышения релевантности за счет семантически близких слов не нова, она уже используется в ряде сервисов, например Акварель-генератор, Seolemma или ГАР, разница в подходе и в технологиях.
Как вы считаете, что является более достоверным подходом, вытаскивать эти слова напрямую из BERT или довериться разработчикам сервисов?