Classification

具有可調精度與召回率的分類器

  • March 4, 2015

我正在研究一個二元分類問題,其中沒有誤報更為重要;相當多的假陰性是可以的。例如,我在 sklearn 中使用了一堆分類器,但我認為它們都沒有能力顯式調整精確召回權衡(它們確實產生了很好的結果,但不可調整)。

哪些分類器具有可調節的精度/召回率?有什麼方法可以影響標準分類器的精度/召回率權衡,例如隨機森林或 AdaBoost?

幾乎所有 scikit-learn 的分類器都可以給出決策值(通過decision_functionpredict_proba)。

根據決策值,可以直接計算精確召回和/或 ROC 曲線。scikit-learn 在其metrics子模塊中提供了這些功能。

一個最小的例子,假設你有data並且labels有適當的內容:

import sklearn.svm
import sklearn.metrics
from matplotlib import pyplot as plt

clf = sklearn.svm.LinearSVC().fit(data, labels)
decision_values = clf.decision_function(data)

precision, recall, thresholds = sklearn.metrics.precision_recall_curve(labels, decision_values)

plt.plot(recall, precision)
plt.show()

引用自:https://stats.stackexchange.com/questions/140266

comments powered by Disqus