IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 机器学习中数据集的划分 -> 正文阅读

[人工智能]机器学习中数据集的划分

1.数据集的划分

在机器学习算法中,我们通常将原始数据集划分为三个部分(划分要尽可能保持数据分布的一致性):

(1)Training set(训练集): 训练模型

(2)Validation set(验证集): 选择模型

(3)Testing set(测试集): 评估模型

我们首先将数据集划分为训练集和测试集,由于模型的构建过程中也需要检验模型,检验模型的配置,以及训练程度,过拟合还是欠拟合,所以会将训练数据再划分为两个部分,一部分是用于训练的训练集,另一部分是进行检验的验证集。验证集可以重复使用,主要是用来辅助我们构建模型的。

训练集用于训练得到神经网络模型,然后用验证集验证模型的有效性,挑选获得最佳效果的模型,直到我们得到一个满意的模型为止。最后,当模型“通过”验证集之后,我们再使用测试集测试模型的最终效果,评估模型的准确率,以及误差等。

一般来说,最终的正确率,训练集大于验证集,验证集大于测试集。

注意:我们不能用测试集数据进行训练,之所以不用测试集,是因为随着训练的进行,网络会慢慢过拟合测试集,导致最后的测试集没有参考意义。

总结一下:
训练集用来计算梯度更新权重,即训练模型;
验证集用来做模型选择,而且可以避免过拟合。在训练过程中,我们通常用它来确定一些超参数。(例:根据验证集的准确率来确定early stoping的epoch大小,根据验证集确定学习率等等)
测试集则给出一个准确率以判断网络性能的好坏。

下面给出一个图片加强理解

2.数据集的划分方法

数据集的划分一般有三种方法:
1.留出法:
按一定比例划分为训练集和测试集,我们通常取8-2、7-3、6-4、5-5比例切分,直接将数据随机划分为训练集和测试集,然后使用训练集来生成模型,再用测试集来测试模型的正确率和误差,以验证模型的有效性。

这种方法常见于决策树、朴素贝叶斯分类器、线性回归和逻辑回归等任务中。

缺点:只进行了一次划分,数据结果具有偶然。

2.交叉验证法:
交叉验证一般采用 k k k折交叉验证,即 k ? f o l d k-fold k?fold c r o s s cross cross v a l i d a t i o n validation validation,往往 k k k取为10。
交叉验证是将一个整体数据平均划分为K份,(保证数据分布)

先取第一份子集数据作为测试集,剩下的K-1份子集数据作为训练集
再取第二份子集数据作为测试集,剩下的K-1份子集数据作为训练集

不断往复,重复K次
然后将得到的结果进行加权平均,作为最终的评估结果

优点:降低由一次随机划分带来的偶然性,提高其泛化能力,提高对数据的使用效率。

缺点:可能存在一种情况:数据集有5类,抽取出来的也正好是按照类别划分的5类,也就是说第一折全是0类,第二折全是1类,等等;这样的结果就会导致,模型训练时。没有学习到测试集中数据的特点,从而导致模型得分很低,甚至为0,

3.特例:留一交叉验证

我们令样本划分次数K等于数据集合D的样本数量n,即对样本集合D划分为n份子集。

优点:训练集与原始数据集非常接近,并且可以做到训练集和测试集是对立的

缺点:计算开销很大

3.模型的拟合问题

1.如果训练集和测试集(验证集)上,正确率都很低,那么,说明模型处于欠拟合状态,需要调整超参数。
2.如果训练集上正确率很低,测试集(或验证集)上正确率较高,说明数据集有问题。
3.如果训练集上正确率很高,测试集(以及验证集)上正确率较低,说明模型过拟合,需要进行正则化或者Dropout来抑制过拟合。
4.如果训练集和验证集上正确率都很高,但是在测试集上正确率较低,那么说明模型的泛化能力不足,调整方法可参考之前的过拟合情况。
5.如果训练集和测试集(包括验证集)上模型的正确率都很高,那么,你成功了!

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-08-16 11:44:45  更:2021-08-16 11:47:53 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 20:21:46-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码