给定下列训练样本,请用 AdaBoost 算法学习一个强分类器
求解过程:初始化训练数据的权值分布,令每个权值 W1i = 1/N = 0.1,其中,N = 10,i =
1,2, ..., 10,然后分别对于 m = 1,2,3, ...等值进行迭代。
迭代过程 1:对于 m=1,在权值分布为 D1 的训练数据上,阈值 v 取 2.5 时误差率最低,故
基本分类器为:
从而可得 G1(x)在训练数据集上的误差率 e1=P(G1(xi)≠yi) = 0.3
然后计算 G1 的系数:
接着更新训练数据的权值分布:
最后得到各个数据的权值分布 D2=(0.0715, 0.0715, 0.0715, 0.0715, 0.0715, 0.0715, 0.1666,
0.1666, 0.1666, 0.0715),分类函数 f1(x)=0.4236G1(x),故最终得到的分类器 sign(f1(x))在训练
数据集上有 3 个误分类点。
迭代过程 2:对于 m=2,在权值分布为 D2 的训练数据上,阈值 v 取 8.5 时误差率最低,故
基本分类器为:
G2(x)在训练数据集上的误差率 e2=P(G2(xi)≠yi) = 0.2143
评论0