自己注意機構は、入力データ内の各要素が他のどの要素とどの程度強い関連性を持つかを計算し、文脈に応じた表現を獲得する技術です。主に自然言語処理分野で用いられ、文章中の離れた単語同士の関係性を効率的に捉えられます。トランスフォーマーと呼ばれる深層学習モデルの核となっており、現代の大規模言語モデルの発展を支える重要技術です。
自己注意機構とは
自己注意機構とは、入力データ全体の要素同士が互いにどのように関連しているかを計算し、関連度の高い情報を強調して処理する仕組みです。
詳しく解説
自己注意機構では、入力された各単語やトークンに対してクエリ、キー、バリューの3つのベクトルを生成します。クエリとキーの内積を計算することで各要素間の関連度スコアを求め、それをバリューに掛け合わせることで、文脈を考慮した新たな特徴量を抽出します。従来の再帰型ニューラルネットワークとは異なり、シーケンス全体の関連性を一度に計算できるため、GPUを活用した効率的な並列処理が可能です。この特性により、長文の文脈理解能力が飛躍的に向上し、トランスフォーマーの根幹技術として現代のAI開発において極めて重要な役割を果たしています。
具体例・使われ方
例えば「彼は犬を連れて散歩に行き、それを公園で走らせた」という文において、自己注意機構は「それ」が「犬」を指しているという関係性を正確に把握できます。また、機械翻訳において文章全体の文脈に合わせた適切な訳語の選択を行う際や、画像認識において画像内の離れた領域同士の関連性を考慮する視覚トランスフォーマーなどでも利用されています。
似た用語との違い
従来の再帰型ニューラルネットワークは、情報を時系列順に1つずつ処理するため、長文になると過去の情報を忘却しやすく並列処理が困難でした。これに対し、自己注意機構は全要素間の関係性を同時に計算するため、長距離の依存関係を効率よく学習できます。また、外部のデータと関連付ける通常のアテンション機構に対し、自己注意機構は同一入力データ内部の要素同士の関連性を計算する点に違いがあります。
注意点
自己注意機構は計算量が入力の長さの2乗に比例して増加するため、極めて長い文章や巨大なデータを処理する際に多大なメモリと計算リソースを消費します。また、単語の位置関係自体を直接保持しないため、位置エンコーディングなどの補助的な手法を併用しないと語順の違いを適切に識別できない点に注意が必要です。