【发布时间】:2014-05-22 23:39:38
【问题描述】:
我正在从事一个垃圾邮件过滤器挖掘项目,我目前正在使用 NaiveBayesMultinomial 分类器通过计算单词出现的频率来区分垃圾邮件和非垃圾邮件。
问题是WEKA默认将分类阈值设置为0.5。但是,将非垃圾邮件误分类为垃圾邮件比反之更有害。
我想调整一下WEKA的NaiveBayesMultinomial算法的阈值,看看混淆矩阵是如何变化的。如果这不能直接实现,我如何利用 WEKA 的输出来计算不同阈值的混淆矩阵?
以下是对测试拆分进行评估时项目当前结果的摘要:
总结:
Correctly Classified Instances 2715 98.4766 %
Incorrectly Classified Instances 42 1.5234 %
Kappa statistic 0.9679
Mean absolute error 0.0184
Root mean squared error 0.1136
Relative absolute error 3.8317 %
Root relative squared error 23.2509 %
Total Number of Instances 2757 `
按类别的详细精度:
TP Rate FP Rate Precision Recall F-Measure ROC Area Class
0.998 0.035 0.978 0.998 0.988 0.998 ham
0.965 0.002 0.996 0.965 0.98 0.999 spam
Weighted Avg. 0.985 0.022 0.985 0.985 0.985 0.998
混淆矩阵:
a b <-- classified as
1669 4 | a = ham
38 1046 | b = spam
【问题讨论】:
标签: weka naivebayes confusion-matrix