グラフィカルなクロスアテンション

 英語の参考リンク:

https://vaclavkosar.com/ml/cross-attention-in-transformer-architecture

交差注意と自己注意 

入力を除き、クロスアテンションの計算はセルフアテンションと同じです。クロスアテンションは、セルフ アテンションへの入力として単一のエンベディング シーケンスとは対照的に、同じ次元の 2 つの独立したエンベディング シーケンスを非対称に組み合わせます。シーケンスの 1 つはクエリ入力として使用され、もう 1 つはキーと値の入力として使用されます。SelfDoc での代替クロスアテンション。あるシーケンスのクエリと値、および別のシーケンスのキーを使用します。

フィードフォワード層は、ソフトマックスを使用し、入力シーケンスの 1 つが静的であることを除いて、クロスアテンションに関連します。 「Augmenting Self-attention with Persistent Memory」の論文では、フィードフォワード層の計算が自己注意と同じであることが示されています。

 

 

 

クロスアテンションの実装

Stable Diffusionを使用して画像を生成できる、 Diffusers ライブラリの CrossAttendance 実装を確認してくださいこの場合、画像から生成されたテキスト キューを使用して、クロス アテンションを使用して UNet レイヤー内のトランスフォーマーを調整しますコンストラクターは、異なる次元をどのように設定できるかを示しています。デバッガーをステップ実行すると、 2 つのモード間のシーケンスの長さが異なることもわかります


 

おすすめ

転載: blog.csdn.net/u010087338/article/details/128622886