diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2021-10-23 19:36:48 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-23 19:36:48 +0100 |
commit | 08b715640c6627133965f96c55112548b19a9aa5 (patch) | |
tree | e9fd21fc92a2f282001eef893943c7773173c106 | |
parent | 4bb39dc34035b847b072e0235fabd7004c6b7a7b (diff) | |
parent | 14530e6a7c37eecc7c2441000006b423368b171f (diff) | |
download | rspamd-08b715640c6627133965f96c55112548b19a9aa5.tar.gz rspamd-08b715640c6627133965f96c55112548b19a9aa5.zip |
Merge pull request #3936 from dminuoso/add-junk-threshold
[Feature] Add junk_threshold for autolearn
-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) |