Anatoly Vorobey (avva) wrote,
Anatoly Vorobey
avva

Categories:
  • Music:

дневник: компьютерное и о спаме

Неделю назад купил себе ноутбук (не могу написать "новый ноутбук", т.к. своего до сих пор никогда не было, это первый). ThinkPad R50e. Совершенно не супер-крутой и "навороченный", но это мне и не нужно; все, что мне нужно, в нем есть с лихвой.

Решил дать еще один шанс Линуксу (после того, как на домашнем компьютере новом я перешел на Windows), и установил Ubuntu Linux на ноутбуке. В основном мне хотелось попробовать, потому что так и не смог привыкнуть к Thunderbird в качестве почтовой программы на Windows (а другие еще хуже); т.е. я мог пользоваться, но все же заметно медленнее и менее продуктивно, чем с любимым mutt'ом (это почтовая программа, которая вообще не графическая, но очень хорошо продумана и невероятно удобна для чтения и работы с большим количеством почты).

Результаты превзошли ожидания во много раз. Во-первых, Ubuntu Linux встал на моем ноутбуке с инсталляционной CD-шки без единой проблемы и не задавая мне ни одного нетривиального вопроса: все сделал, все распознал, все решил сам и установил и поднял (ну, попросил подтвердить, что я хочу заново разметить жесткий диск разве что). Нашел и сконфигурировал обычную и WiFi-сеть, итд. Сам поставил на десктоп иконку, следящую за состоянием батареи ноутбука. А когда я перехожу выключаю его из электросети и перехожу в автономный режим и наоборот, он это распознает и за кулисами переводит все файловые системы в режим работы noatime (т.е. так, чтобы когда только читаешь файлы, ничего не пишешь, информация об этом не записывалась обратно на диск, позволяя его намного реже разгонять и экономя энергию). Это меня особенно впечатлило. Мне для всего этого не пришлось и пальцем пошевельнуть.

Далее (это уже для любителей Юникса специально), мне очень нравится, как в Убунту устроена работа с рутом (привилегированным режимом). По умолчанию у аккаунта root пароля вообще нет, и зайти в него невозможно, зато тот аккаунт "главного юзера", который создан при установке системы, настроен для sudo, и все, что нужно делать рутом, делается из него через sudo с вводом своего пароля; пароль запоминается на 15 минут вперед, так что все время набирать не надо. Это очень умное и правильное решение. Нет лишнего отдельного пароля, нет соблазна и повода заходить рутом вообще.

Со спамом забавно получается.

Раньше я пользовался пакетом SpamAssassin (еще раньше я пользовался фильтровкой почтового провайдера, но она тоже очень слабая была). После долгой и настойчивой байесовской тренировки он стал отлавливать процентов 70 спама, что тоже очень плохо, т.к. я этого добра получаю штук 300 в день. SpamAssassin - довольно мощная штука (жаль еще, что медленная очень); наверняка можно было поковыряться и настроить всякие параметры, чтобы было лучше, но у меня руки хронически не доходили до этого. Потом я перешел на Windows полтора месяца назад, и решил, что дам шанс Thunderbird. У него свой встроенный отлов спама, тоже байесовский (для тех, кто не знает: речь идет о вероятностных алгоритмах, опирающихся на частоту слов, причем не конкретных ключевых спамовых слов, а любых вообще. Их, как правило, нужно натренировать на начальном объеме почты, показав, что спам, а что нет, а дальше они сами сортируют, себя самообучают еще лучше распознавать, и только нужно их поправлять, если не так распознали). К сожалению, после долгой и упорной тренировки он стабильно начал находить 50% спама. Причем там подкрутить уже особо нечего, или я не нашел.

На новом ноутбуке я решил попробовать что-то новое, и установил Bogofilter. Результаты меня ошеломили. Я натренировал его один раз на первых 700 письмах. Это было неделю назад. С тех пор он обработал много тысяч писем и ошибся три раза в сторону "думаю, что не спам, но ошибаюсь" и один раз в сторону "думаю, что спам, но ошибаюсь" (причем это было письмо от робота почтовой рассылки, так что неудивительно и нестрашно). Моей проблемы со спамом как не бывало. Очень, очень доволен и рекомендую. Я установил версию, для базы данных использующую SQLite (вместо Berkeley DB более стандартной), и запускаю его с опциями -u (важно! заставляет его не просто классифицировать каждое письмо, но и учитывать его в базе данных сразу) и -p (чтобы он вставлял заголовок, указывающий на его решение, а потом это уже расходится в разные ящики у меня на основании этого).

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

Потом я начал пользоваться одной такой программой, одной из самых известных, и результаты меня не то чтобы вдодхновили. И, незаметно, но твердо, мое мнение о всем классе таких программ, о таком методе изменилось. Я стал думать примерно так: что да, отличная идея, в теории замечательная, но увы, увы, суровая практика все-таки ее опровергает. Спаммеры становятся все изощреннее и изощреннее. Часто спам их вообще состоит из цитат из классики или других книг, а собственно спамная часть запрятана в нескольких HTML-тагах с картинками; как такое распознаешь? Плюс огромное количество случайно сгенерированных слов и фраз, которые они добавляют, видимо может захламлить любую базу данных. Ну и так далее.

И вот я сменил программу, и новая работает именно так, как должна была работать старая - с эффективностью если не 100%, то больше 99.9, не преувеличивая. Как же быстро мое мнение метнулось обратно! я мгновенно нашел в уме контраргументы против всех аргументов, которые уже выстроил "в пользу" победы спаммеров. Опять математика у меня в мыслях торжествует над беспомощными ворами нашего времени, и опять это происходит как бы из общих соображений, как и спаммеры раньше "побеждали" из общих соображений.

Этот процесс подспудного нахождения "теоретических" объяснений окружающей реальности, когда подстраиваешь внутреннюю картину мира под внешнюю и делаешь вид, что так и было, происходит все время, конечно; но не всегда удается столь очевидным образом поймать себя за руку. Дело ведь не в том, что я менял собственные убеждения под давлением фактов; это-то как раз правильно и необходимо делать. Дело в том, что я менял их под влиянием совершенно недостаточных фактов, очень мелких и мелочных и ничего на самом деле не значащих (например, того, что не работала как следует одна программа из десяти возможных, причем еще такая, которая требует тщательной настройки, а я ее не настраивал). Зато они были рядом, в непосредственной досягаемости.

Subscribe
  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 74 comments
Previous
← Ctrl ← Alt
Next
Ctrl → Alt →
Previous
← Ctrl ← Alt
Next
Ctrl → Alt →