Подтвердить что ты не робот

Lucene Standard Analyzer против Snowball

Просто начинайте работу с Lucene.Net. Я проиндексировал 100 000 строк с помощью стандартного анализатора, выполнил некоторые тестовые запросы и заметил, что множественные запросы не возвращают результаты, если исходный термин был единственным. Я понимаю, что анализатор снежного кома добавляет поддержку, которая звучит неплохо. Тем не менее, мне интересно, есть ли какие-либо недостатки для гонга со снежком по стандарту? Я что-то теряю, идя с ним? Есть ли там другие анализаторы?

4b9b3361

Ответ 1

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

Например, Snowball приведет к "организации" в "орган", поэтому поиск "организации" вернет результаты "органу" без каких-либо штрафных очков.

Независимо от того, подходит ли вам это, зависит от вашего контента и от типа запросов, которые вы поддерживаете (например, поиски очень простые или очень сложные пользователи, и с помощью вашего поиска точно отфильтровать результаты). Вы также можете посмотреть на менее агрессивные стволовые клетки, такие как KStem.

Ответ 2

Анализатор snowball увеличит ваш отзыв, потому что он намного более агрессивен, чем стандартный анализатор. Поэтому вам нужно оценить результаты поиска, чтобы узнать, нужно ли для ваших данных увеличить отзыв или точность. p >

Ответ 3

Я только что закончил анализатор, который выполняет лемматизацию. Это похоже на завершение, за исключением того, что он использует контекст для определения типа слова (существительное, глагол и т.д.) И использует эту информацию для получения стебля. Он также сохраняет исходную форму слова в индексе. Может быть, моя библиотека может вам пригодиться. Это требует Lucene Java, и я не знаю ни о каких компиляторах С#/. NET.