模型的评估方法-1| 学习笔记

本文涉及的产品
模型训练 PAI-DLC,5000CU*H 3个月
交互式建模 PAI-DSW,每月250计算时 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
简介: 快速学习模型的评估方法-1。

开发者学堂课程【机器学习算法 :模型的评估方法-1】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/535/detail/7175


模型的评估方法-1

 

内容介绍

一、评估思路

二、留出法

三、交叉验证法

 

一、评估思路

事实上泛化误差越小对我们来说是最理想的。泛化误差是指在整个数据全集上计算误差。如果误差值最小,模型就是我们想要的但事实上数据全集大部分情况下我们是拿不到的。

例如:要对客户划分等级,实际上我们可以根据历史数据,历史数据是已知的,可以根据历史数据产生模型。但是我们这个模型希望作用于未来新增加的客户上,去做预测。但事实上这些客户在没增加进来之前,根本不知道这些客户的信息。只有所有的客户加起来,才叫数据全集包括已经在系统中的客户,并且包括在未来某个时间段内加进来的客户。这些客户对我们来讲是未知的。所以想拿到数据全集在绝大多数的情况下是不可能的。这时我们会想办法获得近似的误差,测试误差。对模型进行评估。

图片1.png

引入另一个概念测试集,还是刚刚的例子,对客户进行评估,当前所以的客户我们都能拿到。会拿一部分做训练,剩下的做测试;做训练的叫做训练集,做测试的数据叫做测试集。

用训练集训练模型,去评估训练的误差,模型生成之后,再用另外一部分测试这个模型,得到测试误差。用测试误差作为泛化误差的估计值。用它来评估模型的好坏。

通过实验测试,对模型的泛化误差进行评估,选出泛化误差最小的模型。待测数据集全集末

知,使用测试集进行泛化测试,测试误差( Testing Error)即为泛化误差的近似。

有两点需要大家注意:

1、测试集和训练集尽可能互斥(通过做例题就是训练集去获得知识,想要测试现在学习情况如何,最好的办法是用一些新的题目来测试,用所谓的测试集来测试,如果测试的题目全部来自例题那么测试是无效的,因此题目尽可能的不一样。)

2、测试集和训练集独立同分布(独立:事件之间没有依赖关系;同分布:测试集和训练集分布是一致的。例如:预测身高,如果父亲和孩子的训练集都是来自于中国,但是测试集的数据来自冰岛,这就有问题,因为中国人的身高和北欧人的身高是有明显区别的。测试集和训练集需要有相似的特征,才能用于测试,否则结果就会比较差,测试就没有什么意义)

 

二、留出法

留出法(Hold-out):将已知数据集分成两个互斥的部分 ,其中一部分用来训练模型,另

部分用来测试横型,评估其误差作为泛化误差的估计。

要求:

1、两个数据集的划分要尽可能保持数据分布一致性,避免因数据划分过程引入为的偏差

(假设这是一个人群的数据,上半部分是男性下半部分是女性,因为性别的差异,行为也会有所差异;这时我们把数据集分为训练集和测试集的时候,最好考虑性别占比。)

图片2.png

保持样本的类别比例相似,即采用分层采样

2、数据分割存在多种形式会导致不同的训练集、测试集划分,单次留出结果往往存在偶然性,稳定性较差,通常会进行若干次随机划分、重复实验评估取平均值作为评估结果。

(不同次数的操作可能会导致影响比较差)

3、数据集拆分成两部分,每部分的规模设置会影响评估结果,测试、训练的比例通常为7:3、8:2等。(通常会用比例大的训练,比例小的测试)

 

三、交叉验证法

交叉验证法 ( Cross Validation):将数据集划分 k 个大小相似的互斥的数据子集,子集数

据尽可能保证数据分布的一致性(分层采样),每次从中选取一个数据集作为测试集,其余

用作训练集,可以进行 k 次训练和测试,得到评估均值。该验证方法也称作k折交叉验证

(k-fold Cross Validation)。使用不同的划分,重复 p 次,称为 p 次 k 折交叉验证。

图片3.png

已知的数据集是 D。分为10份(最好保证数据分配的一致性)。第一次将1-9作为训练集,第10部分作为测试集来测试模型。第二个将第9作为测试集,其他的作为训练集。这样进行下去就会有10次评估。我们就可以得到10次评估的均值,用均值来评估模型。

相关文章
|
7月前
|
机器学习/深度学习 安全
一文读懂分类模型评估指标
模型评估是深度学习和机器学习中非常重要的一部分,用于衡量模型的性能和效果。本文将逐步分解混淆矩阵,准确性,精度,召回率和F1分数。
586 1
|
2月前
|
机器学习/深度学习 算法 API
机器学习入门(六):分类模型评估方法
机器学习入门(六):分类模型评估方法
|
2月前
|
机器学习/深度学习 算法
回归模型的评估及超参数调优
回归模型的评估及超参数调优
27 0
|
3月前
|
机器学习/深度学习 Python
验证集的划分方法:确保机器学习模型泛化能力的关键
本文详细介绍了机器学习中验证集的作用及其划分方法。验证集主要用于评估模型性能和调整超参数,不同于仅用于最终评估的测试集。文中描述了几种常见的划分方法,包括简单划分、交叉验证、时间序列数据划分及分层抽样划分,并提供了Python示例代码。此外,还强调了在划分数据集时应注意随机性、数据分布和多次实验的重要性。合理划分验证集有助于更准确地评估模型性能并进行有效调优。
|
4月前
|
SQL 自然语言处理
评估数据集CGoDial问题之TKK框架提升模型泛化能力的问题如何解决
评估数据集CGoDial问题之TKK框架提升模型泛化能力的问题如何解决
|
7月前
|
缓存 人工智能 数据可视化
LLM 大模型学习必知必会系列(十一):大模型自动评估理论和实战以及大模型评估框架详解
LLM 大模型学习必知必会系列(十一):大模型自动评估理论和实战以及大模型评估框架详解
LLM 大模型学习必知必会系列(十一):大模型自动评估理论和实战以及大模型评估框架详解
|
7月前
|
机器学习/深度学习 监控 数据可视化
模型评估
“【5月更文挑战第27天】”
55 2
|
机器学习/深度学习 定位技术 Python
深入理解线性回归模型的评估与优化方法
深入理解线性回归模型的评估与优化方法
|
7月前
|
机器学习/深度学习 大数据
如何通过评估方法评估机器学习模型的性能
如何通过评估方法评估机器学习模型的性能
130 0
|
机器学习/深度学习 算法 前端开发
【机器学习基础】机器学习的模型评估(评估方法及性能度量原理及主要公式)
【机器学习基础】机器学习的模型评估(评估方法及性能度量原理及主要公式)
1096 0

热门文章

最新文章