Я подготовил классификатор спама с использованием метода NLTK Наивный Байес. Набор спама, а не спам, содержит 20 000 экземпляров слов в процессе обучения.Как изменить метод сглаживания классификатора Naive Bayes в NLTK?
я заметил, что при столкновении с неизвестными функциями, то classifier
дает ему 0.5
вероятность спама:
>>> print classifier.prob_classify({'unkown_words':True}).prob('spam')
0.5
Я знаю, что это называется Laplace Smoothing
в классификации Байеса. Тем не менее, я хочу установить вероятность спама unknown features на 0.4
, потому что неизвестные функции, скорее всего, от обычных пользователей. Как я могу реализовать его с помощью NLTK?
вы нашли путь, чтобы найти из NLTK наивный байесовский делает вычисления? Можете ли вы ответить на [этот вопрос] (http://stackoverflow.com/questions/27897591/python-nltk-naive-bayes-classifier-what- this-underlying-comput-that-this)? – modarwish