机器学习笔记:初始化0的问题

1 前言

假设我们有这样的两个模型:

  • 第一个是逻辑回归
  • 第二个是神经网络

他们的损失函数都是交叉熵

sigmoid函数的导数:

他们能不能用0初始化呢?

2 逻辑回归

2.1 求偏导

2.1.1 结论

2.1.2 L对a的偏导

2.1.3 对w1,w2求偏导

w2同理

2.1.4 对b偏导

2.2 参数更新与分析

w1,w2,b的梯度和w1,w2,b无关,所以初始化成0之后没有影响

3 神经网络

3.1 偏导

a3的部分和前面逻辑回归是一样的

3.1.1 a1部分推导

3.1.1.1 对a1的偏导

3.1.1.2 对w11,w21,b1的推导

3.2 初始化为0

3.2.1 w初始化为0,b初始化为0

3.2.2w初始化为0,b随机初始化

3.3 w随机初始化,b初始化为0

前向传播过程中,a1,a2均不为0,反向传播的过程中各参数均可以更新

更新幅度也不一样

参考内容:神经网络权重为什么不能初始化为0? (qq.com)

相关推荐
U盘失踪了2 小时前
【笔记】Flask 用 session 对象存储用户状态
笔记
Brilliantwxx3 小时前
【C++】 vector(代码实现+坑点讲解)
开发语言·c++·笔记·算法
码途漫谈8 小时前
Easy-Vibe高级开发篇阅读笔记(五)——CC教程之Agent Teams
人工智能·笔记·ai·开源·ai编程
憧憬成为原神糕手9 小时前
FFmpeg 音视频开发笔记(一):H.264 解码为 YUV
笔记·ffmpeg·音视频
爱听歌的周童鞋9 小时前
Learn-Claude-Code | 笔记 | Collaboration | s11 Autonomous Agents
笔记·llm·agent·claude code·collaboration·autonomous
05候补工程师9 小时前
[线性代数] 判定线性相关性的“降维打击”:从基本定理到速通特殊法
经验分享·笔记·学习·线性代数·考研
sweetheart7-710 小时前
go/golang 入门学习笔记(Java/Python/C++转Go快速上手)
笔记·学习·golang·go语言
Byron__11 小时前
Java JVM核心知识点复习笔记
java·jvm·笔记
爱莉希雅&&&11 小时前
MySQL MGR + MySQL Router 高可用集群完整笔记(含手动配置 + Shell 接管双路线)
linux·数据库·笔记·mysql·mysqlrouter·mysqlshell
凉、介11 小时前
Armv8-A virtualization 笔记 (一)
c语言·笔记·学习·嵌入式·虚拟化·hypervisor