我們試圖在Ruby中做樸素貝葉斯分類。Ruby中的樸素貝葉斯
目前我們使用的http://ai4r.rubyforge.org/
,我們不能把它用於浮點值工作,並與字符串值低約20個百分點的準確性。使用浮點數/整數我們得到一個[]沒有從零到整數的隱式轉換。我們用to_s轉換浮動。
有沒有辦法讓浮動值工作?如果不是什麼替代寶石ai4r的紅寶石或替代算法幼稚bayes?
我們試圖在Ruby中做樸素貝葉斯分類。Ruby中的樸素貝葉斯
目前我們使用的http://ai4r.rubyforge.org/
,我們不能把它用於浮點值工作,並與字符串值低約20個百分點的準確性。使用浮點數/整數我們得到一個[]沒有從零到整數的隱式轉換。我們用to_s轉換浮動。
有沒有辦法讓浮動值工作?如果不是什麼替代寶石ai4r的紅寶石或替代算法幼稚bayes?
的「...隱式轉換......」誤差由在需要的Integer
上下文Ruby解釋器內的但nil
被發現。
這是一個有點難以得到這個錯誤,但看到它的一個方法是:
Array.new(nil)
...所以這可能是什麼在你的情況發生。
實際上,gems/ai4r-1.9/lib/ai4r/classifiers/naive_bayes.rb
實際上確實使用了相當少見的Array.new(...)
構造。
傳遞給Array.new()的值取決於從什麼#build_domains.
Ai4r::Data::DataSet
回報我知道這不會解決你的問題,但也許這將幫助你分析進一步進行。
我知道這個問題是一個老的,但我想指出一個更強大的Ruby寶石的樸素貝葉斯分類: