AdaBoost在matlab下的简单实现

时间:2018-08-11 08:12:57
【文件属性】:

文件名称:AdaBoost在matlab下的简单实现

文件大小:5KB

文件格式:ZIP

更新时间:2018-08-11 08:12:57

adaboost

对AdaBoost算法进行学习后,在matlab平台下,实现AdaBoost算法。在实验中,训练样本的产生方式是:X=rand(length,2);length是样本数。即,随机产生length个点(x,y)且x、y均位于区间[0,1]。点的类别为两类:正类、负类,取值分别为+1,-1。实现方式为Y=A.^2+B.^2; Z=[(floor(Y)-0.5)*2, A, B];采用的弱分类器是决策树桩分类器,具体为:用一条垂直于x轴或者垂直于y轴的直线划分样本点。因为训练样本点的产生是二次函数的,而弱分类器是一次函数的。即用多个一次函数去模拟二次函数的功能,所以理论上是可实现的。


【文件预览】:
adaboost
----testClass.m(378B)
----.DS_Store(6KB)
----makeClass.m(2KB)
----main.m(155B)
----weakClass.m(169B)
----createSample.m(388B)

网友评论

  • 不知道怎么样
  • 一个小bug,bestAns = zeros(classNum,3); 3改成4,不过改不改都不影响。很棒的例子,是属于原版alpha的,用ln的,不是用beta=(1-e)/e的M1离散adaboost。谢谢上传者。