week8 正交化/human-level error/train,dev,test sets

news2025/2/4 22:46:53

文章目录

  • 前言
  • 一、8.1,8.2 正交化
  • 二、8.3,8.4评估指标
    • 1、 单一量化评估指标
    • 2、满足和优化指标
  • 三、8.5-8.7训练开发测试数据集
    • 1、训练开发测试数据集的分布。
    • 2、训练开发测试数据集的大小选择
    • 3、何时更改指标或者开发测试数据集
  • 四、 8.8-8.12 与人类水平相比较
    • 1、为什么选择与人类水平相比较
    • 2、避免偏见
    • 3、human-level performance
    • 4、超越人类水平
    • 5、


前言


一、8.1,8.2 正交化

我理解的ML中 的正交化就是任务分开做,比如之前的early stopping就不是正交化,它一方面考虑如何在训练数据集上取得较好的结果,另一方米娜又担心过拟合,考虑在开发数据集上的效果。
把任务分开,有助于我们更好的解决问题,但并不是不能使用early stopping这种方法,有时候,他也能取得很好的效果。
在这里插入图片描述
对于不同的问题,我们有不同的解决方法。
比如如果在训练数据集上不能取得很好的效果,我们可以构建更大的网络或者采用Adam优化算法。
如果在开发数据集上不能取得很好的效果,我们可以获得更多数据集或者采用正则化等。

二、8.3,8.4评估指标

对于构建神经网络,我们最好先设定一个评估指标,这有利于加快我们的步伐,评估指标有利于我们知道哪个算法更优。

1、 单一量化评估指标

对于一个问题,我们可以采用单一的评估指标,来确定哪个算法更优。
比如判断一个猫的系统
在这里插入图片描述
精准率和识别率我们之前讲过,不在叙述。
简单的说精准率就是我们识别出的猫有多少是准确的。
召回率是我们系统中真正的猫我们识别出来多少。
而对于不同的问题,我们的评价指标不同,我们可以用F1 score将这两者结合起来,是一个调和平均值,不是平均数。

2、满足和优化指标

有时候对于一个评价指标我们或许很难只选取一个单一的指标来评估。
可能有多个评价指标,这时候我们可以选择一个最重要的作为优化指标,而把其他的作为满足指标。
比如运行时间是满足指标,我们规定运行时间不得大于100ms,那么不满足这个指标的模型我们可以直接舍弃。在符合满足指标的基础上去优化我们的优化指标,比如准确度。

三、8.5-8.7训练开发测试数据集

1、训练开发测试数据集的分布。

选择正确的开发数据集和评价指标相当于设定了一个目标,我们去全身心最优化这个目标。

但是如果我们开发数据集选择不当的话,会导致我们的心思全部白费了。
比如我们选取中产阶级的贷款作为开发数据集,在我们确定之后,我们可以根据它来开发我们的模型,之后我们却要把这个模型应用在收入较低的人群中去测试,那效果肯定是不好的。
所以我们选取训练开发测试数据集时要选择相同的分布,才不会导致我们的工作白费。

2、训练开发测试数据集的大小选择

数据较少时,我们可以采用传统意义上的7/3或者6/2/2
但是随着大数据时代的到来,我们获取的数据量越来越多,有时候我们的开发数据集和测试数据集的大小会远远小于之前的百分之三十和百分之二十。
比如有100万个训练集,我们有时候或许只要1万个开发测试数据就可以。
对于开发数据,只要能评判哪个算法或者参数好就可以。
对于测试数据,只要能评判我们这个模型哪个更好就可以。

3、何时更改指标或者开发测试数据集

比如一个系统,我们的指标表明A算法更好,
但是A算法对于用户而言却有很多不好的体验,用户就会更偏向于B算法。
此时说明我们的评价指标有问题,我们应该更改我们的评价指标。

又或者另一个系统,比如识别猫🐱,我们的开发测试数据集收集的都是清晰的照片,模型在开发测试数据集上的效果很好,但是在实际运行中产生的效果并不好,这是因为我们在实际运行中,用户手机中的猫的照片相对而言会很模糊,识别率不高。导致分布不同。此时我们就需要调整我们的指标以及开发测试数据集。

四、 8.8-8.12 与人类水平相比较

1、为什么选择与人类水平相比较

在这里插入图片描述
当一个算法没有超过人类性能时,我们可以借助很多工具,这时候算法的性能会提升很快,但是一旦超过了人类的表现,算法的提升就很慢了,因为人类在某些问题上已经接近贝叶斯最低误差了。一个算法最终一定会有一些误差不会百分之百正确,所以即使一个算法再好,最后也不会超过贝叶斯最低误差。

①首先是,人类在某些问题上的水平是相当不错的,比如识别图片,识别音频等。
②若是一个算法没有超过人类指标,那我们可以依照人类来优化我们的算法,比如一个识别猫的系统,我们可以借助人类的识别系统,来像我们的算法做正确的标记,以此来减小算法的偏差与方差。
在这里插入图片描述

2、避免偏见

在这里插入图片描述
在前面我们提到过贝叶斯误差,我们知道,再识别物体的例子中,人类的识别误差是很小的,但是人类的识别误差也一定会大于贝叶斯误差,但在这里,由于差距不大,我们可以把人类误差当作贝叶斯误差,第一列中比如人类的识别误差是百分之一,而模型的训练误差达到了百分之八,开发误差达到了百分之十。
第二列,假设人类误差是百分之七点五,模型误差不变。
根据人类识别误差的不同作为根据,我们这两个模型集中的侧重点也不同。

第一个可避免偏差为百分之7,而方差为百分之二,所以我们着重消除偏差。
第二个可避免偏差为百分之0.5,而方差为百分之二,所以我们着重消除方差。

3、human-level performance

也可以说是人类水平误差,贝叶斯误差是最小的误差,对于很多人类表现较好的领域,是可以用人类误差来代替贝叶斯误差的,也称为贝叶斯误差估计。

对于人类水平误差的正确理解有助于我们更好的去训练一个模型。
在这里插入图片描述
这是不同的人对一个医学照片分析误差的表现。那我们到底该选取哪个作为贝叶斯误差估计呢?
贝叶斯误差是最小的误差,我们应该选取0.5%这个作为贝叶斯误差的估计。
但在实际应用中我们也可以选用不同的值来进行比较。比如我们训练出来的模型误差为0.8%,它已经超过了一个专业医生的水平,那它在现实生活中也是很有价值的。
在这里插入图片描述
从上图中我们可以发现,当模型距离人类水平误差还很大的时候我们是很好区分要着重消除方差还是偏差。
但是当模型的优化已经很好时,这时候对于贝叶斯误差的估计就很重要了,当然这也只是在你的模型已经训练的很好的情况下才很重要,这时候对贝叶斯误差的估计往往决定着我们能否训练出一个更好的模型。比如最后一列,如果我们仅仅知道人类水平误差为百分之0.7,那么这时候我们训练误差也是0.7%,而开发误差是0.8%,我们就不会想到去继续优化我们的模型,而是去着重消除方差,但如果我们知道对于一个专业团队,它的误差是0.5%,那么这时候我们就会去进一步优化我们的模型,得到一个更好的模型。

4、超越人类水平

对于模型在没有超越人类水平之前,是很容易根据一些工具来提高性能的,并且也有自己明确的目标,但是在超越人类水平之后,就很难取得进展了,或者说是进展很慢。因为我们的方向和目标不明确了,我们这时候不知道可避免的误差是多少,不知道到底该着手于哪里去优化。
但是这并不是说我们没有优化的空间了,在一些领域,深度学习已经超越了人类的水平误差。比如自然感知领域(人类很擅长这方面)推荐广告,计算a-b花费时间等等,但是在其它一些领域比如图像识别等,深度学习也有优于人类的。

5、

可避免偏差与我们之前说的偏差不同,之前都是用百分之0当作基准误差,但并不是所有的都能达到百分之百正确,之前的哪个偏差我们应该叫做估计偏差。但是这个可避免偏差在实际中是很重要的,我们可以根据它来确定我们的模型还能提高优化多少。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/103333.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

单商户商城系统功能拆解49—应用中心—在线客服

单商户商城系统,也称为B2C自营电商模式单店商城系统。可以快速帮助个人、机构和企业搭建自己的私域交易线上商城。 单商户商城系统完美契合私域流量变现闭环交易使用。通常拥有丰富的营销玩法,例如拼团,秒杀,砍价,包邮…

工业物联网解决方案:油井数据远程监控系统

石油行业是国民经济的重要能源支柱,是推动工业发展的原动力。随着物联网、云计算、5G无线通信等技术的发展,多种要素驱动下的生产系统逐步向着数字化转型,重要性越来越明显。油井数字化就是其中的重要一环。 油田开采区域广阔,分…

【苹果推iMessage送】摆设overrideUserInterfaceStyle属性以使该视图及其子视图具备特定的UIUserInterfaceStyle

推荐内容IMESSGAE相关 作者推荐内容iMessage苹果推软件 *** 点击即可查看作者要求内容信息作者推荐内容1.家庭推内容 *** 点击即可查看作者要求内容信息作者推荐内容2.相册推 *** 点击即可查看作者要求内容信息作者推荐内容3.日历推 *** 点击即可查看作者要求内容信息作者推荐…

攻防世界-宜兴网信办-fileinclude

题目 访问题目场景 查看网页源代码&#xff0c;发现其中存在php代码 <?php if( !ini_get(display_errors) ) { //ini_get是获取php.ini里的环境变量的值。环境变量未设置错误回显ini_set(display_errors, On);} error_reporting(E_ALL);//报告所有类型的错误 $lan $_COOK…

微信小程序遍历Echarts图表,实现遍历多个柱状图

1.wxml文件 <view stylewidth:100%;height:200rpx><ec-canvas id"mychart-dom-bar" canvas-id"mychart-bar" ec"{{ ec }}"></ec-canvas> </view>2.js文件 import * as echarts from ../../common/ec-canvas/echarts; …

rocketmq源码-consumer已消费offset更新逻辑

前言 这篇博客&#xff0c;主要记录consumer已经消费的offset是如何更新的 对于集群模式&#xff0c;offset是维护在broker中的&#xff1b;而广播模式&#xff0c;offset是存储在本地文件中&#xff08;暂时没有验证具体存储的位置&#xff0c;是根据源码推测的&#xff09;…

socket,http和websocket的区别

HTTP协议是非持久化的&#xff0c;单向的网络协议&#xff0c;在建立连接后只允许浏览器向服务器发出请求后&#xff0c;服务器才能返回相应的数据。当需要即时通讯时&#xff0c;通过轮询在特定的时间间隔&#xff08;如1秒&#xff09;&#xff0c;由浏览器向服务器发送Reque…

Delft3D水动力-富营养化模型

湖泊富营养化等水质问题严重威胁我国经济社会的发展&#xff0c;也是水环境和水生态领域科研热点之一。水环境模型是制定湖泊富营养化控制对策&#xff0c;预测湖泊水环境发展轨迹的重要工具&#xff0c;在环境影响评价、排污口论证等方面也有着广泛的应用。荷兰Delft研究所开发…

Oracle数据库:数据的仓库,永久就存储,Oracle安装教程,修改Oracle scott,sys,system用户的密码,查看表格

Oracle数据库&#xff1a;数据的仓库&#xff0c;永久就存储&#xff0c;Oracle安装教程&#xff0c;修改Oracle scott&#xff0c;sys&#xff0c;system用户的密码&#xff0c;查看表格 2022找工作是学历、能力和运气的超强结合体&#xff0c;遇到寒冬&#xff0c;大厂不招人…

Diffusion理论知识学习-预备

马尔科夫链 总体思想: 过去的所有信息都被保存在了现在的状态中&#xff0c;只使用现在状态就能预测到之后的状态&#xff0c;换句话说就是某个时刻的状态转移概率只依赖于它的前一个状态。 公式化表达:P(xt1∣xt,xt−1,...,x1,x0)P(xt1∣xt)P(x_{t1}|x_t,x_{t-1},...,x_1,x_0…

打造钢材行业智能制造新业态,B2B电商平台系统赋能企业交易全链路数字化

钢铁行业是制造业的“脊梁”&#xff0c;是工业的“粮食”&#xff0c;在我国由制造大国向制造强国挺进的过程中&#xff0c;钢铁行业由全球“老大”变“强大”至关重要&#xff0c;而数字化转型将发挥不可替代的作用&#xff0c;实施绿色制造、智能制造和精益制造&#xff0c;…

阿里中间件的源与流

目录前言从中间件->中台->阿里云从五彩石项目说起从HSF到EDAS从TDDL到PolarDB-XTDDL阶段DRDS阶段PolarDB-X 1.0阶段PolarDB-X 2.0阶段从Notify到RocketMQ阿里中间件一览参考链接前言 阿里中间件如雷贯耳&#xff0c;听上去高深莫测&#xff0c;那到底是哪几样神兵利器呢…

【MySQL】1.MySQL基础

文章目录1.0 数据库基本概念1.1 主流数据库介绍2.0 MySQL数据库架构2.1 MySQL软件分层2.1 MySQL存储引擎2.2 SQL语句分类1.0 数据库基本概念 想要理解数据库的概念&#xff0c;首先要了解数据库为何存在&#xff0c;它存在的价值是什么&#xff1f; 在之前的学习中&#xff0c…

用Python绑定调用C/C++/Rust库

用Python绑定调用C/C/Rust库 在《让你的Python程序像C语言一样快》我们学习了如何利用Python API来用C语言编写Python模块&#xff0c;通过将核心功能或性能敏感运算用C语言实现&#xff0c;Python程序可以运行地像C语言一样快。然而&#xff0c;很多时候我们需要的功能已经有…

Mycat(11):分片详解之字符串ID处理

1 找到conf/schema.xml并备份 2 字符串ID处理的分区算法 conf/rule.xml <tableRule name"jch"><rule><columns>id</columns><algorithm>jump-consistent-hash</algorithm></rule></tableRule><function name&qu…

css之grid布局个人学习笔记

前置 只是个人学习,内容只会记录自己想知道,有问题的知识点具体可以看看bilibili的耕耕技术宅-grid布局地址视频对应的耕耕技术宅-grid布局ppt地址学有余力的可以通关下这个小游戏通过给萝卜浇水&#xff0c;学习 CSS 网格布局CSS Grid 网格布局教程- 阮一峰 明确基本概念 下…

品牌创建百科怎么写?品牌百度百科怎么创建?

每年都会有很多新成立的品牌&#xff0c;但是能够被大众所熟知的却是寥寥无几&#xff0c;众多品牌都被淹没在了大千世界里。 一个品牌的创建&#xff0c;难的就在于宣传&#xff0c;宣传力度不到位&#xff0c;就没有用户会愿意为这个品牌买单。 那么怎么快速提升品牌的知名度…

肝完这在“牛客网”难倒万人的Java面试题后,已收获9个大厂offer

上周在牛客网看到了这几百道面试题之后&#xff0c;看到评论区全是太难了&#xff01;太难了&#xff0c;就深深被其吸引&#xff0c;索性直接花了一周的时间才把它们全部解析出来做成了这份文档&#xff0c;发给了最近面试的粉丝&#xff0c;他刷爆之后居然能拿到了好几个大厂…

IDEA集成docker-JDK11版本

IDEA集成docker 1. docker 服务器开启远程访问 登录 docker 所在的远程服务器&#xff0c;使用命令 vim /usr/lib/systemd/system/docker.service 修改配置文件&#xff0c;需注意&#xff0c;修改时确认自己的账户拥有相应权限 主要操作是找到 ExecStart/usr/bin/dockerd -H…

能量原理和变分法笔记1:变分法简介

上个学期在学校学了多体系统动力学的课&#xff0c;其中老师讲了变分原理&#xff0c;觉得很有启发&#xff0c;决定再学学相关的知识&#xff0c;在B站找到了一个这样的视频能量原理与变分法&#xff0c;做点笔记&#xff0c;加深一下理解。 第0章序言-微元、功和能(P2)第1章1…