《动手学深度学习》笔记1.10——激活函数←模型初始化←数值稳定性

目录

1. 数值稳定性

1.1 神经网络的梯度

1.2 数值稳定性的常见两个问题

1.3 梯度爆炸

1.3.1 MLP的例子

1.3.2 使用ReLU激活函数

1.3.3 产生的问题

1.4 梯度消失

1.4.1 使用sigmoid激活函数

1.4.2 梯度消失的问题

1.5 总结

2. 让训练更稳定

2.1 目标 (ResNet, LSTM相关)

2.2 模型初始化 (W)

2.3 期望与方差 (MLP为例)

2.4 Xavier 初始化

2.5 激活函数 (σ)

2.6 常用激活函数

2.7 总结


1. 数值稳定性

1.1 神经网络的梯度

1.2 数值稳定性的常见两个问题

1.3 梯度爆炸

1.3.1 MLP的例子

  • 这是多层感知机第t层的形状
  • h^{t}:第t层隐藏层的输出
  • h^{t-1}:第t层隐藏层的的输入
  • σ激活函数:给神经元引入非线性特性,如ReLU
  • diag():对角矩阵

1.3.2 使用ReLU激活函数

  • 如果 d-t 很大,说明网络很深,值将会很大,导致梯度爆炸

1.3.3 产生的问题

1.4 梯度消失

1.4.1 使用sigmoid激活函数

  • 横坐标是输入,对应的是这里 ↓

  • 如果输入很大(比如6),梯度约等于0,模型不动了

1.4.2 梯度消失的问题

1.5 总结

2. 让训练更稳定

2.1 目标 (ResNet, LSTM相关)

李沐老师: “让乘法变加法”

  • 常使用 “让乘法变加法” 来训练的模型,包括ResNet, LSTM, CNN
    • 原先是用乘法进行线性变换:在深度神经网络中,每一层的输出是前一层输出的加权和,这里的权重(即神经网络中的参数)与输入的元素逐个相乘,然后求和
    • 乘法容易导致梯度消失/爆炸(指数效应)
  • ResNet的核心:层数很多的时候,使用加法而不是乘法 (来传递信号)
  • LSTM:时序就是句子长度,例如把句子按照单词 (一个单词一个时序) 划分成一个一个的时序 (输入)
    • 原始的时序神经网络是对每一个时序做乘法,句子太长就会梯度消失/爆炸
    • LSTM将乘法变成加法
  • 加法出问题的概率远低于乘法
  • 归一化:把梯度拉回来,均值为0,方差为1
  • 梯度剪裁:比如梯度大于5就强行等于5,小于-5的梯度也变为-5(即设置上限)

合理的权重初始化激活函数是这里的重点!

2.2 模型初始化 (W)

2.3 期望与方差 (MLP为例)

期望:

  • n_{t-1}:前一层网络 输出的个数(即前一层神经元的数量)
  • \gamma _{t}:为了让第t层网络的输入和输出的方差相等,在权重初始化时设置的 (方差)

李沐老师:反向和正向一样

2.4 Xavier 初始化

李沐老师:

  • Xavier 是常用的权重初始化方法
  • Xavier 大致是指在权重初始化时,根据输入和输出的维度设置方差
  • Xavier 核心思想是保持每层激活前后数据的方差一致,以避免梯度消失或梯度爆炸问题

2.5 激活函数 (σ)

李沐老师:

  • 咱前面的算法都没有激活函数
  • 这里假设为线性,是为了方便分析(用2维理解高维度)

2.6 常用激活函数

2.7 总结

  • 合理的权重初始值和激活函数的选取可以提升数值稳定性

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

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

相关文章

深入探究PR:那些被忽视却超实用的视频剪辑工具

如果想要了解视频剪辑的工具,那一定听说过pr视频剪辑吧。如果你是新手其实我更推荐你从简单的视频剪辑工具入手,这次我就介绍一些简单好操作的视频剪辑工具来入门吧。 1.福晰视频剪辑 连接直达>>https://www.pdf365.cn/foxit-clip/ 这款工具操…

论文阅读 | 一种基于潜在向量优化的可证明安全的图像隐写方法(TMM 2023)

TMM 2023 中国科学技术大学 针对现有的可证明安全的图像隐写不能抵抗有损图像操作,而现有的生成图像隐写不能证明安全问题,提出一种基于潜在向量优化的可证明安全的图像隐写方法(名为PARIS),该方法受到逆采样器和噪声…

Unity 热更新(HybridCLR+Addressable)-创建Addressable资源

三、创建Addressable资源 创建三个文件夹,放Addressable资源,里面对应放程序集,预制体以及场景 拖拽到Addressable Groups对应组中 其中文件名太长,带着路径,可以简化名字 创建一个脚本,对于这个脚本进行一…

C#常用数据结构栈的介绍

定义 在C#中&#xff0c;Stack<T> 是一个后进先出&#xff08;LIFO&#xff0c;Last-In-First-Out&#xff09;集合类&#xff0c;位于System.Collections.Generic 命名空间中。Stack<T> 允许你将元素压入栈顶&#xff0c;并从栈顶弹出元素。 不难看出&#xff0c;…

量子计算Quantum Computing

引子&#xff1a;朋友闲谈&#xff0c;问及工作&#xff0c;一个朋友说&#xff0c;他在一家做量子通信的公司上班&#xff0c;具体岗位是做结构设计&#xff0c;他抱怨说&#xff0c;直到现在他都搞不懂量子计算是什么&#xff1f; 一、量子计算是什么&#xff1f; 什么是量子…

LCD屏JD9853各个接口最大支持速率

概述 电子产品开发时常会遇到有带LCD屏的产品&#xff0c;是怎么计算出来的呢&#xff1f;接下来以JD9853这颗驱动IC举例说明&#xff0c;改驱动IC分别支持&#xff1a;8080、(3-line SPI&#xff09;、 (4-line SPI)、QSPI、RGB 1、8080 通过“时钟周期为传输速率的倒数”&a…

k8s上安装prometheus

一、下载对应的kube-prometheus源码 github地址&#xff1a;GitHub - prometheus-operator/kube-prometheus: Use Prometheus to monitor Kubernetes and applications running on Kubernetes 1&#xff09;进入目录 [rootk8s-master ~]# cd kube-prometheus [rootk8s-master…

Spring Boot 学习之路 -- 配置项目

前言 最近因为业务需要&#xff0c;被拉去研究后端的项目&#xff0c;代码基于 Spring Boot&#xff0c;对我来说完全小白&#xff0c;需要重新学习研究…出于个人习惯&#xff0c;会以 Blog 文章的方式做一些记录&#xff0c;文章内容基本来源于「 Spring Boot 从入门到精通&…

周家庄智慧旅游小程序

项目概述 周家庄智慧旅游小程序将通过数字化手段提升游客的旅游体验&#xff0c;依托周家庄的自然与文化资源&#xff0c;打造智慧旅游新模式。该小程序将结合虚拟现实&#xff08;VR&#xff09;、增强现实&#xff08;AR&#xff09;和人工智能等技术&#xff0c;提供丰富的…

国际化适配对照

中文 zh 葡萄牙语 pt 荷兰语 nl 泰文 th 匈牙利语 hu 波兰 pl 土耳其 tr 乌克兰 uk 希腊 el 印度尼西亚 in 越南语 vi 阿拉伯语 ar 希波来语 iw 英语 en 日语 ja 德语 de 法语 fr 意大利语 it 西班牙语 es 俄罗斯语 ru

1.5 计算机网络的性能指标

参考&#xff1a;&#x1f4d5;深入浅出计算机网络 目录 速率 带宽 吞吐量 时延 时延带宽积 往返时间 利用率 丢包率 速率 速率是指数据的传送速率&#xff08;即每秒传送多少个比特&#xff09;&#xff0c;也称为数据率&#xff08;Data Rate&#xff09;或比特率&am…

Python | Leetcode Python题解之第432题全O(1)的数据结构

题目&#xff1a; 题解&#xff1a; class Node:def __init__(self, key"", count0):self.prev Noneself.next Noneself.keys {key}self.count countdef insert(self, node: Node) -> Node: # 在 self 后插入 nodenode.prev selfnode.next self.nextnode.…

Axure9破解

1.下载安装包 通过百度网盘分享的文件&#xff1a;Axure RP 9.zip 链接&#xff1a;https://pan.baidu.com/s/1Lcu-gg4qF8tTkOlt7bC2ww?pwdwmqq 提取码&#xff1a;wmqq 2.设置登录以及破解码 位置&#xff1a;帮助-管理授权-添加key Licensee&#xff1a;123456 Key&#…

健身房管理系统设计与实现

摘 要 传统办法管理信息首先需要花费的时间比较多&#xff0c;其次数据出错率比较高&#xff0c;而且对错误的数据进行更改也比较困难&#xff0c;最后&#xff0c;检索数据费事费力。因此&#xff0c;在计算机上安装健身房管理系统软件来发挥其高效地信息处理的作用&#xff…

2024年信息安全企业CRM选型与应用研究报告

数字化的生活给人们带来便利的同时也带来一定的信息安全隐患&#xff0c;如网络侵权、泄露用户隐私、黑客攻击等。在互联网高度发展的今天&#xff0c;信息安全与我们每个人、每个组织甚至每个国家都息息相关。 信息安全行业蓬勃发展。根据智研咨询数据&#xff0c;2021年&…

【LLM学习之路】9月22日 第九天 自然语言处理

【LLM学习之路】9月22日 第九天 直接看Transformer 第一章 自然语言处理 自然语言处理发展史 只要看的足够多&#xff0c;未必需要理解语言 统计语言模型发展史 统计语言模型&#xff1a; 判断一个句子是否合理&#xff0c;就计算这个句子会出现的概率 缺点是句子越长越…

大数据-145 Apache Kudu 架构解读 Master Table 分区 读写

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; 目前已经更新到了&#xff1a; Hadoop&#xff08;已更完&#xff09;HDFS&#xff08;已更完&#xff09;MapReduce&#xff08;已更完&am…

NodeFormer:一种用于节点分类的可扩展图结构学习 Transformer

人工智能咨询培训老师叶梓 转载标明出处 现有的神经网络&#xff08;GNNs&#xff09;在处理大规模图数据时面临着一些挑战&#xff0c;如过度平滑、异质性、长距离依赖处理、边缘不完整性等问题&#xff0c;尤其是当输入图完全缺失时。为了解决这些问题&#xff0c;上海交通大…

2024年中国研究生数学建模竞赛B题 (WLAN组网吞吐量机理建模+决策树 完整建模文章)

2024年中国研究生数学建模竞赛B题 (WLAN组网吞吐量机理建模决策树 完整建模文章) 问题重述和分析 问题重述 本题旨在基于实际测量的WLAN&#xff08;无线局域网&#xff09;数据&#xff0c;建立一个精确的系统吞吐量预测模型。具体而言&#xff0c;提供了多个包含网络拓扑、…

在虚幻引擎中创建毛发/头发

在虚幻引擎中创建毛发/头发 , 首先开启两个插件 Groom 和 Alembic Groom Importer 打开蒙皮缓存 导出人物模型 将人物导入Blender , 选择需要种植头发的点 指定并选择 点击毛发 这里变成爆炸头了 , 把数量和长度调一下 切换到梳子模式 调整发型 导出为abc , 文件路径不…