zoukankan      html  css  js  c++  java
  • keras模块学习之-参数初始化与对象调用-笔记

        本笔记由博客园-圆柱模板 博主整理笔记发布,转载需注明,谢谢合作!

             参数初始化(Initializations)

         这个模块的作用是在添加layer时调用init进行这一层的权重初始化,有两种初始化方法,以下为样例:

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

      可以选择的初始化方法有: 
               uniform、lecun_uniform、normal、orthogonal、zero、glorot_normal、he_normal等

            对象调用

       该对象必须包含两个参数:shape(待初始化的变量的shape)和name(该变量的名字),该可调用对象必须返回一个(Keras)变量,例如K.variable()返回的就是这种变量

        如:

                     

    from keras import backend as K
    import numpy as np
    
    def my_init(shape, name=None):
        value = np.random.random(shape)
        return K.variable(value, name=name)
    
    model.add(Dense(64, init=my_init))
    
    或者
    
    from keras import initializations
    
    def my_init(shape, name=None):
        return initializations.normal(shape, scale=0.01, name=name)
    
    model.add(Dense(64, init=my_init))
    

      

         所以说可以通过库中的方法设定每一层的初始化权重,也可以自己初始化权重,自己设定的话可以精确到每个节点的权重,那么是否可以在这儿做文章优化特征呢?我觉得可以针对不同的task深入试验看看

      

  • 相关阅读:
    JVM
    Java反射和动态代理
    JMS(Java消息服务)
    Java多线程及并发
    zookeeper集群自动启动脚本
    zookeeper命令行客户端
    Zookeeper集群搭建步骤及相关知识点深入了解
    MySQL server PID file could not be found!
    Linux下jdk、Tomcat、MySQL的安装
    修改Linux的基本配置
  • 原文地址:https://www.cnblogs.com/68xi/p/8661185.html
Copyright © 2011-2022 走看看