吴恩达deeplearning.ai:正则化对于偏方差的影响制定用于性能评估的基准

以下内容有任何不理解可以翻看我之前的博客哦:吴恩达deeplearning.ai专栏
这节我们看看正则化系数

文章目录


以线性回归为例

让我们举一个例子:
模型:
f w , b ( x ) = w 1 x + w 2 x 2 + w 3 x 3 + w 4 x 4 + b f_{w,b}(x)=w_1x+w_2x^2+w_3x^3+w_4x^4+b fw,b(x)=w1x+w2x2+w3x3+w4x4+b
其中代价函数我们使用带正则化的:
J ( w , b ) = 1 2 m ∑ ( f w , b ( x ) − y ) 2 + λ 2 m ∑ w j 2 J(w,b)=\frac{1}{2m}\sum(f_{w,b}(x)-y)^2+\frac{\lambda}{2m}\sum w_j^2 J(w,b)=2m1(fw,b(x)y)2+2mλwj2

让我们从设置一个比较大的 λ \lambda λ开始:
在这里插入图片描述
通过之前章节的学习很容易意识到,当 λ \lambda λ特别大时,那么w1和w2将会接近于0。在这种情况下,得出的拟合曲线就接近一条平行于x轴的直线。很显然,这个模型具有很高的偏差和方差。
而当 λ \lambda λ的值特别小的时候,那么正则化的作用将会无限趋近0,此时曲线就容易过拟合,从而出现低偏差,高方差的情况。
在这里插入图片描述
当然,如果你的 λ \lambda λ取值合适,那么此时将会得到一条拟合程度刚好的曲线,就可以做到低方差和低偏差了。
在这里插入图片描述

交叉验证误差对于确定 λ \lambda λ的作用

作者给出的方法就是,一系列的 λ \lambda λ你就试吧,然后通过看交叉验证误差的大小来确定 λ \lambda λ应该取多大效果最好。最后为了严谨,你可以再测一下选出数据的测试集误差。
我们也可以通过画图,来看看 λ \lambda λ对于训练集误差和验证集误差的影响趋势:
在这里插入图片描述
因此和上一节类似,我们的 λ \lambda λ取值也需要适中,从而使得模型达到合适的效果。
既然我们已经知道了偏差和方差的意义以及规律,那么我们可以指定一个基准,让学习算法能够自动进行评估。

指定用于性能评估的基准

语音识别的例子

本次语音识别指的是将语音的内容转化为文字的形式。它当中的错误当然就是你训练算法中翻译错误的内容占所有内容的百分比,我们可以就用这个百分比来代表 J t r a i n J_{train} Jtrain
假设一个训练集它的训练误差为10.8%,这意味着它成功转化了89.2%的训练集,但在10.8%的数据集出现了错误。之后你肯定就该在交叉验证集上来测试准确度了,假设 J c v J_{cv} Jcv为14.8%。
在这里插入图片描述
在语音识别中这样的错误率感觉已经很高了,但是这样就妄下定论其实是不太公平的,因为还没考虑到人说话的质量。如果让人来听训练集中说的话然后再翻译,准确度能达到多少,然后再和 J t r i a n J_{trian} Jtrian进行比较,这样看上去比较公平。
在这里插入图片描述
假设你最后发现,人类的识别错误率也高达10.6%,那么就可以为你的模型血洗冤屈了,因为这说明听不清是训练集数据的锅。
因此可以知道,判断算法是否合适,其中一个重要的方法是看看它与人类水平相比是否更好,在本文的例子之中,机器的水平只比人类差了0.2个百分点,其实就可以说明在训练集的表现已经很不错了。但与之相比, J c v J_{cv} Jcv 4.2%的错误其实还有进步的空间。
在之前,我们提出的观点是观察偏差和方差来判断模型的好坏,但其实有时候也需要考虑进去例如训练集质量的问题。所以尽管训练集误差和验证集误差看上去差距不大,但其实在这个例子之中更主要的问题集中在交叉验证集上。
所以,建立性能评估基准主要取决于你对于模型的正确率的期望值为多少,是你合理的希望学习算法达到的最终水平,这取决于很多的扰动因素例如:

1.人类的表现水平
2.其它算法的表现水平
3.朴素的经验

之后相比于将错误率和0相比,更应该和基准水平进行比较。
在这里插入图片描述
为了给读者你造成不必要的麻烦,博主的所有视频都没开仅粉丝可见,如果想要阅读我的其他博客,可以点个小小的关注哦。

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

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

相关文章

Outlook邮箱IMAP密码怎么填写?账户设置?

Outlook邮箱IMAP密码是什么?Outlook如何设置IMAP? 许多用户会选择通过IMAP协议将邮箱与各种邮件客户端进行连接。而在设置过程中,填写IMAP密码是必不可少的一步。那么,Outlook邮箱的IMAP密码应该如何填写呢?接下来&am…

【Linux】深入理解ls命令

🍎个人博客:个人主页 🏆个人专栏:Linux ⛳️ 功不唐捐,玉汝于成 目录 前言 正文 基本用法 常用选项 示例 高级用法 结语 我的其他博客 前言 在 Linux 系统中,ls 命令是一个强大而又基础的工具&am…

高刷显示器 - HKC VG253KM

🔥🔥 今天来给大家揭秘一款电竞神器 - HKC VG253KM 高刷电竞显示器!这款显示器可是有着雄鹰展翅般的设计灵感,背后的大鹏展翅鹰翼图腾让人过目难忘。那么,这款显示器到底有哪些过人之处呢?一起来看看吧&…

【MySQL】基于Docker搭建MySQL一主二从集群

本文记录了搭建mysql一主二从集群,这样的一个集群master为可读写,slave为只读。过程中使用了docker,便于快速搭建单体mysql。 1,准备docker docker的安装可以参考之前基于yum安装docker的文章[1]。 容器相关命令[2]。 查看正在…

Pod和容器设计模式

为什么需要 Pod; Pod 的实现机制; 详解容器设计模式。 一、为什么需要 Pod 容器的基本概念 现在来看第一个问题:为什么需要 Pod?我们知道 Pod 是 Kubernetes 项目里面一个非常重要的概念,也是非常重要的一个原子调…

144. 二叉树的前序遍历

给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 示例 1: 输入:root [1,null,2,3] 输出:[1,2,3]示例 2: 输入:root [] 输出:[]示例 3: 输入:root [1] 输出&am…

SpringCloud(18)之Sleuth +Zipkin链路追踪

一、Zipkin介绍 Zipkin是一个开放源代码分布式的跟踪系统,它可以帮助收集服务的时间数据,以解决微服务架构中的延迟问 题,包括数据的收集、存储、查找和展现。每个服务向zipkin报告计时数据,zipkin会根据调用关系通 过Zipkin UI…

1.2 在卷积神经网络中,如何计算各层感受野的大小

1.2 在卷积神经网络中,如何计算各层感受野的大小 分析与解答: 在卷积神经网络中,由于卷积的局部连接性,输出特征图上的每个节点的取值,是由卷积核在输入特征图对应位置的局部区域内进行卷积而得到的,因此这…

【笔试强训错题选择题】Day5.习题(错题)解析

文章目录 前言 错题题目 错题解析 总结 前言 错题题目 1. ​ ​ 2. 3. ​ 4. ​ 5. ​ 错题解析 1. 移位运算符的使用 2. 3. 4. 5. 总结

如何用TCC实现分布式事务?

TCC事务介绍 TCC(Try-Confirm-Cancel)是除可靠消息队列以外的另一种常见的分布式事务机制,它是由数据库专家帕特 赫兰德(Pat Helland)在2007年撰写的论文《Life beyond Distributed Transactions: An Apostate’s Op…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的体育赛事目标检测系统(Python+PySide6界面+训练代码)

摘要:开发和研究体育赛事目标检测系统对于增强体育分析和观赏体验至关重要。本篇博客详细讲述了如何运用深度学习技术构建一个体育赛事目标检测系统,并提供了完整的实现代码。系统基于先进的YOLOv8算法,对比了YOLOv7、YOLOv6、YOLOv5的性能&a…

爬虫入门到精通_实战篇7(Requests+正则表达式爬取猫眼电影)_ 抓取单页内容,正则表达式分析,保存至文件,开启循环及多线程

1 目标 猫眼榜单TOP100:https://www.maoyan.com/board 2 流程框架 抓取单页内容:利用requests请求目标站点,得到单个网页HTML代码,返回结果。正则表达式分析:根据HTML代码分析得到电影名称,主演,上映时间,评分,图片…

C语言中的分支和循环语句:从入门到精通

分支和循环语句 1. 前言2. 预备知识2.1 getchar函数2.2 putchar函数2.3 计算数组的元素个数2.4 清屏2.5 程序的暂停2.6 字符串的比较 3. 结构化3.1 顺序结构3.2 分支结构3.3 循环结构 4. 真假性5. 分支语句(选择结构)5.1 if语句5.1.1 语法形式5.1.2 else…

Java网络通信UDP

目录 网络通信基础 UDP通信 服务器 1.想要使用UDP通信 要先打开DatagramSocket文件 端口号可以手动指定或系统随机分配 2.阻塞等待接收客户端数据;创建DatagramPacket接收客户端传来的数据 3.处理客户端传来的数据,并进行业务处理(这里…

MySQL 教程 2.4

MySQL UNION 操作符 本教程为大家介绍 MySQL UNION 操作符的语法和实例。 描述 MySQL UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合,并去除重复的行。 UNION 操作符必须由两个或多个 SELECT 语句组成,每个 SELECT 语句的列数…

Python降维数据库之umap使用详解

概要 在数据科学和机器学习领域,数据通常是高维度的,而高维度数据不仅难以可视化,还会增加建模的复杂性。降维是一种处理高维数据的关键技术,而Python UMAP(Uniform Manifold Approximation and Projection)是一种强大的降维工具,它在保留数据结构的同时,将高维数据映…

【IDEA+通义灵码插件】实现属于你的大模型编程助手

目录 1.前言 2.下载安装 3.解释代码 4.生成单元测试 5.生成注释 6.智能补全 1.前言 大模型到底该以一种什么方式落地,从而嵌入我们的工作当中,助力我们工作效率的提升,其实最好的方式也许就是虚拟助手的方式,就像钢铁侠的&…

【OpenCV基础(三)】Ubuntu系统下EasyPR环境配置

环境配置 1、资源下载2、环境配置2.1、1、将EasyPR压缩包拷贝到Ubuntu 三种方法任选一种2.2、解压得到EasyPR文件夹(文件夹一层进入后EasyPR资源内容)2.3、终端命令修改权限**chmod -R 777 ./ EasyPR**2.4、查找EasyPR/include/easypr/config.h,使用gedit方式打开2.…

vue2本地开发环境正常,生产环境下this.$router.push({ name: ‘login‘ })不跳转

如果在Vue.js 2中在本地开发环境下正常运行,但在生产环境下使用​​this.$router.push({ name: login })​​不起作用,可能有几个原因需要检查和解决: 路由配置问题: 确保你的路由配置正确,特别是确保在生产环境中,路由的配置和本地开发环境一致。检查是否正确设置了name…

基于springboot+vue的智能学习平台系统

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 ​主要内容:毕业设计(Javaweb项目|小程序|Pyt…