神经网络权重初始化与批量归一化技术解析
1. 权重初始化方法概述
权重初始化在神经网络训练中起着至关重要的作用,它直接影响模型的收敛性。以下介绍三种常见的权重初始化方法:
- 正态分布初始化 :当参数 μ(均值)设为 0,参数 σ(标准差)设为 1 时,正态分布即为标准正态分布。实验中分析了使用 sigmoid 激活函数的神经网络,分别采用 μ = 0、σ = 1 和 μ = 0、σ = 0.01 的正态分布进行权重初始化的情况。结果表明,μ = 0、σ = 1 的正态分布会导致梯度消失问题;而 μ = 0、σ = 0.01 的正态分布虽有所改善,但在深层网络中仍可能出现梯度消失。
- Xavier 或 Glorot 初始化 :该方法旨在使神经网络各层的梯度规模大致相同,以改善正态分布初始化的问题。然而,对于使用 ReLU 激活函数的深度神经网络(DNN),在训练过程中仍会出现梯度消失问题。
- He 初始化 :此方法解决了在 DNN 中使用 ReLU 激活函数时 Xavier 或 Glorot 初始化的问题,使每层的输出分布均匀。
1.1 所需包导入
在进行实验前,需要导入以下必要的 Python 包:
import numpy as np
import tensorflow as tf
import matplotlib.pyplot as plt
from tensorflow import keras
from tensorflow.keras
超级会员免费看
订阅专栏 解锁全文
1229

被折叠的 条评论
为什么被折叠?



