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


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% author's definition
\usepackage{booktabs}
%%%%\usepackage{amssymb}
\usepackage{multirow}
%%%%\renewcommand\UrlFont{\rmfamily}


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


\setcounter{page}{276}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\jsubject{学会記事}
\jtitle{Stronger Baselines for Grammatical Error Correction Using a Pretrained Encoder-Decoder Model}
\jauthor{勝又　　智\affiref{Author_1}}

\etitle{Stronger Baselines for Grammatical Error Correction Using a Pretrained Encoder-Decoder Model}
\eauthor{Satoru Katsumata\affiref{Author_1}}

\headauthor{勝又}
\headtitle{Grammatical Error Correction Using a Pretrained Encoder-Decoder Model}

\affilabel{Author_1}{株式会社レトリバ}{Retrieva, Inc.}



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
\maketitle


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

本記事では，私が東京都立大学小町研究室に在籍時に取り組み，AACL2020に採択された標題のショート論文について解説を行います．
一般的な論文解説記事とは異なり，本記事ではどのようにしてこの研究に取り組んだのか，論文の公開や採択の経緯などの一連の研究の過程を解説いたします．
時間軸に沿って上記内容を解説するため，まとまりがなく読みづらい点が多々あると存じますがご容赦いただけますと幸いです．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{文法誤り訂正の研究背景}

標題論文の解説を行う前に，文法誤り訂正の研究背景を説明する．
文法誤り訂正は，文法的に誤った文が入力となり，この誤った文に対して訂正を行い，文法的に正しい文を出力するタスクであり，主に英語に対して取り組まれることが多い．
この問題設定に対して，多くの研究は機械翻訳の手法を用いて取り組んでいる．
近年では，ACL2019に併設された，学習者支援に関するワークショップであるBEA2019にてShared Taskが開催された．
このShared Taskの上位チームはEncoder-Decoderモデルに対して事前学習を行っている．
具体的には，1位のチームは事前学習データとして大量の単言語コーパス（約1億文）を用意，人工的な誤りを与え，擬似誤り文と正しい文の対訳データを作成し，事前学習を行っている．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{アイディアの着想を得るまで}

実は私も前述したBEA2019のShared Taskに参加していたのだが，この1位の結果には大変驚いたと同時に，
これから文法誤り訂正の精度向上を目指す研究は，事前学習を取り入れる方向になっていくのだと考え，
気落ちしたことを今でも覚えている．
事前学習は一度の実験に時間と計算資源を大量に消費する．
そのため，事前学習自体に改良を加えていく研究方向はかなりの体力を必要としてしまう．
そのような研究は私としてはあまり望ましいものではなかった．
当時の私はそのような状況下で，次の3つの方針が思いついていた．
\begin{enumerate}
  \item 事前学習したモデルと協調してさらなる改善を目指す
  \item 単純な訂正精度では測れない問題を改善させる
  \item 事前学習を行わずに訂正精度が同等なモデルを作成する
\end{enumerate}

2019年の夏頃，ACL2019が終わり，当時修士2年だった私は，どのようにして事前学習を行わずに文法誤り訂正の研究を行うか考えていた．
特に前述の(2)の方向について，うまく取り組む方法はないか考えていた．
なかなか良い問題設定が思いつかず年の瀬が近づき，自身の修士論文や，自然言語処理学会年次大会の発表に向けた活動の優先度が上がり，
文法誤り訂正の事前学習回避の研究は頭の片隅に留める程度となった．
2020年1月，上記の活動がどちらも落ち着いた頃，私は Bidirectional and Auto-Regressive Transformers (BART) の存在を知った．
BARTとは，\citeA{bart}によって提案された事前学習Encoder-Decoderモデルである．
彼らは単言語コーパスの各文に対して，マスクトークンの置換と文のシャッフル操作の2つのノイズ処理を施し，このノイズを含む入力から元の文を当てるように事前学習を行っている．
この事前学習モデルは要約タスクや機械翻訳タスクで高い精度を報告している．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 1
\begin{table}[b]
\begin{center}
\begin{tabular}{lcccccc}
\toprule
&  \multicolumn{3}{c}{CoNLL-14} & \multicolumn{3}{c}{BEA-test} \\
\cmidrule(lr){2-4} \cmidrule(lr){5-7}
& Precision & Recall & $\mathrm{F_{0.5}}$ &  Precision & Recall & $\mathrm{F_{0.5}}$   \\
\midrule
\citeA{kiyono2019} & 67.9/\underline{73.3} & 44.1/44.2 & 61.3/64.7 & 65.5/\underline{74.7} & 59.4/56.7 & 64.2/\underline{70.2} \\
\citeA{kaneko_bert} & 69.2/72.6 & \textbf{45.6}/\underline{46.4} & \textbf{62.6}/\underline{65.2} & 67.1/72.3 & \textbf{60.1}/\underline{61.4} & \textbf{65.6}/69.8 \\
BART-based & \textbf{69.3}/69.9 & 45.0/45.1 & \textbf{62.6}/63.0 & \textbf{68.3}/68.8 & 57.1/57.1 & \textbf{65.6}/66.1 \\
\bottomrule
\end{tabular}
\end{center}
\hangcaption{英語の文法誤り訂正の結果．CoNLL-14，BEA-testはそれぞれ文法誤り訂正の評価データ．左側の数値がシングルモデル，右側の数値がアンサンブルモデルの結果．太字がシングルモデルでも最も高い結果を，下線部が全体の中で最も高い結果を示している．}
\label{result_score:english}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

最初は論文執筆のネタ探しといったものではなく，もっと単純な好奇心だったと思う．
BARTを元に，文法誤り訂正のデータでfine-tuningしたらどのくらい訂正できるのだろう，そう考えた私は即座に実験を行った．
表 \ref{result_score:english} がBARTの実験結果である．
\citeA{kiyono2019} は文法誤り訂正の事前学習に使用する擬似データの作成方法に関して研究，最も良かった作成方法を元に誤り訂正モデルを作成している．
\citeA{kaneko_bert} は \citeA{kiyono2019} の事前学習モデルに，さらに BERT \cite{bert2019} を組み合わせて訂正精度が向上することを示した．
この表 \ref{result_score:english} の通り，シングルモデルの比較において， BART を元にしたモデルは既存の事前学習モデルを利用した文法誤り訂正と同等の精度が出ることが確認できる．
この実験結果を確認した時，私は初めて論文執筆の可能性を感じた．
BERTの事前学習モデルが様々な言語や分野で作成されていることを鑑みると，今後，Encoder-Decoderモデルの事前学習モデルも様々な言語で作成される可能性は高いと考えられる．
文法誤り訂正が英語以外の言語にもより活発に行われるようになると考えたときに，BARTのように様々なタスクで有効性を示している，\textbf{汎用的な事前学習モデルが文法誤り訂正にも効果があることを示す}ことは意味のあることだと考えた．
このようにして，前述した方針の (3) を改変し，汎用的な事前学習モデルを用いて，文法誤り訂正向けに事前学習されたモデルと同等の精度を目指す研究が始まった．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{論文化に向けた更なる実験}

研究の方向性の具体化に反して，実験結果自体は芳しくなかった．
表 \ref{result_score:english} の結果の通り，BARTのアンサンブルモデルの精度がシングルモデルとほとんど変わらなかったのである．
現状の結果のみだと，シングルモデルでの比較ならば汎用的な事前学習モデルは文法誤り訂正向けに学習された事前学習モデルと同等の精度だが，
アンサンブルモデルでの比較では文法誤り訂正向けに学習されたモデルには及ばないという，中途半端な結果になってしまった．
私自身，この結果では論文として面白さを感じず，投稿できるような質には程遠いように思えた．

2020年1月下旬，BARTの多言語モデルである，multilingual BART (mBART) \cite{m-bart} が arXiv に投稿された．
このmBARTは，前述したBARTの学習を多言語で行ったもので，機械翻訳タスクで高い精度を達成している．
この論文を読んだ際，BARTの他に，mBARTを用いて文法誤り訂正を行い，汎用的な事前学習モデルが英語以外にも有効であることを示すことができれば，
少なくともBEAのような，学習者支援のワークショップに出すぐらいの品質にはなるのではないかと考えた．

しかしながら，ここでも問題が発生した．
mBARTの論文は1月下旬に投稿されたのだが，肝心の事前学習モデルが公開されていなかったのだ．
私は同年3月に大学を卒業予定だったため，卒業までに実験を全て行う必要がある．
当時，他にも事前学習Encoder-Decoderは存在していた．
\citeA{song2019} がMAsked Sequence to Sequence pre-training (MASS) と呼ばれる事前学習モデルを公開している．
彼らは単言語コーパスの各文に対して，マスクトークンの置換を行い，元の文を当てるように事前学習を行っている．
MASSは機械翻訳タスク向けに事前学習モデルを作成していて，英語とドイツ語で事前学習を行ったモデルを公開している．
この英語とドイツ語で事前学習されたMASSモデルを元に，ドイツ語の文法誤り訂正も行った．
この結果を表\ref{result_score:others}に示す．
\citeA{low_resource_gec} が文法誤り訂正向けに事前学習モデルを作成した手法なのだが，彼らの結果と比較して低い精度であることがわかる．
そのため，このBARTとMASSの結果のみだと，汎用的な事前学習を用いて文法誤り訂正をする話はお蔵入りにするつもりだった．
そのような中，2月下旬，mBARTの事前学習モデルが公開された．
即座にmBARTの実験を行い，ドイツ語，チェコ語，ロシア語で実験を行った．
表 \ref{result_score:others} の通り，ドイツ語に関してはMASSと比べて高い訂正精度が確認できた．
このmBARTの結果を使い，汎用的な事前学習モデルが文法誤り訂正に効果があることを主張，説得できればBEAに通るのではないかと考え，
3月下旬から4月上旬にかけて論文を執筆，BEA2020にリサーチ論文として投稿した．

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% table 2
\begin{table}[t]
\begin{center}
\begin{tabular}{clccc}
\toprule
& & Precision & Recall & $\mathrm{F_{0.5}}$ \\
\midrule
& \citeA{low_resource_gec} & 78.21 & 59.94 & 73.31 \\
German & MASS-based & 62.48 & 50.93 & 59.77 \\
& mBART-based & 73.97 & 53.98 & 68.86 \\
\midrule
\multirow{2}{*}{Czech} & \citeA{low_resource_gec} & 83.75 & 68.48 & 80.17 \\
& mBART-based & 78.48 & 58.70 & 73.52 \\
\midrule
\multirow{2}{*}{Russian} & \citeA{low_resource_gec} & 63.26 & 27.50 & 50.20 \\
& mBART-based & 32.13 & 4.99 & 15.38 \\
\bottomrule
\end{tabular}
\end{center}
\caption{ドイツ語，チェコ語，ロシア語の文法誤り訂正の結果}
\label{result_score:others}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{BEA不採択からAACL採択まで}

結果としては，BEA2020には不採択だった．
全くの見当違い，というわけでもなかったが，やはりアイディアや実験結果の弱さで採択まで至らなかった印象を受けた．
今後について共著者と相談し，BEA2020でいただいたコメントを反映させて，AACL2020に投稿することになった．
しかし，アイディア自体はすぐに思いつくものであるため，arXivに投稿することにした．
続いて，このarXivに投稿した論文の大まかな方向性は変えず，論文のわかりやすさを向上するように変更を加えた．
主な変更として，標題論文の主張である，汎用的な事前学習モデルが文法誤り訂正に効果があることを示すことの意味や説得性をあげる点，
MASSの結果を取り除き，内容のわかりやすさを明確にする点を修正した．
少し驚いた点として，arXivに論文を投稿してすぐにメールで問い合わせが来たことである．
この問い合わせなども参考にし，修正したものをAACL2020に投稿した．
この修正した論文は，AACL2020に無事採択された．


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{おわりに}

2019年夏頃，どのようにして事前学習を用いずに研究を行うか考え，
冬，好奇心に身を任せ実験を行い，
結果がよかったこともあり，論文化に向けたアイディアを練り出した．
その後，mBARTの実験結果を踏まえて，ワークショップに向けて論文を執筆したものの不採択となり，
arXivへ投稿，コメントを反映させてAACL2020の採択へと繋がった．
振り返ってみると，とりあえず手を動かして実験してみて，その結果が以前から頭の中に置いていた問題設定と繋がったことが
標題の論文を書くきっかけだったのだと思う．
また，アイディアや結果が弱かったこともあり，いかにして主張に説得力を持たせるかが重要だったのだと思う．
その点で考えると，BEA2020で不採択となり，AACL2020で採択されたのは納得がいく．

また，この論文は実験自体は大学在学中に行っているが，BEA2020 に向けた論文執筆，arXiv への投稿，AACL2020 に向けた執筆などは
卒業後に行っている．
卒業後にも関わらず，共著者である小町守先生には多くのお力添えをいただいた．
この場を借りてお礼申し上げたい．


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


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{biography}
\bioauthor{勝又　　智}{%
2018年首都大学東京システムデザイン学部情報通信システムコース卒業．2020年同大学大学院システムデザイン研究科情報科学域修士課程修了．同年株式会社レトリバ入社．現在に至る．自然言語処理の研究に従事．
}

\end{biography}



\end{document}


