AIとMLにおけるLeaky ReLU活性化関数のパワーをご覧ください。ReLUの消失問題を解決し、CV、NLP、GANなどのモデル性能を向上させます。
Leaky Rectified Linear Unit(リーキー・リニア・ユニット、リーキーReLU)は、主に次のような特殊な活性化関数である。 活性化関数である。 ニューラルネットワーク(NN)で使用される特殊な活性化関数である。 モデルで使用される特殊な活性化関数である。標準的な 整流線形ユニット(ReLU)の強化版として機能する。 瀕死のReLU」問題(ニューロンが不活性になり、完全に学習しなくなるシナリオ)を軽減するために特別に設計された。 を軽減するために特別に設計された。リーキーReLUは、負の入力に対して小さな、ゼロでない勾配を許容することで、次のような場合にネットワークに情報が流れ続けることを保証する。 バックプロパゲーションの間 バックプロパゲーションの間、ネットワークに情報が流れ続け、よりロバストで安定した モデル学習につながる。この小さな修正により、Leaky ReLUは 多くの最新の ディープラーニング(DL)アーキテクチャ、特に 特に深いネットワークや複雑なネットワークを学習する際に重要な要素となる。
Leaky ReLUの主な革新性は、負の値の取り扱いにある。従来の 従来のReLU関数では、負の入力 はゼロを出力する。不適切なウェイトの初期化や ウェイトの初期化や積極的なデータシフトによって、ニューロンが常に負の入力を受 けた場合、そのニューロンは事実上「死ぬ」。 勾配がゼロになるため、事実上「死ぬ」。勾配がゼロになるということは 最適化アルゴリズムが 勾配がゼロになるということは、最適化アルゴリズムがそのニューロンの重みを更新できないことを意味し、残りの学習プロセスでは役に立たないことになる。
Leaky ReLUは、負の入力に対する単純な線形方程式を実装することでこれを解決する: f(x) = alpha * x,
ここで alpha は小さな定数(通常0.01)である。この "リーク "によって、ユニッ
が作動していないときでも、小さな、ゼロでない勾配が通過する。この継続的な勾配の流れは、勾配がゼロになるのを防ぎます。
消失グラデーション 局所的なスケールでの問題
これにより、モデルは効果的に重みを回復し、調整することができる。この挙動は
で正式に分析されている。
畳み込みネットワークにおける整流活性化の経験的評価標準的な整流方法よりも優れていることを強調した。
Leaky ReLUは勾配の流れを維持する能力があるため、トレーニングの安定性が最も重要なタスクで広く採用されている。 最も重要である。
Leaky ReLUの実装は、次のような一般的なフレームワークで簡単にできる。
PyTorch そして
TensorFlow.以下の例では
PyTorch nn モジュールである。
import torch
import torch.nn as nn
# Define a neural network layer with Leaky ReLU
# negative_slope=0.01 sets the leak factor for negative inputs
model = nn.Sequential(
nn.Linear(in_features=10, out_features=5),
nn.LeakyReLU(negative_slope=0.01),
nn.Linear(in_features=5, out_features=2),
)
# Create a sample input tensor
input_data = torch.randn(1, 10)
# Perform a forward pass (inference)
output = model(input_data)
print(f"Model output: {output}")
Leaky ReLUを他の活性化関数と区別することは、あなたのアーキテクチャに適したコンポーネントを選択するために重要です。 アーキテクチャに適したコンポーネントを選択するために重要です。
適切な活性化関数を選択するには、多くの場合 ハイパーパラメータのチューニングと 標準的なコンピュータ・ビジョンのデータセットで性能を検証する必要がある。リークReLU は、標準的なReLUが失敗した場合や、ディープネットワークでトレーニングの不安定性が観察された場合に、優れたデフォルトの選択肢となる。