Введение

Данные - это золото 21 века. Мы каждый день создаем квинтиллионы байтов данных. Информация - это обработанная и уточненная форма данных, имеющая логический смысл. Ищем ли мы в поисковых системах, ищем продукт на веб-сайтах электронной коммерции, любой другой поиск статей, продуктов, людей и т. Д., IR (поиск информации) присутствует повсюду и стал неотъемлемой частью нашей повседневной жизни.

Понимание поиска информации

Информационный поиск в области информатики определяется как процесс получения соответствующих документов, которые удовлетворяют информационные потребности из большого набора документов. В большинстве случаев необходимая информация выражается в форме строки запроса (например, поиск в Google), а информация также является строкой (например, результаты поиска в Google).

Основная задача в IR состоит в том, чтобы сначала найти подходящие документы для запроса (этап поиска), а затем ранжировать соответствующие документы (этап ранжирования). Сопоставление происходит между запросом и каждым документом в коллекции, поскольку набор сбора очень велик (в миллиардах), логика сопоставления должна быть эффективной. Затем выполняется ранжирование на основе релевантности контента документа для запроса, показателей производительности документов и пользовательского контекста.

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

Классификация алгоритмов сопоставления

На приведенной ниже диаграмме показаны важные алгоритмы сопоставления в ИК-диапазоне. На высоком уровне у нас есть следующие подходы.

  • Модель мешка слов (выполняйте сопоставление текста как операцию пересечения множества, обрабатывая и запрос, и документы как мешок слов)
  • На основе встраивания слов (сопоставление происходит после перевода текста в пространство для встраивания и алгебраического сопоставления в этом пространстве; некоторые из популярных методов встраивания - word2vec и fasttext. Эти вложения изучаются таким образом, что семантически похожие запросы находятся поблизости в пространстве для встраивания, а не связанные запросы далеко)

Следующий уровень классификации основан на том, является ли алгоритм на основе нейронной сети или не нейронной сети. На основе нейронной сети далее подразделяются на основанные на представлении (запрос и документы сначала преобразуются для встраивания пространства индивидуально без знания друг друга, а затем сопоставляются, риск потери сигналов точного совпадения) и на основе взаимодействия (явное взаимодействие модели между словами запроса и терминами документа, сигналы точного совпадения не теряются).

Теперь обсудим каждый из них по ключевым моментам. Мы попытались охватить широту и опустить детали реализации и вывести ключевые выводы в качестве новой идеи в статье.

Сумка слов на основе

Базовая модель мешка слов

  • Это современное состояние последних 50–60 лет, и оно работает достаточно хорошо.
  • Относитесь к запросу и документам как к мешку слов. Для каждого термина в корпусе создайте автономную хэш-карту термина для списка документов, содержащих термин (простое описание инвертированного индекса). Во время онлайн-сопоставления используйте эту хэш-карту, чтобы получить общие документы для всех условий запроса.

  • Эффективно (поскольку точное совпадение является важным сигналом релевантности) и действенным (из-за инвертированного индекса нам не нужно перебирать все документы)
  • поверхностный способ понимания человеческих языков, игнорирующий значение и контекст. например, документ не китайский телефон будет соответствовать запросу китайский телефон.
  • Несоответствие словарного запаса. Например: люди не будут соответствовать человеку.
  • Выводы. Базовая модель набора слов эффективна и действенна для обычных случаев использования.

Отзыв о псевдорелевантности

  • Литература: Укомплектованная книга, Надежный PSR (2006).
  • Стремится повысить отзывчивость, когда по запросу возвращено только несколько документов.
  • Предполагается, что основные документы имеют отношение к запросу. Повысьте отзывчивость, возвращая результаты с помощью запросов + верхние документы
  • Верхние документы могут иметь некоторую нерелевантную информацию, которая может привести к совершенно разным результатам. Чтобы этого избежать, мы моделируем потенциально разный объем релевантной информации в каждом документе обратной связи итеративным способом (диаграмма ниже).

  • Выводы. Повышение запоминаемости с помощью уже известных релевантных документов для запроса.

Модель последовательной зависимости

  • Литература: СДМ (2014).
  • Представляет текст не только терминами, но и парами терминов, которые встречаются на некотором расстоянии друг от друга.
  • Если термины, которые находятся рядом в запросе, также находятся поблизости в документе, то есть веские доказательства в пользу релевантности.
  • Используя модель Маркова, он моделирует, насколько вероятно термин запроса qi описывает документ, а также важность близости терминов.

  • Выводы. Совпадение слов н-граммов - важный сигнал при сопоставлении. Термины, расположенные непрерывно в запросе, предоставляют иное (более сильное) свидетельство потребности в информации, чем набор несмежных терминов запроса.

Автозаполнение составного совпадения (ЗАПЯТАЯ)

  • Литература: ЗАПЯТАЯ (2014).
  • Этот алгоритм пытается выполнить семантическое сопоставление путем сопоставления по нескольким полям, таким как категория и аспекты.
  • Мы применяем 3 фильтра для каждого запроса
    1) документы, заголовки которых совпадают с запросом (синтаксическое сопоставление)
    2) документы, категории которых совпадают с запросом (семантическое сопоставление)
    3) документы, чьи фасеты совпадение с запросом (семантическое совпадение)
  • Последний набор - это объединение всех 3. Соответствие категории и фасета - это синтаксическое сопоставление только с префиксными терминами (дающее псевдосемантическое сопоставление).
  • Ранжирование выполняется по синтаксической и семантической релевантности (соответствие категории, соответствие количеству аспектов, значимость аспектов).

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

Скрытый семантический анализ

  • Источники: Блог, LSI (1990).
  • Если мы говорим, что пара слов (снег, зима) встречается вместе чаще, чем пара (собака, зима), это означает, что она несет более высокое семантическое значение, чем пара слов (собака, зима). Это основной контекст алгоритма.
  • Каждый документ связывается с темами, и каждый термин связан с темами, и соответствие происходит в пространстве тем.
  • Затем выполняется разложение по сингулярным значениям (SVD) матрицы терминов и документов для получения тем

  • Выводы. LSI - это изучение тем без учителя, поэтому могут возникнуть проблемы с точностью. Однако его можно использовать для расширения базового набора моделей слов, где документы, содержащие совпадения терминов запроса, а также совпадения в пространстве тем, будут считаться более актуальными.

Скрытое размещение Дирихле

  • Источники: Блог, LDA (2003).
  • Изучение темы для документов и слов другим способом, чем LSI
  • Инициализируйте случайные темы для каждого слова. На каждой итерации сходятся к финальному заданию
  • LDA имеет лучшую точность, чем LSI

Семантическое сходство с inSession Queries

  • Литература: Семантическое сходство с InSession Queries (2018)
  • Учитывает семантическое сходство между документами-кандидатами и предыдущими документами, по которым щелкнули в одном сеансе, на основе метода word2vec (слова, которые имеют общий контекст в корпусе, расположены близко друг к другу в пространстве)
  • Выводы: в ходе сеанса контекст можно использовать, чтобы лучше понять намерения пользователя и сопоставить документы.

Модель релевантности контента по степени вовлеченности

Система MERCURE

  • Источники: MERCURE (1994).
  • Трехуровневая сетевая архитектура, также учитывающая межчеловеческую зависимость. Ранняя нейронная сеть в области IR

Глубоко структурированная семантическая модель (DSSM)

  • Литература: DSSM (2013), CDSSM (2014).
  • Семантическое сопоставление запроса и документов на основе нейронной сети
  • Вход в нейронную сеть: многомерный вектор терминов (одна горячая кодировка для представления содержащихся терминов). Чтобы уменьшить размерность векторов терминов (с 500 КБ до 30 КБ), мы используем горячую кодировку для триграмм символов.
  • Результат: вектор понятий в низкоразмерном семантическом пространстве признаков.

  • Функции и модели изучаются автоматически
  • Данные о кликах Query-Document из прошлого используются для обучения
  • Использование сверточной нейронной сети дает дополнительные преимущества
  • Выводы. DSSM помогает автоматически изучать функции семантического сопоставления. Сигналы точного совпадения (которые очень полезны для сопоставления релевантности) теряются перед сопоставлением. Этот недостаток преодолевается в нейронных моделях на основе взаимодействия (например, DRMM), которые также моделируют взаимодействие между условиями запроса и условиями документа для сохранения сигналов точного совпадения.

Модель сопоставления с глубокой релевантностью

  • Источники: DRMM (2017)
  • Нейронная сеть для определения соответствия релевантности
  • СЕМАНТИЧЕСКОЕ СООТВЕТСТВИЕ (значение должно быть одинаковым, обрабатывает запрос и документ одинаково) VS. СООТВЕТСТВИЕ СООТВЕТСТВУЮЩИМ (сигналы точного соответствия, важность термина запроса, учитывает, что запросы обычно меньше документов)
  • Порядок оценки в документе с этим обычно выглядит следующим образом: точное соответствие ›мягкое соответствие› слабое мягкое соответствие.
  • Для каждого термина в запросе и всех терминов в документе он вычисляет косинусное сходство в пространстве вложения. Например: если задан термин запроса «автомобиль» и документ с терминами (автомобиль, аренда, грузовик, выемка, судебный запрет, взлетно-посадочная полоса), и соответствующие локальные взаимодействия, основанные на подобии косинуса, равны (1, 0,2, 0,7, 0,3, -0,1, 0,1)
  • Далее он создает гистограмму, классифицируя каждое косинусное сходство в один из этих интервалов {[-1, -0,5), [-0,5, -0), [0, 0,5), [0,5, 1), [1, 1]} " . Бункер [1,1] фиксирует сигналы точного совпадения. Для предыдущего примера мы получим соответствующую гистограмму как [0, 1, 3, 1, 1]
  • Это объединение гистограмм направлено на отделение точного совпадения от мягкого совпадения и отделения сильного мягкого совпадения от слабого мягкого совпадения.

  • Выводы. Это позволяет определить релевантность документа запросу. Ограничение здесь заключается в том, что мы пытаемся сопоставить один термин запроса точно с одним термином документа, который может быть не в состоянии охватить все сценарии сопоставления словаря (например: США против Соединенных Штатов Америки, один термин LHS совпадает с тремя условия RHS)

Doc2Query

  • Ссылки: Doc2Query (2019)
  • Генерирует потенциальные запросы из документов с помощью нейронного машинного перевода и индексирует эти запросы как условия расширения документа.
  • Полезно для длинных абзацев и поиска по часто задаваемым вопросам

K-NRM (модель нейронного ранжирования на основе ядра)

  • Литература: K-NRM (2017), K-NRM1 (2018), Conv-K-NRM (2019)
  • Сначала мы генерируем вложения слов для запроса и документа.
  • Затем перекрестные сопоставления запрашивают n-граммы и документируют n-граммы длины вариантов (устраняет недостатки DRMM).
  • Отличает полезные мягкие совпадения от шумных с помощью пула ядра

Семантический поиск продукта

  • Ссылка: Product Search (2019)
  • Сгенерируйте вложения для униграмм + биграмм + символьных триграмм как для запроса, так и для документа, а затем выполните сопоставление
  • Обработка слов OOV с использованием последовательного хеширования

ДокБерт

  • Ссылки: DocBert (2019)
  • Используйте контекстное представление слов
  • Токены встраиваются во вложения. Чтобы еще больше отделить запрос от документа, встраивания сегментов «Q» (для токенов запроса) и «D» (для токенов документов) добавляются к вложениям токенов. Чтобы зафиксировать порядок слов, добавлены вложения позиций. Жетоны проходят несколько слоев трансформаторов.

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

Структура глубокого контекстуального взвешивания терминов (DeepCT)

  • Источники: DeepCT (2020 г.), HDCT (2020 г.)
  • Определение важных терминов в длинном тексте, полезно для поиска отрывка
  • Поиск центральных слов в тексте на основе значения, а не частоты встречаемости слов

  • Выводы. Это помогает найти самые центральные слова в отрывке, чтобы он соответствовал документу, центральные слова которого присутствуют в запросе. В приведенном выше примере 2-й документ не по теме, даже если он содержит больше вхождений терминов ДНК.

Резюме

  1. Модель мешка слов оказалась очень эффективной (поскольку точное соответствие терминов является очень важным сигналом релевантности) и эффективной (из-за перевернутой индексации получение документов с совпадающими терминами происходит очень быстро и не нужно перебирать документы)
  2. Модель пакета слов имеет определенные ограничения, она не понимает человеческий язык e (документ для не китайского телефона будет соответствовать запросу китайского телефона), не понимает несоответствие словарного запаса ( например, документ для щенка не будет соответствовать документу для собаки). Важность термина определяется частотой термина, а не семантическим пониманием.
  3. Мы можем улучшить отзыв, используя сочетание самых популярных документов и введенных пользователем запросов в качестве обратной связи, чтобы возвращать больше документов.
  4. Моделирование важности фразы в документе и важности термина в документе (P (документ / фраза), P (документ / термин)) может повысить релевантность
  5. Если термины, которые находятся рядом в запросе, также находятся поблизости в документе, то есть веские доказательства в пользу релевантности.
  6. Сопоставление запроса не только с заголовком документа, но и с категорией и фасетами и получение сигналов ранжирования для совпадения в этих полях может помочь повысить релевантность.
  7. Разница между семантическим соответствием и соответствием релевантности. СЕМАНТИЧЕСКОЕ СООТВЕТСТВИЕ (то есть одинаково, обрабатывает запрос и документ одинаково) VS. СООТВЕТСТВИЕ СООТВЕТСТВУЮЩИМ (сигналы точного соответствия, важность термина запроса, запросы обычно меньше документов)
  8. Используйте взаимодействие пользователей с документом для запроса как меру релевантности.
  9. Обсуждаемые различные модели нейронного поиска (DSSM, DRMM, K-NRM, семантический поиск) пытаются уловить следующее:
  • взаимодействие между терминами запроса и документа
  • взаимодействие между триграммами символов запроса и документа
  • взаимодействие между n-граммами слов разной длины в документе-запросе
  • рассматривать сигналы для точного совпадения, а также для мягкого совпадения
  • учитывать сигналы, для которых наиболее важны термины запроса и документы

Обратная связь

Вопросы? Комментарии? Контакты: LinkedIn, Instagram