Извлечение соответствующих данных из файла Docx с помощью Azure когнитивного поиска - PullRequest
0 голосов
/ 20 марта 2020

Я новичок в Azure познавательном поиске. Я использую Azure хранилище BLOB-объектов для хранения документов (.docx). Всякий раз, когда я ищу определенную информацию из документа, которая была сохранена в блобе Azure, используя фразы запроса (например, «правительственные правила») с функцией выделения совпадений, он выделяет результат из документа везде, где «правительство» и «правила» условия присутствуют. Из-за этого я получаю некоторую нерелевантную информацию из документа, который имеет только термин «правила».

Есть ли способ получить из документа только определенный раздел, который пользователь хочет знать (например, только «правительственные правила»), вместо получения разделов, которые соответствуют хотя бы одному термину в фразе запроса.

Пожалуйста, помогите мне с этим. Заранее спасибо.

1 Ответ

0 голосов
/ 20 марта 2020

Быстрое объяснение. Azure Cognitive Search и все другие поисковые системы используют структуру данных, известную как «инвертированный индекс». В основном это индекс, который хранит идентификатор документа и частоту (сколько раз искомое слово появляется в документе).

Например:

enter image description here

Если вы ищете «небо», документы 2 и 3 будут получены. Но если вы хотите «голубое небо», вы должны указать, что оба термина должны существовать в одном документе, а один должен предшествовать другому.

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

Я рекомендую вам изучить, как работает поисковая система и анализаторы:

https://docs.microsoft.com/en-us/azure/search/search-lucene-query-architecture

(особенно раздел) https://docs.microsoft.com/en-us/azure/search/search-lucene-query-architecture#stage -1-разбор запросов

https://docs.microsoft.com/en-us/azure/search/index-add-custom-analyzers

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...