位置: IT常识 - 正文

深度学习参数初始化(二)Kaiming初始化 含代码

编辑:rootadmin
深度学习参数初始化(二)Kaiming初始化 含代码

推荐整理分享深度学习参数初始化(二)Kaiming初始化 含代码,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

目录

一、介绍

二、基础知识

三、Kaiming初始化的假设条件 

四、Kaiming初始化的简单的公式推导

1.前向传播

2.反向传播

五、Pytorch实现

深度学习参数初始化系列:

(一)Xavier初始化 含代码

(二)Kaiming初始化 含代码

一、介绍

        Kaiming初始化论文地址:https://arxiv.org/abs/1502.01852

        Xavier初始化在ReLU层表现不好,主要原因是relu层会将负数映射到0,影响整体方差。而且Xavier初始化方法适用的激活函数有限:要求关于0对称;线性。而ReLU激活函数并不满足这些条件,实验也可以验证Xavier初始化确实不适用于ReLU激活函数。所以何恺明在对此做了改进,提出Kaiming初始化,一开始主要应用于计算机视觉、卷积网络。

二、基础知识

1.假设随机变量X和随机变量Y相互独立,则有

        (1) 

 2.通过期望求方差的公式, 方差等于平方的期望减去期望的平方.

                (2)

 3.独立变量乘积公式

        (3)

4.连续性随机变量X的概率密度函数为f(x),若积分绝对收敛,则期望公式如下:

                        (4)

三、Kaiming初始化的假设条件 

        与Xavier初始化相似,Kaiming初始化同样适用Glorot条件,即我们的初始化策略应该使得各层的激活值和状态梯度的方差在传播过程中的方差保持一致;Kaiming初始化的参数仍然满足均值是0,且更新的过程中权重的均值一直是0。

        与Xavier初始化不同的,Kaiming初始化不在要求每层输出均值都是0(因为Relu这样的激活函数做不到啊);当然也不再要求f′(0)=1。

        Kaiming初始化中,前向传播和反向传播时各自使用自己的初始化策略,但是保证前向传播时每层的方差和反向传播时梯度的方差都是1。

四、Kaiming初始化的简单的公式推导

        我们使用卷积来进行推导,并且激活函数使用ReLU。

1.前向传播

        对于一层卷积,有:

                        (5)

         其中是激活函数前的输出,是权重的个数,是权重,是输入。

        根据(3)式,可将(4)式推导为:

        (6)

         根据假设,但是是上一层通过ReLU得到的,所以,则:

                (7)

 通过(2)式可得,则(7)式推导为:

深度学习参数初始化(二)Kaiming初始化 含代码

                        (8)

根据期望公式(4), 通过第层的输出来求此期望, 我们有, 其中表示ReLU函数.

                         (9)

其中表示概率密度函数,因为的时候,所以可以去掉小于0的区间, 并且大于0的时候,可推出:

                   (10)

因为是假设在0周围对称分布且均值为0, 所以也是在0附近分布是对称的, 并且均值为0(此处假设偏置为0),则

       (11) 

所以的期望是:

              (12)

 根据公式(2),因为的期望等于0,于是有:

则式(12)推导为:

                        (13)

将(13)式带入(8)式:

                        (14)

从第一层一直往前进行前向传播, 可以得到某层的方差为 :

这里的就是输入的样本, 我们会将其归一化处理, 所以, 现在让每层输出方差等于1, 即:

于是正向传播时,Kaiming初始化的实现就是下面的均匀分布:

高斯分布:

2.反向传播

因为反向传播的时候

                (15)

 其中表示损失函数对其求导. 为参数

根据(3)式:

 其中表示反向传播时输出通道数,最后得出

于是反向传播时,Kaiming初始化的实现就是下面的均匀分布:

高斯分布:

五、Pytorch实现import torchclass DemoNet(torch.nn.Module): def __init__(self): super(DemoNet, self).__init__() self.conv1 = torch.nn.Conv2d(1, 1, 3) print('random init:', self.conv1.weight) ''' kaiming 初始化方法中服从均匀分布 U~(-bound, bound), bound = sqrt(6/(1+a^2)*fan_in) a 为激活函数的负半轴的斜率,relu 是 0 mode- 可选为 fan_in 或 fan_out, fan_in 使正向传播时,方差一致; fan_out 使反向传播时,方差一致 nonlinearity- 可选 relu 和 leaky_relu ,默认值为 。 leaky_relu ''' torch.nn.init.kaiming_uniform_(self.conv1.weight, a=0, mode='fan_out') print('xavier_uniform_:', self.conv1.weight) ''' kaiming 初始化方法中服从正态分布,此为 0 均值的正态分布,N~ (0,std),其中 std = sqrt(2/(1+a^2)*fan_in) a 为激活函数的负半轴的斜率,relu 是 0 mode- 可选为 fan_in 或 fan_out, fan_in 使正向传播时,方差一致;fan_out 使反向传播时,方差一致 nonlinearity- 可选 relu 和 leaky_relu ,默认值为 。 leaky_relu ''' torch.nn.init.kaiming_normal_(self.conv1.weight, a=0, mode='fan_out') print('kaiming_normal_:', self.conv1.weight)if __name__ == '__main__': demoNet = DemoNet()
本文链接地址:https://www.jiuchutong.com/zhishi/300432.html 转载请保留说明!

上一篇:微信小程序获取用户openid(微信小程序获取手机号失败)

下一篇:学习CSS3,使用双旋转实现福到了的迎春喜庆特效(css3知识总结)

  • 微信推广运营7种方法(微信推广运营发展前景)

    微信推广运营7种方法(微信推广运营发展前景)

  • 安卓一键清理下载(安卓一键清理内存)(安卓手机的一键清理有用吗)

    安卓一键清理下载(安卓一键清理内存)(安卓手机的一键清理有用吗)

  • 苹果11如何设置口罩解锁(苹果11如何设置小圆点)

    苹果11如何设置口罩解锁(苹果11如何设置小圆点)

  • mwn72ch/a是什么型号(mwp72ch/a是什么型号)

    mwn72ch/a是什么型号(mwp72ch/a是什么型号)

  • 微店购买记录别人能看到吗(微店购买记录消失)

    微店购买记录别人能看到吗(微店购买记录消失)

  • 电脑安装包在哪里删除(电脑安装包在哪里找到,软件没安装)

    电脑安装包在哪里删除(电脑安装包在哪里找到,软件没安装)

  • 苹果手机电池健康低于多少免费更换(苹果手机电池健康80%需要换电池吗)

    苹果手机电池健康低于多少免费更换(苹果手机电池健康80%需要换电池吗)

  • 华为畅享10s和畅享10 plus有什么区别(华为畅享10S和畅享10PLUS)

    华为畅享10s和畅享10 plus有什么区别(华为畅享10S和畅享10PLUS)

  • 抖音充不了币怎么回事(抖音充不进抖币)

    抖音充不了币怎么回事(抖音充不进抖币)

  • 打印机没墨了是什么反应(打印机没墨了是换硒鼓还是墨盒)

    打印机没墨了是什么反应(打印机没墨了是换硒鼓还是墨盒)

  • oppor17什么时候更新coloros7(oppor17什么时候上市的)

    oppor17什么时候更新coloros7(oppor17什么时候上市的)

  • 移动收不到短信验证码(为什么移动收不到短信)

    移动收不到短信验证码(为什么移动收不到短信)

  • 为什么设备锁关了还要验证(为什么设备锁关了 别人手机登不了)

    为什么设备锁关了还要验证(为什么设备锁关了 别人手机登不了)

  • oppoARunit有什么功能(oppo arunit)

    oppoARunit有什么功能(oppo arunit)

  • ie提示已停止工作怎么处理(ie提示停止工作)

    ie提示已停止工作怎么处理(ie提示停止工作)

  • 聚好看会员可以同时登录两个电视吗(聚好看会员可以看芒果吗)

    聚好看会员可以同时登录两个电视吗(聚好看会员可以看芒果吗)

  • iphonex怎么呼叫siri

    iphonex怎么呼叫siri

  • 乐视手机怎么备份(乐视备份在哪里能找到)

    乐视手机怎么备份(乐视备份在哪里能找到)

  • 华为v20支持无线充电吗(华为v20无线网扫一扫在哪里)

    华为v20支持无线充电吗(华为v20无线网扫一扫在哪里)

  • 手机号165是什么卡(手机165号段好不好)

    手机号165是什么卡(手机165号段好不好)

  • 小米摄像头设备已离线(小米摄像头设备共享怎么连接)

    小米摄像头设备已离线(小米摄像头设备共享怎么连接)

  • 怎样屏蔽钉钉管理助手(钉钉怎样屏蔽一个人)

    怎样屏蔽钉钉管理助手(钉钉怎样屏蔽一个人)

  • vivox27支持无线充电吗(vivox27能无线充电嘛)

    vivox27支持无线充电吗(vivox27能无线充电嘛)

  • 苹果11有面部解锁吗(苹果11面部解锁怎么设置)

    苹果11有面部解锁吗(苹果11面部解锁怎么设置)

  • 华为荣耀8a返回键在哪里(荣耀8x手机返回键如何重新设置?)

    华为荣耀8a返回键在哪里(荣耀8x手机返回键如何重新设置?)

  • Windows10系统如何禁用启动延迟(windows10 怎么样)

    Windows10系统如何禁用启动延迟(windows10 怎么样)

  • 应税劳务的主要成本包括
  • 公司费用计入什么科目
  • 固定资产入股交什么税
  • 收到租赁费发票的账务处理
  • 计提存货跌价准备怎么计算
  • 建筑企业购进免税苗木1000元
  • 一般纳税企业可以变更小微企业吗
  • 企业如何列支个人收入
  • 固定资产替换公式
  • 公司代扣社保为什么是400多余的钱
  • 调整跨期收入是否调增值税
  • 冲减成本费用会计分录
  • 海关进口关税专用缴款书可以抵扣增值税吗
  • 计提出口关税会计分录
  • 公益性捐赠纳税调整案例
  • 出口退税生产企业增值税附加税怎么申报
  • 企业购买银行理财会亏吗
  • 小规模纳税人2018
  • 公休假补贴多少钱
  • 发生广告费用会计分录
  • 设立独立核算的销售机构
  • 赠送视同销售是按照售价还是成本缴纳增值税
  • 电子发票隔月可以报销吗
  • 事业单位计提折旧的有哪些
  • 公司与股东的往来款涉税
  • 安置房账务处理
  • 个体户小规模纳税人每月开票
  • 企业固定资产折旧费计入什么成本
  • 六月工资七月发算不算压工资
  • 因为质量问题
  • 跨年度主营业务收入错账调整
  • 桌面图标变成了白色的
  • windows11怎么创建宽带拨号连接图标
  • 在win7中,当前窗口的数量是多少个
  • 收到采购发票未开票
  • Apache+php+mysql在windows下的安装与配置图解(最新版)
  • 扣扣斗图在哪里设置
  • windows 10预览版
  • 鸿蒙系统如何设置定位
  • 公司入股的钱叫什么
  • 营改增后房地产企业账务处理
  • 现金清查的会计分录
  • 制造业企业资金如何循环周转
  • Vue3【Transition(效果、CSS 过渡、使用animation、TransitionGroup、 KeepAlive、Teleport )】(七)-全面详解(学习总结---从入门到深化)
  • 标书注意事项与如何制作标书
  • phpcms怎么样
  • 修改Dede默认投票代码 防止Request Error错误
  • 商品流通企业购入的商品采用售价金额法核算的
  • 其他应收款如何平账
  • 销售价格确定的方法有
  • 个人股东和法人股东分红纳税
  • 坏账准备怎么做底稿
  • 预付账款的账务处理视频教程
  • 不能抵扣的福利费
  • 明细与发票
  • 增值税留抵怎么做凭证
  • 弥补亏损怎么做账
  • 防伪税控技术服务费减免的文件
  • 工程没钱也没有工资
  • 超市账目
  • 32位win7系统多大?
  • debian reference
  • ha1.dll丢失开不了机
  • linux系统中安装软件的批处理文件
  • win8如何进行系统还原
  • linux播放mp3命令
  • win7打开tftp服务器
  • win7旗舰版系统激活码
  • windows预览0x80072ee2
  • win8.1连不上wifi
  • GLSL Tessellation Shader的编程入门介绍
  • jquery删除一个标签
  • javascript开发app教程
  • unity导入设置在哪里
  • 梦见擦窗户框
  • 1、Android Studio创建android项目
  • 房产税税源编号
  • 宁波税务干部学校
  • 叶青和奚卫华
  • 税务津贴提高1100
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设