Найти аналогичные результаты с индексом Lucene/SOLR

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

Мы используем индекс SOLR. Мне сказали, что мы можем просто выдать выбранный текст как сам запрос, чтобы вернуть похожие выборки. Однако выделенный текст может иметь длину от 200 до 6000 слов. Запрос из 6000 слов может быть проблемой с точки зрения использования памяти!

Я подумал, что мы могли бы сделать очень агрессивное удаление стоп-слов, чтобы значительно уменьшить количество слов в запросах, оставив только очень значимые слова. Мы работали с этим корпусом в течение последних 10 лет и хорошо знакомы с предметом и используемой лексикой, поэтому нам было бы легко это сделать. Но проблема в том, что мы также используем тот же индекс, чтобы позволить обычным пользователям выполнять поиск по индексу, и если мы удалим слишком много общих слов, то их обычные запросы могут работать неправильно (особенно фразовые запросы).

Мы также хотели бы повысить результаты, которые содержат текст запроса в меньшем диапазоне, а не просто произвольно распределять по всему документу.

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

Я провел последние несколько дней, изучая документацию по анализатору запросов SOLR, и похоже, что это должно быть выполнимо, но я все еще не уверен, что именно мне нужно сделать, чтобы это заработало. Любые предложения будут высоко ценится.


person swami    schedule 31.07.2013    source источник


Ответы (1)


У Solr есть многоядерный объект. Поэтому, если у вас есть одно ядро ​​для вашей внутренней работы, а другое ядро ​​вы можете открыть для общего доступа, это может решить вашу проблему. Вы можете обратиться к этому разделу http://wiki.apache.org/solr/Solr.xml%20(supported%20through%204.x) или вы можете обратиться к ядрам Solr и разделу solr.xml в справочном руководстве по solr.

person Hariharan    schedule 31.07.2013