我正在使用Orange软件包,并根据可用的教程编写了以下代码:
import orange,orngTest,orngStat,orngTree,Orange
bayes = orange.BayesLearner()
tree=orngTree.TreeLearner(mForPruning=2)
bayes.name="bayes"
tree.name="tree"
data = Orange.data.Table("iris.tab")
learners=[bayes,tree]
results=orngTest.crossValidation(learners,data,folds=10)
print "Learner CA IS Brier AUC"
for i in range(len(learners)):
print "%-8s %5.3f %5.3f %5.3f %5.3f" %\
(learners[i].name,\
orngStat.CA(results)[i],\
orngStat.IS(results)[i],\
orngStat.BrierScore(results)[i],\
orngStat.AUC(results)[i])
这导致以下打印:
Running script:
Learner CA IS Brier AUC
bayes 0.920 1.402 0.098 0.993
tree 0.940 1.447 0.120 0.967
的以下说明
让实例的正确类为C.回想P(C)是 C类和P'(C)的先验概率是后验概率 由分类器返回。我们考虑两种情况:(a)P'(C)> P(C) 这里C类的概率在正确的方向上发生了变化, 因此我们会称这样的答案有用。它应该被授予一个 积极的得分。 Co)P'(C)< P(C)这里是C类的概率 改变方向错误,因此我们会称之为答案 误导。它应该被分配一个负分数。
以下:
Suppose the classifier in 1950 answered:
P'(Bush) = 0.45
P'(Dukakis) = 0.55
P'(all others) = 0
大于1.0的值对于信息得分是否无效?或者我在这种类型的数据集上使用了不正确的分类器,iris.tab
数据集中有三种不同的数据类别。