机器学习-基本概念

一、人工智能、机器学习、深度学习

人工智能 (AI) 是使机器能够模拟人类智能的技术。 人工智能是一个宏大的愿景,目标是让机器像我们人类一样思考和行动,既包括增强我们人类脑力也包括增强我们体力的研究领域。

机器学习(ML) 是人工智能的子集,它采用可让机器凭借经验在任务中做出改善的技术(例如深度学习)。 学习过程基于以下步骤:

  1. 将数据馈送到算法中。 (在此步骤中,可向模型提供更多信息,例如,通过执行特征提取。)
  2. 使用此数据训练模型。
  3. 测试并部署模型。
  4. 使用部署的模型执行自动化预测任务。 (换言之,调用并使用部署的模型来接收模型返回的预测。)

深度学习(DL) 是机器学习的子集,它基于人工神经网络。 学习过程之所以是深度性的,是因为人工神经网络的结构由多个输入、输出和隐藏层构成。 每个层包含的单元可将输入数据转换为信息,供下一层用于特定的预测任务。 得益于这种结构,机器可以通过自身的数据处理进行学习。

二、监督学习、非监督学习

机器学习按照学习形式进行分类,可分为监督学习、无监督学习、半监督学习、强化学习等。

  • 监督学习 - 需要提供标注的样本集
  • 无监督学习 - 不需要提供标注的样本集
  • 半监督学习 - 需要提供少量标注的样本
  • 强化学习 - 需要反馈机制;

2.1 监督学习

2.1.1 监督学习简介

监督学习(Supervised Learning)是机器学习中的一种训练方式,是指利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程。

监督学习是从标记的训练数据来推断一个功能的机器学习任务。 简单来说就是我们给学习算法一个数据集。 这个数据集由“正确答案”组成,然后使用已知正确答案的示例来训练网络,从而得到一个最优的模型。

举一个无人驾驶的例子,通过收集在不同路况(数据)下人类驾驶员所执行的驾驶行为(标签),然后将数据收集起来后训练程序,让程序学习如何驾驶。 从而,程序学会了在不同路况下自动地执行相应的动作,实现无人驾驶的目的。

监督学习中的“监督”并不是指人为观测机器做的对不对,而是执行以下流程:

  1. 准备训练数据,可以是统计数据或文本、图像、音频等;
  2. 抽取所需要的特征,形成特征向量,或者称该过程为矢量化;
  3. 选择一个适合目标任务的数学模型;
  4. 给机器一部分已知的问题和答案(即训练集)进行训练模拟;
  5. 机器根据训练集内容进行规律总结,形成一套自己的方法论;
  6. 方法论形成后,人类把新的待解决问题(测试集)给机器,让其进行解答;

2.1.2 监督学习主要解决的问题

1. 回归问题
解释:回归算法得到最优拟合曲线,要将当前数据集中的所有点都集中在这条最优拟合曲线上。
输出值:定量输出
目的:寻找当前数据集中的最优拟合曲线

2. 分类问题
解释:分类算法将当前数据集划分为多个决策面,每个决策面代表一个类别或属性,尽力实现每个决策面不产生任何交集(实际上是不可能的),达到最优化分当前数据集的目的。
输出值:定性输出
目的: 寻找当前数据集中的最优决策边界

2.1.3 监督学习常用算法

1.线性回归算法
回归是基于已有数据对新的数据进行预测,比如预测股票走势。线性回归就是能够用一个直线较为精确地描述数据之间的关系,这样当出现新的数据的时候,就能够预测出一个简单的值。

线性回归得出的模型不一定是一条直线.在只有一个变量的时候,模型是平面中的一条直线;有两个变量的时候,模型是空间中的一个平面;有更多变量时,模型将是更高维的。

优点:
1)思想简单,实现容易。建模迅速,对于小数据量、简单的关系很有效;
2)线性回归模型十分容易理解,结果具有很好的可解释性,有利于决策分析;
3)特征数量大于样本数量时,表现通常都很好。

缺点:
1)对于非线性数据或者数据特征间具有相关性多项式回归难以建模;
2)难以很好地表达高度复杂的数据。

2.逻辑回归
逻辑回归主要用于对样本进行分类。

优点:
1)对率函数任意阶可导,具有很好的数学性质,许多现有的数值优化算法都可以用来求最优解,训练速度快;
2)简单易理解,模型的可解释性非常好,从特征的权重可以看到不同的特征对最后结果的影响;
3)适合二分类问题,不需要缩放输入特征;
4)内存资源占用小,因为只需要存储各个维度的特征值;
5)直接对分类可能性进行建模,无需事先假设数据分布,避免了假设分布不准确所带来的问题;
6)以概率的形式输出,而非知识0.1判定,对许多利用概率辅助决策的任务很有用。

缺点:
1)不能用逻辑回归去解决非线性问题,因为Logistic的决策面是线性的;
2)对多重共线性数据较为敏感;
3)很难处理数据不平衡的问题;
4)准确率并不是很高,因为形式非常的简单(非常类似线性模型),很难去拟合数据的真实分布;
5)逻辑回归本身无法筛选特征,有时会用gbdt来筛选特征,然后再上逻辑回归。

3.决策树
从数据中挑选具有区分性的变量,将数据集拆分为两个或两个以上的子集合,一步一步拆分,最终形成了一棵“树”,“树”的每个叶子节点代表该分支最终的预测结果。

优点:
1)数据易于可视化与理解;
2)不受缩放影响,不需要对数据进行预处理。

缺点:
1)对连续性的字段比较难预测;
2)对有时间顺序的数据,需要很多预处理的工作;
3)当类别太多时,错误可能就会增加的比较快;
4)也经常过拟合,泛化性能差。

4.随机森林
建立多个决策树并将他们融合起来得到一个更加准确和稳定的模型,是bagging 思想和随机选择特征的结合。随机森林构造了多个决策树,当需要对某个样本进行预测时,统计森林中的每棵树对该样本的预测结果,然后通过投票法从这些预测结果中选出最后的结果。

优点:
1)准确率高运行起来高效(树之间可以并行训练);
2)不用降维也可以处理高维特征;
3)给出了度量特征重要性的方法;
4)建树过程中内部使用无偏估计;
5)有很好的处理缺失值的算法;
6)对于类别不平衡数据能够平衡误差;
7)能够度量样本之间的相似性,并基于这种相似性对于样本进行聚类和筛选异常值;
8)提出了一种衡量特征交互性的经验方法(数据中存在冗余特征时能很好的处理)。

缺点:
1)不可解释性强,多个随机导致了非常好的效果;
2)在某些噪声较大的分类和回归问题上会过拟合;
3)模型会非常大,越准确意味着越多的数。

5.支持向量机
支持向量机(Support Vector Machine, SVM)是一类按监督学习方式对数据进行二元分类的广义线性分类器(generalized linear classifier),其决策边界是对学习样本求解的最大边距超平面(maximum-margin hyperplane) 。
SVM使用铰链损失函数(hinge loss)计算经验风险(empirical risk)并在求解系统中加入了正则化项以优化结构风险(structural risk),是一个具有稀疏性和稳健性的分类器 。SVM可以通过核方法(kernel method)进行非线性分类,是常见的核学习(kernel learning)方法之一 。
优点:
1)支持向量模型是一个凸优化问题,求得的解一定是全局最优而不仅仅是局部最优;
2)不仅适用于线性问题,还适用于非线性问题(借助核技巧);
3)模型鲁棒性好,决策边界只取决于支持向量而不是全部数据集;
4)中小样本量数据集上效果优异;
5)无需依赖整个数据;
6)泛化能力比较强。

缺点:
1)二次规划问题求解将涉及n阶矩阵的计算(其中n为样本的个数),计算量随样本量上涨厉害,因此支持向量模型不适用于超大数据集。
2)对非线性问题没有通用解决方案,有时候很难找到一个合适的核函数;
3)对于核函数的高维映射解释力不强,尤其是径向基函数;
4)支持向量模型对缺失数据敏感。

6.K-近邻算法
选择K个最近的分类标签,出现次数最多的分类则为新标签分类,可以简单理解为“少数服从多数”。
优点:
1)容易理解;
2)通常不需要过多调节就可以得到不错的结果;
3)是一个很好基准预测方法,在预处理数据过程中经常用到;
4)特征少或样本少,模型速度很快。

缺点:
1)对于很多特征(几个或更多)的数据集往往效果不好;
2)对于稀疏矩阵(大多数特征的大多数取值为0)的数据,效果非常不好;
3)特征多或样本量太大,运算速度比较慢。

7.贝叶斯
以贝叶斯原理为基础,使用概率统计的知识对样本数据集进行分类。

优点:
1)朴素贝叶斯模型发源于古典数学理论,有着坚实的数学基础,以及稳定的分类效率;
2)对大数量训练和查询时具有较高的速度。即使使用超大规模的训练集,针对每个项目通常也只会有相对较少的特征数,并且对项目的训练和分类也仅仅是特征概率的数学运算而已;
3)对小规模的数据表现很好,能个处理多分类任务,适合增量式训练(即可以实时的对新增的样本进行训练);
4)对缺失数据不太敏感,算法也比较简单,常用于文本分类;
5)朴素贝叶斯对结果解释容易理解。

缺点:
1)需要计算先验概率;
2)分类决策存在错误率;
3)对输入数据的表达形式很敏感;
4)对由于使用了样本属性独立性的假设,所以如果样本属性有关联时其效果不好。

2.1.3 监督学习的应用场景

【1】https://zhuanlan.zhihu.com/p/550736179
【2】https://learn.microsoft.com/zh-cn/azure/machine-learning/concept-deep-learning-vs-machine-learning
【3】https://zhuanlan.zhihu.com/p/520602164

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值