1. AdaBoost
\space \space \space \space \space AdaBoost算法是一种分类器算法,其基本思想是首先将训练数据训练成比随机猜测效果略好的弱分类器,然后按照分类器分类正确时减少其权重,分类错误时增强其权重的原则构建强分类器。大致的分类流程如下:
![](https://i-blog.csdnimg.cn/blog_migrate/e08693ff98d9b9e571a253946d641fdd.png)
AdaBoost算法的具体实现步骤如下:
(1) 选定训练样本 ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x n , y n ) (x1,y1), (x2,y2), ...,(x_n,y_n) (x1,y1),(x2,y2),...,(xn,yn)
\space \space \space \space \space y i y_i yi 是否为0表示其是否为负样本,即分类错误; n n n为训 练样本的总数量。
(2) 初始化权重:均值初始化
\space \space \space \space W 1 W_{1} W1 = { w 11 w_{11} w11, w 12 w_{12} w12, w 13 w_{13} w13,… w 1 n w_{1n} w1n},其中 w 1 i = 1 / n w_{1i}=1/n w1i=1/n, i = 1 , 2 , 3 , . . . . n i=1,2,3,....n i=1,2,3,....n。
(3) 循环 j = 1 : m j=1:m j=1:m
\space \space \space \space 使用权重 W j W_j Wj对训练数据进行训练得到弱分类器 G j G_j Gj,并计算所有弱分类器上的分类误差 ϵ \epsilon ϵ。误差可进行指定,若小于误差可跳出循环,一般设置分类误差为0.5:
![](https://i-blog.csdnimg.cn/blog_migrate/3b173cb7db1755a508e445b92ff1c659.png)
\space \space \space \space 其中当 x x x=0时, I ( x ) I(x) I(x)=0;当 x x x=1时, I ( x ) I(x) I(x)=1。
(4) 计算分类的重要程度系数 (由分类误差决定):
![](https://i-blog.csdnimg.cn/blog_migrate/c8957480ae9827697aa58c056dea2252.png)
(5) 更新权重(由分类误差决定)并跳至第(3)步:
\space \space \space \space W j W_{j} Wj = { w j + 1 , 1 w_{j+1,1} wj+1,1, w j + 1 , 2 w_{j+1,2} wj+1,2, w j + 1 , 3 w_{j+1,3} wj+1,3,… w j + 1 , n w_{j+1,n} wj+1,n},
\space \space \space \space 每一个样本的权重定义如下:
![](https://i-blog.csdnimg.cn/blog_migrate/feb4a21050c59ef5c8983499f574c011.png)
\space \space \space \space 其中, Z m Z_m Zm是批规范化因子,即
![](https://i-blog.csdnimg.cn/blog_migrate/7ee796d1e37c39b09995248baba2886a.png)
循环结束后最终AdaBoost分类器的形式如下
![](https://i-blog.csdnimg.cn/blog_migrate/28197d4f2756cdf0d1bb7c1198ee5869.png)
2. 线性回归
a. 回归分析:预测性建模技术,研究的是因变量(目标)与自变量(预测器)之间的关系。
b. 线性回归:y = wx+b,y为预测值,x为自变量,y为因变量。
c. 损失函数(MSE):L=1/n*sigma1-n(yi’-yi)2
d. 目标优化:
e. 求解方法:1)最小二乘法:
2)梯度下降:
f:作用:实现对数据的拟合。
3.逻辑回归:
a. 实质:一种分类模型。
b. 表达式:
c. 常规描述:一种建立在线性回归基础之上的分类模型,
通俗来讲,逻辑回归模型是在拟合z=wx+b的直销,使此直线尽可能将两个数据类别正确分开。
d. 损失函数:对数损失(log),
e. 优化求解方法:梯度下降法
4. K近邻
a. 实质:一种通过计算新数据与训练数据特征值之间距离的监督学习方法。
b. 基本要素:
1) K值选择:应用中,K值较小,使用交叉验证来取最优K。
2) 距离度量:欧式距离,曼哈顿距离
3)分类决策规则:多数表决(少数服从多数)
c. 步骤:
1) 计算测试数据与各个训练数据之间的距离;
2) 按照距离的递增关系进行排序;
3) 选取距离最小的K个点;
4)确定前K个点所在类别出现的频率,最高频率的那个即为分类值。
d. 算法特点:
简单有效,但计算量大;设有训练过程,是一种基于实例的方法。
5. KMeans与KMeans++
a. KMeans实质:一种使各个样本与所在簇质心的误差平方和达到最小的聚类算法。
b. KMeans步骤:
1) 随机选取k个点作为k个簇的起始质心;
2) 分别计算剩余的元素到k个簇中心的距离,将这些元素划分到距离最小的簇;
3) 根据聚类结果,取簇中所有元素各自维度的算术平均值重新计算k个簇的中心;
4) 按照新的质心重复步骤2)3)直到聚类结果不再变化。
c. KMeans++实质:一种改进初始质心选择的KMeans方法。
d. KMeans++步骤:
1) 随机选择一个样本作为第一个聚类中心;
2) 计算每个样本与当前已有聚类中心的最短距离,距离越大表示被选择为新的聚类中心的概率越大;
3) 使用轮盘法选出下一个聚类中心;
4) 重复2)3)直至选出k个聚类中心;
5)常规KMeans。