From d4d914052de0a37489f9491dbe491093bd14a03a Mon Sep 17 00:00:00 2001 From: gebele Date: Thu, 4 May 2017 09:50:57 +0000 Subject: ensure always two probability values for classification --- lib/classification.rb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/classification.rb b/lib/classification.rb index 638492b..a875903 100644 --- a/lib/classification.rb +++ b/lib/classification.rb @@ -18,6 +18,11 @@ module OpenTox class_weights.each do |a,w| probabilities[a] = w.sum/weights.sum end + # DG: hack to ensure always two probability values + if probabilities.keys.uniq.size == 1 + missing_key = probabilities.keys.uniq[0].match(/^non/) ? probabilities.keys.uniq[0].sub(/non-/,"") : "non-"+probabilities.keys.uniq[0] + probabilities[missing_key] = 0.0 + end probabilities = probabilities.collect{|a,p| [a,weights.max*p]}.to_h p_max = probabilities.collect{|a,p| p}.max prediction = probabilities.key(p_max) -- cgit v1.2.3