G検定(JDLA) 練習問題 6:Transformer/Self-Attention
自然言語処理におけるTransformerのSelf-Attention機構について、正しいものはどれか。
- 入力系列内の各トークンが、他の全トークンとの関連度(重み)を計算し、その重み付き和として文脈情報を取り込む仕組みである
- Self-Attentionは畳み込み演算のみを用いて系列内の局所的な特徴を抽出する仕組みである
- Self-Attentionは必ずRNNの隠れ状態を再帰的に更新することで系列全体の情報を統合する
- Self-Attentionでは系列の長さに関わらず常に固定サイズの畳み込みカーネルを用いる
- Self-Attentionは学習時にのみ使用され、推論時には単純な平均プーリングに置き換えられる
Qraftユーザーの成績:難易度 Cランク(レーティング1163)・正答率 63%(10/16回正解)
レーティングは解いた人の実力と正誤から算出する難しさ(初期値1200)。ランクはその全問題中の順位(S+が最難関、F-が最易)
正解と解説を見る
正解は「入力系列内の各トークンが、他の全トークンとの関連度(重み)を計算し、その重み付き和として文脈情報を取り込む仕組みである」です。
【正解の理由】
Self-Attention(自己注意機構)は、Query・Key・Valueという3種類のベクトルを使い、系列内の各トークン(=文章を分割した単語や記号などの単位)が他の全トークンとの関連度(注意重み)を計算し、その重みに応じて他のトークンの情報を集約(重み付き和)することで文脈情報を取り込む仕組みです。これにより、離れた位置にあるトークン同士の関係(長距離依存関係)も並列的に扱うことができます。
【不正解の理由】
• 「Self-Attentionは畳み込み演算のみを用いて系列内の局所的な特徴を抽出する仕組みである」という説明は誤りです。畳み込み演算で局所的な特徴を抽出するのはCNN(畳み込みニューラルネットワーク)の特徴であり、Self-Attentionとは異なる仕組みです。
• 「Self-Attentionは必ずRNNの隠れ状態を再帰的に更新することで系列全体の情報を統合する」という説明は誤りです。RNNのように状態を1つずつ再帰的に更新していく構造は、Transformerが克服しようとした仕組みであり、Self-Attentionはこの再帰構造を持ちません。
• 「Self-Attentionでは系列の長さに関わらず常に固定サイズの畳み込みカーネルを用いる」という説明は誤りです。畳み込みカーネルを使う発想自体がCNN的なものであり、Self-Attentionの仕組みとは異なります。
• 「Self-Attentionは学習時にのみ使用され、推論時には単純な平均プーリングに置き換えられる」という説明は誤りです。Self-Attentionは学習時・推論時ともに同じ注意機構がそのまま使われます。