オムライスの備忘録

数学・統計学・機械学習・プログラミングに関することを記す

【深層学習】Attention #概念編

用語定義

使用する変数や用語を以下ページで定義しております.
【深層学習】Attention #まとめ編 - オムライスの備忘録

Attention とは

ざっくりと

入力側のどこに注目するかを表現する仕組み、あるいは注目した入力データに従って出力を行う仕組み

やっていることは、

複数のベクトル (行列) があったとき、どのベクトルを重要視するかも含めて学習させる仕組み.
(「深層学習による自然言語処理」より)

基本的な処理

  1. Query と Key をスコア関数に入力して重要度スコアを計算
  2. Softmax 関数で割合化・確率化し重要度確率を計算
  3. Value重要度確率で、重み付き平均の計算を実施し、Value から有益な情報(コンテキストベクトル)を取得

Attention の目的

Attentionは、QueryKey が似ているかどうかで、行列のどの要素(ベクトル)を読み込むかどうかを制御している. 画像データの位置関係 (空間的に近いデータ点同士の方が強い関係性を持つ)や、時系列データの系列関係 (時系列的に近いデータ同士の方が強い関連性を持つ)を 度外視して(空間的、時系列的に遠い情報でも重要かどうかを見ているため)、重要な情報同士をまとめることができる.
xtech.nikkei.com

参考

動画

  • Deep Learning入門:Attention(注意)
    • Self Attention
    • 画像データへの Attention
    • 言語(系列)データへの Attention

www.youtube.com