当前位置: 首页 > news >正文

深度学习笔记-暂退法(Drop out)

背景

在机器学习的模型中,如果模型的参数太多,而训练样本又太少,训练出来的模型很容易产生过拟合的现象。在训练神经网络的时候经常会遇到过拟合的问题,过拟合具体表现在:模型在训练数据上损失函数较小,预测准确率较高;但是在测试数据上损失函数比较大,预测准确率较低。

过拟合是很多机器学习的通病。如果模型过拟合,那么得到的模型几乎不能用。为了解决过拟合问题,一般会采用模型集成的方法,即训练多个模型进行组合。此时,训练模型费时就成为一个很大的问题,不仅训练多个模型费时,测试多个模型也是很费时。

综上所述,训练深度神经网络的时候,总是会遇到两大缺点:

(1)容易过拟合

(2)费时

Dropout可以比较有效的缓解过拟合的发生,在一定程度上达到正则化的效果。

小结

  1. 好的模型应该是简单的模型,能防止过拟合。 简单性的另一个角度是平滑性,即函数不应该对其输入的微小变化敏感。
  2. 加入噪声能在输入-输出映射上增强平滑性。
  3. 在暂退法(Drop out )中增加噪声的方式是:在前向传播过程中,计算每一内部层的同时注入噪声。将概率p的值置为0, 其他值修改为 h/(1-p),保证期望前后不变。
    在这里插入图片描述
  4. 实践中的暂退法为:
    在这里插入图片描述

在这里插入图片描述
5. 在测试时不用使用dropout. 我们在测试时不用暂退法。 给定一个训练好的模型和一个新的样本,我们不会丢弃任何节点,因此不需要标准化
6. 实现:

dropout1, dropout2 = 0.2, 0.5
net = nn.Sequential(nn.Flatten(),nn.Linear(784, 256),nn.ReLU(),# 在第一个全连接层之后添加一个dropout层nn.Dropout(dropout1),nn.Linear(256, 256),nn.ReLU(),# 在第二个全连接层之后添加一个dropout层nn.Dropout(dropout2),nn.Linear(256, 10))def init_weights(m):if type(m) == nn.Linear:nn.init.normal_(m.weight, std=0.01)net.apply(init_weights);
trainer = torch.optim.SGD(net.parameters(), lr=lr)
d2l.train_ch3(net, train_iter, test_iter, loss, num_epochs, trainer)

相关文章:

深度学习笔记-暂退法(Drop out)

背景 在机器学习的模型中,如果模型的参数太多,而训练样本又太少,训练出来的模型很容易产生过拟合的现象。在训练神经网络的时候经常会遇到过拟合的问题,过拟合具体表现在:模型在训练数据上损失函数较小,预…...

使用自适应去噪在线顺序极限学习机预测飞机发动机剩余使用寿命(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

实验5-7 使用函数求1到10的阶乘和 (10 分)

实验5-7 使用函数求1到10的阶乘和 (10 分) 本题要求实现一个计算非负整数阶乘的简单函数,使得可以利用该函数,计算1!2!⋯10!的值。 函数接口定义: double fact( int n ); 其中n是用户传入的参数,其值不超过…...

kafka部署

1.kafka安装部署 1.1 kafaka下载 https://archive.apache.org/dist/kafka/2.4.0/kafka_2.12-2.4.0.tgz Binary downloads是指预编译的软件包,可供直接下载和安装,无需手动编译。在计算机领域中,二进制下载通常指预构建的软件分发包,可以直接安装在系统上并使用 "2.…...

Spring Security6入门及自定义登录

一、前言 Spring Security已经更新到了6.x,通过本专栏记录以下Spring Security6学习过程,当然大家可参考Spring Security5专栏对比学习 Spring Security5专栏地址:security5 Spring Security是spring家族产品中的一个安全框架,核心功能包括…...

开放式蓝牙耳机哪个品牌好用?盘点几款很不错的开放式耳机

​相比传统入耳式耳机,开放式耳机因其不入耳不伤耳的开放设计,不仅带来了舒适的佩戴体验,还创造了一种与周围环境互动的全新方式,户外运动过程时也无需担心发生事故,安全性更高。我整理了几款比较好用的开放式耳机给大…...

WebGL: 几个入门小例子

本文罗列几个WebGL入门例子,用于帮助WebGL学习。 一、概述 WebGL (Web Graphics Library)是一组基于Open ES、在Web内渲染3D图形的Javascript APIs。 Ref. from Khronos Group: WebGL WebGL™ is a cross-platform, royalty-free open web standard for a low-lev…...

PAT(Advanced Level)刷题指南 —— 第一弹

一、1001 A+B Format 1. 问题重述 给两个整数,输出这两个数的加和的结果,每三位用逗号分隔。 2. Sample Input -1000000 93. Sample Output -999,9914. 题解 思路:直接将两个整数相加,判断是否为负,是负数则直接输出负号并转为正数;然后将正数转为字符串,按规则每…...

【BASH】回顾与知识点梳理(九)

【BASH】回顾与知识点梳理 九 九. 扩展正则表达式(延伸正规表示法)9.1 egrep命令语法匹配指定模式的行(用法和grep相同)忽略大小写匹配(用法和grep相同)反向匹配(用法和grep相同)显示行号(用法和grep相同)递归搜索目录(用法和grep相同)匹配整词(用法和grep相同)统计匹配行数(用…...

Android 版本 对应的 API版本

Android 14(开发者预览版) 如需详细了解平台变更,请参阅 Android 14 文档。 Android 13(API 级别 33) 如需详细了解平台变更,请参阅 Android 13 文档。 Android 12(API 级别 31、32&#xf…...

Django 异常信息 E302 expected 2 blank lines, found 1

在Django中,PEP 8风格指南建议在任何类定义之前都应该有两个空白行,包括视图(views)。错误信息"E302 expected 2 blank lines, found 1"表示在类定义之前只有一个空白行,而Django希望有两个空白行。 要修复…...

2019年09月《全国青少年软件编程等级考试》Python一级真题解析

一、单选题 第1题 关于Python的编程环境,下列的哪个表述是正确的? A:Python的编程环境是图形化的; B:Python只有一种编程环境ipython; C:Python自带的编程环境是IDLE; D&#…...

mybatis如何防止SQL注入

阅读正文&#xff1a;​​​​​​​ mybatis是如何防止SQL注入的 1、首先看一下下面两个sql语句的区别&#xff1a; <select id"selectByNameAndPassword" parameterType"java.util.Map" resultMap"BaseResultMap"> select id, usernam…...

DoIP学习笔记系列:(三)用CAPL脚本过“安全认证”,$27服务实现

文章目录 1. 如何调用接口通过安全认证?如何新建CAPL工程,在此不再赘述,本章主要分享一下如何在CAPL中调用DoIP接口、diag接口进行DoIP和诊断的测试。 注意:CANoe工具本身的使用没什么难的,所谓会者不难难者不会,各位小伙伴有疑问要多问,多交流,往往难事都只是一层窗户…...

【Linux】多路转接 -- select函数

文章目录 1. 认识select函数2. select函数原型3. socket就绪条件4. select工作流程5. select服务器6. select的优缺点 首先我们要了解一下&#xff0c;什么是多路转接&#xff1f; 多路转接也叫多路复用&#xff0c;是一种用于管理多个IO通道的技术。它能实现同时监听和处理多个…...

ospf于mgre中应用(直连与星型拓扑)

题目 地址配置 R1&#xff1a; R2&#xff1a; R3&#xff1a; R4&#xff1a; R5&#xff1a; ISP&#xff1a; R1/2/3的星型拓扑结构 R1配置&#xff1a; interface Tunnel0/0/0 ip address 192.168.6.1 255.255.255.0 tunnel-protocol gre p2mp source 200.1.1.1 ospf …...

Web压测工具http_load原理分析

01、前言 http_load是一款测试web服务器性能的开源工具&#xff0c;从下面的网址可以下载到最新版本的http_load&#xff1a; http://www.acme.com/software/http_load/ 这个软件一直在保持着更新&#xff08;不像webbench&#xff0c;已经是十年的老古董了。 webbench的源…...

flask------消息闪现 flash

1介绍 flask提供了一个非常有用的flash()函数&#xff0c;它可以用来“闪现”需要提示给用户的消息&#xff0c;比如当用户登录成功后显示“欢迎回来&#xff01;”。在视图函数调用flash()函数&#xff0c;传入消息内容&#xff0c;flash&#xff08;&#xff09;函数把消息存…...

【C++】数据结构与算法:常用查找算法

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍常用查找算法。 学其所用&#xff0c;用其所学。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&#xff0c;下次更新不迷路&#x1…...

【Spring Cloud 六】Hystrix熔断

这里写目录标题 系列文章目录背景一、Hystrix是什么服务雪崩服务容错的相关概念熔断器降级超时控制限流 二、会什么要有Hystrix三、如何使用Hystrix进行熔断处理整体项目代码服务提供者pom文件yml配置文件启动类controller 服务消费者pom文件yml配置文件启动类feignhystrixcont…...

Go语言标准库context包在微服务调用链中的传播与超时控制

在微服务架构中&#xff0c;服务间的调用链复杂且频繁&#xff0c;如何高效管理调用上下文与超时控制成为关键挑战。Go语言标准库中的context包为此提供了轻量级解决方案&#xff0c;通过传递请求上下文和超时信号&#xff0c;确保系统在分布式环境下的可靠性和可维护性。本文将…...

NLP实战入门:从理论到代码,手把手构建命名实体识别系统

1. 命名实体识别&#xff1a;从概念到应用场景 第一次接触命名实体识别(NER)时&#xff0c;我盯着论文里的术语发懵——BIO标注、序列标注、条件随机场...这些概念就像一堵高墙。直到有天处理新闻数据时&#xff0c;需要自动提取人名、地名&#xff0c;才真正明白它的价值。简单…...

放弃HAL库硬件IIC吧!手把手教你用STM32F103C8T6 GPIO模拟IIC读取MT6701角度(附完整工程)

STM32 GPIO模拟IIC驱动MT6701磁编码器实战指南 在嵌入式开发中&#xff0c;IIC总线因其简单性和多设备支持能力而广受欢迎。然而&#xff0c;许多开发者在使用STM32 HAL库的硬件IIC时都遇到过稳定性问题——从莫名其妙的通信失败到难以调试的时序错误。这些问题在需要高精度角度…...

Vue3中watch监听对象变化时旧值丢失?试试这个computed转字符串的妙招

Vue3深度监听对象变化的终极解决方案&#xff1a;巧用computed转字符串 在Vue3的实际开发中&#xff0c;我们经常会遇到需要深度监听对象变化的需求。然而&#xff0c;许多开发者在使用watch监听对象时&#xff0c;都会遇到一个令人困惑的问题&#xff1a;新旧值竟然完全相同&a…...

mysql事务提交慢的原因及对策_通过调整innodb_log_file_size优化

innodb_log_file_size过小会导致事务提交变慢&#xff0c;因其迫使InnoDB频繁checkpoint、刷脏页并阻塞日志复用&#xff0c;引发COMMIT延迟及锁等待&#xff1b;应按峰值1–2分钟写入量设置&#xff0c;需停库删除旧日志后重启生效。为什么 innodb_log_file_size 太小会让事务…...

39_从工程角度分析:0_钢铁侠战甲的制造可行性

1、机械 1.1、垂直推进器所需比冲的理论计算与工程选型 &#x1f517; 建议链接文章&#xff1a;《垂直起降飞行器推力需求与比冲分析》 1.2、垂直推进器主轴受力分析与材料力学性能选型 &#x1f517; 建议链接文章&#xff1a;《航空发动机主轴疲劳强度设计与材料选择》 1.3、…...

如何用Listen1实现跨平台音乐播放?告别多平台切换的终极解决方案

如何用Listen1实现跨平台音乐播放&#xff1f;告别多平台切换的终极解决方案 【免费下载链接】listen1_chrome_extension one for all free music in china (chrome extension, also works for firefox) 项目地址: https://gitcode.com/gh_mirrors/li/listen1_chrome_extensi…...

保姆级教程:用Node.js搭建WebSocket中继,让ESP32-CAM视频在另一块ESP32屏幕上实时播放

从零构建ESP32-CAM视频中继系统&#xff1a;WebSocket与Node.js的深度实践 想象一下这样的场景&#xff1a;工厂里的巡检机器人通过摄像头捕捉设备状态&#xff0c;实时传输到工程师的监控屏幕&#xff1b;或是智能家居中的安防摄像头&#xff0c;将画面无缝推送到多个终端。这…...

5分钟部署MGeo:中文地址相似度识别零基础教程

5分钟部署MGeo&#xff1a;中文地址相似度识别零基础教程 你是不是遇到过这样的问题&#xff1f;手里有两份地址数据&#xff0c;一份来自电商订单&#xff0c;一份来自物流系统&#xff0c;明明应该是同一个地方&#xff0c;但写法五花八门——“北京市朝阳区望京街1号”、“…...

dp动规 - 水质检测

题目 题目分析 有两行水质检测器&#xff0c;每一行的长度皆为n&#xff0c;现在的目的就是要让检测器之间联通&#xff0c;求至少需要多添加几台水质检测器&#xff1f; 思路梳理 错误思路 看到有图的时候&#xff0c;这道题我第一个思路想到了用BFS&#xff0c;观察测试用…...