第一部分——分类
监督学习:给定输入样本集,计算出目标变量的结果。利用样本输入和期望输出来学习如何预测的技术。例如,神经网络,决策树,支持向量机,贝叶斯过滤。
目标变量:将分类问题中的目标变量称为类别。
标称型:在有限目标集中取值,离散型,如分类
数值型:可以从无限的数值集合中取值,连续型,主要用于回归分析
机器学习:把无序的数据转换成有用的信息。两大任务:
1.分类:分类算法存在非均衡分类的问题,产生原因是因为训练样本某个分类的数据多于其他分类的数据。
2.回归
无监督学习:
在一组数据中找寻某种结构,数据本身不是我们要找的答案
1.聚类
2.密度估计:寻找描述数据统计值的过程
如何选择一个合适的算法:(反复试错的迭代去发现最好算法)
1.使用算法的目的,想要完成何种任务。确定选择监督/非监督,再确定目标变量
2.需要分析或者收集的数据是什么。数据特性:特征值是离散还是连续、是否缺失、缺失原因、异常值、特征发生频率。
开发机器学习应用程序的步骤:
1.收集数据:爬虫、公开数据集
2.准备输入数据格式
3.分析输入数据:图形化降维展示、文本编辑器识别模式、空值、异常值;确保数据集中没有垃圾数据
4.训练算法,抽取知识或信息
5.测试算法
6.使用算法
注:
训练样本包括多种特征(属性),一个目标变量。特征(属性)构成训练样本的列,为独立测量得到。
知识表示:训练出某个模型的过程;可采用规则集的形式、概率分布的形式、训练样本集中的一个样本。
有监督学习
1.分类算法对比
分类算法 | 概念 | 优点 | 缺点 | 适用数据范围 | 分类结果是否确定 | 生成or判别模型 |
---|---|---|---|---|---|---|
KNN | 采用测量不同特征值之间的距离方法进行分类 ;模板匹配,将样本分到离它最相似的样本所属的类 | 精度高,对异常值不敏感,无数据输入假定 | 计算、空间复杂度高 | 数值型、标称型 | 确定 | 判别模型 |
决策树 | 从数据集合中提取出一系列规则;一组嵌套的判定规则 | 计算复杂度不高,输出结果易于理解,对中间值的确实不敏感,可以处理不相关特征数据 | 可能会产生过度匹配问题 | 数值型、标称型 | 确定 | 判别模型 |
朴素贝叶斯 | 使用概率论进行分类;将样本判定为后验概率最大的值 | 在数据较少的情况下有效,可以处理多类别问题 | 对于输入数据的准备方式较为敏感 | 标称型数据 | 给出分类的概率 | 生成模型 |
logistic回归 | 根据现有数据对分类边界线建立回归公式,以此进行分类;直接从样本估计出它属于正负样本的概率 | 计算代价不高,易于理解和实现 | 容易欠拟合,分类精度可能不高 | 数值型和标称型数据 | 判别模型 | |
支持向量机 | 超平面,寻找最大间隔 ,核函数;最大化分类间隔的线性分类器 | 泛化错误率低,计算开销不大,结果易解释 | 对参数调节和核函数的选择敏感,原始分类器不加修改仅适用于处理二类问题 | 数值型、标称型 | 判别模型 | |
元算法-AdaBoost | 算法组合 | 泛化错误率低,易编码,可以应用在大部分分类器上,无参数调整 | 对离群点敏感 | 数值型、标称型 |
2.回归算法对比–预测
回归算法 | 概念 | 优点 | 缺点 | 适用数据范围 |
---|---|---|---|---|
线性回归 | 回归方程,求回归系数 | 结果易于理解,计算上不复杂 | 对非线性的数据拟合不好 | 数值型、标称型 |
局部加权线性回归 | ||||
收缩方法 | ||||
树回归 | 对复杂和非线性数据建模 | 结果不易理解 | 数值型、标称型 |
无监督学习
包括聚类、可视化和降维、关联性规则学习、异常检测
无监督算法 | 概念 | 优点 | 缺点 | 适用数据范围 |
---|---|---|---|---|
K-means聚类 | 发现给定数据集的k个簇的算法 | 容易实现 | 可能收敛到局部最小值,在大规模数据集上收敛较慢 | 数值型 |
层次聚类分析(Hierarchical Cluster Analysis,HCA) | ||||
期望最大值 | ||||
主成分分析(Principal Component Analysis,PCA) | ||||
核主成分分析 | ||||
局部线性嵌入(Locally-Linear Embedding,LLE) | ||||
t-分布邻域嵌入算法 | ||||
关联分析-Apriori 算法 | 频繁项集,关联规则 | 易编码实现 | 在大规模数据集上可能较慢 | 数值型、标称型 |
关联分析-FP-growth算法 | 构建FP树,从FP树中挖掘频繁项集 | 一般快于Apriori | 实现比较困难,在某些数据集上性能会下降 | 标称型 |
关联分析-Eclat算法 |
半监督学习
大量不带标签数据加上小部分带标签数据
应用:图片存储
算法:非监督与监督算法相结合e.g.深度信念网络(deep belief networks)是基于被称为互相叠加的受限玻尔兹曼机(restricted Boltzmann machines,RBM)的非监督组件。RBM 是先用非监督方法进行训练,再用监督学习方法进行整个系统微调。
强化学习
定义:学习系统称之为智能体,可以对环境进行观察,选择和执行动作,获得奖励,自己学习最佳方法、以得到长久的最大奖励。
应用:alphago
根据是否能从导入的数据流进行持续学习,分为批量学习、在线学习
批量学习
系统不能进行持续学习,必须用所有可用数据进行训练。(线下离线学习 训练、评估、部署)
在线学习
(核外学习,out-of-core learning):用数据实例持续地进行训练,可以一次一个或一次几个实例(称为小批量)。每个学习步骤都很快且廉价,所以系统可以动态地学习到达的新数据。适合系统接收连续流的数据(比如,股票价格),且需要自动对改变作出调整。持续学习,也是离线完成的
根据判断它们是如何进行归纳推广的,有两种主要的归纳方法:基于实例学习和基于模型学习。
基于实例学习
系统先用记忆学习案例,然后使用相似度测量推广到新的例子
基于模型学习
从样本集进行归纳的方法是建立这些样本的模型,然后使用这个模型进行预测
机器学习的主要挑战
- 训练数据量不足
- 没有代表性的训练数据
- 低质量数据
- 不相关特征
- 过拟合训练数据
- 欠拟合训练数据