我用的是Weka 3.7.1
我试图用weka来分析棒球运动的预测。我想使用一个成本矩阵,因为不同结果的成本是不一样的,在一个体育书籍,我赌博的游戏。我的数据集很简单:它是一组具有名义类{WIN,LOSS}的预测。对于这个问题,属性是不关心的。
在WEKA Explorer中,在加载我的arff文件之后,我可以从
分类->更多选项.>成本敏感评估> set .>在我设置类== 2之后,weka成本敏感评估中出现了一个2x2网格。
以下是我想在成本矩阵中输入的值:
请注意,如果我将利润设定为负值(这与成本相反,这就是利润),并将损失设置为正数(因为当我输掉赌注时,这会使我付出代价),这是一个真实的“成本矩阵”。
经过一些思考后,我决定使用以下网格,我不知道是否正确,请告诉我是否正确:
- a b <---- "classified as"
- 0 1.0 a=LOSS
- 0 -.909 b=WIN下面是我可能有错误的逻辑:(col,row)
(0,0) of grid=0: classified as LOSS, and was LOSS
(0,1) of grid=0: classified as LOSS, but was WIN
(1,0) of grid=1.0; classified as WIN, but was LOSS
(1,1) of grid=.909; classified as WIN, was WIN当然,(0,0)和(0,1)表示预测损失的分类器,在这种情况下我不下注,因此没有成本。
另一方面,(1,0)和(1,1)表示预测一场胜利的分类器,在这种情况下,我下注,因此有一个相关的成本。
另一个非常混乱的项目是:在我设置成本矩阵并执行分类器之后,输出报告包含以下内容:
评价成本矩阵:
0 1
0 0.91 <--- notice that this is not a negative value!正如您所看到的,在报告(1,1)中,当我实际输入-.909时是0.91。我确实找到了关于这个话题的另一篇文章,但它并没有解释为什么负面的价值变得积极。
提前谢谢你。请注意,这些都是可回答的问题;然而,如果您想提供一些指导,我将非常高兴,因为我是一个新手,仍然试图建立一个理解框架。
发布于 2014-09-02 08:49:34
成本矩阵是改变决策边界阈值的一种方法。下面的一篇论文对此作了解释。
http://research.ijcaonline.org/volume44/number13/pxc3878677.pdf
通过查看您的成本矩阵,似乎需要进行一些修正。
例如:
0 cost
cost 0只想解释一下:考虑以下成本矩阵:
a b
c d这是我观察到的两类问题的成本矩阵的一般格式。
现在,当你在某一地点对某物进行分类时,就没有必要将成本计算在内。
所以这里的重点是,只有在错误分类的情况下,成本才会出现。即在b或c地点。
但是,当你把负值写成成本时,它会造成混乱。(请解释同样的问题,即负成本是什么意思。)
例如,成本矩阵可以是:
0 1
10 0这表明,将样本分类为假阳性的成本比将类似的例子错误分类为假阴性的成本高出10倍。此外,当正确分类示例时,不需要任何代价。
https://stackoverflow.com/questions/24500147
复制相似问题