YOLO Vision Shenzhen
深セン
今すぐ参加
用語集

自己注意機構(Self-Attention)

ディープラーニングにおける自己注意の基礎を探求しましょう。クエリ、キー、バリューベクトルがTransformerとUltralytics YOLO26をどのように強化し、優れたAIを実現するかを学びます。

自己注意機構は、ディープラーニングにおける基礎的なメカニズムであり、モデルが入力シーケンス内の異なる要素間の相対的な重要度を評価することを可能にします。データを逐次的に処理したり、局所的な近傍のみに焦点を当てたりする従来のアーキテクチャとは異なり、自己注意機構はニューラルネットワークが文脈全体を同時に検討することを可能にします。この機能により、システムは文中の単語や画像内の異なる領域など、データの離れた部分間の複雑な関係を特定するのに役立ちます。これは、生成AIと現代の知覚システムにおいて大きな進歩を推進してきたTransformerアーキテクチャの核となる構成要素です。

Self-Attentionの仕組み

このメカニズムは、各入力特徴に「アテンションスコア」と呼ばれる重みを割り当てることで、認知的な集中を模倣します。これらのスコアを計算するために、モデルは入力データ(通常は埋め込みとして表現される)を3つの異なるベクトル、すなわちQueryKeyValueに変換します。

  • クエリ (Q): シーケンスの残りの部分から関連するコンテキストを求める現在の項目を表します。
  • Key (K): クエリが照合されるシーケンス内のすべての項目に対するラベルまたは識別子として機能します。
  • 値 (V): 集約されるアイテムの実際の情報コンテンツを含みます。

モデルは、ある要素のクエリを他のすべての要素のキーと比較して、互換性を判断します。これらの互換性スコアは、softmax関数を使用して正規化され、確率のような重みが作成されます。これらの重みは値に適用され、コンテキスト豊かな表現が生成されます。このプロセスにより、大規模言語モデル(LLM)とビジョンシステムは、ノイズを除去しながら重要な情報を優先できるようになります。

実際のアプリケーション

自己注意の汎用性により、人工知能 (AI)の様々な分野で広く採用されるようになりました。

  • 自然言語処理(NLP): 機械翻訳のようなタスクにおいて、自己注意機構は代名詞をその指示対象にリンクすることで曖昧さを解消します。例えば、「その動物は疲れすぎていたので、通りを渡らなかった」という文では、モデルは自己注意機構を使用して、「it」を「street」ではなく「animal」と強く関連付けます。この文脈認識がGoogle Translateのようなツールを支えています。
  • グローバル画像コンテキスト: コンピュータービジョン(CV)では、Vision Transformer(ViT)のようなアーキテクチャが画像をパッチに分割し、自己注意機構を適用してシーンをグローバルに理解します。これは、オブジェクトの識別がその周囲の理解に依存する複雑な環境でのobject detectionにとって不可欠です。

関連用語の区別

類似の概念とともに議論されることが多いですが、これらの用語には明確な技術的定義があります。

  • アテンションメカニズム: モデルが特定のデータ部分に焦点を当てることを可能にする技術の広範なカテゴリです。これには、モデルが1つのシーケンス(デコーダ出力など)を使用して別のシーケンス(エンコーダ入力など)をクエリするクロスアテンションが含まれます。
  • 自己注意:クエリ、キー、値のすべてが同一の入力シーケンスに由来する特定の注意方式。単一データセット内の内部依存関係を学習するよう設計されている。
  • Flash Attention: スタンフォード大学の研究者によって開発された最適化アルゴリズムで、数学的出力は変更せずに、GPU上での自己Attentionの計算を大幅に高速化し、メモリ効率を向上させます。

コード例

Python 、以下の使用方法を示しています。 RTDETRトランスフォーマーベースの物体検出器が 含まれている ultralytics パッケージ。標準的な畳み込みネットワークとは異なり、このモデルは視覚的特徴を処理するために自己注意機構に大きく依存します。

from ultralytics import RTDETR

# Load the RT-DETR model which utilizes self-attention for detection
model = RTDETR("rtdetr-l.pt")

# Perform inference on an image to detect objects with global context
# Self-attention helps the model understand relationships between distant objects
results = model("https://ultralytics.com/images/bus.jpg")

# Print the number of objects detected
print(f"Detected {len(results[0].boxes)} objects using Transformer attention.")

進化と将来への影響

自己注意機構は、以前のリカレントニューラルネットワーク (RNN)を妨げていた勾配消失問題を効果的に解決し、大規模な基盤モデルの学習を可能にしました。その高い有効性にもかかわらず、標準的な自己注意機構の計算コストはシーケンス長に対して二次関数的に増加します。この問題に対処するため、現在の研究では効率的な線形注意機構に焦点が当てられています。

Ultralyticsは、これらの進歩をYOLO26のような最先端モデルに統合しています。これは、CNNの速度とアテンションの文脈的パワーを組み合わせることで、優れたリアルタイム推論を実現します。これらの最適化されたモデルは、Ultralytics Platformを介して簡単にトレーニングおよびデプロイでき、次世代のインテリジェントアプリケーションを構築する開発者のワークフローを効率化します。

共にAIの未来を築きましょう!

未来の機械学習で、新たな一歩を踏み出しましょう。