# 球体表面を利用した位置符号化

岡佑依 田中貴秋 平尾努 永田昌明
NTTコミュニケーション科学基礎研究所
yui.oka.vf@hco.ntt.co.jp

## 概要

系列変換モデルを使った文生成では，原文の構文構造を活用することで性能が向上することが報告さ れている. Transformer 内部で各単語の位置を表現す る位置符号化において, 単語の絶対位置と構造位置 (単語の依存構造木での深さ)を同時に符号化するこ との有効性が示されている。一方, 既存法では, 符号化された値の衝突が起きたり, 単語の順序が保存 されなくなるという問題がある. 本研究では，この 問題を解決するため, 単語の絶対位置と構造位置を 球体表面で表現する位置符号化を提案する。翻訳夕 スクでの実験を行った結果, 既存手法と比べ提案手法は BLEU 值の改善傾向が見られた. また, 文の長 さ, 依存構造木の深さ別での評価を行った結果, 構造位置が長文において有効であることがわかった.

## 1 はじめに

系列変換モデル Transformer [1] の登場によって文生成の性能は大きく向上した. しかし, 非常に流暢 な文を生成できるものの，原文にはない情報や原文 とは異なる内容の文をしばしば生成することがあ る. 固有表現のような簡単な語の誤りに関しては大規模な事前学習済み言語モデルを導入することで改善が期待できるが，原文と同じ単語を使いながら違 う意味を生成する場合には不十分である. こうした 問題を解決するため，原文の構文構造を活用する手法が提案されている $[2,3,4]$. その中でも, Wang ら [2] は Transformer 内部で単語の位置情報を取り扱う 位置符号化において，各単語の依存構造木中におけ る深さと文中の絶対位置 (文の先頭から何単語目か) とを加算する構造化位置符号化を提案した。このよ うに位置情報を扱う埋め込みで系列文以外の情報 を表現し単語分散表現に足し合わせる手法は,さま ざまなタスクで使われており $[5,6]$ ，効果的である。一方で，この符号化を用いると同じ値をとる単語が 複数でてきてしまう, または. 通常の絶対位置の順

図 1 提案手法の概要図

序が変わる可能性がある，絶対位置は生成性能に大 きく影響を与える [2]ことから，言語生成タスクに とって重要な性質であり，保持すべき情報である。

本稿では，Wang らの方法 [2] の問題を解決する ため，単語の絶対位置と依存構造上での深さを球体表面で表現する位置符号化を提案する. 図 1 に提案手法の直感的な例を示す. Transformer の位置符号化 は，単語の位置を円周上の赤い点として表現する. つまり，角 $\theta$ を用いて単語の位置を表す。一方，提案法では，単語を球体表面上の青い点として表現す る.つまり，単語の絶対位置は Tranformer の位置符号化と同様, 円周上の点として角 $\theta$ を用いて表し,依存構造木における深さを仰角 $\phi$ を用いて表す。こ のように $\theta$ と $\phi$ を用いて単語の位置を符号化する ことで值が重複することを回避する. 文生成タスク として機械翻訳を採用し，中英，英日，英独翻訳に おける評価実験を行った結果，通常の Transformer, Wang らの手法と比較して提案法は BLEU 值の改善傾向がみられた. また, 原文の構文の複雑さを文の 長さと構文木の深さで分類し, 評価した結果から， より複雑な文において提案法が有効であることが明 らかとなった.

## 2 関連研究

## 2.1 正弦波位置符号化

Transformer では，正弦波位置符号化 (Sinusoidal Positional Encoding, SPE) を用いて文中の単語の絶対位置を符号化し，その値を単語の分散表現に足し 合わせる. SPEでは，単語の先頭からの絶対位置を $p o s$, 埋め込み表現の次元数を $d$ としたとき, 単語分散表現の $i$ 番目の要素に足し合わせる値 $E_{\mathrm{SPE}}(p o s, i)$ は以下の式で定義される。

$
\begin{gathered}
E_{\mathrm{SPE}}(p o s, 2 i)=\sin \left(\frac{p o s}{\theta}\right) \\
E_{\mathrm{SPE}}(p o s, 2 i+1)=\cos \left(\frac{p o s}{\theta}\right)
\end{gathered}
$

このとき, $\theta=10000^{2 i / d}$ であり，偶数次元は正弦関数，奇数次元は余弦関数で定義される.

さらに，SPE 絶対位置のみだけでなく，文中の 単語間の相対的位置も表現している. 文中の位置 pos から任意の距離 $k$ 離れた位置 $p o s+k$ における $\mathrm{SPE}$ の値 $E_{\mathrm{SPE}}(p o s+k, 2 i)$ は $E_{\mathrm{SPE}}($ pos, $2 i)$ と回転角 が $-k / \theta$ の回転行列の線形関数として以下の式で表現できる.

$
\left[\begin{array}{cc}
\cos \left(\frac{k}{\theta}\right) & \sin \left(\frac{k}{\theta}\right) \\
-\sin \left(\frac{k}{\theta}\right) & \cos \left(\frac{k}{\theta}\right)
\end{array}\right]\left[\begin{array}{c}
\sin \left(\frac{p o s}{\theta}\right) \\
\cos \left(\frac{p o s}{\theta}\right)
\end{array}\right]=\left[\begin{array}{c}
\sin \left(\frac{p o s+k}{\theta}\right) \\
\cos \left(\frac{p o s+k}{\theta}\right)
\end{array}\right]
$

よって, SPE は $k$ と pos の位置関係を, 回転角が $-k / \theta$ の回転行列を使ってアフィン変換によって表現していると捉えることができる [6]. このように 単語間の相対位置を符号化することは機械翻訳の 性能向上に寄与することが報告されており [7], 言語生成タスクにとって重要な性質の一つと考えら れる。

## 2.2 構造的位置符号化

前節で説明した Transformer の位置符号化 SPE は 文を単語列として扱うための機構であり，そのまま では構文木から得られる情報を符号化することが できない。そこで，Wang ら [2] は，位置符号化内部 で依存構造木における単語の深さを符号化するた めの構造的位置符号化 (Structural Positional Encoding, StrcPE) を提案した. depを依存構造木の根となる単語の深さを 0 とした場合の各単語の依存木におけ る深さとして，通常の絶対位置を符号化したものと $d e p$ を符号化したものを加算することで構文を考慮 した符号化を行う (式 (4)).
The boy wants for the girl to believe him.

図 2 通常の絶対位置表現 pos と構造的位置表現 depthに よる表現例

$
E_{\mathrm{StrcPE}}(p o s, d e p, i)=E_{\mathrm{SPE}}(p o s, i)+E_{\mathrm{SPE}}(d e p, i)
$

しかし、単語の絶対位置の符号化した值と依存木に おける深さを符号化した値を加算するだけでは, 図 2 にあるように The と boy の値が同一になる，つま り異なる位置に存在する単語の StrcPE 値が重複す る. さらにこの符号化は, 全次元で絶対位置と構造的位置を足し合わせているため, 本来の SPE が持 つ絶対位置表現や相対性 (式 (3)) が保存されないと いう問題点もある.

## 3 提案手法

単語の符号化された値が重複しない，かつ SPE の 持つ相対性を限定的に保持したまま Transformer 内 で原文の構文構造を考慮した符号化を実現するた め，球体表面を利用した位置符号化 (Hyperspherical Positional Encoding, HPE) を提案する. 正弦波位置符号化では単語を $2 \pi / 10000^{2 i / d}$ の等間隔で円周上に配置していると捉えることができる。構造的位置符号化も同様，同じ円周上で絶対位置と依存構造木にお ける深さという 2 つの情報をあわせて表現するが，前節で説明したとおり，符号化された值が重複する ことがあり得る。提案手法は，これの重複を防ぐた め球体表面で依存構造木に位置を表現する。つま り，単語の絶対位置を円周上の点として表すための パラメタ $\theta$ に対して単語の依存構造木中での深さ を球面上の点として表すためのパラメタ $\phi$ を導入 する。

球体表面を用いて単語の絶対位置と依存構造木に おける深さを表現するため，三次元極座標を元に式

(1)

$
\begin{gathered}
E_{\mathrm{HPE}}(p o s, d e p, 2 i, 2 j)=\sin \left(\frac{p o s}{\theta}\right) \cos \left(\frac{d e p}{\varphi}\right) \\
E_{\mathrm{HPE}}(p o s, d e p, 2 i, 2 j+1)=\sin \left(\frac{p o s}{\theta}\right) \sin \left(\frac{d e p}{\varphi}\right) \\
E_{\mathrm{HPE}}(p o s, d e p, 2 i+1)=\cos \left(\frac{p o s}{\theta}\right) \\
\theta=256^{2 i / d}, \varphi=64^{2 j / 2 d}, j=2 i
\end{gathered}
$

$\phi$ を導入するため，SPE の偶数次元 (式 (1)) を式 (5) と式 (6) へと分割し, 奇数次元 (式 (7)) は式 (2) と同様とした. この時，通常の絶対位置が生成性能に大 きな影響を与える [2]ことから，半分の次元で絶対位置のみを保持し, 残り半分の次元で絶対位置と 依存構造木中での深さを表現するようにした. さ らに，值の増減が極端に小さくなるのを避けるた め，パラメータ $\theta$ とパラメータ $\phi$ の分母をそれぞれ $256^{2 i / d}$ と $64^{2 j / d}$ とする. pos または dep を固定した 時，SPE が持つような相対性 (式 (3)) を HPE が持つ ことは自明である.

## 4 実験

設定 英独，中英，英日の翻訳タスクにおいて， SPE,StrcPE,HPE を採用した Transformer の比較評価 を行なった. 英独は, WMT14 データセットを用 いた. 440 万文対の学習データ，3,000 文対の開発 データ，2,737 文対のテストデータからなる. 実際 のデータは Stanford NLP group ${ }^{1)}$ が公開しているも のを利用した. 中英は, NIST データセットを用い た. 125 万文対の学習データ, 878 文対の開発デー タ，5,262 文対のテストデータからなる. ${ }^{2)}$ 英日は ASPEC [9] データセットを用いた. 178 万文対の学習データ， 1,790 文対の開発データ， 1,812 文対のテ ストデータからなる。学習には [10]に倣って 100 万文対の学習データである train-1.txt のみを使用した.入出力はサブワードとし, Sentencepiece [11]を使い トークナイズを行った. このとき，語彙サイズは英独，中英で 32,000 ，英日で 16,000 とし，言語間で共有した．実装には fairseq [12]を用い，ハイパーパラ メータは全てにおいて文献 [1] と同じに設定した.原文の依存構造の解析には $\mathrm{spaCy}^{3}$ )を用いた. 英語

1) https://nlp.stanford.edu/projects/nmt/

2） $[2,8]$ によい，学習には LDC2002E18, LDC2003E07, LDC2003E14, そ し て, LDC2004T07, LDC2004T08, LDC2005T06 の Hansards 箇所を用いた. 開発には NIST2002 テストセット，テストには NIST2003,2004,2005,2006 のテス トセットを用いた.

3) https://spacy.io/

表 1

英独，中英，英日翻訳実験における BLEU

表 2 HPE と, 全次元で depthを考慮するよう pos/ $/$ と $\operatorname{depth} / \varphi$ を入れ替えた場合の英日，中英翻訳実験における BLEU

の解析には, en_core_web_sm-3.2.0 モデル, 中国語の 解析には zh_core_web_sm-3.2.0 モデルを用いた. 評価指標には BLEU[13] を用いた. 実験は異なるシー ドを用いて各 3 回行い，その平均を報告する.

結果 表 1 に実験結果を示す. 全てのデータセッ トに対し, 改善幅は小さいものの HPE の BLEU 值 は SPE に対して勝っている。一方，StrcPE は HPE よりもさらに BLEU 值の改善幅が小さく，英独では SPE よりも低下した.これらの結果より，HPE は StrcPE よりも依存構造における単語の深さを効果的 に符号化できたと考える。

## 5 分析

## 5.1 構造的位置の影響

絶対位置 $p o s$ を利用しない場合，翻訳性能が大き く低下することが Wang らによって報告されている [2], HPE では, 絶対位置 pos はべクトルの全ての次元で，構造的位置 $d e p$ はべクトルの半分の次元での みで表現される. そこで，構造的位置 $\operatorname{dep}$ が符号化 にどの程度影響を与えるかを調べた。

HPE において， ベクトルの全ての次元で dep を表現するように式 (5)-(7) の pos $/ \theta$ と depth $/ \varphi$ を入れ替 え，英日，英中のデータセットを用いて実験を行っ た. ${ }^{4)}$ なお， $\theta$ と $\varphi$ の分母は式 (8) と同様である. こ の入れ替えにより, pos はべクトルの半分の次元で のみ表現されることに注意されたい，表 2 に実験結果を示す. どちらの実験でも，ベクトルの全次元で dep を考慮すると，BLEU 值は大きく低下した. こ のことから，位置符号化において絶対位置が深さよ りも明らかに支配的な役割を持つことがわかる.


表 3 中英翻訳実験におけるサブワード長別の BLEU

表 4 中英翻訳実験における構文木の最大の深さ別の BLEU

## 5.2 構文の複雑さにおける評価

深さを符号化する有効性を詳細に調べるため，文 のサブワード数と依存構造木の最大の深さごとに BLEU 值を計算した。

表 3,4 に中英データセットにおける結果を示す.表 3 から，11 サブワード以上の場合，HPE の BLEU が全体的にやや高いことから，短い文以外には若干 の効果があると考えられる．SPEと HPE を比較す ると， 61 サブワード以上の場合には BLEU 改善幅が 顕著である。このことから，構造位置は短い文では あまり影響を与えることはないが，長文だと効果が あることがわかる. 一方，10サブワード以下の非常 に短い文の場合ではSPEが最も良いことから，単純 な絶対位置のみで十分であることがわかる.

表 4 より, 表 3 と同じく, ほとんど場合で HPE は SPE，StrcPE よりも BLEU 値が良い，1文あたり の依存構造木の最大の深さごとにみると, 木の最大の染さが 1 といった単純な構造木の時, HPE は SPE よりも悪い. 一方, 最大の深さが 6 までのと き，StrcPE や HPE の BLEU 值はやや向上している.最大の深さが 7 以上といった複雑な構造を持つ文の 場合, BLEU は 0.6 ポイントほど向上した. これら より, 単純な構造を持つ文では, 構造位置の効果が 小さく，長い文または複雑な文の時にそれが有効で あることがわかった。

## 6 まとめ

本稿では Transformer において，単語の絶対位置 と構造位置 (依存構造を用いた深さ)を球体表面で 表現し符号化する，球体表面を利用した位置符号化
(Hyperspherical Positional Encoding, HPE) を提案した.英日，中英，英独の機械翻訳データセットを用いて 提案法を従来からの位置符号化法と比較評価した結果，顕著ではないものの BLEU 值の改善傾向がみら れた. 文長，依存構造木の深さごと評価結果から，長い文，依存構造が深い文においては依存構造を用 いた深さは有効であることがわかった. さらに，同 じ深さを表現する既存研究と比較した場合，提案手法は BLEU 值の改善傾向が見られた.

## 参考文献

[1] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, and Illia Polosukhin. Attention is all you need. CoRR, Vol. abs/1706.03762, , 2017.

[2] Xing Wang, Zhaopeng Tu, Longyue Wang, and Shuming Shi. Self-attention with structural position representations. In Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP), pp. 14031409, Hong Kong, China, November 2019. Association for Computational Linguistics.

[3] Chuan Wang, Nianwen Xue, and Sameer Pradhan. A transition-based algorithm for AMR parsing. In Proceedings of the 2015 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pp. 366375, Denver, Colorado, May-June 2015. Association for Computational Linguistics.

[4] Yudai Kishimoto, Yugo Murawaki, and Sadao Kurohashi. Adapting BERT to implicit discourse relation classification with a focus on discourse connectives. In Proceedings of the Twelfth Language Resources and Evaluation Conference, pp. 1152-1158, Marseille, France, May 2020. European Language Resources Association.

[5] Angela Fan, Claire Gardent, Chloé Braud, and Antoine

Bordes. Using local knowledge graph construction to scale Seq2Seq models to multi-document inputs. In Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP), pp. 4186-4196, Hong Kong, China, November 2019. Association for Computational Linguistics.

[6] Vighnesh Leonardo Shiv and Chris Quirk. Novel positional encodings to enable tree-structured transformers, 2019.

[7] Peter Shaw, Jakob Uszkoreit, and Ashish Vaswani. Selfattention with relative position representations. In Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 2 (Short Papers), pp. 464-468, New Orleans, Louisiana, June 2018. Association for Computational Linguistics.

[8] Xing Wang, Zhaopeng Tu, Deyi Xiong, and Min Zhang. Translating phrases in neural machine translation. In Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing, pp. 1421-1431, Copenhagen, Denmark, September 2017. Association for Computational Linguistics.

[9] Toshiaki Nakazawa, Manabu Yaguchi, Kiyotaka Uchimoto, Masao Utiyama, Eiichiro Sumita, Sadao Kurohashi, and Hitoshi Isahara. Aspec: Asian scientific paper excerpt corpus. In Nicoletta Calzolari (Conference Chair), Khalid Choukri, Thierry Declerck, Marko Grobelnik, Bente Maegaard, Joseph Mariani, Asuncion Moreno, Jan Odijk, and Stelios Piperidis, editors, Proceedings of the Ninth International Conference on Language Resources and Evaluation (LREC 2016), pp. 2204-2208, Portorož, Slovenia, may 2016. European Language Resources Association (ELRA).

[10] Yui Oka, Katsuhito Sudoh, and Satoshi Nakamura. Length-constrained neural machine translation using length prediction and perturbation into length-aware positional encoding. 自然言語処理, Vol. 28, No. 3, pp. 778-801, 2021.

[11] Taku Kudo and John Richardson. SentencePiece: A simple and language independent subword tokenizer and detokenizer for Neural Text Processing. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing: System Demonstrations, pp. 66-71, Brussels, Belgium, November 2018. Association for Computational Linguistics.

[12] Myle Ott, Sergey Edunov, Alexei Baevski, Angela Fan, Sam Gross, Nathan Ng, David Grangier, and Michael Auli. fairseq: A fast, extensible toolkit for sequence modeling. In Proceedings of NAACL-HLT 2019: Demonstrations, 2019.

[13] Kishore Papineni, Salim Roukos, Todd Ward, and WeiJing Zhu. Bleu: a method for automatic evaluation of machine translation. In Proceedings of the 40th Annual Meeting of the Association for Computational Linguistics, pp. 311-318, Philadelphia, Pennsylvania, USA, July 2002. Association for Computational Linguistics.

SPE

StrcPE, depth $=0$

HPE, depth $=0$

StrcPE, depth $=4$

HPE, depth $=4$

図 $3 \mathrm{SPE}$ (上段), Wang らの $\operatorname{StrcPE}$ (中段), 提案手法の $\mathrm{HPE}$ (上段)をそれぞれ視覚化したもの. 縦軸が単語の絶対位置 $p o s$ を表す. 横軸は次元数 $d$ であり，式 (8)，式 (6)，式 (7) の次元別に合わせて表している.

## A 視覚化

先行研究との比較のため, 図 3 に各位置符号化の ヒートマップを示す。明晰化のため，横軸を式 (8),式 (6), 式 (7) のベクトルの次元別に対応して表して いる. StrcPE ではべクトルの全次元において絶対位置 $p o s$ と構造的位置 $d e p$ を考慮しているため, $d e p$ の值に関わらず全次元でヒートマップの変域が SPE と比べ小さくなっており，位置符号化の表現の幅を 狭める可能性がある。一方で，HPE ではベクトルの 偶数次元でのみ, 絶対位置 $p o s$ と構造的位置 $d e p$ を考慮し, 奇数次元では絶対位置 $p o s$ のみ考慮す る. そのため, 奇数次元は SPE と全く同じであり, depth $=0$ の時, $3 / 4$ の次元で SPE と同じ值を取る. さらに, $\operatorname{dep}=0$ 以外の時でも，変域は SPE と似た ような分布になっており，位置符号化の表現の幅を 最大限使っていると考えられる。

## B パラメータ

HPE では，同じような式変形を式 (6) に施すこと で，さらにパラメータ tmp,גを追加していくことも 可能である.

$E_{\mathrm{HPE}}(p o s, \operatorname{dep}, t m p, 2 i, 2 j+1,2 k)=\sin \left(\frac{p o s}{\theta}\right) \sin \left(\frac{d e p}{\varphi}\right) \cos \left(\frac{t m p}{\lambda}\right)$

$E_{\mathrm{HPE}}(p o s, d e p, t m p, 2 i, 2 j+1,2 k+1)=\sin \left(\frac{p o s}{\theta}\right) \sin \left(\frac{d e p}{\varphi}\right) \sin \left(\frac{t m p}{\lambda}\right)$
 岡佑依 田中貴秋 平尾努 永田昌明 NTTコミュニケーション科学基礎研究所 yui.oka.vf@hco.ntt.co.jp  