打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
初始化方法Initialization

初始化方法

初始化方法定义了对Keras层设置初始化权重的方法

不同的层可能使用不同的关键字来传递初始化方法,一般来说指定初始化方法的关键字是init,例如:

model.add(Dense(64, init='uniform'))

预定义初始化方法

  • uniform

  • lecun_uniform: 即有输入节点数之平方根放缩后的均匀分布初始化(LeCun 98).

  • normal

  • identity:仅用于权值矩阵为方阵的2D层(shape[0]=shape[1]

  • orthogonal:仅用于权值矩阵为方阵的2D层(shape[0]=shape[1]),参考Saxe et al.

  • zero

  • glorot_normal:由扇入扇出放缩后的高斯初始化(Glorot 2010

  • glorot_uniform

  • he_normal:由扇入放缩后的高斯初始化(He et al.,2014

  • he_uniform

指定初始化方法传入的可以是一个字符串(必须与上面某种预定义方法匹配),也可以是一个可调用的对象.如果传入可调用的对象,则该对象必须包含两个参数:shape(待初始化的变量的shape)和name(该变量的名字),该可调用对象必须返回一个(Keras)变量,例如K.variable()返回的就是这种变量,下面是例子:

from keras import backend as Kimport numpy as npdef my_init(shape, name=None): value = np.random.random(shape) return K.variable(value, name=name)model.add(Dense(64, init=my_init))

你也可以按这种方法使用keras.initializations中的函数:

from keras import initializationsdef my_init(shape, name=None): return initializations.normal(shape, scale=0.01, name=name)model.add(Dense(64, init=my_init))

【Tips】稍后(一两周吧……)我们希望将各个初始化方法的特点总结一下,请继续关注

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
基于matplotlib和keras的神经网络结果可视化
轻量级深度学习框架Keras简介
如何用 Keras 搭建深度学习模型
什么是CNN
DL框架之Keras:深度学习框架Keras框架的简介、安装(Python库)、相关概念、Keras模型使用、使用方法之详细攻略
使用自动编码器进行图像去噪 - 深度学习项目的初学者指南
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服