Pytorch下训练神经网络,卷积核的初始权重设置

训练了一些网络,发现一个问题,怎样查卷积核的初始权重,以及初始权重是如何配置的?
1.首先了解初始化的目的

使得神经网络在训练过程中学习到有用的信息,这意味着参数的梯度能为0。那么参数初始化应该满足:各层激活值不会出现饱和现象;各层激活值不为0。

2.随机生成小的随机数

我们将参数初始化为小的随机数。其中randn从均值为0,标准差是1的高斯分布中取样。需要注意的是参数初始值不能取得太小,因为小的参数在反向传播时会导致小的梯度,对于深度网络来说,也会产生梯度消失问题,降低参数的收敛速度。

3.Pytorch下卷积神经网络的卷积核的初始权重
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这就是整体的卷积核权重初始化过程,利用了kaiming_normal初始化,均值为0,方差计算得到。
当然也可以自己定义卷积核的初始权重,这样是自己根据计算经验得到的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值