机器学习笔记:初始化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)

相关推荐
QT 小鲜肉5 小时前
【Linux命令大全】001.文件管理之git命令(实操篇)
linux·服务器·笔记·git·elasticsearch
半夏知半秋5 小时前
docker常用指令整理
运维·笔记·后端·学习·docker·容器
LXS_3576 小时前
Day 18 C++提高 之 STL常用容器(string、vector、deque)
开发语言·c++·笔记·学习方法·改行学it
蒸蒸yyyyzwd6 小时前
网络编程——threadpool.h学习笔记
笔记·学习
浪子不回头4156 小时前
SGLang学习笔记
人工智能·笔记·学习
Cricyta Sevina7 小时前
Java IO 基础理论知识笔记
java·开发语言·笔记
EchoL、9 小时前
Obsidian使用学习
笔记·学习
XFF不秃头9 小时前
力扣刷题笔记-旋转图像
c++·笔记·算法·leetcode
铜豌豆_Y10 小时前
【实用】GDB调试保姆级教程|常用操作|附笔记
linux·c语言·驱动开发·笔记·嵌入式
wdfk_prog11 小时前
[Linux]学习笔记系列 -- [fs]file
linux·笔记·学习