监督学习的介绍

一、定义

监督学习是利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程,也称为监督训练或有教师学习。它是一种机器学习的方法,目的是让模型能够从已知的输入和输出之间的关系中学习,并且能够对新的输入做出正确的预测。

二、具体介绍

1、监督学习三要素

模型(model):总结数据的内在规律,用数学函数描述的系统

策略(strategy):选取最优模型的评价准则

算法(algorithm):选取最优模型的具体方法

2、监督学习实现步骤

1、得到一个有限的训练数据集

2、确定包含所有学习模型的集合

3、确定模型选择的准则,也就是学习策略

4、实现求解最优模型的算法,也就是学习算法

5、通过学习算法选择最优模型

6、利用得到的最优模型,对新数据进行预测或分析

3、模型评估策略

(1)模型评估

复制代码
训练集和测试集
损失函数和经验风险
训练误差和测试误差

①训练集和测试集

我们将用来训练模型的数据称为训练集,将用来测试模型好坏的集合称为测试集。

训练集:输入到模型中对模型进行训练的数据集合。

测试集:模型训练完成后测试训练效果的数据集合。

②损失函数

损失函数用来衡量模型预测误差的大小。

定义:选取模型 f 为决策函数,对于给定的输入参数 X,f(X) 为预测结果,Y 为真实结果;f(X) 和 Y 之间可能会有偏差,我们就用一个损失函数(loss function)来度量预测偏差的程度,记作 L(Y,f(X))。损失函数是系数的函数,损失函数值越小,模型就越好。

③经验风险

经验风险最小化(Empirical Risk Minimization,ERM)

复制代码
    这一策略认为,经验风险最小的模型就是最优的模型
    样本足够大时,ERM 有很好的学习效果,因为有足够多的"经验"
    样本较小时,ERM 就会出现一些问题

④训练误差和测试误差

i)训练误差(training error)是关于训练集的平均损失。训练误差的大小,可以用来判断给定问题是否容易学习,但本质上并不重要。

ii)测试误差(testing error)是关于测试集的平均损失。其真正反映了模型对未知数据的预测能力,这种能力一般被称为泛化能力。

(2)模型选择

复制代码
    过拟合和欠拟合
    正则化和交叉验证

①过拟合和欠拟合

模型把训练数据学习的太彻底,以至于把噪声数据的特征也学习到了,特征集过大,这样就会导致在后期测试的时候不能够很好地识别数据,即不能正确的分类,模型泛化能力太差,称之为过拟合(over-fitting)。例如,想分辨一只猫,给出了四条腿、两只眼、一条尾巴、叫声、颜色,能够捕捉老鼠、喜欢吃鱼、... ...,然后恰好所有的训练数据的猫都是白色,那么这个白色是一个噪声数据,会干扰判断,结果模型把颜色是白色也学习到了,而白色是局部样本的特征,不是全局特征,就造成了输入一个黑猫的数据,判断出不是猫。
模型没有很好地捕捉到数据特征,特征集过小,导致模型不能很好地拟合数据,称之为欠拟合(under-fitting)。 欠拟合的本质是对数据的特征"学习"得不够。例如,想分辨一只猫,只给出了四条腿、两只眼、有尾巴这三个特征,那么由此训练出来的模型根本无法分辨猫。

②模型的选择

当模型复杂度增大时,训练误差会逐渐减小并趋向于0;而测试误差会先减小,达到最小值之后再增大。

当模型复杂度过大时,就会发生过拟合;所以模型复杂度应适当。

③正则化

结构风险最小化(Structural Risk Minimization,SRM),是在 ERM 基础上,为了防止过拟合而提出来的策略。在经验风险上加上表示模型复杂度的正则化项(regularizer),或者叫惩罚项。正则化项一般是模型复杂度的单调递增函数,即模型越复杂,正则化值越大。结构风险最小化的典型实现是正则化(regularization),如果简单的模型已经够用,我们不应该一味地追求更小的训练误差,而把模型变得越来越复杂。

④交叉验证

数据集划分

复制代码
    如果样本数据充足,一种简单方法是随机将数据集切成三部分:训练集(training set)、验证集 (validation set)和测试集(test set)。
    训练集用于训练模型,验证集用于模型选择,测试集用于学习方法评估。
    数据不充足时,可以重复地利用数据------交叉验证(cross validation)

简单交叉验证

复制代码
    数据随机分为两部分,如70%作为训练集,剩下30%作为测试集;
    训练集在不同的条件下(比如参数个数)训练模型,得到不同的模型;
    在测试集上评价各个模型的测试误差,选出最优模型;

S折交叉验证

复制代码
    将数据随机切分为S个互不相交、相同大小的子集;S-1个做训练集,剩下一个做测试集;
    重复进行训练集、测试集的选取,有S种可能的选择;

留一交叉验证

三、类别

监督学习有很多种算法,每种算法都有自己的优缺点,适用于不同的问题和数据。下面介绍一些比较常用的监督学习算法。

1、线性回归:这是一种最基本的监督学习算法,它的目的是找到一个线性函数,使得它能够最好地拟合输入和输出之间的关系。线性回归可以用于处理连续型的输出变量,比如预测房价、股票价格等。线性回归的优点是简单易懂,计算效率高,但是缺点是不能处理非线性的关系,也不能处理分类问题。

2、逻辑回归:这是一种用于处理分类问题的监督学习算法,它的目的是找到一个逻辑函数,使得它能够最好地划分不同类别的输入。逻辑回归可以用于处理二分类或多分类问题,比如预测是否患病、是否点击广告等。逻辑回归的优点是简单易懂,可以给出概率输出,但是缺点是不能处理非线性的关系,也不能处理回归问题。

3、决策树:这是一种用于处理分类或回归问题的监督学习算法,它的目的是构建一棵树形结构,使得它能够最好地划分不同类别或预测输出值的输入。决策树可以用于处理离散型或连续型的输入和输出变量,比如预测贷款是否违约、预测销量等。决策树的优点是直观易懂,可以处理非线性的关系,但是缺点是容易过拟合,也容易受到噪声和异常值的影响。

4、支持向量机:这是一种用于处理分类或回归问题的监督学习算法,它的目的是找到一个超平面或超曲面,使得它能够最好地划分不同类别或预测输出值的输入。支持向量机可以用于处理高维或非线性的数据,比如图像识别、文本分类等。支持向量机的优点是具有很强的泛化能力,可以处理复杂的关系,但是缺点是计算效率低,参数选择困难。

5、神经网络:这是一种用于处理分类或回归问题的监督学习算法,它的目的是构建一个由多层神经元组成的网络结构,使得它能够最好地拟合输入和输出之间的关系。神经网络可以用于处理任意类型和形式的数据,比如语音识别、自然语言处理等。神经网络的优点是具有很强的表达能力,可以处理非常复杂和抽象的关系,但是缺点是训练效率低,容易陷入局部最优解。

以上就是一些常见的监督学习算法,当然还有很多其他的算法,比如k-近邻、朴素贝叶斯、随机森林、梯度提升树等。不同的算法适用于不同的问题和数据,选择合适的算法需要考虑很多因素,比如数据的特征、规模、分布、噪声等,以及模型的复杂度、可解释性、稳定性等。一般来说,没有一种算法是万能的,需要根据具体的情况进行比较和测试,才能找到最优的解决方案。

引用

1https://www.dandelioncloud.cn/article/details/1489391056461615105

2https://blog.csdn.net/qq_39315069/article/details/119361967

3https://baijiahao.baidu.com/s?id=1761426464724224950&wfr=spider&for=pc

相关推荐
AIGC小尼10 分钟前
Windows 本地 AI 漫剧全自动生产线部署完整教程(零基础、全指令、带源码、模型配置、排错方案)
人工智能·windows·ai漫剧
合米AI SOP系统14 分钟前
传统产线如何快速上马落地 AI 防错?合米科技 AI SOP 7天即可上线。
大数据·人工智能·科技
思录Echo15 分钟前
什么决定具身智能的最终走向?多技术路线与落地现实辨析
大数据·人工智能
ShallWeL33 分钟前
Orin 上多模型常驻与显存预算
人工智能·嵌入式硬件·nvidia·orin
xiaohaiAIgeo35 分钟前
【2026年】AI监控加行为分析守护实验室安全
大数据·人工智能·科普知识
IT_陈寒36 分钟前
Python的多线程就是个假把式,我算是体验到了
前端·人工智能·后端
集和诚JHCTECH1 小时前
案例分享 | BRAV-7721助力印刷电路板(PCB)智能缺陷复判系统
人工智能·嵌入式硬件·边缘计算
衡石科技1 小时前
ChatBI性能优化与流式响应衡石自然语言问数毫秒级体验技术解析
人工智能·科技·性能优化·企业级bi
林墨聊AIGC1 小时前
动漫AI视频创作工具在哪找到的?2026年最新动漫AI视频平台与软件指南
大数据·人工智能·ai作画·aigc·音视频