基于AdaBoost的分类(测试算法)

来源:互联网 发布:hat linux重置root密码 编辑:程序博客网 时间:2024/06/05 19:37

1、  一旦拥有多个弱分类器以及其对应的alpha值,进行测试就变得相对容易。在上节的代码中已经完成了大部分代码,现在要做的就是将弱分类器的结果抽取抽来,应用到某个事例中,每个弱分类器乘以相对应的权重值,加权结果就是最终的结果。

2、python代码

def adaClassify(datToClass,dataArr,classLabels):    classifierArr,aggClassEst1=adaBoostTrainDS(dataArr,classLabels,9)    dataMatrix = mat(datToClass)#do stuff similar to last aggClassEst in adaBoostTrainDS    m = shape(dataMatrix)[0]    aggClassEst = mat(zeros((m,1)))    for i in range(len(classifierArr)):        classEst = stumpClassify(dataMatrix, classifierArr[i]['dim'], classifierArr[i]['thresh'], classifierArr[i]['ineq'])        aggClassEst += classifierArr[i]['alpha']*classEst        print aggClassEst    return sign(aggClassEst)
3、输出结果


最终结果将[0,0]分到-1类,下面我们测试一下[[0,0],[5,5],[3,4]]


可以看到最终结果分类正确

0 0
原创粉丝点击