Привет всем! столкнулся с такой проблемой, dspam категорически отказывается помечать письма как спам, хотя я ему скормил пачку спама и "чистых писем". По началу думал, что не закончен период обучения, сейчас dspam_stats -H выдает следующие
dspam_stats -H
globalgroup:
TP True Positives: 837
TN True Negatives: 1735
FP False Positives: 80
FN False Negatives: 13
SC Spam Corpusfed: 1279
NC Nonspam Corpusfed: 696
TL Training Left: 0
SHR Spam Hit Rate 98.47%
HSR Ham Strike Rate: 4.41%
OCA Overall Accuracy: 96.51%TN True Negatives постоянно растет, но все письма приходят как innocent. что он тогда считает спамом непонятно.
конфиг dspam:
StorageDriver /usr/lib/dspam/libhash_drv.so
ServerDomainSocketPath "/var/run/dspam/dspam.sock"
ServerPID /var/run/dspam/dspam.pid
ServerParameters "--deliver=innocent, spam"
ServerIdent "localhost.localdomain"
Notifications off
PurgeSignatures 14 # Stale signatures
PurgeNeutral 90 # Tokens with neutralish probabilities
PurgeUnused 90 # Unused tokens
PurgeHapaxes 30 # Tokens with less than 5 hits (hapaxes)
PurgeHits1S 15 # Tokens with only 1 spam hit
PurgeHits1I 15 # Tokens with only 1 innocent hit
LocalMX 127.0.0.1
SystemLog on
UserLog on
Opt out
ParseToHeaders on
ChangeModeOnParse on
ChangeUserOnParse off
#MaxMessageSize 307200
Trust dspam
TrainingMode teft
TestConditionalTraining on
Feature chained
Feature whitelist
Algorithm graham burton
PValue graham
ProcessorBias on#
Preference "signatureLocation=headers" # 'message' or 'headers'
Preference "showFactors=on"
Preference "spamAction=tag"
Preference "spamSubject=***SPAM***"#
AllowOverride trainingMode
AllowOverride spamAction spamSubject
AllowOverride statisticalSedation
AllowOverride enableBNR
AllowOverride enableWhitelist
AllowOverride signatureLocation
AllowOverride showFactors
AllowOverride optIn optOut
AllowOverride whitelistThreshold#
#MySQLServer localhost
#MySQLPort 3306
#MySQLUser dspam
#MySQLPass dspam
#MySQLDb dspam
#MySQLCompress true
#MySQLVirtualTable dspam_virtual_uids
#MySQLVirtualUIDField uid
#MySQLVirtualUsernameField username
#MySQLUIDInSignature on# Postfix
DeliveryHost 127.0.0.1
DeliveryPort 10026
DeliveryIdent localhost
DeliveryProto SMTP
HashRecMax 98317
HashAutoExtend on
HashMaxExtents 0
HashExtentSize 49157
MaxMessageSize 10000000конфиг postfix master.cf
#dspam
smtp inet n - - - - smtpd
-o content_filter=lmtp:unix:/var/run/dspam/dspam.sock
dovecot unix - n n - - pipe
flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -d ${recipient}
scan unix - - n
- 16 smtp
-o smtp_send_xforward_command=yes# For injecting mail back into postfix from the filter, clamav
127.0.0.1:10026 inet n - n - 16 smtpd
-o content_filter=
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
-o smtpd_helo_restrictions=
-o smtpd_client_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks=127.0.0.0/8
-o smtpd_authorized_xforward_hosts=127.0.0.0/8P.S Пожалуйста пните в нужном направлении, система debian lenny.
P.P.S Dspam свои следы в заголовках оставляет и в тело письма добавляет свою сигнатуру (например !DSPAM:4a13cd2c26021587520068! ) Заранее спасибо.
Shared группу прописать, переучить еще раз на базе пропущеных.
>Shared группу прописать, переучить еще раз на базе пропущеных.группа прописана
globalgroup:shared:*
по статистике видно что все письма которые проходят проходят через неё
mail:/etc/postfix# dspam_stats -H
globalgroup:
TP True Positives: 837
TN True Negatives: 1739
FP False Positives: 80
FN False Negatives: 14
SC Spam Corpusfed: 1280
NC Nonspam Corpusfed: 696
TL Training Left: 0
SHR Spam Hit Rate 98.35%
HSR Ham Strike Rate: 4.40%
OCA Overall Accuracy: 96.48%Переобучать пробовал на пропущенных растет значение FP False Positives но толку нет все письма идут как innocent причем что странно увеличивается значение FP False Positives: тоесть это вроде он как правильно определил спам? только толку от этого нет, все приходит innocent :(
>...причем что странно увеличивается значение FP
>False Positives: тоесть это вроде он как правильно определил спам? только
>толку от этого нет, все приходит innocent :(Прошу прощения опечатался, увеличивается TN True Negatives:
>
>>...причем что странно увеличивается значение FP
>>False Positives: тоесть это вроде он как правильно определил спам? только
>>толку от этого нет, все приходит innocent :(
>
>Прошу прощения опечатался, увеличивается TN True Negatives:никто не знает (
У DSPAMа очень невразумительная документация.
И процесс первого наполнения баз тоже нетривиален. В отличие от POPFiles-а, кторый начинает правильно метить после 20-го письма DSPAM-у нужно скормит не менее 5-ти писем со спамом и неспамом.
Вот здесь http://dspam.irontec.com/howtotest.txt
есть несколько посказок, но я в английском не силен, а гугел переводит отвратно.
Подозреваю, что для первоначального обучения из, блин, корпуса нужно сначала втыкать некоторые "фичи" в определенные позиции, а потом загонять их по умолчанию.
Кое-что проясняется здесь http://kb.etarea.com/category/linux/dspam/
кое-что у Лисяры.Удачи.
P.S. И самое главное, так-как ни один из Баесных фильтров нормально кириллицу не понимает, то обучение требуется тройное на кои-8, вынь-1251 и ютф-8