[Rspamd] Various fixes for Rspamd 2.0, neural network activated, autolearning activated (auto-keeps a ratio)
parent
8783ec4415
commit
ee57b5921f
|
@ -1,13 +1,28 @@
|
|||
train {
|
||||
max_train = 1k; # Number of trains per epoch
|
||||
max_usages = 50; # Number of learn iterations while ANN data is valid
|
||||
spam_score = 12; # Score to learn spam
|
||||
ham_score = -7; # Score to learn ham
|
||||
learning_rate = 0.01; # Rate of learning (Torch only)
|
||||
max_iterations = 25; # Maximum iterations of learning (Torch only)
|
||||
rules {
|
||||
"LONG" {
|
||||
train {
|
||||
max_trains = 200;
|
||||
max_usages = 20;
|
||||
max_iterations = 25;
|
||||
learning_rate = 0.01,
|
||||
spam_score = 12;
|
||||
ham_score = -7;
|
||||
}
|
||||
symbol_spam = "NEURAL_SPAM_LONG";
|
||||
symbol_ham = "NEURAL_HAM_LONG";
|
||||
ann_expire = 45d;
|
||||
}
|
||||
"SHORT" {
|
||||
train {
|
||||
max_trains = 100;
|
||||
max_usages = 10;
|
||||
max_iterations = 15;
|
||||
learning_rate = 0.01,
|
||||
spam_score = 9;
|
||||
ham_score = -3;
|
||||
}
|
||||
symbol_spam = "NEURAL_SPAM_SHORT";
|
||||
symbol_ham = "NEURAL_HAM_SHORT";
|
||||
ann_expire = 7d;
|
||||
}
|
||||
}
|
||||
ann_expire = 80d;
|
||||
timeout = 20; # Increase redis timeout
|
||||
enabled = false;
|
||||
use_settings = false; # If enabled, then settings-id is used to dispatch networks
|
||||
|
||||
|
|
|
@ -1,10 +1,18 @@
|
|||
symbols = {
|
||||
"NEURAL_SPAM" {
|
||||
weight = 4.0; # sample weight
|
||||
description = "Neural network spam";
|
||||
"NEURAL_SPAM_LONG" {
|
||||
weight = 3.7; # sample weight
|
||||
description = "Neural network spam (long)";
|
||||
}
|
||||
"NEURAL_HAM" {
|
||||
"NEURAL_HAM_LONG" {
|
||||
weight = -4.0; # sample weight
|
||||
description = "Neural network ham";
|
||||
description = "Neural network ham (long)";
|
||||
}
|
||||
"NEURAL_SPAM_SHORT" {
|
||||
weight = 2.5; # sample weight
|
||||
description = "Neural network spam (short)";
|
||||
}
|
||||
"NEURAL_HAM_SHORT" {
|
||||
weight = -2.0; # sample weight
|
||||
description = "Neural network ham (short)";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,18 +2,23 @@ classifier "bayes" {
|
|||
tokenizer {
|
||||
name = "osb";
|
||||
}
|
||||
autolearn = false;
|
||||
backend = "redis";
|
||||
min_tokens = 11;
|
||||
min_learns = 5;
|
||||
new_schema = true;
|
||||
expire = 2592000;
|
||||
statfile {
|
||||
symbol = "BAYES_HAM";
|
||||
spam = false;
|
||||
symbol = "BAYES_HAM";
|
||||
spam = false;
|
||||
}
|
||||
statfile {
|
||||
symbol = "BAYES_SPAM";
|
||||
spam = true;
|
||||
symbol = "BAYES_SPAM";
|
||||
spam = true;
|
||||
}
|
||||
autolearn {
|
||||
spam_threshold = 12.0;
|
||||
ham_threshold = -4.5;
|
||||
check_balance = true;
|
||||
min_balance = 0.9;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -23,7 +23,7 @@ rspamd_config:register_symbol({
|
|||
local redis_params = rspamd_parse_redis_server('keep_spam')
|
||||
local ip = task:get_from_ip()
|
||||
|
||||
if not ip:is_valid() then
|
||||
if ip == nil or not ip:is_valid() then
|
||||
return false
|
||||
end
|
||||
|
||||
|
@ -174,6 +174,7 @@ rspamd_config:register_symbol({
|
|||
end
|
||||
return true
|
||||
end,
|
||||
flags = 'empty',
|
||||
priority = 20
|
||||
})
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
type = "console";
|
||||
systemd = false;
|
||||
level = "silent";
|
||||
.include "$CONFDIR/logging.inc"
|
||||
.include(try=true; priority=20) "$CONFDIR/override.d/logging.custom.inc"
|
||||
|
|
Loading…
Reference in New Issue