マルチヘッド Attention と位置情報
複数の視点と語順の認識
「マルチヘッド Attention と位置情報」はCoddyKit上の無料NLP Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはNLP Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 NLP Academyコースには全4レッスンが含まれています。
1つのHeadでは限界がある
1つのattention headが一度に追跡できる関係は、1種類だけです。実際の言語では、多くのパターンを同時に捉える必要があります。🧠
多くのHead、多くの視点
Multi-head attentionは、複数のattention計算を並列に実行します。それぞれが固有の学習済み射影と、独自の注目対象を持ちます。
各Headが学習すること
あるheadは主語と動詞のつながりを追跡し、別のheadは代名詞を追跡するかもしれません。これらを組み合わせることで、文をはるかに豊かに捉えられます。
次元を分割する
モデルはベクトルのサイズを複数のheadに分割するため、各headはより小さな部分空間で処理します。計算量の合計はおおむね変わりません。
d_head = d_model // num_headsHeadを組み合わせる
各headが出力を生成したら、それらを連結し、さらに1つの線形層に通して、それぞれの視点を組み合わせます。
out = concat(head_1, head_2, ...) @ W_oAttentionは順序を無視する
Self-attentionは入力を集合として扱うため、それだけでは「dog bites man」と「man bites dog」を区別できません。つまり順序を認識できないのです。
位置情報を追加する
これを解決するために、各単語へpositional encodingを注入し、系列の中で各tokenがどこにあるかをモデルに知らせます。
正弦波によるEncoding
元のTransformerは、異なる周波数の固定された正弦波と余弦波を使い、各位置に固有で滑らかな特徴を与えます。
pe[pos, 2i] = sin(pos / 10000 ** (2*i/d))後ろに付けず、加算する
位置ベクトルは単語のembeddingの末尾に付け足すのではなく、embeddingに加算します。そのため各tokenは、意味と位置の両方を同時に持ちます。
x = token_embeddings + positional_encoding位置も学習する
現代の多くのモデルは、固定された波の代わりに学習済みの位置embeddingを使います。これらは他の要素と一緒に学習され、柔軟に対応できます。
両方が重要な理由
Multi-head attentionは多くの関係を捉え、位置encodingは順序を取り戻します。これらが組み合わさることで、Transformerは系列を本当に理解できるようになります。✨
クイックチェック
位置情報とheadについて確認しましょう。
まとめ
multi-head attentionが多くの関係を並列に捉え、位置encodingがモデルに順序の感覚を与える仕組みを学びました。🎯
AI チューターと学ぶ Python — 無料
ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。
- コース
- 30
- レッスン
- 120
よくある質問
「マルチヘッド Attention と位置情報」レッスンは無料ですか?
はい。「マルチヘッド Attention と位置情報」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、NLP Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 NLP Academyコースには全4レッスンが含まれています。
「マルチヘッド Attention と位置情報」で何を学びますか?
複数の視点と語順の認識 ブラウザで直接実行するハンズオンコードでNLP Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
NLP Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのNLP Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。
「マルチヘッド Attention と位置情報」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このNLP Academyレッスンでコードを書いて実行できますか?
はい。すべてのNLP Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- Attention の考え方
- Self-Attention を順を追って理解する
- マルチヘッド Attention と位置情報
- Transformer ブロックの内部