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深入試驗看看

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM