ディープラーニングで知っておくべき活性化関数トップ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)を受け入れます。

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

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

ブログ    
ブログ    

推薦する

最高裁判所も顔認識の乱用に対して行動を起こした。

生体認証技術である顔認証は、非接触、非強制、同時性などの特徴から、ますます広く利用され、人々の生活の...

Stability AI、GPUなしでローカルで実行できるStable Code 3Bモデルをリリース

文芸グラフィックの分野で非常に人気となっている Stability AI は、本日、2024 年向け...

顔認識の速度に影響を与える要因は何ですか?

実際のアプリケーションでは、顔認識は認識精度に対する要求が高いだけでなく、高い効率も求められます。特...

がん治療のブレークスルー:AIGCの医薬品開発における役割

AIGC には、がんの治療に役立つ可能性など、驚くべき用途を含め、多くの潜在的な用途があります。 M...

...

わずか6ステップで機械学習アルゴリズムをゼロから実装

機械学習アルゴリズムをゼロから作成することで、多くの経験が得られます。ようやく読み終えたとき、嬉しい...

タオバオ:電子商取引環境における強化学習のいくつかのアプリケーションと研究に関する30,000語の詳細な分析

背景検索技術が発展するにつれ、検索シナリオにおける教師あり学習アルゴリズムの限界が徐々に認識されるよ...

これを読めば分かるでしょう。これらは人工知能によって排除されつつある主要な職業です。

AIインテリジェンスは近年急速に発展しており、技術の進歩をもたらす一方で、一部の業界にも影響を与え...

...

...

Appleはすでに社内でAppleGPTを使用していると報じられている

7月24日、Appleは社内で従業員の業務を支援するためにチャットボットを使用しており、将来的には顧...

ソフトバンクの孫正義社長:AIの知能は10年以内に人間を超えると予想

ロイター通信は10月4日、ソフトバンクグループの創業者兼CEOの孫正義氏が本日、汎用人工知能(AGI...

AIはインフルエンサーマーケティングにどのような影響を与えているのでしょうか?

2017年10月、ケンブリッジ・アナリティカのスキャンダルが発覚した直後、FacebookはIns...

AIは万能か? AI がまだ直面している課題は何ですか?

[はじめに] 人工知能(特にコンピュータビジョンの分野)に関しては、誰もがこの分野における継続的な...

百度AIシティが上海と契約を締結、インテリジェントイノベーションで上海に新たな伝説を刻む

11月27日、百度は上海市政府と戦略的協力枠組み協定を締結した。上海市党委員会書記の李強氏と市党委員...