本文へ移動

いちえんこーでぃんぐ

位置エンコーディング

Transformerなどの並列処理モデルにおいて、データの順序情報を付与する技術です。モデルは入力位置を認識できないため、周期的な関数などで位置ベクトルを加算し、順序を伝えます。

詳しい説明

Transformerなどのニューラルネットワークにおいて、入力データの順序情報をモデルに伝えるための仕組みです。Transformerはデータを並列に処理するアーキテクチャですが、そのままでは入力がどのような順番で並んでいるかを認識できません。系列データを扱う際に、言葉の順序を意味ある形で反映させるために不可欠な技術です。

具体的には、入力される単語やデータの埋め込みベクトルに対して、その位置を示すベクトルを加算します。この位置ベクトルには、サイン関数やコサイン関数などの周期的な関数を用いて生成する方法や、学習によって獲得する方法が使われます。これにより、文脈における単語の順序関係が保持されます。

G検定では、Transformerがなぜ並列処理で順序を扱えるのかという文脈で重要です。RNNは順序通りに処理するため順序が維持されましたが、Transformerは並列化の代償として位置情報を明示的に与える必要があります。この仕組みが attention メカニズムと組み合わさることで、高度な自然言語処理が実現されています。

試験で問われること

G検定

  • Transformerにおいて、並列処理の特性と位置情報の欠落を補うために必要であることが問われます。
  • RNNとの違いとして、順序情報を明示的に付与する仕組みであることが重要です。
  • 周期的な関数などを用いて位置を符号化することが問われます。