参数初始化kaiming
发布日期:2021-05-06 11:08:17 浏览次数:26 分类:精选文章

本文共 835 字,大约阅读时间需要 2 分钟。

  1. 前向传播的时候, 每一层的卷积计算结果的方差为1.

  2. 反向传播的时候, 每一 层的继续往前传的梯度方差为1(因为每层会有两个梯度的计算, 一个用来更新当前层的权重, 一个继续传播, 用于前面层的梯度的计算.)

def weights_init_kaiming(m):    classname = m.__class__.__name__    if classname.find('Linear') != -1:        nn.init.kaiming_normal_(m.weight, a=0, mode='fan_out')        nn.init.constant_(m.bias, 0.0)    elif classname.find('Conv') != -1:        nn.init.kaiming_normal_(m.weight, a=0, mode='fan_in')        if m.bias is not None:            nn.init.constant_(m.bias, 0.0)    elif classname.find('BatchNorm') != -1:        if m.affine:            nn.init.constant_(m.weight, 1.0)            nn.init.constant_(m.bias, 0.0)def weights_init_classifier(m):    classname = m.__class__.__name__    if classname.find('Linear') != -1:        nn.init.normal_(m.weight, std=0.001)        if m.bias:            nn.init.constant_(m.bias, 0.0)
上一篇:73. 矩阵置零
下一篇:DLA:一种深度网络特征融合方法

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2025年03月30日 04时58分55秒