\documentclass[japanese,other]{jnlp_3.3}
\usepackage{jnlpbbl_2.2}
\usepackage[dvipdfmx]{graphicx}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{url}
\usepackage{hangcaption_jnlp}
%%%%\usepackage{udline}
%%%%\setulminsep{1.2ex}{0.2ex}
%%%%\let\underline=\ul
\allowdisplaybreaks


\Volume{28}
\Number{2}
\Month{June}
\Year{2021}
%%%%\Issuetitle{「　　　　」特集号}

\received{2005}{1}{2}
\revised{2006}{3}{4}
\rerevised{2006}{5}{6}
\accepted{2006}{7}{8}

\setcounter{page}{694}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\jsubject{学会記事}
\jtitle{Encoder-Decoder Attention $\neq$ Word Alignment: Axiomatic Method of Learning Word Alignments for Neural Machine Translation}
\jauthor{馬　　春鵬\affiref{Author_1}}
\etitle{Encoder-Decoder Attention $\neq$ Word Alignment: Axiomatic Method of Learning Word Alignments for Neural Machine Translation}
\eauthor{Chunpeng Ma\affiref{Author_1}} 

\headauthor{馬}
\headtitle{Encoder-Decoder Attention $\neq$ Word Alignment}

\affilabel{Author_1}{富士通研究所}{Fujitsu Laboratories LTD.}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
\maketitle
\vspace*{-1\Cvs}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section*{まえがき}

本稿では，言語処理学会2020年度論文賞の受賞論文「Encoder-Decoder Attention $\neq$ Word Alignment: Axiomatic Method of Learning Word Alignments for Neural Machine Translation」\cite{ma2020encoder}（以下，原論文）について解説する．著者にとって一番気に入っている研究と言っても過言ではなく，原論文が採択に至るまで長い道のりであったこともあり，本記事では学術的な内容のほか，着想に至る経緯など，原論文に纏わる様々な非学術的な内容も紹介する．読者の今後の研究に少しでも参考になれば幸いである．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{謎だらけのニューラルネットワーク}

近年，ニューラルネットワークに基づいた方法が自然言語処理の研究を席巻している．機械翻訳の分野だと，Recurrent Neural Networks (RNNs) \cite{sutskever2014sequence}やConvolutional Neural Networks (CNNs) \cite{gehring2017convolutionala}，Transformer \cite{vaswani2017attention}などの手法で高い性能が報告されている．ただし，ニューラルネットワークを使うとなぜ良い性能を出せるのかについては，未だに不可解なことが多いのが現実である．例えば，単語アライメントなど機械翻訳における重要な情報はニューラルネットワークがいかに学習したのか，こういった情報はネットワークのどこに存在するのかは明らかではない．これらの問題，いわゆるニューラルネットワークの解釈性の問題は，自然言語処理の研究に重要かつ難しい問題であり，解決できれば，研究に大いに貢献すると期待される．

自然言語処理におけるニューラルネットワークの解釈を深める研究の最初の一歩として，原論文では，特定のネットワークと特定のタスクに絞り，sequence-to-sequence構造のモデルの「attention」モジュールは機械翻訳の単語アライメントとどのような関係を持っているのかを解明する試みを行った．従来の研究によると，RNNを用いたモデルの場合，attentionは単語アライメントそのものと見なしても問題が無いという報告がある\cite{liu2016neural}．しかし，現在性能がより良いTransformerについては，単語アライメントの在り処はまだ解明されていない．図\ref{fig:wordalign}にRNN及びTransformerモデルのエンコーダとデコーダ間のattentionと単語アライメントの実例を示す．
この図からも，RNNを用いたモデルと異なり，Transformerモデルによるattention は，単語アライメントとはかけ離れていることが見て取れる．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 1
\begin{figure}[t]
\begin{center}
\includegraphics{28-2ia24f1.pdf}
\end{center}
\hangcaption{機械翻訳モデルのattention行列の比較．(a)実際の単語アライメント，(b)RNNモデルのattention行列，(c)Transformerモデルのエンコーダとデコーダ間のattention行列．}
\label{fig:wordalign}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{「定性的」から「定量的」へ}

図\ref{fig:wordalign}に示したものは単なる偶然なのか？この問いに答えるために，原論文では以下の二つの定量的な実験を行った．

\textbf{学習経過に基づくAER (Alignment Error Rate) とBLUEの変化．}図\ref{fig:evolution}に，iteration数とattentionを単語アライメントとみなして算出したAER及び翻訳性能を表すBLUEの変化を示す．図\ref{fig:evolution}から，iteration数を増加することで，RNNモデルとTransformerモデルの二つのモデルの翻訳性能が改善されることがわかる．一方，AERにおいては二つのモデルの振る舞いが正反対となった．Transformerの場合，iterationを増やすと単語アライメントのエラー率が増え続けることから，attentionが単語アライメントではないことが見て取れる．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% fig. 2
\begin{figure}[t]
\begin{center}
\includegraphics{28-2ia24f2.pdf}
\end{center}
\caption{iteration数によるAER・BLEUの変化}
\label{fig:evolution}
\end{figure}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\textbf{単語アライメントを教師データとしたattentionの学習．}従来研究によると，RNNモデルの場合，単語アライメントを教師データとしてattentionを学習すると，機械翻訳の性能が改善されるという報告がある\cite{liu2016neural}．原論文ではこの従来手法と同じ手法を用いて，RNNモデルとTransformerモデルの二つのモデルを訓練した．その結果，RNNモデルの場合，BLEUが22.11から22.21に改善したが，Transformerの場合，BLEUは25.50から23.52に低下してしまい，二つのモデルの挙動が異なることが示された．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{本質的な原因を突き止めた}

著者は，「万物は数なり」とのピタゴラスの言葉が示す通り，数式を正しく理解しないと全ての分析は宙に浮いたままであると考え，原論文ではRNNとTransformerの数式を入念に比較し，二つのモデルの本質的な二つの違いを見つけた．

\textbf{与えられる情報の違い．}$l$層目のネットワークにおける文の$i$番目の単語の分散表現ベクトルを$\mathbf{H}(l,i)$とする．
RNNの場合，$\mathbf{H}(l,i)$は次の通り算出される．
\begin{equation}
    \mathbf{H}(l,i)=\text{RNN}(\mathbf{H}(l,i-1), \mathbf{I}(l,i))
    \label{eq:1}
\end{equation}
ここで，$\mathbf{I}(l,i)$は単語埋め込みである．
したがって，$\mathbf{H}(l,i)$を算出する際に与えられる情報は$i$番目とそれ以前の単語の情報だけである．
一方，Transformerの場合，$\mathbf{H}(l,i)$は次の通り算出される．
\begin{equation}
    \mathbf{H}(l,i)=\text{SelfAttention}(\mathbf{I}(l), \mathbf{I}(l,i), \mathbf{I}(l))
    \label{eq:2}
\end{equation}
ここで，$\mathbf{I}(l)$は文中のすべての単語の分散表現ベクトルを表す．
したがって，$\mathbf{H}(l,i)$を計算する際に与えられる情報は，文の中にあるすべての単語の情報である．
これが一つの根本的な違いである．

\textbf{「依存関係」の違い．}式\ref{eq:1}と式\ref{eq:2}を比較するともう一つの違いがある．式\ref{eq:1}の独立変数の一つは$\mathbf{H}(l,i-1)$であり，現時点の計算結果は同じ層の直前の計算結果に依存している．一方，式\ref{eq:2}の独立変数は$\mathbf{I}(l)$と$\mathbf{I}(l,i)$であり，現時点の計算結果は同じ層の前の計算結果に依存していない．これがもう一つの根本的な違いである．
この根本的な二つの違いが，attentionが単語アライメントになりうるかどうかの違いになっていると考えられる．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{思考回路を逆さまにして考える}

これまでの実験・解析でTransformerのattentionは単語アライメントではないことが分かった．また，原因も突き止めた．
次に取り組むことはTransformerのattentionは何だろうかという問題の答えを探すのが普通だが，進め方がなかなか思いつかなかった．
行き詰ったと思いきや，考えているうちに一つの解決策を思いついた．
それは，「attention $\neq$ alignmentである．では，attentionは何？」という問題には答えられないが，「attention $\neq$ alignmentである．ではalignmentは何？」という問題を考えてみるのはどうかということだ．

「単語アライメント」は統計的機械翻訳の頃から存在している重要な概念の一つである．
Transformerは良い翻訳性能を実現しているので，アライメントの情報は学習できているはずである．
では，アライメントの情報はTransformerモデルのどこに，いかにして存在しているのか？
この問題に答えるため，原論文ではアライメントの特徴に注目した．
アライメントの特徴を分析し，原論文では，アライメントはモデルの具体的な構造に関わらず，「単語の変化に対する敏感さ」，「モデルに対する鈍感さ」，「文脈に対する依存」の三つの特徴を持たないといけないと考えた．
そして，三つの特徴を捉えるために，原論文は「公理的単語アライメント」を提案した．
数式はこの原稿では省略するが，アイデアの概要は次の通りである．
まず，原言語の文にある各単語の分散表現に対して摂動を与え，目的言語の文にある各単語の分散表現を変化させる．
そして，原言語と目的言語の変化の強さを計算し，変化の強いところは単語アライメントと見做す．
この変化の強さの計算はモデルの具体的な構造に関わらないようにする．
ただし，分散表現の計算は文脈を考慮する方法とする．
このような手法によりアライメントの特徴を捉えることに成功した．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{研究の隠し味}

原論文で提案した「公理的単語アライメント」は考案した時点ではうまくいかなかった．
なぜなら，提案手法の一番肝心なところである「摂動関数」，つまり，分散表現をどうやって摂動すれば良いのかが十分に解明できておらず適切に設計できていなかったからである．
摂動の与え方は自明ではなく簡単なやり方もいくつかある．
ゼロにしたり，ベクトルの向きを逆にしたり，ある角度回転したりと単純な摂動関数をいくつか試したがどれも上手くいかなかった．

その時ふと頭によぎったのが，大阪一のカレー激戦区である谷町四丁目の話である．
数あるお店の中で特徴を出し成功するには，隠し味を出す「仕上げの一滴のスパイス」が肝であるらしいのだ．
著者はこれは研究も同じではないかと考えた．そこで隠し味として，言語モデルを摂動関数に入れてみた．
単純に分散表現を操作する代わりに，言語モデルで摂動済みの分散表現を予測するということを行った．
その結果，高い性能が得られ，「Transformerにおいて単語アライメントはどのような形で存在しているのか」という質問に対して，「言語モデルに基づく摂動関数を用いた公理的単語アライメント」という一つの答えを得ることができた．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{長い道のり}

突然だが，大阪市立中央図書館は静かで仕事に集中しやすい．
本研究は著者が博士課程後期課程在籍時に国立研究開発法人情報通信研究機構で研修員として取り組んでいた研究であり，原論文のほとんどはそこで作成した．
フィレンツェの景色を想像しながら，ACL 2019に投稿した．しかし，味わったのは，本場のジェラートでもピッツァでもなく，「reject」の苦味だけだった．

落胆の中，博士課程を修了するために中国に戻ることになった．帰国してから，EMNLPやAAAIなどのトップ学会に向けて，「修正・投稿・reject」のコンボを何回も味わうにつれて，自分でもこの研究の意義を疑い始めた．著者から見ればとても面白くて有意義な研究なのに，なぜ認められないのだろうか．

博士卒業が近づくにつれて，就職活動も着々と進んでいた．そんな中，幸い，言語処理学会のジャーナルに採択され，就職する前に遂にこの研究の居場所を無事に決めることができた．
そしてさらに喜ばしいことに，2020年度の論文賞も受賞することができた．

研究は，うまくいかないのが日常茶飯事だ．こういう時は，やはり「粘り強さ」が一番大事だと思う．実験結果を隅から隅まで分析し，「隠し味」を入れて，時間をたっぷりかけて初めて，おいしい料理が作り出された．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bibliographystyle{jnlpbbl_1.6}
\bibliography{24refs}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{biography}

\bioauthor{馬　　春鵬}{%
2014年ハルビン工業大学（中国）コンピューター科学技術学部コンピューター科学科卒業．2020年ハルビン工業大学（中国）コンピューター科学技術大学院コンピューター応用技術専攻博士課程修了．博士（工学）．現在，株式会社富士通研究所人工知能研究所研究員．
}

\end{biography}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%\biodate


\end{document}




