2016-09-09 17 views
1

tf.contrib.layers.xavier_initializer()はアクティベーション関数をどのように知っていますか?xavier_initializer()はアクティベーションをどのように知っていますか?

初期化するための標準偏差は、使用される非直線性に依存します。右?どのようにtf.contrib.layers.xavier_initializer()は何が起こっているのか知っていますか?このWは、Xに何かをする

W = tf.get_variable("W", shape=[784, 256], 
      initializer=tf.contrib.layers.xavier_initializer()) 

と、結果は双曲線正接またはreluに渡されたかを持っている:

には、以下のケースを取ります。さて、イニシャライザはWの中にあります。テンソルの流れはどのように起動されますか?または、私が使用しようとしている活性化を知って、介入する必要がありますか?

tf.contrib.layers.xavier_initializerの引数を見て、そこにunifromまたは正規分布を選ぶことができます。しかし、それは解決しません、そうですか?

答えて

0

初期化する標準偏差は、使用される非直線性に依存します。右?

いいえ。ザビエルの初期化では、ネットワークで使用される非線形性について何も知る必要はありません。

実際、Xavierの初期化は、mean = 0およびvariance = 1/<number_of_inputs>のランダム分布から値を選択するウェイトの初期化に過ぎません。

変数を宣言するときは、shapeパラメータを渡します。形状パラメータの最初の次元は<number_of_inputs>です。

ReLU e PReLU専用に定義されたHeの初期化を探しているかもしれませんが、その場合でも変数の初期化ではどのような非線形性が続くかを知る必要はありません。

関連する問題