机器学习概念
所谓“机器学习”就是通过对数据进行反复得学习,来找出其中的规律和模式。
机器学习(Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科 。专门研究计算机怎样模拟或实现人类的学习行为,以获取新知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
各类机器学习算法
监督学习
监督学习(supervised learning):从给定的有标注的训练数据集中学习出一个函数(模型参数),当新的数据到来时可以根据这个函数预测结果。 常见任务包括分类与回归
-
分类问题:对数据所属类别进行预测
-
回归问题:连续变化的数值进行预测
无监督学习
无监督学习(unsupervised learning):没有标注的训练数据集,需要根据样本间的统计规律对样本集进行分析,常见任务如聚类等
半监督学习
半监督学习(Semi-supervised learning)结合(少量的)标注训练数据和(大量的)未标注数据来进行数据的分类学习。
一般情况下,我们需要在某些假设的基础上来建立未标记数据和目标之间的联系。目前,在半监督学习中有两个常用的基本假设(两种假设都是基于“相似的样本拥有相似的输出”):
-
聚类假设
是指相同聚类中的数据有较大的可能有相同的标记(假设数据存在簇结构,同一个簇的样本属于同一个类别)。根据该假设,决策边界就应该尽量通过数据较为稀疏的地方,从而避免把稠密的聚类中的数据点分到决策边界两侧。如 TSVM算法 -
流形假设
(将高纬数据嵌入到低维流形中,当两个样例处于低维流行中的一个小局部领域内时,它们具有 相似的类标签),是指处于一个很小的局部领域内的数据具有相似的性质,其标记也应该相似(这一假设反映了决策函数的局部平滑性。)。 因此,流形假设可看做聚类假设的推广,但流形假设对输出值没有限制,因此比聚类假设的适用范围更广,可用于更多类型的学习任务。 和聚类假设的主要不同是,聚类假设主要关注的是整体特性,流形假设主要考虑的是模型的局部特性。
强化学习
强化学习(Reinforcement Learning):外部环境对输出只给出评价信息而非正确答案,学习机通过强化受奖励的动作来改善自身的性能。
机器学习解决的问题
分类问题
回归问题
聚类问题
其它问题
分类问题
分类问题是监督学习的一个核心问题,它从数据中学习一个分类决策函数或分类模型(分类器(classifier)),对新的输入进行输出预测,输出变量取有限个离散值。
决策树
-
决策树
-
树状结构
-
非叶节点:对应一个特征属性,每个分支代表这个特征属性在某个值域上的输出
-
叶节点:对应一个类别
-
-
决策过程
- 根节点开始,测试待分类项中相应的特征属性,并按照其值选择输出分支,直到到达叶子节点,将叶子节点存放的类别作为决策结果
-
构建决策树
-
特征选择:选取对训练数据具有分类能力的特征
-
决策树生成:在决策树各个点上按照一定方法选择特征,递归构建决策树
-
决策树剪枝:在已生成的树上减掉一些子树或者叶节点,从而简化分类树模型
-
-
选择分类特征
-
ID3算法
-
C4.5算法
-
CART算法
-
-
剪枝
在生成树的过程中,如果没有剪枝(pruning)操作,就生成一个对训练集完全拟合的决策树,但这是对测试集非常不友好的,泛化能力较差.
-
预剪枝
-
思想:通过提前停止树的构建而对树剪枝,一旦停止,节点就是叶子,该叶子表示的类为子集中样本数量的类
-
预剪枝方法:
-
预定义树高度:当决策树达到该高度时就停止生长
-
达到阈值:节点实例个数、系统性能增益等
理想的决策树有三种:
(1)叶子节点数最少(横向决策次数少)
(2)叶子节点深度最小(纵向决策次数少)
(3)叶子节点数最少且叶子节点深度最小
-
-
后剪枝方法:
-
首先构造完整的决策树
-
然后对那些置信度不够的结点子树用叶子结点来代替,该叶子的类标号用该结点子树中最频繁的类标记。
简单、合理(预剪枝方法中精确地估计何时停止树增长很困难)
-
-
-
SVM优点支持向量机
支持向量机(Support Vector Machine )
有监督学习方法,它尝试寻找一个最优决策边界,使距离两个类别最近的样本最远
优点
-
相对于其他分类算法不需要过多样本,并且由于SVM引入了核函数,所以SVM可以处理高维样本
-
结构风险最小,这种风险是指分类器对问题真实模型的逼近与问题真实解之间的累积误差
-
非线性,是指SVM擅长应付样本数据线性不可分的情况,主要通过松弛变量(也叫惩罚变量)和核函数技术来实现,这一部分也正是SVM的精髓所在
集成学习
集成学习通过将多个弱分类器集成在一起,使它们共同完成学习任务,构建一个强分类器。潜在哲学思想是“三个臭皮匠赛过诸葛亮”
回归问题
回归分析用于预测输入变量(自变量)和输出变量(因变量)之间的关系,特别是当输入变
量的值发生变化时,输出变量值随之发生变化
线性回归算法
线性回归算法假设特征和结果满足线性关系,意味着可以将输入项分别乘以一些常量,再
将结果加起来得到输出
聚类问题
聚类问题是无监督学习的问题,算法的思想就是“物以类聚,人以群分”,聚类算法感知样本
间的相似度,进行类别归纳,对新的输入进行输出预测,输出变量取有限个离散值
K-Means
K-means(又称k-均值或k-平均)聚类算法。算法思想就是首先随机确定k个中心点作为聚类中心,然后把每个数据点分配给最邻近的中心点,分配完成后形成k个聚类,计算各个聚类的平均中心点,将其作为该聚类新的类中心点,然后重复迭代上述步骤直到分配过程不再产生变化。
机器学习一般过程
-
数据收集
-
数据清洗(清除重复或缺失的数据,以提高数据的精度)
-
运用机器学习算法对数据进行学习
-
使用测试数据对性能进行评测
-
部署模型