Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >秘籍0x01建立开发集和测试集

秘籍0x01建立开发集和测试集

作者头像
上善若水.夏
发布于 2018-09-28 03:36:05
发布于 2018-09-28 03:36:05
52500
代码可运行
举报
文章被收录于专栏:上善若水上善若水
运行总次数:0
代码可运行

机器学习训练秘籍笔记

1-12章

  1. 监督学习(supervised learning)是指使用已标记(labeled)的训练样本 来学习一个从 映射到 的函数。监督学习算法主要包括线性回归(linear regression)、对数几率回归(logistic regression,又译作逻辑回归)和神经网络(neural network)。虽然机器学习的形式有许多种,但当前具备实用价值的大部分机器学习算法都来自于监督学习。
  2. 训练集(training set)用于运行你的学习算法。 开发集(development set)用于调整参数,选择特征,以及对学习算法作出其它决定。有时也称为留出交叉验证集(hold-out cross validation set)测试集(test set)用于评估算法的性能,但不会据此决定使用什么学习算法或参数。
  3. 开发集和测试集的使命就是引导你的团队对机器学习系统做出最重要的改变。 合理地设置开发集和测试集,使之近似模拟可能的实际数据情况,并处理得到一个好的结果。
  4. 开发集和测试集应该服从同一分布。
  5. 开发集的规模应该大到足以区分出你所尝试的不同算法间的性能差异。 通常来说,开发集的规模应该在 1,000 到 10,000 个样本数据之间,而当开发集样本容量为 10,000 时,你将很有可能检测到 0.1% 的性能提升。
  6. 那么测试集的大小又该如何确定呢?它的规模应该大到使你能够对整体系统的性能进行一个高度可信的评估。
  7. 所谓的单值评估指标(single-number evaluation metric)有很多,分类准确率就是其中的一种:你在开发集(或测试集)上运行分类器后,它将返回单个的数据值,代表着被正确分类的样本比例。根据这个指标,如果分类器 A 的准确率为 97%,而分类器 B 的准确率为 90%,那么我们可以认为分类器 A 更优秀。
  8. 查准率(Precision,又译作精度)和查全率(Recall,又译作召回率)均不是单值评估指标,因为它给出了两个值来对你的分类器进行评估。多值评估指标将使算法之间的优劣比较变得更加困,算法团队需要在之间做取舍权衡。 取平均值或者加权平均值是将多个指标合并为一个指标的最常用方法之一。
  9. 优化指标和满意度指标, 利用一定的算法对多个指标进行合并。
  10. 通过开发集和度量指标加速迭代。1.尝试一些关于系统构建的想法(idea)。 2.使用代码(code)实现想法。 3.根据实验(experiment)结果判断想法是否行得通。(第一个想到的点子一般都行不通!)在此基础上学习总结,从而产生新的想法,并保持这一迭代过程。
  11. 何时修改开发集、测试集和度量指标: 开展一个新项目时,我会尽快选好开发集和测试集,因为这可以帮团队制定一个明确的目标。 我通常会要求我的团队在不到一周(一般不会更长)的时间内给出一个初始的开发集、测试集和度量指标,提出一个不太完美的方案并迅速采取行动 ,比花过多时间去思考要好很多。但是一周的时间要求并不适用于成熟的应用程序,譬如垃圾邮件过滤。我也见到过一些团队在已经成熟的系统上花费数月的时间来获得更好的开发集和测试集。 如果你渐渐发现初始的开发集、测试集和度量指标设置与期望目标有一定差距,快速想方法去改进它们。例如你的开发集与度量指标在排序时将分类器 A 排在 B 的前面,然而你的团队认为分类器 B 在实际产品上的表现更加优异,这个时候就需要考虑修改开发集和测试集,或者是你的评估指标了。 a. 你需要处理的实际数据的分布和开发集/测试集数据的分布情况不同。 b.你在开发集上过拟合了。 c. 该指标所度量的不是项目应当优化的目标。
  12. 什么是过拟合? 举个栗子: 不知道大家在学车的时候教练教倒库和侧方停车的时候有没有教一串口诀:类似于在车窗的XX框切XX杆的时候打满,切XX的时候回正等等,这个口诀可以顺利让你通过科目二,然而换个车或者换个场地,你就发现并没有卵用... 我们说这只是overfit了某个车和某个场地(训练数据),在新的测试集(新车新场地)上的泛化性能为0。

image

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
1. 小结:建立开发集和测试集

- 选择作为开发集和测试集的数据,应当与你预期在将来获取并良好处理的数据有着相同的分布,但不需要和训练集数据的分布一致。
- 开发集和测试集的分布应当尽可能一致。
- 为你的团队选择一个单值评估指标进行优化。需要考虑多项目标时,不妨将它们整合到一个表达式里(比如对多个误差指标取平均),或者定义满意度指标和优化指标。
- 机器学习是一个高速迭代的过程:在最终令人满意的方案出现前,你可能要尝试很多想法。
- 拥有开发集、测试集和单值评估指标可以帮你快速评估一个算法,从而加速迭代过程。
- 当你探索一个全新的应用时,尽可能在一周内建立你的开发集、测试集和指标,而在成熟的应用上则可以花费更长的时间。
- 传统的 70% / 30% 训练集/测试集划分对大规模数据并不适用,实际上开发集和测试集的比例会远低于 30%- 开发集的规模应当大到能够检测出算法精度的细微改变,但也不用太大;测试集的规模应该大到能够使你对系统的最终性能作出一个充分的估计。
- 当开发集和评估指标不再能给团队一个正确的导向时,就尽快修改它们:(i) 如果你在开发集上过拟合,则获取更多的开发集数据。(ii) 如果开发集和测试集的数据分布和实际关注的数据分布不同,则获取新的开发集和测试集。 (iii) 如果评估指标不能够对最重要的任务目标进行度量,则需要修改评估指标 
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.05.23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
12. 小结:建立开发集和测试集
• 从分布中选择开发集和测试集 ,它需要反映你将来的数据情况,并且它的效果足够好,这可能与训练的数据不在同一分布。
YingJoy_
2018/05/09
6311
图解机器学习 | 机器学习基础知识
教程地址:http://www.showmeai.tech/tutorials/34
ShowMeAI
2022/03/09
7970
图解机器学习 | 机器学习基础知识
吴恩达《ML Yearning》| 关于开发集、测试集的搭建
MachineLearning Yearning Sharing 是北京科技大学“机器学习研讨小组”旗下的文献翻译项目,其原文由Deep Learning.ai 公司的吴恩达博士进行撰写。本部分文献翻译工作旨在研讨小组内部交流,内容原创为吴恩达博士,学习小组成员只对文献内容进行翻译,对于翻译有误的部分,欢迎大家提出。欢迎大家一起努力学习、提高,共同进步!
马上科普尚尚
2020/05/14
5870
吴恩达《ML Yearning》| 关于开发集、测试集的搭建
Macheine Learning Yearning学习笔记(二)
Chapter 5、Your development and test sets (您的开发和测试集)
yuquanle
2019/07/23
3770
Macheine Learning Yearning学习笔记(二)
机器学习系统性能不尽人意?吴恩达教你如何选择改进策略
选自towardsdatascience 作者:Kritika Jalan 机器之心编译 参与:陈韵竹、路雪 搭建机器学习系统好几周,性能却不尽如人意?Kritika Jalan 近日在 towardsdatascience 上发表文章,总结她从吴恩达的 Coursera 课程《Structuring Machine Learning Projects》中学到的相关经验。机器之心对此进行了编译。 如何选择策略以改进算法表现 你已经花了好几个星期构建机器学习系统。然而,它的性能却不能令你满意。你想到了许多方法
企鹅号小编
2018/01/26
6330
关于机器学习,不可不知的15个概念
‍‍ 作者:布奇·昆托(Butch Quinto) 来源:大数据DT(ID:hzdashuju) 有监督学习 有监督学习是利用训练数据集进行预测的机器学习任务。有监督学习可以分为分类和回归。回归用于预测“价格”“温度”或“距离”等连续值,而分类用于预测“是”或“否”、“垃圾邮件”或“非垃圾邮件”、“恶性”或“良性”等类别。 分类包含三种类型的分类任务:二元分类、多类别分类和多标签分类。回归中包含线性回归和生存回归。 无监督学习 无监督学习是一种机器学习任务,它在不需要标记响应的情况下发现数据集中隐藏
AI科技大本营
2023/05/08
3370
关于机器学习,不可不知的15个概念
图解 72 个机器学习基础知识点
来源:尤而小屋 R语言统计与绘图本文约5500字,建议阅读11分钟本文梳理了机器学习最常见的知识要点。 图解机器学习算法系列 以图解的生动方式,阐述机器学习核心知识 & 重要模型,并通过代码讲通应用细节。 1. 机器学习概述 1)什么是机器学习 人工智能(Artificial intelligence)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。它是一个笼统而宽泛的概念,人工智能的最终目标是使计算机能够模拟人的思维方式和行为。 大概在上世纪50年代,人工智能开始
数据派THU
2023/03/29
8100
图解 72 个机器学习基础知识点
机器学习基础知识
特征工程的本质:用更简单的方法表述问题,使问题变得容易,需要深入理解问题的本质。可能的话加一点遐想。
机器视觉CV
2019/07/15
6600
机器学习基础知识
Python深度学习精华笔记5:机器学习基础
监督学习supervised learning:机器学习中最常见的类型,它可以学会将输入数据映射到已知目标annotation。比如回归问题和分类问题(二分类、多分类问题等)是最常见的监督学习的例子。
皮大大
2023/09/09
5810
可扩展机器学习——概述
注:这是一份学习笔记,记录的是参考文献中的可扩展机器学习的一些内容,英文的PPT可见参考文献的链接。这个只是自己的学习笔记,对原来教程中的内容进行了梳理,有些图也是引用的原来的教程,若内容上有任何错误,希望与我联系,若内容有侵权,同样也希望告知,我会尽快删除。 可扩展机器学习系列主要包括以下几个部分: 概述 Spark分布式处理 线性回归(linear Regression) 梯度下降(Gradient Descent) 分类——点击率预测(Click-through Rate Prediction) 神经
felixzhao
2018/03/20
1.1K0
可扩展机器学习——概述
【剑指Offer】机器学习面试题(1)
好久没有整理面试题了,最近总有读者翻出之前的面试题,问我会不会继续整理,今天给大家分享一波自己整理的常见机器学习面试题。
PM小王
2019/07/02
6190
【剑指Offer】机器学习面试题(1)
机器学习入门系列(1)--机器学习概览
一个简单的例子,也是经常提及的例子:垃圾邮件过滤器。它可以根据垃圾邮件(比如,用户标记的垃圾邮件)和普通邮件(非垃圾邮件,也称作 ham)学习标记垃圾邮件。用来进行学习的样例称作训练集。每个训练样例称作训练实例(或样本)。在这个例子中,任务 T 就是标记新邮件是否是垃圾邮件,经验E是训练数据,性能 P 需要定义:例如,可以使用正确分类的比例。这个性能指标称为准确率,通常用在分类任务中。
kbsc13
2019/08/16
7470
机器学习概述与算法介绍(二)
机器学习概述 机器学习基本概念 机器学习基本流程与工作环节 机器学习中的评估指标 机器学习算法一览 3. 机器学习基本流程与工作环节 3.1 机器学习应用几大环节 预测模型 image 机器学习算法
iOSDevLog
2018/06/06
9070
机器学习基础
请记住,在本章中讨论的大多数技术都是机器学习和深度学习通用的,一部分用于解决过拟合问题的技术(如dropout)除外。
用户9882025
2022/07/11
4820
机器学习基础
机器学习测试题(上)
人工智能一直助力着科技发展,新兴的机器学习正推动着各领域的进步。如今,机器学习的方法已经无处不在—从手机上的语音助手到商业网站的推荐系统,机器学习正以不容忽视的速度闯入我们的生活。以下测试题可以粗略的检测你对机器学习的了解和掌握程度。 1.以下哪一种方法最适合在n(n>1)维空间中做异常点检测。 A 正态分布图 B 盒图 C 马氏距离 D 散点图 答案:C 马氏距离是是一种有效的计算两个未知样本集的相似度的多元计量方法,以卡方分布为基础,表示数据的协方差距离。与欧氏距离不同的是它考虑到各种特性之间的联
小莹莹
2018/04/19
2.7K0
机器学习测试题(上)
【openAI】机器学习算法
机器学习是人工智能的一个分支,它使计算机可以在没有明确编程的情况下从数据中学习。通过学习模式,机器学习算法能够对新数据进行预测或做出决策。
熬夜学编程的小王
2024/11/20
1230
【openAI】机器学习算法
第十二章 机器学习系统设计
该系列文章为,观看“吴恩达机器学习”系列视频的学习笔记。虽然每个视频都很简单,但不得不说每一句都非常的简洁扼要,浅显易懂。非常适合我这样的小白入门。 本章含盖 12.1 确定执行的优先级 12.2
tomas家的小拨浪鼓
2019/03/15
5820
python机器学习基础
最常见的机器学习类型。给定一组样本(通常是人工标准),它可以学会将数据映射到已知目标(也叫标注)。监督学习广泛应用到光学字符识别、语音识别、图像分类和语言翻译。
皮大大
2023/08/23
2200
机器学习速成第二集——监督学习之分类(理论部分)!
监督学习中的分类部分是机器学习中非常重要的一个领域,它涉及将输入数据映射到预定义的类别或标签上。在监督学习中,算法通过有标记的数据进行训练,从而能够对新的未标记数据进行预测和分类。
用户11315985
2024/10/16
1440
机器学习速成第二集——监督学习之分类(理论部分)!
机器学习中需要知道的一些重要主题
机器学习现在是一个热门话题,每个人都在尝试获取有关该主题的任何信息。有了关于机器学习的大量信息,人们可能会不知所措。在这篇文章中,我列出了你需要了解的一些机器学习中最重要的主题,以及一些可以帮助你进一步阅读你感兴趣的主题的资源。
磐创AI
2019/09/27
7950
机器学习中需要知道的一些重要主题
相关推荐
12. 小结:建立开发集和测试集
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验