机器学习概论1:https://blog.csdn.net/weixin_36302584/article/details/106360723
机器学习概论2——分类问题:https://blog.csdn.net/weixin_36302584/article/details/106430149
机器学习概论3——回归、聚类问题
4.3.2 回归问题
回归分析用于预测输入变量(自变量)和输出变量(因变量)之间的关系,特别是当输入变量的值发生变化时,输出变量值也随之发生变化。直观来说回归问题等价于函数拟合,选择一条函数曲线使其很好地拟合已知数据且很好地预测未知数据
- 分类
4.3.2.1 线性回归
- 定义
假设特征和结果满足线性关系。线性回归意味着可以将输入项分别乘以一些常量,再加某个常量得到输出y=ax+b - 流程
-
线性回归扩展
线性回归扩展算法用简单的基函数φ(x)替换输入变量x,这样把线性拟合形式扩展到了固定费线性函数的线性组合
其公式如下图所示
如下图所示为在某参数下线性回归扩展的函数图
可以看到,当M=9时(右下图),红色曲线能穿过每一个点,看上去性能很好,但实际上其与真实分布(绿色曲线)差距较大,因此实际使用效果并没有那么好,这可以称之为过拟合问题
解决过拟合问题的方法
-
岭回归
应用结构风险最小化的模型选择策略,在经验风险最小化的基础上加入正则化因子。当正则化因子选择为模型参数的二范数的时候,整个回归的方法就叫做岭回归
4.3.1.2 贝叶斯分类
-
定义
基于贝叶斯定理和属性特征条件独立性的一种分类方法
贝叶斯流派的核心:Proability theory is nothing but common sense reduced to calculation.概率论只不过是把常识用数学公式表达出来——拉普拉斯
-
处理流程:
1、计算先验概率
2、为每个属性计算条件概率
3、计算后验概率,并得出分类结果 -
优点
1、算法逻辑简单,易于实现
2、分类过程中时空开销小 -
缺点
理论上,朴素贝叶斯模型与其他分类方法相比具有最小的误差率,但是实际上并不如此,因为朴素贝叶斯模型假设属性之间相互独立,这个假设在实际应用中往往是不成立的,在属性个数比较多或者属性之间相关性较大时,分类效果不好 -
优化
按照贝叶斯公式,如果分子中某一个先验概率或条件概率概率为0,则计算得到的后验概率必为0,为了防止这种情况,可以使用拉普拉斯修正
4.3.1.3 支持向量机SVM
- 定义
支持向量机(Support Vector Machine , SVM)是一种有监督学习方法,主要思想是建立一个最优决策超平面,使得该平面两侧距离该平面最近的两类样本之间的距离最大化,从而对分类问题提供良好的泛化能力。
以下可用一个故事来解释SVM:
- SVM线性可分分类方法
SVM有线性可分支持向量机与软间隔最大化,和线性可分支持向量机与硬间隔最大化两种分类方法。
线性可分支持向量机与软间隔最大化:存在一些数据分类错误,但通过惩罚系数的引入,允许部分错误的存在
线性可分支持向量机与硬间隔最大化:完全线性可分,不存在有数据分类错误
- 非线性支持向量机与核函数(kernelling)
数据在二维空间中看起来是线性不可分的,但可以通过核函数进行映射,将二维的数据映射到三维空间中,从而使用超平面分开数据,使其线性可分。如下图所示为映射示意图
核函数有以下四种:
- 优点
1、相比于其他训练分类算法不需要过多样本,且由于SVM引入了核函数,所以SVM可以处理高维样本
2、结构风险小。这种风险是指分类器对问题真是模型的逼近与问题真实解之间的累积误差
3、非线性。SVM擅长应付样本数据线性不可分的情况,主要通过松弛变量(惩罚变量)和核函数技术来实现,这也是SVM的精髓所在
4.3.1.4 逻辑回归
逻辑回归可以处理二元分类以及多元分类。首先逻辑回归构造广义的线性回归函数,然后使用sigmoid函数g(z)将回归值映射到离散类别。
- 二项逻辑回归模型
- 多项逻辑回归模型
- 使用sigmoid函数的理由
如下图为sigmoid函数曲线(左)及其对应的导函数曲线(右)
- 为什么逻辑回归性能较高
因为逻辑回归是最大熵模型的特殊情况(对数线性模型)。最大熵原理指出,对一个随机事件的概率分布进行预测时,我们的预测应当满足全部已知条件,而对未知情况不要做任何主观假设(概率分布最均匀,预测的风险最小)
最大熵模型的特点:
1、形式上看,他非常简单,非常优美
2、效果上看,唯一一种既能满足各个信息源的限制条件,又能保证平滑性的模型。
3、但是他计算量巨大,在工程上实现方法的好坏决定了模型的实用与否
4.3.1.5 集成学习
-
定义
集成学习通过将多个弱分类器集成在一起,使他们共同完成学习任务,构建一个强分类器,“三个臭皮匠赛过诸葛亮”
严格意义上来说,集成学习不算一种机器学习算法,而更像是一种优化手段和策略,通常是结合多个简单的弱机器学习算法,去做更可靠的决策 -
理论基础
强可学习:比如一个学生做一套试卷拿了90+分
弱可学习:比如一个学生做一套试卷只拿了60+分
Schapire证明强可学习和弱可学习是等价的,比如一群60+分的学生按照给定方法做试卷,也能够达到90+分 -
两类集成方法
Bagging(bootstrap aggregating):基于数据随机重抽样的分类器构建方法。其利用bootstrap方法从整体数据集中采取有放回抽样得到N个数据集(如何采样?),然后在每个数据集上学习出一个模型(选择怎么样的弱分类器),最后利用N个模型的输出投票得到最后的预测结果
boosting(adaptive boosting的简称):基于错误提升分类器性能,通过集中关注被已有分类器分类错误的样本,构建新分类器。初始的分布应为等概分布,每次循环后提高错误样本的分布概率,分错的样本在训练集中所占权重增大,使得下一次循环的基分类器能够集中力量对这些错误样本进行判断;最后计算分类器的权重,识别率越高的基分类器权重越高,识别率越低的基分类器权重越低bagging和boosting对比
都采用采样-学习-组合的方式,不同在于:
1、bagging中每个训练集互不相关,也就是每个基分类器互不相关,而boosting中训练集要再上一轮的结果上进行调整,也使得其不能并行计算
2、bagging中预测函数是均匀平等的,而boosting中预测函数是加权的 -
集成学习特点
优点:当前最先进的预测几乎都是用了算法集成,他比是用单个模型预测出来的结果要精确的多,在竞赛中得到了普遍应用。
缺点:需要大量的维护工作 -
代表算法
机器学习概论1:https://blog.csdn.net/weixin_36302584/article/details/106360723
机器学习概论2——分类问题:https://blog.csdn.net/weixin_36302584/article/details/106430149