ニューラルネットワークで重みを初期化する際の切り捨てられた正規分布の利点は何ですか?


13

フィードフォワードニューラルネットワークで接続の重みを初期化する場合、学習アルゴリズムが破れない対称性を避けるために、それらをランダムに初期化することが重要です。

さまざまな場所(TensorFlowのMNISTチュートリアルなど)で見た推奨事項は、標準偏差1を使用して切り捨てられた正規分布を使用することです。、ここでNは特定のニューロン層への入力の数です。1NN

標準偏差の式により、バックプロパゲーションされた勾配が急速に溶解または増幅されないことが保証されます。しかし、通常の正規分布ではなく、切り捨てられた正規分布を使用している理由がわかりません。まれな異常値の重みを避けるためですか?


この推奨事項および/または直接引用のソースを提供できますか?
ティム

+良い点、例へのリンクを追加しました。この推奨事項は、ニューラルネットワークのグッドプラクティスに関する論文でも見たと思います(ただし、見つかりません)。
MiniQuark

回答:


13

私はニューロンの飽和について考えています。シグモイドのようなアクティベーション機能があると考えてください。

ここに画像の説明を入力してください

重みvalの値が2以上または2以下の場合、ニューロンは学習しません。したがって、正規分布を切り捨てた場合、分散に基づいて(少なくとも初期化から)この問題は発生しません。だからこそ、一般的に切り捨てられた法線を使うほうが良いと思います。


はい、それは理にかなっています、ありがとう。1ではなく「値> = 2」を意味すると思います。
MiniQuark17年

はい、2以上の値になると仮定します
ギュンガーバサ

4

切り捨てられた正規分布を使用する利点は、使用されているrelu_logitsによる「デッドニューロン」の生成を防ぐことです

一般に、対称性の破れのために、ノイズを少し加えて重みを初期化し、0勾配を防ぐ必要があります。ReLUニューロンを使用しているため、「デッドニューロン」を回避するために、わずかに正の初期バイアスで初期化することをお勧めします。


Truncated_normalを使用することで死んだニューロンがどのように防止されるかはわかりません。「わずかに正の初期バイアス」が追加されることはありません。詳しく説明してもらえますか?
MiniQuark

1
バックプロパゲーションは、「ライブ」ニューロンのみを更新し、伝播にゼロ以外の寄与があるため
Jason
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.