2014-08-30 130 views
2

我在想,如果它在某種程度上可以定義損失函數在樸素貝葉斯分類scikit學習。例如,我們假設我們對垃圾郵件和火腿分類感興趣。在這種情況下,這種損失函數將有助於降低假陽性率(即,將火腿歸類爲垃圾郵件,這比將垃圾郵件歸類爲「火腿」更糟糕)。損失/風險功能學的樸素貝葉斯分類

爲簡單起見,我有一個使用隨機數據來自高斯here

回答

2

樸素貝葉斯的損失函數總是負關節數似然,-log pXý)。這種選擇損失函數,功能獨立的樸素貝葉斯假設下,使樸素貝葉斯快:最大似然訓練可以執行一個矩陣乘法和簡單計算來完成。我能想到的所有其他損失函數都會將您帶入迭代優化的土地。

關於您的實際問題:您可以使用scoring='precision'或基於sklearn.metric.fbeta_scoreroc_auc_score的自定義得分函數,嘗試使用GridSearchCV來調整學習者參數。儘管如此,我不確定這在幼稚貝葉斯中是否會有很多,所以你可能想要切換到邏輯迴歸。

+0

謝謝,這是有道理的,我想我會通過GridSearch做一些超參數調整的平滑參數和先驗然後。謝謝! – Sebastian 2014-08-31 16:20:15