我有四個連續的功能二等貝葉斯分類問題。我試圖部分複製Orange用於計算概率的貝葉斯算法算法。但是我沒有成功獲得Orange輸出的相同值。橙色貝葉斯算法具有連續的特點
數據組大小:150(class0:88及1級:62)
我使用下面的算法
p(class0 | X1, X2, X3, X4) = L0/(L0 + L1)
p(class1 | X1, X2, X3, X4) = L1/(L0 + L1)
其中L0和L1是似然
L0 = prior_class0 * product(p(Xi|class0))
L1 = prior_class1 * product(p(Xi|class1))
prior_class0 and prior_class1 are Laplacian estimators
prior_class0 = (88 + 1)/(150 + 2)
prior_class1 = (62 + 1)/(150 + 2)
橙使用黃土用於計算條件概率(我猜測它不需要重現)。對於這個數據集,它爲python對象classifier.conditional_distributions中給出的兩個類輸出49個點。通過在Xi的周圍點之間使用線性插值,我可以計算p(Xi | class0)和p(Xi | class1)。
1)任何人都可以在橙貝葉斯算法具有連續的特點有何評論?
2)或任何技術諮詢如何設置編譯器/ IDE,我可以從橙色/源/橙/ bayes.cpp功能調試橙C++代碼,並檢查了一些中間結果?
感謝您的回答!除法p(class0 | Xi)/ p(class0)產生差異,現在我得到與橙色輸出相同的結果。因此計算ex L0 = prior_class0 *乘積(p(Xi | class0)/ p(class0))的可能性。然而問題出現了,這個公式與貝葉斯定理有什麼關係?如果我理解正確,那麼在貝葉斯定理中,可能性是通過將先驗概率與原始帖子中的條件概率相乘來計算的。你能給一些參考來證明Orange使用的公式,因爲我對貝葉斯分類不是很熟悉嗎? –