目录
- 一、机器学习的基本概念和方法
- (一)基本概念
- (二)机器学习的一般过程举例
- (三)样本和参数估计
- 二、机器学习的步骤总结
- (一)机器学习的主要步骤
- (二)样本及样本的划分
- (三)评估机器学习模型的效果
- (四)欠拟合、过拟合与泛化能力
- 三、机器学习的预处理环节
- (一)数据预处理
- (二)数据标准化
- (三)数据的降维
- 四、机器学习的类型
- (一)聚类模型、分类模型、回归模型
- (二)监督学习、无监督学习和半监督学习
- 五、机器学习的学习路线
人工智能与机器学习、深度学习的关系
机器学习:
- 是目前实现人工智能的主流方法和技术。
- 机器学习——数据驱动的人工智能。
一、机器学习的基本概念和方法
(一)基本概念
从事例中学习(体现数据驱动)—— “事例” 即 “样本”。
- 统计学:由样本的统计量估计总体的参数。
- 机器学习:利用训练集进行建模和参数估计,利用测试集进行模型测试。
(二)机器学习的一般过程举例
问题:让机器(程序)自动识别一个物品是筷子or牙签。(注: 机器开始并没有筷子和牙签的任何知识)
1、第一步:收集一些筷子和牙签的样本。
2、第二步:特征选择,选择有区分度的特征。
3、第三步:训练模型。
- 训练(training):从数据中学得模型的过程称为学习(learning)或训练(training),这个过程通过制定某种策略和执行某个学习算法来完成。
- 训练过程中使用的数据称为训练数据(training data),其中每个样本称为一个训练样(training sample),训练样本组成的集合称为训练集(training set)。
模型:能否是其他? 例如抛物线所有可能的模型的集合称为假设空间。
4、第四步:预测新实例。
- 学得模型后,使用其进行预测的过程称为测试(testing),被预测的样本称为测试集(testing sample)。
- 泛化能力(generalization):学得模型适用于新样本的能力。
机器学习三要素:基于一定策略,通过合适的算法求得模型。
- 模型:考研(江海大or南大)
- 策略:求稳or更好的前景
- 算法:内外联动
(三)样本和参数估计
- 统计学中:样本是用来估计总体的参数。
- (统计)机器学习中:样本是用来训练模型和估计模型参数的。
- 对于参数估计来说:
二、机器学习的步骤总结
(一)机器学习的主要步骤
- 收集相关样本
- 提取特征
- 将特征转换为数据(数据标准化)
- 训练模型
- 使用模型预测新实例
(二)样本及样本的划分
样本分为训练集、验证集和测试集。
-
为了防止训练出来的模型只对训练数据有效,一般将训练数据又分为训练集和验证集。
-
训练集用来训练模型,而验证集一般只用来验证模型的有效性,不参与模型训练。此外,验证集常用于调整模型的超参数。
(三)评估机器学习模型的效果
训练模型的最终目的是提高模型在总体(含新样本)上的预测准确率,而不是在已知样本上的预测准确率。
为适应特殊样本而修改分类线为曲线:
两种分类线的预测准率对比:
泛化能力是评价机器学习模型优劣的最根本指标,然而,模型的训练通常以最小化训练误差为标准。对于固定数量的训练样本,随着训练的不断进行,训练误差会不断降低,甚至趋向于零。如果模型训练误差过小,就会使训练出来的模型基本上完全适应于训练样本。
(四)欠拟合、过拟合与泛化能力
1、欠拟合、过拟合示例
模型在训练样本上产生的误差叫训练误差(training error)。在测试样本上产生的误差叫测试误差(test error)。
2、泛化能力与模型复杂度
衡量模型好坏的是测试误差,它标志了模型对未知新实例的预测能力,因此一般追求的是测试误差最小的那个模型。模型对新实例的预测能力称为泛化能力,模型在新实例上的误差称为泛化误差。
能够求解问题的模型往往不只一个。一般来说,只有合适复杂程度的模型才能最好地反映出训练集中蕴含的规律,取得最好的泛化能力。并非使用一个更复杂的模型就会更好。
3、奥卡姆剃刀原理——大道至简
奥卡姆剃刀(Occam’s Razor)原理:如果有两个性能相近的模型, 我们应该选择更简单的模型 ,通常简单的模型泛化能力更好 。
课程思政:
- 减少杂念,追求本真
- 活在当下:在合适的时间做该做的事情
- 不走极端、过犹不及
4、泛化能力评估方法
——留出法、K-折交叉验证
将训练数据划分为训练集和验证集的方法称为留出法(holdout method),一般保留已知样本的20%到30%作为验证集。
K-折交叉验证是将总样本集随机地划分为K个互不相交的子集。对于每个子集,将所有其它样本集作为训练集训练出模型,将该子集作为验证集,并记录验证集每一个样本的预测结果。这个方法将每一个样本都用来进行了验证,其评估的准确性一般要高于留出法。
三、机器学习的预处理环节
(一)数据预处理
数据预处理是机器学习中繁琐枯燥但又是很重要的一个阶段。
为什么要进行数据预处理:
获取到的原始样本数据往往会存在有缺失值、重复值等问题,在使用之前必须进行数据预处理。
数据预处理之前的样本:
数据预处理之后的样本:
(二)数据标准化
对于样本数据来说,首先需要消除特征之间不同量级的影响:
- 量纲的差异将导致数量级较大的属性占主导地位(例如身高1.75米,体重130斤)。
- 数量级的差异将导致迭代收敛速度减慢。
- 依赖于样本距离的算法对于数量级非常敏感。
1、常用的数据标准化方法
- min-max标准化(归一化):映射到[0,1]区间
新数据 = (原数据 - 最小值) / (最大值 - 最小值) - z-score标准化(规范化):转换成标准正态分布
新数据 = (原数据 - 均值) / 标准差
2、标准化和归一化的选择
- 标准化:样本数据的分布要求服从正态分布。
- 归一化的缺点:对离群值(outlier)很敏感,因为离群点会影响max或min值;其次,当有新数据加入时,可能导致max和min值发生较大变化。
而在标准化方法中,新数据加入对标准差和均值的影响并不大。归一化会改变数据的原始距离、分布,使得归一化后的数据分布呈现类圆形。优点是数据归一化后,最优解的寻找过程会变得更平缓,更容易正确地收敛到最优解。
(三)数据的降维
“维度” 就是指样本集中特征的个数,“降维” 指的是降低特征矩阵中特征的数量。维度灾难会导致分类器出现过拟合。这是因为在样本容量固定时,随着特征数量的增加,单位空间内的样本数量会变少。
数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。因此,数据比模型更重要。
数据的降维方法:
主成分分析(Principal Component Analysis,PCA)是最常用的一种降维方法,它试图找到数据方差最大的方向进行投影。矩阵的主成分就是其协方差矩阵对应的特征向量,按照对应的特征值大小进行排序,最大的特征值就是第一主成分,其次是第二主成分,以此类推。
假设有五个样本,两个维度的数据,那么这五个样本要从二维降维到一维,就图中的三条虚线,新的维度为哪一条最好?
需要分别计算下在新的维度上的投影值,然后计算投影坐标值的方差,方差最大的就是最好的维度
(数据点更容易区分)。
四、机器学习的类型
(一)聚类模型、分类模型、回归模型
- 聚类(Clustering)模型用于将训练数据按照某种关系划分为多个簇,将关系相近的训练数据分在同一个簇中。
- 分类(Classification)是机器学习应用中最为广泛的任务,它用于将某个事物判定为属于预先设定的多个类别中的某一个。
- 回归(Regression)模型预测的不是属于哪一类,而是什么值,可以看作是将分类模型的类别数无限增加,即标签值不再只是几个离散的值了,而是连续的值。
(二)监督学习、无监督学习和半监督学习
- 监督学习处理的对象是所谓的有标签训练数据,它利用有标签的训练数据来学习一个模型,它的目标是用学到的模型给无标签的测试数据打上标签。
- 无监督学习的训练数据没有标签,它自动从训练数据中学习知识,建立模型。
- 半监督学习是监督学习和无监督学习相结合的一种学习方法。