位置エンコーディングとは
Positional Encoding / 位置埋め込み
語順を区別できない自己注意機構へ、トークンの位置情報を与える仕組み
ひとことで言うと
Transformerは単語の順番をそのままでは区別できないため、「この単語は何番目か」という情報を別途埋め込む仕組み。
概要
位置エンコーディングとは、系列内のトークンの位置情報をモデルへ与える仕組みを指す。 Transformerの自己注意はトークンの順序を区別しないため、位置情報を別途注入しなければ語順を扱えない。 元のTransformerでは周期の異なる正弦波によるパターンを埋め込みへ加算する方式が使われ、その後、学習可能な位置埋め込み・相対位置エンコーディング・回転行列を使うRoPEなど多様な方式が提案された。 位置エンコーディングの設計は、学習時より長い系列への外挿性能、すなわちロングコンテキスト対応に直結する要素として重要視されている。
歴史
2017年のTransformerの論文「Attention Is All You Need」で正弦波による方式が導入された。