Каким должен быть список пропущенных слов для наивного байесовского классификатора? - PullRequest
0 голосов
/ 20 марта 2012

Я работаю с наивным байесовским классификатором над PHP (http://www.xhtml.net/php/PHPNaiveBayesianFilter)

И есть список слов, которые можно игнорировать при обучении системы. Эти слова не сохраняются в базе данных и поэтому не используются для классификации. Я хотел бы как можно лучше улучшить систему, поэтому мне было интересно, есть ли какое-либо правило или список типичных слов, которые следует игнорировать для систем такого типа.

В настоящее время я игнорирую такие слова, как "to", "and", "the", "for", "Since", "which", "what", "who" ... и некоторые типичные глаголы, такие как "быть", "было", "было", "было" ... и т. д.

Любая рекомендация? Спасибо.

Ответы [ 2 ]

2 голосов
/ 23 марта 2012

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

Это очень длинный список, который вам нужно сохранить как txt или импортировать в базу данных..... Я предлагаю вам просто гуглить и загружать напрямую

вот несколько ссылок

http://www.momswhothink.com/reading/list-of-verbs.html

http://grammar.yourdictionary.com/parts-of-speech/conjunctions/conjunctions.html

http://www.smart -words.org / transition-words.html

http://www.momswhothink.com/reading/list-of-adjectives.html

Чем больше у вас слов, тем лучше работает ваша система

Спасибо :)

1 голос
/ 23 марта 2012

Не уверен, сколько у вас данных, но если вы можете использовать пакет python nltk, вы можете получить предварительно скомпилированный список «стоп-слов», которые обычно удаляются перед выполнением классификации.Вы также можете поставить / лемматизировать (снова используя nltk) все слова, которые часто помогают наивным байесовским.Кроме того, nltk может достаточно хорошо идентифицировать часть речи, чтобы вы могли выполнять более сложную фильтрацию (например, сохраняя только существительные, собственные существительные, глаголы, наречия и прилагательные)

...