アテンション (機械学習)
アテンションは次の役割を果たすモジュールとして設計されている:
seq2seq: 入力ベクトル列を出力ベクトル列へ変換する
長距離依存の考慮: インデックス i {\displaystyle i} が離れた入出力を結びつける
任意長ベクトル列の変換: 推論ごとに異なる長さの入力列を処理する
高い並列処理能力: 学習・推論の高速化
例えば機械翻訳を考える。機械翻訳タスクでは単語の単純置換(日→英)では目的を達成できない。なぜなら日英で語順が異なるからである。すなわち入力単語ベクトル列を出力単語ベクトル列に変換する際、列を列へ変換する必要がある(seq2seq)。また列内の近い部分のみの参照では不十分なケースがある。例えば疑問文の日英翻訳において、文頭の "Do" ( i = 0 {\displaystyle i=0} ) を生成するには日本語原文の文末「か?」( i = L {\displaystyle i=L} ) を参照する必要がある。すなわち長距離依存性を考慮できる必要がある。