Yolo 深圳
深セン
今すぐ参加
用語集

GELU(Gaussian Error Linear Unit)

GELU活性化関数がGPT-4のようなTransformerモデルをどのように強化し、勾配フロー、安定性、効率を高めるかをご覧ください。

ガウス誤差リニアユニット(GELU)は、広く採用されている活性化関数である。 活性化関数であり 現代の ニューラルネットワーク(NN)アーキテクチャー、特にトランスフォーマー トランスフォーマーを含むものである。従来の GELUは、入力にハードな閾値を課す従来の関数とは異なり、よりスムーズで非単調な遷移を提供する。このユニークな このユニークな特性により、GELUは入力をその大きさによって重み付けすることができ、決定論的非線形性と確率的正則化のギャップを効果的に埋めることができる。 非線形性と確率的正則化手法とのギャップを効果的に埋めている。のような主要なモデルで広く使われている。 GPTシリーズBERT などの主要なモデルで広く使用されていることから、実質的なデータセット内の複雑なパターンを学習するシステムを支援する能力があることがわかります。

GELUの仕組み

基本的なレベルでは、GELUはディープラーニング(DL)モデルを流れる情報のゲートキーパーの役割を果たす。 ディープラーニング(DL)モデルを流れる情報のゲートキーパーとなる。旧来の のような 整流線形ユニット(ReLU)のよう旧来の関数は、負の値をゼロに設定することで 一方、GELUはより微妙なアプローチをとる。入力値に を乗じる。 累積分布関数 を乗じる。

このプロセスは、入力が減少するにつれて活性化が確率的に情報を減少させることを意味するが、それは鋭角ではなく滑らかな曲線で行われる。 鋭角ではなく滑らかな曲線を描く。この滑らかさにより、バックプロパゲーション中の情報の流れが改善される。 バックプロパゲーションの間、情報の流れが改善される。 ディープネットワークの学習の妨げとなる勾配の消失問題を軽減するのに役立つ。 ディープ・ネットワークの学習を妨げる可能性のある勾配の消失問題を軽減するのに役立つ。ガウス分布の特性を取り入れることで、GELUは次のような曲率を導入している。 を導入することで、線形な代替モデルと比較して、複雑なデータ関係をより適切に捉えることができる。

GELUと他の活性化関数の比較

GELUがどこに当てはまるかを理解するには、AI用語集にある他の一般的な活性化関数と区別する必要がある。 AI用語集

  • GELU対ReLUReLU は計算効率が高く、負の入力をゼロにすることでスパース性を生み出す。しかし 「コーナー "は学習を停滞させる。GELUの滑らかな曲率はこれを回避し、多くの場合、複雑なタスクでより高い精度をもたらす。 複雑なタスクでより高い精度を得ることができる。
  • GELU対Leaky ReLU Leaky ReLUは、小さな一定の負の勾配を許容することによって、死んだニューロンを修正しようとする。 小さな一定の負の勾配。対照的に、GELUは非線形かつ非単調である。 つまり、入力の大きさに応じて傾きが変化し、より豊かな表現能力を提供する。
  • GELU vs SiLU(スウィッシュ) シグモイド・リニア・ユニット(SiLU)は、構造的にGELUとよく似ている。 構造的にGELUに非常に似ており、滑らかで非単調な特性を共有している。GELUが自然言語処理 言語処理(NLP)ではGELUが主流であるが、コンピュータ・ビジョン・アーキテクチャではSiLUが好まれることが多い。 Ultralytics YOLO11物体検出モデルなどでは、畳み込み層の効率がわずか 畳み込み層の効率が若干向上するためである。

実際のアプリケーション

GELUは、人工知能(AI)における最先端のアプリケーションに不可欠な存在である。 人工知能(AI)に不可欠です。

  • 大規模言語モデル(LLM) GELU特有の曲率は、モデルが言語的ニュアンスを理解するのに役立つ。例えば センチメント分析テキスト要約では、活性化関数 は、微妙な文脈信号がネットワーク層の奥深くに保存されることを保証し、最新のチャットボットに見られる首尾一貫したテキスト生成 生成することができます。
  • ヴィジョン・トランスフォーマー(ViT) テキストだけでなく、GELUは画像分類に自己注意メカニズムを適用するVision Transformersにも使われている。 画像分類に応用している。安定した 安定した勾配降下を促進することで、GELUはこれらのモデルが画像パッチを効果的に処理することを可能にする。 画像パッチを効果的に処理し、乱雑なシーンにある物体を高精度で識別する。

Python実装

GELUをカスタムモデルに統合するのは、以下のような最新のフレームワークを使えば簡単です。 PyTorchTensorFlow.次の例は PyTorch モデルコンポーネント内でGELUレイヤーをインスタンス化する方法を示します。

import torch
import torch.nn as nn

# Define a sample input tensor (batch_size=1, features=5)
input_data = torch.tensor([[-3.0, -1.0, 0.0, 1.0, 3.0]])

# Initialize the GELU activation function
gelu_layer = nn.GELU()

# Apply GELU to the input data
output = gelu_layer(input_data)

# Output demonstrates the smooth suppression of negative values
print(f"Input: {input_data}")
print(f"Output: {output}")

このスニペットは torch.nn.GELUに記載されています。 公式PyTorch GELU API入力データを で入力データを変換する。負の値がどのように抑制され、ゼロにハードクリップされていないかに注目してください。 ロバストな 機械学習 のモデルです。数学的根拠については 数学的背景については、オリジナルの研究論文"ガウス誤差リニアユニット(GELUs)は包括的な理論的背景を提供している。

Ultralytics コミュニティに参加する

AIの未来を共に切り開きましょう。グローバルなイノベーターと繋がり、協力し、成長を。

今すぐ参加