Tensorflow七種初始化函數

一、tf.constant_initializer(value)
作用:將變量初始化爲給定的常量,初始化一切所提供的值。

二、tf.zeros_initializer()
作用:將變量設置爲全0;也可以簡寫爲tf.Zeros()

三、tf.ones_initializer()
作用:將變量設置爲全1;可簡寫爲tf.Ones()

四、tf.random_normal_initializer(mean,stddev)
作用:將變量初始化爲滿足正太分佈的隨機值,主要參數(正太分佈的均值和標準差),用所給的均值和標準差初始化均勻分佈。

五、tf.truncated_normal_initializer(mean,stddev,seed,dtype)
作用:將變量初始化爲滿足正太分佈的隨機值,但如果隨機出來的值偏離平均值超過2個標準差,那麼這個數將會被重新隨機。
mean:用於指定均值;
stddev用於指定標準差;
seed:用於指定隨機數種子;
dtype:用於指定隨機數的數據類型。通常只需要設定一個標準差stddev這一個參數就可以。

舉例:bert中初始化token_type_embeddings、embedding_table時,假設token_type_embeddings服從正態分佈

六、tf.random_uniform_initializer(a,b,seed,dtype)
作用:從a到b均勻初始化,將變量初始化爲滿足均勻分佈的隨機值,主要參數(最大值,最小值)。

七、tf.uniform_unit_scaling_initializer(factor,seed,dtypr)
作用:將變量初始化爲滿足均勻分佈但不影響輸出數量級的隨機值

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章