同じ単語でも、並びが変われば意味は逆——そしてアテンションは気づかない。 前回、アテンションが読んでいたのは単語の袋——シャッフルしても計算は同じ答えを返した。でも「dog bites man(犬が人を噛む)」と「man bites dog(人が犬を噛む)」は別の話だ。並びこそが意味。だからモデルが何かを見るより先に、ひとつだけ静かにやっておく。すべての単語に自分がどこにいるかの感覚を渡すのだ。
1, 2, 3…と番号を振ればいい? だめだ、数が際限なく膨らむ。 各単語に生の位置——1, 2, 3, …——を貼ると、数はどこまでも上がり続ける。5,000語目では、そのタグが単語本来の意味を覆い隠し、かき消してしまう。さらに悪いことに、モデルが一度も訓練で見ていない位置は、まったくの他人だ。一度もリセットされない集計と同じ。印が積み上がり続け、やがてそれしか見えなくなる。必要なのは、小さく収まり、見覚えのあるままでいてくれる場所の感覚だ。
解決策——いつまでも揺れ続けるのに、決して暴走しない波。 PE(pos, 2i)=sin (pos10000 2i/d)PE(pos, 2i+1)=cos (pos10000 2i/d)\begin{aligned} \mathrm{PE}_{(pos,\,2i)} &= \sin\!\left(\dfrac{pos}{10000^{\,2i/d}}\right) \\[2pt] \mathrm{PE}_{(pos,\,2i+1)} &= \cos\!\left(\dfrac{pos}{10000^{\,2i/d}}\right) \end{aligned} 暴走する数を波に取り替える。サイン(正弦)は−1から+1のあいだを永遠に上下するが、つねにそのきれいな帯の中にある——高さを読めば、どこまで来たかがわかり、どの数も爆発しない。下の式で、posは単語の位置、iはどの波かを選ぶ。どの位置も、サインとコサインの読み取りの束になる。振り子と同じ。何度も揺れ続けるのに、決して弧から外れない——揺れの位相が、その瞬間を教えてくれる。
波が一つでは曖昧。束ねれば、それは指紋になる。 遅い波が一つだけでは、3番目と300番目の位置を区別できない——どちらもほぼ同じ高さに来てしまう。だからたくさんの波を同時に使う。速いものも、遅いものも。速い波は細かい位置を、遅い波は全体像を押さえ、合わさってどの位置とも重ならない一つのコードを綴る。かみ合った歯車と同じ。小さな歯車は勢いよく回り、大きな歯車はほとんど動かない——全部を読めば、機械が正確にどれだけ回ったかがわかる。
位置は横に取り付けるのではない——かき混ぜて溶かし込む。 xpos=Ewpos+PEpos\mathbf{x}_{pos} = E_{w_{pos}} + \mathrm{PE}_{pos} 位置のコードは単語の隣に並んで運ばれる、と思うだろう。違う——意味ベクトルにそのまま足し込む。同じ長さ、同じ枠、足し算だ。無茶に聞こえるが、モデルには両者を別々に読み分ける余地がある。スープに溶かした塩と同じ。小皿に分けて出したりしない——かき混ぜて溶かし込んでも、舌はだしと塩味をちゃんと見分ける。
静かなご褒美——一歩先へ進むのは、いつも同じ回転。 PEpos+k=Rk PEpos\mathrm{PE}_{pos+k} = R_k\,\mathrm{PE}_{pos} サインの中に隠れた贈り物がこれだ。k語先へ動くと、どの位置ベクトルも同じ決まった回転だけねじれる——その回転はkだけで決まり、どこから始めたかには一切よらない。だからモデルは「この二つは5つ離れている」と直接感じ取れる。それぞれの居場所だけでなく、だ。らせん階段と同じ。一階分のぼりは、何階にいようと同じ四分の一回転。
それが位置エンコーディング——意味の中に折り込まれた、なめらかな住所。 全部を組み合わせよう。アテンションが見るのは順序のない袋。私たちは各単語に、波からできた有界でなめらかな多階層の住所を渡し、それを単語の中に足し込み、相対距離をおまけに手に入れる。一部のモデルは式を使わず、各位置のベクトルをただ学習する——仕事は同じで、数式の代わりにデータが教える。どちらにせよ、順序は失われるのをやめ、感じ取れるものになりはじめる。
🌱 単語に留めた場所は、時間を生きることと同じなの? 私たちはモデルに住所を与えた——でもそれは依然として、意味の上に足されたタグであり、見るたびに新しく読み直される。あなたは座標を持ち歩いたりしない。順序を、リズムとして、因果として、ひとつの瞬間が次へと引き込んでいく感覚として感じる。だとすれば、順序はそもそも貼りつけるラベルであるべきじゃないのかもしれない。単語がどこにいるかは、ある単語が振り向いて別の単語を見る、その行為そのものの中に宿るべきなのでは——前もって留めるのではなく、まなざしそのものの中で感じられるものとして?