ディープラーニングで知っておくべき活性化関数トップ10

ディープラーニングで知っておくべき活性化関数トップ10

みなさんこんにちは、ピーターです〜

最近、reddit で非常に鮮明な mó xìng の写真を見ました。このグラフは、ディープラーニングで一般的に使用される活性化関数を示しています。

ディープラーニングに欠かせない活性化関数を整理してみましょう!

活性化関数

活性化関数は、人工ニューラル ネットワークに追加され、ネットワークがデータ内の複雑なパターンを学習するのを助ける関数です。人間の脳のニューロンベースのモデルと同様に、活性化関数は最終的に次のニューロンに何を発火させるかを決定します。

人工ニューラル ネットワークでは、ノードの活性化関数によって、特定の入力または入力セットに対するノードの出力が定義されます。標準的なコンピュータ チップ回路は、入力に応じてオン (1) またはオフ (0) の出力を生成するデジタル回路のアクティブ化関数として考えることができます。したがって、活性化関数はニューラル ネットワークの出力を決定する数式です。この記事では、ディープラーニングでよく使用される 10 個の活性化関数と、それぞれの長所と短所について説明します。

まず、人工ニューロンの動作原理を理解しましょう。それはおおよそ次のようになります。

上記のプロセスを数学的に視覚化したものが以下の図に示されています。

シグモイド活性化関数

シグモイド関数のグラフは S 字曲線のように見えます。関数式は次のようになります。

シグモイド活性化関数を使用するのが適切なのはどのような場合ですか?

  • シグモイド関数の出力範囲は 0 ~ 1 です。出力値は 0 ~ 1 に制限されるため、各ニューロンの出力が正規化されます。
  • 予測された確率を出力として生成するモデル。確率の範囲は 0 から 1 なので、シグモイド関数は非常に適しています。
  • 出力値の「ジャンプ」を回避するための勾配平滑化。
  • この関数は微分可能です。これは、任意の 2 点間のシグモイド曲線の傾きがわかることを意味します。
  • 明確な予測、つまり 1 または 0 に非常に近い予測。

シグモイド活性化関数の欠点は何ですか?

  • 消失グラデーションを持つ傾向があります。
  • 関数の出力は 0 を中心としていないため、重みの更新の効率が低下します。
  • シグモイド関数は指数演算を実行しますが、これはコンピューター上では実行速度が遅くなります。

Tanh / 双曲正接活性化関数

tanh活性化関数のグラフもS字型で、表現は次のようになります。

tanh は双曲正接関数です。 tanh 関数とシグモイド関数の曲線は比較的似ています。しかし、シグモイド関数に比べていくつかの利点があります。

まず、入力が大きいか小さい場合、出力はほぼ滑らかになり、勾配は小さくなり、重みの更新には役立ちません。両者の違いは出力間隔であり、tanh の出力間隔は 1 であり、関数全体は 0 を中心としており、これはシグモイド関数よりも優れています。

tanh グラフでは、負の入力は強く負にマッピングされ、ゼロの入力はゼロに近い値にマッピングされます。

注: 一般的なバイナリ分類問題では、隠れ層に tanh 関数が使用され、出力層にシグモイド関数が使用されますが、これは固定ではなく、特定の問題に応じて調整する必要があります。

ReLU活性化関数

ReLU 活性化関数のイメージは上図の通りで、関数式は次のようになります。

ReLU 関数は、ディープラーニングでよく使われる活性化関数です。シグモイド関数や tanh 関数と比較すると、次のような利点があります。

  • 入力が正の場合、勾配飽和の問題は発生しません。
  • 計算速度が格段に速くなります。 ReLU関数には線形関係しかないため、シグモイドやtanhよりも計算が高速です。

もちろん、欠点もあります。

  • デッド ReLU 問題。入力が負の場合、ReLU は完全に失敗しますが、これは順方向パスでは問題になりません。敏感な領域もあれば、そうでない領域もあります。しかし、バックプロパゲーション中に負の数を入力すると、勾配は完全にゼロになります。シグモイド関数やtanh関数でも同じ問題があります。
  • ReLU 関数の出力は 0 または正の数であることがわかります。これは、ReLU 関数が 0 を中心とした関数ではないことを意味します。

リーキーReLU

これは、Dead ReLU 問題を解決するために特別に設計された活性化関数です。

ReLU と Leaky ReLU

Leaky ReLU が ReLU より優れているのはなぜですか?

写真

  • Leaky ReLU は、負の入力 (0.01x) に x の非常に小さな線形成分を与えることで、負の値に対するゼロ勾配問題を調整します。
  • Leak は ReLU 関数の範囲を拡張するのに役立ち、a の値は通常 0.01 程度です。
  • Leaky ReLU の関数範囲は (負の無限大から正の無限大) です。

注: 理論上は、Leaky ReLU には ReLU のすべての利点があり、Dead ReLU には問題はありませんが、実際には、Leaky ReLU が常に ReLU よりも優れていることは完全に証明されていません。

エル

ELU 対 Leaky ReLU 対 ReLU

ELU の導入により、ReLU の問題も解決されます。 ReLU と比較すると、ELU は負の値を持ち、アクティベーションの平均がゼロに近くなります。平均活性化がゼロに近いほど、勾配が自然勾配に近くなるため、学習が速くなります。

明らかに、ELU には ReLU のすべての利点があり、次の利点があります。

  • Dead ReLU 問題がない場合、出力の平均値は 0 に近くなり、0 を中心とします。
  • ELU は、バイアス シフトの影響を軽減し、正規勾配を単位自然勾配に近づけることで、平均をゼロに近づける学習を加速します。
  • ELU は小さな入力で負の値に飽和し、フォワードパスの分散と情報量を減らします。

1 つの小さな問題は、計算負荷が大きくなることです。 Leaky ReLU と同様に、理論的には ReLU よりも優れていますが、実際には ELU が常に ReLU よりも優れていることを示す確かな証拠は現在ありません。

PReLU (パラメトリックReLU)

PReLU も ReLU の改良版です。

PReLU の式を見てみましょう。パラメーター α は通常 0 から 1 の間の数値で、比較的小さいのが普通です。

  • a_i = 0の場合、fはReLUになる。
  • a_i>0の場合、fはリーキーReLUになる
  • a_iが学習可能なパラメータである場合、fはPReLUになる。

PReLU の利点は次のとおりです。

  • 負の領域では、PReLU の傾きが小さくなるため、Dead ReLU 問題も回避できます。
  • ELU と比較すると、PReLU は負の領域での線形演算です。傾きは小さいですが、0に近づきません。

ソフトマックス

Softmax は、クラス ラベルが 2 つ以上ある場合にクラス メンバーシップが必要となるマルチクラス分類問題に使用される活性化関数です。長さ K の任意の実数ベクトルを、Softmax はそれを長さ K の実数ベクトルに圧縮できます。このベクトルの値は範囲 (0, 1) にあり、ベクトル内の要素の合計は 1 になります。

Softmax は通常の max 関数とは異なります。max 関数は単純に最大値を出力しますが、Softmax では小さい値は確率も小さくなり、単純に破棄されないことが保証されます。これは、argmax 関数の確率的または「ソフト」バージョンと考えることができます。

Softmax 関数の分母は、元の出力値のすべての要素を組み合わせたもので、Softmax 関数によって取得されたさまざまな確率は相互に関連していることを意味します。

Softmax 活性化関数の主な欠点は次のとおりです。

  • ゼロでは微分不可能。
  • 負の入力の勾配はゼロです。つまり、この領域でのアクティベーションでは、バックプロパゲーション中に重みが更新されず、発火しないデッドニューロンが作成されます。

シュッシュ

関数式:

Swish の設計は、LSTM およびハイウェイ ネットワークでのゲーティング シグモイド関数の使用にヒントを得ています。同じゲーティング値を使用してゲーティング メカニズムを簡素化します。これをセルフ ゲーティングと呼びます。

セルフゲーティングの利点は、通常のゲーティングでは複数のスカラー入力が必要になるのに対し、セルフゲーティングでは単純なスカラー入力のみが必要になることです。これにより、Swish などの自己ゲート活性化関数は、隠れ容量やパラメータの数を変更することなく、単一のスカラーを入力として受け取る活性化関数 (ReLU など) を簡単に置き換えることができます。

Swish 活性化関数の主な利点は次のとおりです。

  • 「無制限性」は、低速トレーニング中に勾配が徐々に 0 に近づき、飽和を引き起こすのを防ぐのに役立ちます (同時に、制限付き活性化関数は強力な正規化を持つことができ、大きな負の入力問題も解決できるため、制限付きであることも有利です)。
  • 導関数は常に 0 より大きいです。
  • 滑らかさは最適化と一般化において重要な役割を果たします。

マックスアウト

Maxout 層では、活性化関数は入力の最大値であるため、2 つの Maxout ノードのみを持つ多層パーセプトロンは任意の凸関数に適合できます。

単一の Maxout ノードは、実数値関数に対する区分線形近似 (PWL) として解釈できます。この場合、関数グラフ上の任意の 2 点間の線分は、グラフの上部にあります (凸関数)。

Maxoutはd次元ベクトル(V)に対しても実装できます。

2つの凸関数h_1(x)とh_2(x)が2つのMaxoutノードで近似され、関数g(x)が連続PWL関数であると仮定します。

したがって、2 つの Maxout ノードで構成される Maxout レイヤーは、任意の連続関数を適切に近似できます。

ソフトプラス

ソフトプラス機能:

Softplus の導関数は次のとおりです。

ロジスティック/シグモイド関数とも呼ばれます。

Softplus 関数は ReLU 関数に似ていますが、比較的滑らかで、ReLU のような片側抑制を備えています。広い範囲(0、+ inf)を受け入れます。

<<:  タオバオライブストリーミングにおける機械学習に基づく帯域幅推定の探求と実践

>>:  機械学習に基づく自動ネットワークトラフィック分析

ブログ    
ブログ    
ブログ    
ブログ    

推薦する

AI にはどのような IT インフラストラクチャが必要ですか?

長年にわたり、AI テクノロジーの発展と変化に伴い、さまざまな業界や IT 意思決定者がこの分野に多...

真実に近いですか? LK-99型超伝導はCu_2S構造相転移によって引き起こされる可能性が高く、中国科学院物理研究所の論文もここにあります。

昨日、北京大学量子材料センター(ICQM)の郭開珍、賈爽らがarXivに提出した論文には、同チームが...

我々は最初のAI戦争を目撃したかもしれない

[[409544]] 2021年5月初旬、イスラエルに住むパレスチナ人とイスラエル警察の間で激しい衝...

...

インターフェース開発にアルゴリズムは必要ないなんて誰が言ったのでしょうか?

[[146153]]アルゴリズムとは何ですか?簡単に言えば、問題を解決するための手順がアルゴリズム...

第2世代GANネットワークの台頭? DALL·E Miniのグラフィックが恐ろしく、外国人も大興奮!

現在、GoogleやOpenAIなどの大手企業が開発したテキストから画像へのモデルは、興味深いニュー...

百度のロビン・リー氏は、今後10年間は​​人工知能の革新の時代になると述べた。

【CNMOニュース】最近、百度の創業者で会長兼CEOのロビン・リー氏はインド工科大学マドラス校が開...

...

人工知能は仕事をなくしてしまうのでしょうか?マスク氏の提案を聞いてみましょう。

人工知能が広く活用されるようになり、将来の雇用環境に対する不安も広がっています。 2019年に調査会...

...

...

Qi Lu: 人工知能の時代では、チップと基盤となるソフトウェアは基本的に作り直す必要がある

2019年5月18日、YC Chinaが開催したYC China起業家会議において、YC China...

...

2050年に「電子的不死」は達成されるのか?計画が鍵

海外メディアの報道によると、有名な未来学者イアン・ピアソン博士は最近、今後数十年以内に、人間は思考と...