Байесовская библиотека фильтрации нежелательной почты для Python

StackOverflow https://stackoverflow.com/questions/558219

Вопрос

Я ищу библиотеку Python, которая выполняет байесовскую фильтрацию спама.Я просмотрел SpamBayes и OpenBayes, но оба, похоже, не поддерживаются (возможно, я ошибаюсь).

Кто-нибудь может предложить хорошую библиотеку Python (или Clojure, Common Lisp, даже Ruby), которая реализует байесовскую фильтрацию спама?

Заранее благодарю.

Разъяснение:На самом деле я ищу Байесовский Классификатор спама и не обязательно спам-фильтр.Я просто хочу обучить его, используя некоторые данные, а позже сообщить мне, являются ли некоторые данные спамом.Извините за любую путаницу.

Это было полезно?

Решение

Вам нужна фильтрация спама или байесовская классификация?

Для байесовской классификации существует ряд модулей Python.Я совсем недавно просматривал Оранжевый что выглядит очень впечатляюще.R имеет несколько байесовских модулей.Вы можете использовать Rpy ( Рпи ) чтобы подключиться к R.

Другие советы

Попробуй Преподобный.Это модуль фильтрации спама.

Редисбейз, на мой взгляд, выглядит неплохо:

http://pypi.python.org/pypi/redisbayes/0.1.3

По моему опыту, Redis является отличным дополнением к вашему стеку и может помочь обрабатывать данные с невероятно высокой скоростью по сравнению с MySQL, PostgreSQL или любой другой СУБД.

import redis, redisbayes
rb = redisbayes.RedisBayes(redis=redis.Redis())

rb.train('good', 'sunshine drugs love sex lobster sloth')
rb.train('bad', 'fear death horror government zombie god')

assert rb.classify('sloths are so cute i love them') == 'good'
assert rb.classify('i fear god and love the government') == 'bad'

print rb.score('i fear god and love the government')

rb.untrain('good', 'sunshine drugs love sex lobster sloth')
rb.untrain('bad', 'fear death horror government zombie god')

Надеюсь, это немного поможет.

Попробуйте использовать богофильтр, Я не уверен, как это можно использовать из Python.Bogofilter интегрирован со многими почтовыми системами, что означает относительную простоту взаимодействия.

Рассылка спама является поддерживается и является зрелым (т.е.это работает без необходимости постоянно выпускать новые версии).Он легко сделает то, что вы хотите.Обратите внимание, что SpamBayes является лишь частично байесовским (он использует комбинацию хи-квадрат), но, по-видимому, вам нужна какая-либо классификация на основе статистических токенов, а не что-то конкретно байесовское.

Модуль в Python natural language toolkit (nltk) выполняет наивную байесовскую классификацию: nltk.classify.naivebayes.

Отказ от ответственности: Я все дерьмо знаю о байесовской классификации, наивной или мирской.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top