用語集

アクティベーション機能

ニューラルネットワークにおける活性化関数の役割、その種類、そしてAIや機械学習における実際の応用例についてご紹介します。

Ultralytics HUB で
を使ってYOLO モデルをシンプルにトレーニングする。

さらに詳しく

活性化関数はニューラルネットワーク(NN)の基本的な構成要素であり、これらのネットワークが複雑なパターンを学習し、高度な予測を行う上で重要な役割を果たしている。活性化関数は、生物学的なニューロンの発火の仕方にヒントを得て、入力の加重和を計算し、バイアスを加えることによって、ニューロンが活性化されるべきかどうかを決定する。活性化関数の主な目的は、ニューロンの出力に非線形性を導入することであり、これはディープラーニング(DL)モデルが単純な線形関係を超えた複雑なタスクに取り組むために不可欠である。非線形活性化関数がなければ、ディープ・ニューラル・ネットワークは単層の線形モデルと同じように振る舞い、その学習能力は著しく制限される。

非直線性が重要な理由

画像、テキスト、音声などの実世界のデータは、本質的に複雑で非線形である。線形変換のみで構成されたモデルでは、これらの複雑な関係を効果的に捉えることはできない。活性化関数は必要な非線形性を導入し、ニューラルネットワークが任意に複雑な関数を近似できるようにする。この能力は現代の人工知能(AI)の基礎であり、コンピュータ・ビジョン(CV)や自然言語処理(NLP)などの分野で画期的な進歩を可能にしている。学習の過程では、バックプロパゲーションや 勾配降下などの手法によってネットワークの重みを調整するが、これはこれらの関数によってもたらされる特性に依存している。

一般的な活性化機能の種類

様々な活性化関数が存在し、それぞれが異なるシナリオに適した明確な特性を持つ。一般的なものには以下のようなものがある:

正しいアクティベーション機能の選択

活性化関数の選択は、問題のタイプ(例:分類、回帰)、特定の層(隠れ層と出力層)、ネットワークアーキテクチャー、精度や 推論スピードのような望ましい性能特性のような要因に依存する。ReLUとその変種(Leaky ReLU、SiLU)は、その効率性と消失勾配を緩和する能力から、CNNの隠れ層によく使われる。シグモイド(Sigmoid)とタン(Tanh)はリカレント・ニューラル・ネットワーク(RNN)でよく使用され、ソフトマックス(Softmax)は多クラス分類出力の標準である。特定のモデルやデータセットに最適な活性化関数を見つけるには、実験やハイパーパラメータチューニングのようなテクニックが必要になることが多い。様々なモデルトレーニングのヒントを参考にしてください。

実世界での応用

活性化機能は、様々なAIアプリケーションにおいて重要である:

  • オブジェクトの検出次のようなモデルでは YOLO11のようなモデルでは、SiLUやReLUのような活性化関数がバックボーンの畳み込み層内で使用され、画像から特徴(エッジ、テクスチャ、形状など)を抽出する。検出ヘッドでは、活性化関数がクラスの確率を予測し、検出された物体の周囲のバウンディングボックスの座標を洗練するのに役立つ。この技術は、歩行者や他の車を識別するための自律走行車や、監視のためのセキュリティシステムなどの分野で不可欠である。
  • 音声認識話し言葉をテキストに変換するシステム(RNNやTransformerを使用することが多い)では、TanhやGELUのような活性化関数がネットワーク層内で使用される。これらの関数は、音声信号の時間的依存関係やパターンをモデルが捉えるのを助け、正確な文字起こしを可能にする。これにより、バーチャルアシスタント(Siri、Alexaなど)やディクテーションソフトウェアなどのアプリケーションが強化されます。主要研究機関における音声認識の詳細については、こちらをご覧ください。

関連用語との比較

活性化関数をニューラルネットワークの他の概念と区別することは重要である:

  • 損失関数損失関数は、モデルの予測値と実際の目標値との差(「誤差」)を定量化する。損失関数の目的は、モデルがどの程度うまく機能しているかの指標を提供することで、学習プロセスをガイドすることである。活性化関数がフォワードパス中のニューロンの出力を決定するのに対して、損失関数はバックプロパゲーション中の重みの更新に使用される誤差を計算するために、パス終了時にモデル全体の出力を評価します。
  • 最適化アルゴリズムこれらのアルゴリズム(アダム・オプティマイザー確率的勾配降下法(SGD)など)は、計算された損失に基づいてモデルの重みを更新する方法を定義します。損失関数から得られる勾配を使用してパラメータを調整し、誤差を最小化します。活性化関数はこれらの勾配の計算に影響を与えますが、最適化手法そのものではありません。最適化アルゴリズムの概要をご覧ください。
  • 正規化のテクニック バッチ正規化のような手法は、レイヤーへの入力を正規化(平均がゼロ、分散が単位になるようにスケーリング)することで、学習プロセスを安定させ、高速化することを目的とする。正規化は、活性化関数が変換されたレイヤーの入力に適用される前に行われ、ネットワーク全体で一貫したデータ分布を維持するのに役立ちます。詳しくはバッチ正規化の論文をお読みください。

活性化関数を理解することは、様々な領域で効果的な機械学習(ML)モデルを設計、トレーニング、最適化するために不可欠です。適切な選択は、モデルのパフォーマンスとトレーニングダイナミクスに大きな影響を与えます。AIモデルの構築、トレーニング、デプロイを容易にするUltralytics HUBのようなツールを使用して、さまざまなモデルとそのコンポーネントを調べることができます。

すべて読む