diff options
-rw-r--r-- | conf/statistic.conf | 5 | ||||
-rw-r--r-- | lualib/lua_bayes_learn.lua | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/conf/statistic.conf b/conf/statistic.conf index 60b6dcb3e..5fea48320 100644 --- a/conf/statistic.conf +++ b/conf/statistic.conf @@ -44,8 +44,9 @@ classifier "bayes" { # Autolearn sample # autolearn { - # spam_threshold = 6.0; # When to learn spam (score >= threshold) - # ham_threshold = -0.5; # When to learn ham (score <= threshold) + # spam_threshold = 6.0; # When to learn spam (score >= threshold and action is reject) + # junk_threshold = 4.0; # When to learn spam (score >= threshold and action is rewrite subject or add header, and has two or more positive results) + # ham_threshold = -0.5; # When to learn ham (score <= threshold and action is no action, and score is negative or has three or more negative results) # check_balance = true; # Check spam and ham balance # min_balance = 0.9; # Keep diff for spam/ham learns for at least this value #} diff --git a/lualib/lua_bayes_learn.lua b/lualib/lua_bayes_learn.lua index ae8d901f8..a059c6374 100644 --- a/lualib/lua_bayes_learn.lua +++ b/lualib/lua_bayes_learn.lua @@ -92,6 +92,11 @@ exports.autolearn = function(task, conf) log_can_autolearn(verdict, score, conf.spam_threshold) learn_spam = true end + elseif verdict == 'junk' then + if conf.junk_threshold and score >= conf.junk_threshold then + log_can_autolearn(verdict, score, conf.junk_threshold) + learn_spam = true + end elseif verdict == 'ham' then if conf.ham_threshold and score <= conf.ham_threshold then log_can_autolearn(verdict, score, conf.ham_threshold) |