【机器学习与实现】机器学习概述


人工智能与机器学习、深度学习的关系

机器学习:

  • 是目前实现人工智能的主流方法和技术。
  • 机器学习——数据驱动的人工智能。

在这里插入图片描述

一、机器学习的基本概念和方法

(一)基本概念

从事例中学习(体现数据驱动)—— “事例” 即 “样本”。

  • 统计学:由样本的统计量估计总体的参数。
  • 机器学习:利用训练集进行建模和参数估计,利用测试集进行模型测试。

在这里插入图片描述

(二)机器学习的一般过程举例

问题:让机器(程序)自动识别一个物品是筷子or牙签。(注: 机器开始并没有筷子和牙签的任何知识)

1、第一步:收集一些筷子和牙签的样本。

在这里插入图片描述
2、第二步:特征选择,选择有区分度的特征。

3、第三步:训练模型。

  • 训练(training):从数据中学得模型的过程称为学习(learning)或训练(training),这个过程通过制定某种策略和执行某个学习算法来完成。
  • 训练过程中使用的数据称为训练数据(training data),其中每个样本称为一个训练样(training sample),训练样本组成的集合称为训练集(training set)。

在这里插入图片描述
模型:能否是其他? 例如抛物线所有可能的模型的集合称为假设空间

4、第四步:预测新实例。

  • 学得模型后,使用其进行预测的过程称为测试(testing),被预测的样本称为测试集(testing sample)。
  • 泛化能力(generalization):学得模型适用于新样本的能力。

在这里插入图片描述
机器学习三要素:基于一定策略,通过合适的算法求得模型

  • 模型:考研(江海大or南大)
  • 策略:求稳or更好的前景
  • 算法:内外联动

(三)样本和参数估计

  • 统计学中:样本是用来估计总体的参数。
  • (统计)机器学习中:样本是用来训练模型和估计模型参数的。
  • 对于参数估计来说

在这里插入图片描述

二、机器学习的步骤总结

(一)机器学习的主要步骤

  1. 收集相关样本
  2. 提取特征
  3. 将特征转换为数据(数据标准化)
  4. 训练模型
  5. 使用模型预测新实例

(二)样本及样本的划分

样本分为训练集、验证集和测试集。

在这里插入图片描述

  • 为了防止训练出来的模型只对训练数据有效,一般将训练数据又分为训练集和验证集。

  • 训练集用来训练模型,而验证集一般只用来验证模型的有效性,不参与模型训练。此外,验证集常用于调整模型的超参数。

在这里插入图片描述

(三)评估机器学习模型的效果

  训练模型的最终目的是提高模型在总体(含新样本)上的预测准确率,而不是在已知样本上的预测准确率。

为适应特殊样本而修改分类线为曲线:

在这里插入图片描述
两种分类线的预测准率对比:

在这里插入图片描述
  泛化能力是评价机器学习模型优劣的最根本指标,然而,模型的训练通常以最小化训练误差为标准。对于固定数量的训练样本,随着训练的不断进行,训练误差会不断降低,甚至趋向于零。如果模型训练误差过小,就会使训练出来的模型基本上完全适应于训练样本。

(四)欠拟合、过拟合与泛化能力

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)模型预测的不是属于哪一类,而是什么值,可以看作是将分类模型的类别数无限增加,即标签值不再只是几个离散的值了,而是连续的值。

(二)监督学习、无监督学习和半监督学习

  • 监督学习处理的对象是所谓的有标签训练数据,它利用有标签的训练数据来学习一个模型,它的目标是用学到的模型给无标签的测试数据打上标签。
  • 无监督学习的训练数据没有标签,它自动从训练数据中学习知识,建立模型。
  • 半监督学习是监督学习和无监督学习相结合的一种学习方法。

在这里插入图片描述

五、机器学习的学习路线

在这里插入图片描述

相关推荐

  1. 机器学习概念、步骤、分类实践

    2024-04-25 09:14:03       16 阅读
  2. 机器学习概述(一)

    2024-04-25 09:14:03       23 阅读
  3. 机器学习概述

    2024-04-25 09:14:03       17 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-25 09:14:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-25 09:14:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-25 09:14:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-25 09:14:03       20 阅读

热门阅读

  1. STM32_警报装置

    2024-04-25 09:14:03       13 阅读
  2. 开发语言漫谈-ABAP

    2024-04-25 09:14:03       14 阅读
  3. 常用的机器学习模型算法

    2024-04-25 09:14:03       12 阅读
  4. C#算法之冒泡排序算法

    2024-04-25 09:14:03       13 阅读
  5. HarmonyOS —— 仿 XPermission 鸿蒙权限申请工具类

    2024-04-25 09:14:03       16 阅读
  6. 一个缓存泛型自动处理队列,留有处理事件接口

    2024-04-25 09:14:03       15 阅读
  7. 网络安全之WebShell截获

    2024-04-25 09:14:03       15 阅读