Reluは定義により0の勾配を持っていますが、なぜ勾配の消失はx <0の問題ではないのですか?


10

定義により、Reluはmax(0,f(x))です。次に、その勾配は次のように定義されます 1 if x > 0 and 0 if x < 0

これは、x <0の場合、勾配が常に0(消失)であることを意味しませんか?では、なぜReluは勾配消失問題に悩まされていないのでしょうか。

回答:


5

あなたはほとんど正しいです!ReLUには勾配の消失に関する問題がありますが、片側だけなので、「死にかけているReLUの問題」と呼びます。詳細については、このスタックオーバーフロー応答を参照してください。ニューラルネットワークの「死にかけているReLU」問題とは何ですか。

それは小さな意味の違いです。多くの関数(tanhとロジスティック/シグモイド)は、標準の動作範囲外の場合、導関数がゼロに非常に近くなります。これは「消失勾配」の問題です。悪くなればなるほど、良いゾーンに戻るのが難しくなります。ReLU 、正の方向に遠くなればなるほど悪化することはないため、勾配の問題(その側)が消えることはありません。この非対称性は、それを別のものと呼ぶことを正当化するのに十分かもしれませんが、考え方は非常に似ています。


2
価値のある追加:消失する勾配の問題は、ネットワークの深さ全体の漸進的な変化に関するものであり、ニューロン伝達関数の特性に関するものではありません。
Neil Slater

1

消失とは、0に近づくが実際には0になることはないことを意味します。0の勾配を使用すると、計算が非常に簡単になります。0に近い勾配を使用すると、変化があり、非常に小さいため、学習と数値の問題が遅くなります。1と0は、この種の最適化問題で計算するのが最も簡単な2つの数値です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.