m@ksim.pro
К списку статей
ИИ 3 мин чтения

word2vec и новая семантика поиска: почему текстовые коллекции скоро начнут думать в близостях

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

В конце 2012 года группа исследователей из Google опубликовала работу о методе, который они назвали word2vec. Суть метода в том, что слова можно представить как векторы в многомерном пространстве - и при этом близость векторов будет отражать смысловую близость слов. Это звучит как математическая абстракция, пока не видишь, что из этого следует.

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

Чем векторное представление отличается от обычного поиска

Обычный поисковый индекс работает на совпадении слов. Если в запросе написано "автомобиль", а в документе написано "машина" или "транспортное средство" - это, с точки зрения обычного индекса, разные термины. Нужны синонимы, словари, ручная настройка.

Векторное представление подходит к задаче иначе. Слова, которые употребляются в похожих контекстах, получают близкие векторы. "Автомобиль", "машина", "легковой автомобиль" оказываются близко в пространстве векторов - не потому что кто-то так настроил, а потому что они встречаются в похожих контекстах в реальных текстах.

Следствие: поиск по запросу может возвращать документы, которые не содержат ни одного слова из запроса, но семантически близки к нему. Это работает не идеально, но принципиально иначе, чем традиционный поиск.

Где это открывает новые возможности

Несколько классов задач, где этот подход даёт что-то новое.

Поиск по внутренней документации. Когда в компании накоплены тысячи документов - регламенты, контракты, техническая документация, переписка - найти нужное через точные ключевые слова сложно. Семантический поиск позволяет находить документы по смыслу запроса, а не по точному совпадению терминов. Корпоративные базы знаний сталкиваются именно с этим ограничением ключевых слов.

Матчинг и дедупликация. Если компания работает с большими базами товаров, клиентов, поставщиков - одни и те же сущности часто записаны по-разному. Векторное представление позволяет находить похожие записи по смыслу, а не только по точному совпадению строк.

Рекомендации на основе контента. Если у компании есть каталог - товаров, статей, вакансий, объявлений - векторные представления позволяют рекомендовать похожие позиции на основе смыслового сходства описаний.

Классификация и тегирование. Автоматическая разметка входящих обращений, документов, запросов по темам на основе смысла, а не только по наличию ключевых слов. Маршрутизация отзывов и заявок по ключевым словам уже даёт измеримый результат при меньшей сложности.

Что стоит между экспериментом и применением

Как и с любой новой технологией, есть разрыв между результатами в академических условиях и реальным применением.

Качество векторного представления зависит от данных, на которых оно обучено. Публичные модели обучены на общих текстах - новостях, Википедии, книгах. Для специализированной предметной области - медицины, юриспруденции, конкретной отрасли - эти модели работают хуже. Нужна дообучение на предметных текстах или обучение с нуля, что требует объёма данных.

Интерпретируемость ниже, чем у традиционного поиска. Почему система вернула именно этот результат - объяснить сложнее, чем "в документе нашлось это слово".

Инфраструктура отличается от традиционного поискового индекса. Хранение и поиск по векторам - это другой класс задач с другими требованиями к вычислениям.

Всё это решаемо, но требует осознанного инвестирования.

Как думать об этом сейчас

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

Несколько ориентирующих вопросов:

  1. Есть ли у нас текстовая коллекция, в которой поиск по ключевым словам даёт плохие результаты?
  2. Есть ли задача дедупликации или матчинга записей, которые записаны по-разному?
  3. Есть ли каталог, для которого нужны рекомендации "похожего"?
  4. Достаточно ли у нас предметных текстов, чтобы обучить или дообучить модель?
  5. Есть ли у нас технический ресурс для прототипирования?

Направление молодое. Но вектор развития достаточно чёткий: смысловая близость как основа для работы с текстовыми данными - это не замена ключевым словам, а дополнительный уровень, который открывает классы задач, раньше требовавшие ручной работы.

К списку статей
Контакт

Если эта статья отозвалась - напишите. Я отвечаю лично.

Telegram