回答:
数学では、関数は、ドメインすべてのおよびに次のプロパティがある場合、関数は線形と見なされます: 。定義により、ReLUはです。したがって、ドメインをまたはから分割すると、関数は線形になります。ただし、であることが簡単にわかります。したがって、定義により、ReLUは線形ではありません。 x y A f (x )+ f (y )= f (x + y )m a x (0 、x )(− ∞ 、0 ] [ 0 、∞ )f (− 1 )+ f (1 )≠ f (0 )
それにもかかわらず、ReLUは線形に非常に近いため、これはしばしば人々を混乱させ、普遍的な近似としてどのように使用できるのか疑問に思います。私の経験では、それらについて考える最良の方法はリーマンの和のようなものです。多数の小さな長方形を使用して、連続関数を近似できます。ReLUアクティベーションは、多くの小さな長方形を作成できます。実際、実際には、ReLUはかなり複雑な形状を作成し、多くの複雑なドメインを近似できます。
また、別のポイントを明確にしたい気がします。前の回答で指摘したように、ニューロンはシグモイドで死ぬのではなく、消滅します。これは、シグモイド関数の導関数が最大で.25であるためです。したがって、非常に多くのレイヤーの後、これらの勾配を乗算することになり、1未満の非常に小さな数の積は非常に急速にゼロになる傾向があります。
したがって、多くのレイヤーでディープラーニングネットワークを構築している場合、シグモイド関数は基本的にかなり速く停滞し、多かれ少なかれ役に立たなくなります。
重要な点は、勾配自体ではなく勾配を乗算することで消失することです。
バックプロパゲーション中に死んだニューロンを回避するReLUの利点を理解しています。
これは完全に真実ではありません。ニューロンは死んでいません。シグモイドのような活性化を使用する場合、いくつかの反復後、勾配の値はほとんどのニューロンで飽和します。勾配の値は非常に小さくなり、学習のプロセスは非常に遅くなります。これは、シグモイドのような活性化関数にあった勾配の消失と爆発です。逆に、死にゆくReLUReLU
と呼ばれる非線形性を使用すると、死んだニューロンが発生する可能性があります。
出力が線形の場合、ReLUがアクティベーション関数として使用される理由を理解できません
間違いなく線形ではありません。簡単な定義として、線形関数は、その領域内の入力に対して同じ導関数を持つ関数です。
線形関数は経済学で一般的です。シンプルで数学的に扱いやすいため、魅力的です。多くの重要なアプリケーションがあります。線形関数は、グラフが直線である関数です。線形関数の形式は次のとおりです
。y = f(x)= a + bx
線形関数には、1つの独立変数と1つの従属変数があります。独立変数はxで、従属変数はyです。aは定数項またはy切片です。これは、x = 0の場合の従属変数の値です。
bは独立変数の係数です。勾配とも呼ばれ、従属変数の変化率を示します。
ReLU
は線形ではありません。簡単な答えは、ReLU
出力は直線ではなく、x軸で曲がることです。より興味深い点は、この非線形性の結果は何ですか。簡単に言えば、線形関数を使用すると、直線を使用してフィーチャプレーンを分析できます。ただし、ReLU
sの非線形性により、フィーチャ平面上に任意の形状の曲線を作成できます。
ReLU
期待値であるデメリットがあります。の出力に制限はなくRelu
、その期待値はゼロではありません。期待値がゼロに等しく、より深い層での学習がより迅速に行われるため、Tanh
より人気がありましsigmoid
た。ReLU
ありません。この利点はbatch normalization
解決し、この問題を。