zoukankan      html  css  js  c++  java
  • 论初始化的重要性

    初始化是相当重要的,一定不能乱写,

      因为首先初始化由于学习率比较小的原因,导致这个层的weight改变的会很慢,

      其次,初始化如果不对,很可能不只是下降慢,可能是全盘皆输

    17:40:18

    从上述公式可以看出,由于学习率很小,所以w基本不变,再加上w内部如果都设为1,则w更新之后也基本一样,如果是这样的话,则之后的节点大小也一样,这就导致下一个节点的w增长量一样,,会出现很多问题

    所以一般是这样:

    self.conv44w = nn.Conv2d(2048, 35, kernel_size=1, stride=1, padding=0,bias=False)

    init.kaiming_normal(self.conv44w.weight.data, a=0, mode='fan_in')

    self.bn44w = nn.BatchNorm2d(35)

    init.normal(self.bn44w.weight.data, 1.0, 0.02)

    init.constant(self.bn44w.bias.data, 0.0)

    2 state_dict.   strict=False

  • 相关阅读:
    Qt 主窗口与子窗口之间传值
    Qt 如何使窗体初始最大化
    C++ strcmp与strncmp的比较
    Qt 状态栏(statusbar)的使用
    C++中的补零
    Qt QString转char[]数组
    PAT基础6-9
    PAT基础6-8
    PAT基础6-6
    PAT基础6-7
  • 原文地址:https://www.cnblogs.com/lllcccddd/p/10579834.html
Copyright © 2011-2022 走看看