]> source.dussan.org Git - rspamd.git/commitdiff
[Fix] Neural: Fix training
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Thu, 28 Mar 2019 15:49:19 +0000 (15:49 +0000)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Thu, 28 Mar 2019 15:49:19 +0000 (15:49 +0000)
Issue: #2793

src/plugins/lua/neural.lua

index 4e268962cebe95d16e3eea366572240241d71311..b75adf4689d5ff6255feb337b8bdda4871252792 100644 (file)
@@ -620,7 +620,10 @@ local function train_ann(rule, _, ev_base, elt, worker)
       local n = rspamd_config:get_symbols_count() +
           meta_functions.rspamd_count_metatokens()
       local filt = function(elts)
-        return #elts == n
+        -- Basic sanity checks: vector has good length + there are no
+        -- 'bad' values such as NaNs or infinities in its elements
+        return #elts == n and
+            not fun.any(function(e) return e ~= e or e == math.huge or e == -math.huge end, elts)
       end
 
       -- Now we can train ann