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

Каковы основные отличия и преимущества алгоритмов Porter и Lancaster Stemming?

Я работаю над задачами классификации документов в java.

Оба алгоритма очень рекомендуются, каковы преимущества и недостатки каждого и которые чаще всего используются в литературе для задач обработки естественного языка?

4b9b3361

Ответ 1

В самых основах этого, основное различие между алгоритмами стримера с портьером и ланкастером заключается в том, что стволовый ланкастер значительно более агрессивен, чем стример портера. Три основных алгоритма генерации, используемые сегодня, - это Porter, Snowball (Porter2) и Lancaster (Paice-Husk), с континуумом агрессивности в основном следуя по тем же линиям. Портер - это наименее агрессивный алгоритм, причем особенности каждого алгоритма на самом деле довольно длительные и технические. Вот вам и разбивка:

Портер: Наиболее часто используемый стволовый без сомнения, также один из самых нежных стволовых. Один из немногих стволовых, у которого на самом деле есть поддержка Java, которая является плюсом, хотя она также является наиболее вычислительно интенсивной из алгоритмов (предоставляется не очень значительным отрывом). Это также самый старый алгоритм сдерживания с большим отрывом.

Porter2: почти повсеместно рассматривается как улучшение по сравнению с носильщиком, и не зря. Портер сам на самом деле признает, что он лучше, чем его оригинальный алгоритм. Чуть быстрее время вычислений, чем носильщик, с довольно большим сообществом вокруг него.

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

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