Алгоритм перемещения сообщений из папки «Входящие» в папку «Спам» - PullRequest
0 голосов
/ 28 октября 2009

Интересно, как сайты, такие как yahoomail или gmail, перемещают сообщения, которые мы щелкаем как спам в папке спама. Насколько мне известно, алгоритм байесовского анализа проверяет сообщения, является ли это спамом на основе содержимого или какой-либо другой вероятности. Но какой алгоритм используют эти сайты (Yahoo Mail или Gmail) для динамического переноса сообщения из одной папки в другую?

Ответы [ 3 ]

1 голос
/ 28 октября 2009

Большинство почтовых систем допускают вставку программ-фильтров, которые, помимо прочего, определяют, является ли сообщение спамом или нет. Procmail, пожалуй, самый известный из них. Основной процесс:

  1. Отправить почту для фильтрации программы.
  2. Программа фильтра проверяет спам, добавляет заголовок и / или информацию о субъекте.
  3. Программа сортировки (procmail и т. Д.) Ищет информацию заголовка / темы, указывающую уровень спама. Если выше некоторого порога, доставить в папку «Спам». Если нет, доставьте в папку «Входящие».

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

0 голосов
/ 28 октября 2009

Проверить popfile http://getpopfile.org/ Программное обеспечение позволяет классифицировать электронные письма так же, как вы можете сортировать спам, но по нескольким папкам. Вы просто перемещаете письмо в нужную папку, и оно начинает учиться.

Через некоторое время он узнает, как следует классифицировать электронную почту. Работает с помощью байесовского форума.

0 голосов
/ 28 октября 2009

Это странный вопрос, но буквальный ответ заключается в том, что почтовый сервис, такой как Google, Yahoo и т. Д., Будет реализовывать это по-разному, в зависимости от того, как они хранят почтовые сообщения и папки. Например, если сообщения электронной почты хранятся в виде отдельных файлов, а папки представлены в виде каталогов, то перемещение сообщения электронной почты в папку со спамом будет выполняться как переименование / перемещение файла. С другой стороны, если почта хранится в базе данных SQL, перемещение сообщения из одной папки в другую будет ОБНОВЛЕНИЕМ строки в (скажем) дескрипторе почты TABLE.

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

Я бы не стал называть этот процесс "алгоритмом". Конечно, не будет единого алгоритма, учитывая, что представления различаются, и что модели папок различны.

Я не вижу никакой связи между вашим вопросом и тегами "java" или "javamail". Скорее всего, крупные провайдеры не реализуют свои почтовые сервисы на Java.

...