SpamAssassin sa mi zda byt najvhodnejsi. Ma tak velke mnozstvo testov,
ze pri spravnom nastaveni a troske ucenia je velmi efektivny.
Je sice trocha pomalsi, ale zato uzivatel dostane nastroj, ktory je velmi konfigurovatelny.
V tej ukazje je ale jedno, ktory antispam pouzijes. Kludne si to zamen. :)
> ... pri spravnom nastaveni a troske ucenia je velmi efektivny.
A v tom je prave kamen urazu SA. Nastavit ho spravne je NP problem. SA navic nedava zadne nastroje k analyze spatne urcenych zpav a urceni optimalnich hodnot toho nastaveni. Navic se to nastaveni musi prubezne upravovat podle situace...
Puvodne jsem chtel napsat neco vtipneho na tema, ze kdyz je neco NP problem, tak to neni tak vazne, horsi by bylo kdyby to NP problem nebyl. Pak me ale napadlo neco horsiho: on to dost dobre NP problem byt nemusi. Velikost zprav, ktere bychom potrebovali otestovat, muze byt vice nez polynomialni vzhledem k velikosti konfigurace spamassasina ....
Jinak predpokladam, ze jste mel na mysli, ze problem je NP-tezky, tedy stejne tezky jako vsechny NP-uplne problemy.
Ja nejsem zas tak dobry teoretik :-) Ale ja chapu NP tridu jako "vse co neni P". Tudiz kdyz neco neni NP, tak to bud neni algoritmicky resitelne (coz by, pravda, bylo horsi), nebo je to P (coz by bylo lepsi).
Jestli je problem NP uplny jsem netvrdil (NP-uplne problemy jsou podmnozina NP). Algoritmus nalezeni optimalnich vah spociva ve vyzkouseni (po nejakem kroku) vsech kombinaci nastaveni a vezme se ta, ktera na testovacich datech dava nejpresnejsi vysledky (t.j. slozitost A^N kde A je pocet ruznych zkousenych vah pro test a N je pocet testu). Nenapada mne ted zjevny prevod na nejaky NP-uplny problem...
Takovy problem lze resit za pomoci metod umele inteligence na prohledavani stavoveho prostoru. Program, ktery to umi existuje, ma ho autor SpamAssassina. Vyrabi mu vzdy vychozi nastaveni pro dalsi release, Ale AFAIK neni volne dostupny. (Predchozi verze udajne pouzivala geneticky algoritmus, soucasna jakousi neuronovou sit.)
Ale proc to delat takhle slozite, kdyz staci ty vystupy hodnotit Bayesianskym filtrem...
To chapete zle triedu NP. NP je trieda problemov, ktore vieme riesit nedeterministicky v polynomialnom case. Kazdy jazyk z P je aj v NP (opacne sa to zatial nevie). Existuju triedy jazykov, ktore nepatria do NP a daju sa algoritmicky riesit.
Problem nastaveni vah je NP v pripade, ze nastavujeme pro pevne danou (tedy konstantni) mnozinu mailu. Ale neni zcela jasne ze je tohle ten pripad ... spis bychom chteli, aby spamassasin vyhodnotil spravne kazdy mozny mail a ne jen maily z te konstantni mnoziny ....
> spis bychom chteli, aby spamassasin vyhodnotil spravne kazdy mozny mail
No, to bychom samozrejme chteli :-) Ale problem je, ze u tech "vsech moznych" mailu nemuzeme zjistit spravnou klasifikaci takoveho mailu. Takze se to musi ucit na mnozine mailu, ktere tomu predtim nekdo (clovek) oklasifikoval. Ta mnozina samozrejme neni konstatni, muze se s casem menit, ale pro jedno uceni je konstantni.
Ale "urceni optimalnich hodnot toho nastaveni" je prave o tom co bychom chteli, ne o tom co muzeme dostat. Proto je take nalezeni optimalnich hodnot tak tezke, ale nastesti existuji jednodussi algoritmy, jejihz vysledky se optimalnim hodnotam blizi.
Ted nevim, jestli myslite jine algoritmy na fltrovani spamu (treba Bayesianske filtry), nebo jine algoritmy na urcovani vah. Problem SpamAssassina je v tom, ze neexistuje zadny volne dostupny prohram na hledani tech vah. O tom to cele je.
I tak by nemohl fungovat v realtime (po kazdem mailu), jako Bayes. Rovnez nevim, jak moc je vhodne to, ze nektere jevy ohodnocuje uplne jinym zpusobem, nez druhe (specialni testy versus vyskyt slov v Bayesovske casti).
Dspam je sice dobry filter, ale bez spoluprace pouzivatelov je takmer nepouzitelny. Bohuzial vacsina pouzivatelov internetu nieje natolko
zdatna (alebo im v tom brani lenivost?), aby rucne triedili spam/nonspam. Bez toho ale Dspam nieje funkcny, kedze vie triedit len podla naucenych hodnot.
Pricom spamassassin mozte prevadzkovat na servroch aj bez spoluprace pouzivatelov. Pri zakladnych nastaveniach vie pomerne presne urcovat, ci je nieco spam alebo nie, jeho dalsimi nastaveniami ho viete jednoducho prinutit na oznacovanie spamu o Rolexkach, ...
Idealna je ale kombinacia viacerych antispamov. Opat ale spamassassin ich ma v sebe zahrnutych viac, takze po jeho vhodnom nakonfigurovani vpodstate dalsi ani nepotrebujete.