# 多様な規則を活用した文法誤り訂正のデータ拡張に関する分析

古山 翔太 ${ }^{\dagger, \dagger \dagger} \cdot$ 高村 大也生 ${ }^{\dagger}$ 岡崎 直観 ${ }^{+, \dagger \dagger}$
}

ニューラル文法誤り訂正では，データ拡張によって学習データの不足を補う手法が 活発に研究されている。本研究では, 既存のデータ拡張手法が, より良いデータ拡張を行い性能向上を目指す上で重要な要素として, (1) 誤りの多様性が訂正性能に 寄与すること, (2) 特定の種類の誤り生成がその種類の誤り訂正性能に寄与するこ と, (3) データ拡張に用いるコーパスの大きさが訂正性能に寄与することの 3 点が仮定されている. 本研究では, これらの仮定の妥当性を検証するため, 多様な文法力 テゴリでの誤り生成規則を組み合わせる手法を提案し，生成する誤りの種類を変え て誤り訂正モデルを学習することで，比較検証を行う。結果として, 仮定 (1) (2) は 正しいが，一方で，仮定 (3) においては，コーパスの規模ではなく，パラメータの 更新回数と誤りの生成回数が影響することが明らかになった。さらに，提案手法は，学習者コーパスを用いない教師なし設定でも高い性能のモデルを学習でき，学習者 コーパスを用いた場合でも, 既存の手法と同程度に高性能なモデルを学習できるこ とが明らかになった. 折り返し翻訳・逆翻訳によるデータ拡張手法との比較を通じ て，また，ルールによる誤り生成とこれらの手法を用いたモデルでは，訂正におい て得意な誤り種類が異なることが判明した。

キーワード：文法誤り訂正, データ拡張
## Analysis of Data Augmentation for Grammatical Error Correction Based on Various Rules

\author{
Shota Koyama $^{\dagger, \dagger \dagger}$, Hiroya TaKamura ${ }^{\dagger, \dagger \dagger}$ and NaOaKi OKazaki ${ }^{\dagger, \dagger \dagger}$
}

Inadequate training data renders neural grammatical error correction less effective. Recently, researchers have proposed data augmentation methods to address this problem. The methods are proposed based on the following three assumptions: (1) error diversity in generated data contributes to performance improvement; (2) error generation for a certain error type affects the correction performance of same-type errors; (3) a larger corpus used in error generation results in better performances. In this study, we design multiple error generation rules for various grammatical categories and propose a method to combine those error generation rules to validate the abovementioned assumptions by varying the error types in the generated data. Results show that assumptions (1) and (2) are valid, whereas assumption (3) is associated with the number of training steps and the number of generated errors. Furthermore,

our proposed method can train a high-performance model even in unsupervised settings and more effectively correct writing errors as compared with the model based on round-trip translations. Finally, it is found that the error types corrected by the models based on round-trip and back translations differ from those corrected by our method.

Key Words: Grammatical Error Correction, Data Augmentation

## 1 はじめに

文法誤り訂正は，文書中の様々な種類の誤りを自動的に訂正する自然言語処理の研究課題であり，言語学習者の作文支援への応用が期待されている。機械翻訳のモデルを用いて，誤りを含む文から正しい文への翻訳を行う手法が効果的であり，特に，近年ではニューラル機械翻訳で用いられる手法を応用する研究が活発になされている.

機械翻訳の手法を用いるためには， Mizumoto et al. (2011)の Lang-8コーパスなどの大規模な学習データが必要となる. しかし, Junczys-Dowmunt et al. (2018) で指摘されているように,高品質なニューラル機械翻訳モデルを学習するためには，依然，学習デー夕の量は不十分である。この問題に対処するため，デー夕拡張によって大規模な学習データを人工的に生成し，そのデータを用いて事前学習を行ったモデルに対し, 文法誤り訂正のデータセットで再学習（ファインチューニング）を行う手法に注目が集まっている (Lichtarge et al. 2019; Zhao et al. 2019; Grundkiewicz et al. 2019; Kiyono et al. 2019).

文法誤り訂正のデータ拡張では，単言語コーパスの誤りのない文に誤りを生成し，人工デー 夕を作成する。最も平易なデータ拡張手法は，ランダムな置き換え・插入・削除の編集操作によって，誤りを生成するものである (Zhao et al. 2019). このランダムな編集操作は，効果的な事前学習が行えるものの, 実際の文書中に出現する誤りを再現するものとはなっていない. そのため, これを改善するための様々な手法が考案されている. 例えば, 編集操作を行う際に,前置詞や冠詞などの特定の文法カテゴリや，綴り・約物などの表記に対して，誤りを生成するルールを活用することで，人工データの質を改善する手法が提案されている (Choe et al. 2019; Takahashi et al. 2020; Flachs et al. 2019; Grundkiewicz et al. 2019).また，機械翻訳モデルを活用して折り返し翻訳を行う手法や (Lichtarge et al. 2019)，逆翻訳を応用した誤り生成 (Kiyono et al. 2019; Wan et al. 2020) などが提案されている.

さらに，データ拡張を行う際に，何が性能向上に寄与するかという点に関して，活発に研究が行われている。本研究では, その中の, 特に以下に示す 3 つの要素に着目し, その妥当性を検証する。本論文では，これらをデー夕拡張に重要とされる 3 つの仮定と呼ぶ.

仮定 (1) 生成される誤りの種類の多様さが, 訂正性能に寄与する.
仮定 (2) 特定の種類の誤りが生成されることが，その種類の誤り訂正性能に寄与する.

仮定 (3) データ拡張に用いるデータの規模が，訂正性能に寄与する.

以下に, 文法誤り訂正のデータ拡張の研究において, これらの仮定の妥当性を検証する背景と, その意義・貢献について説明する.

仮定 (1)「生成される誤りの種類の多様さが，訂正性能に寄与する」について説明する．生成される誤りの多様さが重要であるということがデータ拡張を行う際に重要であることは，以前から着目されており, 誤り生成モデルに対して，ノイズを加える手法や，複数の候補を用いることで性能の向上が確認されている (Ge et al. 2018; Xie et al. 2018). さらに，誤り種類を分類した誤りタグを用いて, 誤り種類ごとに誤り生成を行うことで, 高い性能向上が確認されている (Wan et al. 2020; Stahlberg and Kumar 2021)。一方で, これらの手法では, 誤り種類の多様さを変化させた検証を行っていない. そのため，人工データ中の誤り種類が多様であることが，訂正性能に及ぼす影響を評価できていない，仮定 (1)を検証することで，既存の研究で仮定されている，誤り種類に着目し，人工デー夕の誤りの多様さの重要性を再検証し，データ拡張手法を考案する上で考慮すべき性質が何かを明らかにする.

仮定 (2)「特定の種類の誤りが生成されることが，その種類の誤り訂正性能に寄与する」について説明する。誤り種類ごとに性能を評価している既存研究は存在しているが (Takahashi et al. 2020), 生成される誤り種類を変えた評価は行われていない。仮定 (2)を検証することで，特定の誤り種類が確実に生成されていることの重要性を再検証する。さらに，様々な種類の誤りに対してデー夕拡張を行った場合に, 誤り種類ごとに適切に誤りが生成されていることが, 重要であることを明らかにする。

仮定 (3)「データ拡張に用いるデータの規模が，訂正性能に寄与する」について説明する. データ拡張は，数千万文程度の，大規模なコーパスに対して行われる。データの規模を大きくすると, 訂正性能が向上することは既存の報告で確認されている (Kiyono et al. 2019; Wan et al. 2020). しかし, 単にデー夕拡張に用いるデー夕を大きくするだけでは, 事前学習を行ったステップ数や, 同じ単言語文から複数の異なる誤り文を生成した場合の影響の有無など, データの規模以外の要因の影響が評価できない，仮定 (3)を検証することで，既存の研究で仮定されている，大規模デー夕を用いたデー夕拡張の有効性を再検証し，大規模デー夕を用いる際に，実験設定を決定するための根拠を提供できる.

本研究では，これらの仮定の妥当性を検証するため，様々な文法カテゴリにおける誤りを生成するルールを作成し，それらを組み合わせることで誤り生成を行う。ルールを活用することで，折り返し翻訳や逆翻訳などのモデルベースの誤り生成手法と比較して，生成される誤りの種類を確実に制御することができる。この手法を用いることで, 仮定 (1) と仮定 (2) に対して, それぞれ次のように検証を行うことができる。
- 誤り生成に用いるルールの種類を変えることで, データ中の誤り種類を制御することが

できる。そのため, 誤り種類の多様さが訂正性能に与える影響を評価することができる.
- 誤り生成に用いるルールの種類を変えることで, どの種類の誤りが事前学習・再学習を行った後の訂正性能に影響を与えるか評価することができる.

さらに, 仮定 (3) に対しては, 事前学習におけるパラメータの更新回数を固定しながら，デー 夕拡張に用いる単言語コーパスの規模を評価し，検証を行うことができる。

加えて，以下の 3 つの実験を行い，提案手法単体の評価を行う.

・ 人手で作成されたデータを用いず，ルールを用いて生成されたデータのみを用いて学習を行い，その性能を評価し，学習者データを用いない教師なし設定の手法としての有効性を確認する。
- 折り返し翻訳と逆翻訳によるデータ拡張と, 既存のベンチマーク上で比較を行い, ルー ルによる誤り生成の利点と欠点について分析を行い，その利点と限界について明らかにする。

・ルールによる誤り生成を大規模に行い，学習に用いることで，既存のベンチマーク上で大規模学習データを用いた他の最先端手法と比較を行い, 本手法の利点や限界について明らかにする。

本研究の主な貢献は以下の 6 つである.

・ 編集操作による単純な誤り生成規則を文法カテゴリごとに多数作成し, 組み合わせる手法を考案した。
- 人工データ中の誤り種類の多様さが性能向上に寄与することを，誤りカテゴリごとでの比較で検証した。
- 特定の種類の誤りが生成されていることが, その種類の誤り訂正性能の向上に寄与することを示した。

・ データ拡張によって性能向上を得るためには, 単言語コーパスの規模ではなく, 十分なパラメータ更新回数と誤り生成回数が必要であることを示した.
- 提案手法が教師なし設定で, 既存の手法と比較して高い性能を示すことを確認した.
- 折り返し翻訳や逆翻訳でのデー夕拡張と, 提案手法との比較により, ルールによる誤り生成の性質について分析を行った。

本稿ではまず， 2 節で文法誤り訂正のデータ拡張に関する関連研究を紹介する， 3 節では，本研究で用いるデータ拡張手法について説明する．4 節では, 実験に用いるデータやモデルについて説明する．5 節にて， 3 つの仮定について検証する実験を行い，議論する． 6 節にて，提案手法と既存の手法との比較を行う， 7 節にて, 本稿のまとめを記す.

## 2 関連研究

ニューラル機械翻訳の手法を文法誤り訂正に応用するための学習データとして，学習者コー パスと呼ばれる，言語学習者の作文に対して注釈を付したデータが広く用いられている。しかし, 学習者コーパスの規模は, 高性能なニューラル機械翻訳モデルの学習には, 依然, 不十分であることが指摘されている (Junczys-Dowmunt et al. 2018). 学習者コーパスを人手で増やすことは容易ではないため, デー夕拡張によってデータ不足の問題を補おうという研究が活発に行われている. Lichtarge et al. (2019)は，折り返し翻訳と Wikipedia の編集履歴を活用して学習データを作成し, ニューラル機械翻訳モデルに対して大規模データで事前学習を行ったのちに，学習者コーパスで再学習を行うという手法が効果的であることを確かめた.

データ拡張手法として, 最も単純なものは, トークンレベルでの編集操作による誤り生成である。文法誤り検出・訂正の分野では，ニューラル手法が使われるようになる以前から，編集操作による誤り生成が取り組まれている。ニューラル以前の手法では，特定の品詞に限定した誤り生成が行われていることが多い. Izumi et al. (2003)は, 最初に誤り生成が行われた研究であり, 置き換え・削除の操作によって冠詞誤りを生成した. Brockett et al. (2006)は, 不可算名詞の数に関する誤りを正規表現を用いて生成し, 文法誤り訂正を機械翻訳の問題として捉え, 初めて統計的機械翻訳の手法を応用した. Lee and Seneff (2008)は, 誤り検出への応用のため, 動詞を 5 変化形の間で変化させることで誤りを生成した. Rozovskaya and Roth (2010a, 2010b)は,学習者コーパスでの誤り傾向を反映し, 前置詞誤り・冠詞誤りを生成した. Cahill et al. (2013) は, Wikipediaの編集履歴から前置詞誤りを抽出し, その分布に従って誤り生成を行った.

編集操作による誤り生成は, ニューラル手法が用いられるようになっても, 活発に研究されている. Grundkiewicz et al. (2019) は，スペルチェッカの出力から各単語の誤り候補集合を作成し，それに基づいて単語を置き換えて誤り生成を行った。この手法は，BEA-2019 Shared Task (Bryant et al. 2019)の 3 部門中 2 部門で 1 位の成績を収めた. Choe et al. (2019)は, 単にランダムな単語の置換を行うだけでなく, 学習者コーパス中の誤りパターンや, 前置詞の置き換えや名詞・動詞の語形変化などのルールを用いて誤り生成を行った。この手法は, 同タスク同部門で 2 位の成績を収めた. Flachs et al. (2019)は，文中のコンマを削除することで，約物の誤りを生成し，ニューラル手法での有効性を検証した，Xu et al. (2019)は，品詞解析の結果に基づき接辞に関する誤り（arrive $\rightarrow$ arrival など）を生成した。

逆翻訳は，誤りを生成するモデルを用いて，文法的に正しい文から誤り文を生成するデー夕拡張手法である (Rei et al. 2017). Xie et al. (2018)は, 単に逆翻訳を行うのではなく, 逆翻訳のビーム探索においてノイズを加えることで多様な誤り文を生成する手法を提案した。 さらに， Kiyono et al. (2019)は, Xie et al.の手法を大規模データで試し，その有効性を示した. Wan et al. (2020)は, 誤り生成モデルを用いてデータ拡張を行う際に, 隠れ状態にノイズを加える手法

を提案した. Stahlberg and Kumar (2021)は，スパン単位の翻訳モデル (Stahlberg and Kumar 2020)を用い，逆翻訳を行った。この手法では, 誤り種類をモデルに与え, 生成する誤り種類の制御を行うことで，多様な誤り文を得ている。

折り返し翻訳は，機械翻訳によって，文法的に正しい文を異なる言語に翻訳し，再び元の言語へ再翻訳する手法である。 Lichtarge et al. (2019) は，折り返し翻訳により得られたデータで事前学習を行い，折り返し翻訳の文法誤り訂正での有効性を確かめた。Lichtarge et al. (2020) は, perplexityに基づくカリキュラム学習を行い，折り返し翻訳により得られるデータの性質を調査した。

## 3 手法

本節では，まず， 3.1 節で，本研究で用いる 5 つの誤りカテゴリについて説明する．誤りカテゴリは，誤り生成の効果を検証する実験で用いられる。次に， 3.2 節で誤り生成行うモジュールについて説明し，続いて，3.3節でそのモジュールを組み合わせて誤り生成を行う方法について説明する。

## 3.1 誤りカテゴリ

本研究では，英文中の誤りを機能語，語形変化，語彙選択，語順，表記の 5 カテゴリに分類する。これらの誤りカテゴリを用いることで，人工データ中の誤りの種類を変える効果を容易に比較することが可能になる.

誤りは，トークン単位のものと構文単位のものに分類できる。語順誤りは，構文単位の誤りに属し, 語や句の位置に関する誤りを指す. 例えば, "I my flight missed ( $\rightarrow$ missed my flight)." の missed の位置の誤りは語順誤りである.

トークン単位の誤りは，語彙に関するものと表記に関するものに分類できる。表記誤りは,文字による言語の表記方法の規則に関する誤りである。具体的には, 句読法, 複合語, 正書法,縮約，大小文字などに関する誤りである。なお, 本研究では, 綴り誤りも表記誤りの一部としている。例えば, “I went $t u(\rightarrow$ to $)$ Tokyo, ( $\rightarrow$.)"の $t u$ や, は表記誤りである.

語彙に関する誤りは，機能語誤りと内容語誤りに分類できる。機能語誤りは，前置詞や代名詞などの文法的関係を示す語に関する誤用である。例えば, “I missed mine flight.” の mine は機能語誤りである。内容語誤りは, 誤り生成の方法が異なっていることから, さらに, 語形変化誤りと語彙選択誤りに分類できる。語形変化誤りは，形容詞・名詞・動詞の語形に関する誤りである。例えば, “I goed ( $\rightarrow$ went) to Tokyo." の goed は語形変化誤りである. 語彙選択誤りは，文脈上適切な内容語の選択に関する誤りである。例えば, “I lost ( $\rightarrow$ missed) my flight." の lost は語彙選択誤りである.

## 3.2 誤り生成モジュール

人工的な誤り生成をルールで行う場合, 品詞などの文法カテゴリや, 個別の単語ごとにルー ルを定める必要がある。本研究では，文法カテゴリや単語ごとに誤り生成を行う単位を誤り生成モジュールと呼ぶ. 誤り生成モジュールは, 188 種類作成した。表 1 に，誤りカテゴリごとのモジュール数の内訳を記した。

誤り生成モジュールの入力文は予め, SpaCy v2.31を用いてトークン化されている．また，各単語は SpaCyによって, 品詞タグ, 係り受けタグ, 見出し語, 固有表現のIOB タグが付される。各誤りモジュールは，誤り生成の際に，これらの情報を利用する。

言語的な知識をほとんど伴わない単純な規則として, ランダムに単語または文字をマスクトー クンに置き換える，マスクトークン予測の規則と，頻度の高い機能語と記号をそれぞれ削除する削除の規則の 2 つを用意した. これらを基礎モジュールと呼ぶ.

機能語誤りを生成するモジュールは, 前置詞・接続詞・代名詞・限定詞・疑問詞を対象とし,置き換える単語の候補など，規則を各単語ごとに定める必要があるため，各単語ごとに作成される. そのため, このカテゴリのモジュール数は, 他と比べ多くなっている. これらのモジュー ルは, 各モジュールの持つ条件にしたがって, 削除・置き換え・挿入の編集操作を行うことで,誤り生成を実現する。例えば，前置詞 than に関する規則では， 0.2 の確率で than を削除し，それぞれ，0.4,0.2,0.1,0.1の確率で，to, from, over, beyondに置き換える. トークンを挿入するモジュールもあり，例えば，冠詞と指示代名詞を挿入するモジュールでは，文頭，あるいはある単語間の位置において, 左の単語が存在しないか, あるいは左の単語の Penn Treebank 品詞夕グが, VB, VBD, VBG, VBN, VBP, VBZ, INのいずれかであり，かつ右の単語の Penn Treebank 品詞タグが, NN, NNS, JJ, JJN, JJS のいずれかである場合に, a, an, the, this, that, these, thoseを, それぞれ， $0.3,0.3,0.3,0.025,0.025,0.025,0.025$ の確率でサンプルし插入する. 置き換え規則の候補となる単語の集合は，辞書から意味の近い単語を収集し作成した。また，意味が元のもの

表 1 誤り生成モジュールの内訳
^{1}$ https://spacy.io/
}

と大きく変わる候補については, サンプルする確率を低くし，調整した。

語形変化誤りを生成するモジュールは, 形容詞・名詞・動詞の変化に対して，辞書を利用して異なる語形への置き換えを行う，語形変化の辞書としては， lemminflect²用いた。さらに，受動態を導く be や不定詞の $t o$ を削除するモジュールも用意した.

語彙選択誤りを生成するモジュールは，接尾辞を置き換えるものと，類義語に置き換えるものを作成した．接尾辞誤りのモジュールは，接尾辞の辞書を用意し，それを置き換えた語が辞書中にあれば置き換える操作を行う，類義語誤りのモジュールは, WordNet (Miller 1995)のシソーラスを用い，置き換えを行う。

語順誤りのカテゴリは，その性質に基づき，さらに 2 つのサブカテゴリに分けることができる．1つは，語や句が文中で動くことによる誤りである。もう 1 つは，句の中で語の並びが変わることによる誤りである。語順誤りを生成するモジュールのうち，前者の誤りに対するものは， モジュールごとに正規分布を設定し，語句の移動距離をサンプルする，語については，副詞と疑問詞の位置を，句については，前置詞句の位置を移動するモジュールを用意した。また，すべての語に対して小さな位置の移動を行うモジュールも用意した. 後者のものに対しては，句を検出し，その並びを変えることにより誤りを生成する。形容詞の連接を並び替えるモジュー ルと，名詞句 A, Bに対して “A of B”を“B of A”にするモジュールを用意した。

表記の誤りを生成するモジュールは，誤りの種類ごとに異なる方法で誤り生成を行っている.句読法の誤りでは, 約物の削除・置き換え・挿入の操作を行う，大小文字の誤りでは，語頭の大小文字を入れ替える。この操作は，固有表現ではスパン単位で行う。これは，例えば，'Long Island' の誤り事例として, 'long Island'よりも訂正の難度が高い, 'long island' の事例を多く生成するためである，正書法の誤りでは，ランダムに単語間の空白文字を削除，または単語中に空白文字を插入する。また，単語中に空白文字を挿入する際は，分割される単語が辞書中に含まれているようにする。これは, 例えば, 'football'は, 'foo tball'よりも 'foot ball'と分割されてほしいためである，綴り誤りでは，単語に対し，文字の削除・挿入・置き換え・隣り合う字の入れ替えの操作を行う．操作の回数は幾何分布からサンプルされる．挿入・置き換えされる文字は, 対象となる箇所の前 2 文字 $x_{n-2}, x_{n-1}$ と, 後ろ 2 文字 $x_{n+1}, x_{n+2}$ から, 間の文字 $x$ を予測する確率分布 $p\left(x \mid x_{n-2}, x_{n-1}, x_{n+1}, x_{n+2}\right)$ からサンプルされる. この分布は, 順方向ニュー ラルネットワークを学習し, 推論することで得る.

すべてのモジュールに対する詳しい説明は，付録に記した。

## 3.3 誤り生成の仕組み

本研究では，誤り生成モジュールを組み合わせる手法を考案した. 図 1 は, 提案手法の概要


図 1 誤り生成手法の概要

を示している.この手法では, 文法的な文を入力として, 複数の誤り生成モジュールを順番に適用していき，最終的な誤り文を得ている。

モジュールを適用する順序は, 後に来るモジュールが, 先に来るモジュールが生成した誤りを完全に書き換えないように定める，例えば，前置詞誤りを生成するモジュールは，叔り誤りを生成するモジュールより先に来る。これは，前置詞誤り生成モジュールは，誤り生成の過程

のようになり，経り誤りが前置詞誤りによって打ち消されてしまうが，前置詞誤りを先に生成

用順序は，付録に示した.

各誤り生成モジュールは，モジュールの持つ条件を満たす語や区間に対して適用される。各モジュールは, 各入力文ごとに, 誤り生成を行う確率（誤り生成確率）を変化させる。これは,各誤り文が多様な誤り傾向を持つようにするための工夫である。提案手法では, 誤り生成確率の分布にベータ分布を用い，モジュールごとに分布のパラメータを変えることで，各文法カテゴリの誤りの割合を調整している。各モジュールが持つべータ分布のパラメータは，人手で定めた，その具体的な值は，付録に示した。各モジュールは，入力文に対し，まず誤り生成確率をサンプルする，次に，各単語や区間に対して，モジュールの適用の条件を満たすかを検査する。適用可能であれば，一様分布から值をサンプルし，その值が誤り生成確率を下回っていれば，誤り生成を行う。

例として, 図 1 の誤り生成について説明する. 文法的な文 “I went to Tokyo.” が入力される. まず，1番目のモジュールとして, 前置詞 to の誤りを生成するモジュールが入力文に適用され

る。入力文に対して, 誤り生成確率 0.2 がサンプルされる。文中の 'to'は, このモジュールが適用可能であるため, この単語に対して一様分布から値 0.1 がサンプルされる. この値が誤り生成確率より小さいため, この'to'に対して誤り生成が行われる。 'to'は, 'for'や 'in'などへの置き換えか，削除からランダムに選択される。図の場合は，削除が行われている．次に，2 番目のモジュールとして，代名詞 $I$ の誤りを生成するモジュールが適用される。誤り生成確率 0.05 がサンプルされる. 文中の 'I'は，このモジュールが適用可能で，一様分布から 0.9 がサンプルされる。この値は誤り生成確率より大きく, 誤り生成は行われない。この操作を，すべての誤り生成モジュールで繰り返し，最終的な誤り文を得る。

## 4 実験設定

本節では, 5 節と 6 節の実験に用いるデータセット, モデル, さらに, 事前学習・再学習を行う際の設定について説明する。

## 4.1 データセット

データ拡張には, WMT 2020 news task³単言語コーパスのうち, News Crawl 2015-2020, Europarl v10, News Commentary v16 を用いた。単言語コーパスは, fastText の言語判別器4を用い，英語以外の文を取り除き，163,616,582 文から成っている。'16M 文'など，単言語コーパスの一部を用いる場合は，これらからサンプルした文を用いている.

学習者コーパスは, BEA-2019 Shared Task ${ }^{5}$ (Bryant et al. 2019)の訓練データセットを用いる. このデータセットは，4つのコーパスから成っている。 それぞれ，FCEコーパス (Yannakoudakis et al. 2011), NUCLE (Dahlmeier et al. 2013), Lang-8 コーパス (Mizumoto et al. 2011; Tajiri et al. 2012), Write \& Improve (Bryant et al. 2019; Granger 1998) である。それぞれの規模を表 2 に示す. Lang-8コーパスでは，誤り文と修正文が同一な文対は，単に訂正が行われていない

表 2 訓練データセットの概要
^{5}$ https://www.cl.cam.ac.uk/research/nl/bea2019st/
}

表 3 評価データセットの概要

事例もあるという事情から，予め取り除いた。また, Lang-8コーパス以外のコーパスは, 比較的規模が小さいが品質は高いという事情から, 学習時に標本数を 3 倍にした. これらの操作を行ったことで，1 エポックで学習されるデータは，のべ 857,787 文対となる ${ }^{6}$.

評価には 4 種類のデータセットを用いた。 それぞれ，BEA-2019 Shared Taskの検証/評価デー 夕, CoNLL-2013 Shared Task (Ng et al. 2013)の評価データ（CoNLL14 評価データの検証デー タとして用いる)，CoNLL-2014 Shared Task (Ng et al. 2014)の評価データ，FCEコーパスの検証/評価データ, JFLEG コーパス (Napoles et al. 2017)の検証/評価データである. BEA-19, FCE データセットの評価には ERRANT (Bryant et al. 2017), CoNLL-13/14 には MaxMatch (Dahlmeier and Ng 2012)，JFLEGには GLEU (Napoles et al. 2015) を用いた。それぞれの評価尺度，規模を表 3 に示す。

すべてのデータに対して, 分解可能文字 (àなど) や約物の正規化の前処理を行った. また, 語彙サイズ 16,000の BPE-dropout (Provilkov et al. 2020)を各エポックで適用した. BPE-dropout の dropout 確率は, 学習データの誤り文側で 0.1 , その他 (学習データの修正文側, 評価データの誤り文・修正文）で 0 である。

## 4.2 モデル

文法誤り訂正のモデルは, fairseq v0.10.27で実装されている Transformer Big モデル (Vaswani et al. 2017) を用いた. Transformer Big モデルは, 16-head の self-attention 層があり, 隠れべクトルの次元は 1,024 である. Feed-forward 層の次元は 4,096であり, 活性化関数には GeLU 関数 (Hendrycks and Gimpel 2016) を用いた. さらに，エンコーダの入力, デコーダの入力と出力の単語分散表現のパラメータを共有した (Press and Wolf 2017). 収束の良さの観点から, post-norm 設定ではなく pre-norm 設定を用いた，推論時には，幅 12 のビーム探索を行い，罰則 0.6 の長さ正規化を行った. 実験の際には, シード值を変えて 5 モデルを学習し, 各スコアの平均と, アンサンブル生成を行ったときのスコアを報告する. これらの設定は, 既存の研究
^{7}$ https://github.com/pytorch/fairseq
}

とパラメータ数やモデル構造の条件を一致させた上で, それ以外の点については, 学習者コー パスのみを用いて予備実験を行い，最も性能が良くなるものを採用した.

## 4.3 事前学習・再学習

事前学習では， 3 節の手法で生成したデー夕を用い，再学習では，学習者デー夕を用いる，誤り生成は, 事前学習のエポック毎に行っている。このため, 事前学習時の訓練デー夕の誤り文側は, エポック毎に異なっている。再学習は, 学習者コーパスを用い, 30 エポック行う. 事前学習のエポック数は実験設定によって異なるため，その都度明記する，事前学習を行わず，学習者データのみで訓練する場合, 40 エポック学習する。

## 4.4 訓練設定

損失関数は， $\alpha=0.1$ のラベル平滑化を適用した交差エントロピー損失を用い，最適化には， $\left(\beta_{1}, \beta_{2}\right)=(0.9,0.999)$, L2 正則化係数が 0.001 の AdamW アルゴリズム (Loshchilov and Hutter 2019) を用いた，学習率は，事前学習＋再学習の実験では 0.001 ，学習者コーパスのみの実験では 0.0015 とし, 最初の 8,000 ステップの間, 線形に warm-up を行った後に, 逆 2 乗減衰を行った. 訓練事例の最大長は 400 トークンとした. Transformer モデルの dropout 確率は, 注意機構と順伝播層で 0.2 , その他で 0.3 とした。勾配クリッピングは, 事前学習 + 再学習の実験では 0.3 , 学習者データのみの実験で 1.0 とした. 1 ミニバッチの最大トークン数は 4,000 とし, 事前学習 + 再学習の実験では, 128 ミニバッチ, 学習者デー夕のみの実験では, 8 ミニバッチの勾配を累積する。

## 5 データ拡張における 3 つの仮定の検証

本節では，1節で述べた 3 つの仮定に関して，それぞれ検証を行う。

## 5.1 (1) 誤り種類の多様さの効果

仮定 (1)「生成される誤りの種類の多様さが, 訂正性能に寄与する」について調査するため, 事前学習に用いるデータの誤り生成に用いる規則のカテゴリを変える実験を行った. 全モジュー ルを用いたもの, モジュール数 0 のもの, 基礎モジュールのみのもの, 基礎モジュール +1 カテゴリ，全モジュール－1 カテゴリで実験を行った，誤り生成は 1,600 万文に対して行い，事前学習は 10 エポック行った. 表 4 に結果を示した.

誤り生成を行わずに事前学習を行った場合, すなわち, 入力から出力へコピーを行うよう学習した場合, 性能は学習者コーパスのみで訓練した場合よりも悪くなっている．なお, 誤り生成を行わない設定では，勾配の発散を防ぐため，勾配クリッピングの值を 0.1 としている。この

 &  &  &  \\

表 4 誤り種類の多様さの効果（5 モデルの平均 / アンサンブル）.

結果は, 事前学習を行うためには, 単言語コーパスに対して何かしらのデータ拡張を行う必要があることを示している。すべてのモジュールを用いた場合，学習者コーパスのみを用いた結果に対し, BEA-19, CoNLL-14, FCE, JFLEGの 4 つ評価データセットにおいて，それぞれアンサンブル生成を行った場合で, $5.86,5.46,2.33,2.54$ ポイントの大幅な性能向上が確認できた.基礎モジュールのみを用いた場合でも，4.04, 2.88, 1.79, 0.85 ポイントと性能向上が見られる. このことは，トークンの削除とマスクトークン予測という単純な操作が，データ拡張手法として高い有効性があることを示している。一方で，全モジュールから基礎モジュールのみを取り除いてデータ拡張を行った場合，全モジュールを用いた場合と性能差が小さいことが確認できる。 このため, 基礎モジュールの寄与は, 多様な誤り生成を行った場合に打ち消されると言える.

次に，基礎モジュールを加えた上で，さらに 1 カテゴリのモジュールと 4 カテゴリ・ 5 カテゴリのモジュールを加えた場合で比較を行い, 生成される誤りの多様さが及ぼす影響について評価を行う，基礎モジュールに対して，1 カテゴリのモジュールを追加することで，基礎モジュー ルのみを用いてデータ拡張を行う場合と比較して, 全体的に性能の向上が確認できる。特に, 表記誤りが性能向上に大きく影響していることが確認できる．基礎モジュールと 4 カテゴリのモジュールを用いる場合，すなわち，全モジュールから 1 カテゴリのモジュールを取り除いた場
合では，全モジュールを用いた時と同程度の性能向上が見られる．表記誤りのモジュールを取り除いた場合, 他のカテゴリと比べて性能低下が大きい.このことから, 表記誤りは, 他のカテゴリと比べて性能への影響が大きいことが示唆される。学習者コーパス中の表記誤りの割合は,機能語や内容語の誤りの割合と比較して特段に多いというわけではない (White and Rozovskaya 2020). そのため, 表記誤りの訂正性能への影響は, このカテゴリ特有の性質によるものと考えられる。また，全モジュールから語順に関するモジュールを除いた場合の性能が他と比べて高くなっている． 6.2 節における折り返し翻訳や逆翻訳との提案手法の比較でも述べる通り, 本研究で設計したルールによる誤り生成では，語順誤りの訂正性能が低く，良い語順誤りが生成できていない可能性があり，このことが全体の性能低下の要因となっている可能性がある.

必ずしもすべてのモジュールを用いたときが最も性能が高いというわけではないが，データ拡張による誤りデータ中の誤り種類が増えることが，一般に文法誤り訂正モデルの訂正性能を向上させること，すなわち，仮定 (1) の妥当さを確認することができた.

## 5.2 (2) 訂正される誤り種類への影響

仮定 (2)「特定の種類の誤りが生成されることが，その種類の誤り訂正性能に寄与する」について調査するため，5.1 節でのモデルの出力に対し, ERRANT 評価器による誤り種類別自動評価を行った． ERRANT 誤り種類は，BEA-19 評価データに出現するものから，機能語に関するもので出現頻度が高い 3 種, DET, PREP, PRON, 内容語に関するもので出現頻度が高い 3 種, NOUN:NUM, VERB, VERB:TENSE, 表記に関するもので出現頻度が高い 3 種, ORTH, PUNCT, SPELL,語順誤りの WO の計 10 種を対象とした. 各誤り種類の名称と, 対象とする文法カテゴリ, 誤りの例を表 5 に示す.

図 2 は, 事前学習のみを行ったモデルでの誤り種類別評価である。数値は $F_{0.5}$ 值であり, 5

 &  &  \\

表 510 種の誤り種類の一覧（例は ERRANT の元論文 (Bryant et al. 2017)のものである.)

図 2 BEA-19 評価データでの, 事前学習のみを行ったモデルの誤り種類別性能 (5モデルの平均).

モデルの平均の結果を示している，学習者コーパスによる再学習を行っていないため, 誤り生成で出現しない種類の誤りは訂正されないと考えられる，図 2 の「誤りなし」の場合では，ほとんどすべての誤り種類で，訂正ができていない．SPELLで誤り訂正が行えているのは，サブワードを用いている効果と考えられる。「基礎のみ」の場合では，「誤りなし」と異なり，全体的にある程度の誤り訂正が行えるようになっている。 さらに，機能語の誤り生成を追加した場合では, DET, PREP, PRON の機能語に関する誤り種類で特に性能が向上していることが確認できる. なお, WO の值が $\mathrm{F}_{0.5}=10$ となっているが, これは, "It is combination of a physical power." $\rightarrow$ "It is a combination of physical power." などの訂正事例を ERRANT が誤って分類しているからと考えられ，語順誤りが訂正できていることを意味しない。語形変化の誤り生成・語彙選択の誤り生成を追加した場合では, NOUN:NUM, VERB:TENSE の性能向上が大きい。一方, VERB の訂正性能は変化していない. 語順の誤り生成を追加した場合では, WOのみで性能向上が確認される. 表記誤り生成を追加した場合では, 特に ORTH, PUNCT, SPELL の表記誤りで性能向上が確認できる。また, PRON, VERBでも大きな性能向上が確認でき, PREP, NOUN:NUMにおいてもその影響を見ることができる。これは綴り誤りの生成が，間接的に別の種類の誤りを生成したためたと考えられる，以上のことから，事前学習のみを行ったモデルでは，多くの誤り種類で，仮定 (2) が適当であることが確認された.

図 3 は, さらに再学習を行ったモデルでの誤り種類別評価である。「事前学習なし」は，学習者コーパスのみを用いて学習を行った結果である。「事前学習なし」と「基礎のみ」の場合を比較すると，ほとんどすべての誤り種類で事前学習によって大幅な性能向上が見られていることが分かる。 さらに，データ拡張を行う誤りカテゴリ別に見ると，「基礎＋機能語」でDET, PREP, PRON, 「基礎 + 語順」でWO，「基礎＋表記」でORTH, PUNCT, SPELLの値が，「基礎のみ」や基礎カテゴリに他の 1 カテゴリを加えた場合と比べて高くなっている，このことから，これらの誤り種類では，再学習後も仮定 (2) が適当であることが分かる。一方で，「基礎＋語形変化」「基礎 + 語彙選択」が内容語の誤り訂正に与える効果を明確に確認することはできなかった。このことから, 誤り生成を行うカテゴリが, 学習者コーパスでの再学習後にも訂正性能に影響を与えるかは，誤りカテゴリごとに異なってくる可能性が示唆される。

## 5.3 (3) データの規模の影響

仮定 (3)「データ拡張に用いるデータの规模が，訂正性能に寄与する」について調査する。一般に，学習に用いるデータサイズが大きくなれば，性能も向上すると考えられる. Kiyono et al. (2019), Wan et al. (2020)は, 誤りを生成するモデルを用いたデータ拡張を行い, 学習データの増加が性能の向上につながることを示した. 図 4 の青点線は, 事前学習のエポック数を 10 で固定し, 提案手法での誤り生成に用いる単言語コーパスのサイズを変えた結果である. 先行研究と同様に，データサイズが性能の向上に寄与するという結果になっている.

図 3 BEA-19 評価データでの, 再学習まで行ったモデルの誤り種類別性能（5 モデルの平均）.

しかし, この結果からは, 性能向上の主な要因が, デー夕拡張に用いる単言語コーパスの規模が大きくなったことなのか，あるいは，パラメータの更新回数が増えたことなのかがわからない．どちらが性能向上に重要かを確認するため，単言語コーパスの規模を変えた時，事前学習全体でのステップ数が同じになるように学習エポックを変えて実験を行った。具体的には，単言語コーパスの文数と学習エポックの積が 1 億 6,000 万となるようにした. 図 4 の赤実線が, その結果である。単言語コーパスの文数が 100 万文であっても，ステップ数を揃えれば，性能の低下は非常に小さいことが確認できる。このことから，単言語コーパスの規模ではなく， ステップ数，言い換えれば，モデルパラメータの更新回数が性能向上の主な要因であることが分かる.このことは，仮定 (3) が適当なものではないことを意味する.

本研究では, デー夕拡張はエポック毎に行っている。そのため, 5.3 節の結果は, 十分なステップ数で学習を行ったためだけでなく, 十分な回数の誤り生成を行ったことも影響している可能性がある．この効果を検証するため，毎エポックでデータ拡張を行う設定と， 1 度だけデー 夕拡張を行い，そのデータを繰り返し用いる設定の比較を行う。図 5 の赤実線が毎エポックデー

図 4 単言語コーパスの規模・訓練エポックを変える効果、スコアは 5 モデルの平均であり，番号はエポック数を表す.

図 5 毎エポック誤り生成を行う効果，スコアは 5 モデルの平均であり，番号はエポック数を表す.
夕拡張を行った結果であり，青点線が 1 度だけ行った結果である． 5.3 節の結果に基づき，学習ステップ数は固定とした。毎エポックでデータ拡張を行う場合は, より性能が高いだけでなく,利用する単言語コーパスの規模に性能が大きく影響されないことが確認できる。一方で, 1 度だけ行う設定では，単言語コーパスの規模が 400 万文より少なくなると性能が急に低下し始める.これは, 1 度だけデー夕拡張を行う場合では, 事前学習で学習される誤り文の種類が, 単言語コーパスの規模で決まってしまうためだと考えられる。このことから, 誤りデータを毎エポックで生成することは, より多様な誤り文でモデルを学習でき, 単言語コーパスの規模によらない性能向上をもたらすことが分かる.このことも, 先程と同様に, 仮定 (3) が適当なものではないことを意味している。一方で，400万文より多い単言語コーパスを用いる場合は，計算リソースの節約のため，1回だけの誤り生成を行うだけでも十分と言うこともできる。そのため, 計算リソースの制約がある場合, 利用可能な単言語コーパスの規模によって, 誤り生成を 1 回だけ行うか，毎エポック行うかのどちらが良いか，検討すべきである.

## 6 他手法との比較

本節では，本手法と他手法に対する既存のベンチマーク上での比較を行い，本手法の有効性や限界について検証を行う.

## 6.1 学習者データを用いない手法・最先端手法との比較

本研究で用いた手法と, 最先端の手法を比較するため, より大規模なデータを用い, 性能向上のための工夫を追加した実験を行った。性能向上のための工夫としては, ドメインを限定した追加再学習，マスク言語モデルによるリランキングを行った.

ドメインを限定した追加再学習 Choe et al. (2019) では, さらなる性能向上のため, 拡張デー 夕による事前学習, 学習者データによる再学習を行った後に, 再学習に用いるデータセットのうち, テストデータとドメインが近いもののみを用いて追加の再学習を行っている。本研究では, BEA-2019, FCEコーパスのテストセットに対して，それぞれ W\&I train, FCE trainをドメインが近い訓練データとして用いる。事前学習を行ったモデルに対し, すべての学習者コーパスで 5 エポックの再学習を行い, ドメインが近い訓練データでの追加再学習は 30 エポック行う.

マスク言語モデルによるリランキング Chollampatt et al. (2019)では，モデルがビーム探索により生成した n-best 候補に対し, BERT (Devlin et al. 2019) が計算する疑似尤度を用いてリランキングを行っている。疑似尤度の計算方法は, Salazar et al. (2020)の方法に従い, RoBERTa large モデル (Liu et al. 2019)を用いた.

表 6 に, 事前学習のみを行った場合の結果を示す. 事前学習のみを行った場合は, 学習者コー パスを用いない教師なし設定とみなすことができる。 さらに, 既存の学習者コーパスを用いな

表 6 事前学習のみを行った場合の結果. 既存研究は学習者コーパスを用いないものである.

い教師なし設定の手法より高い性能を示していることが分かる.

表 7 に, 再学習・追加の再学習まで行った場合の結果を示す. 再学習, 追加の再学習を行った場合では，デー夕拡張に用いている手法・単言語コーパスが既存報告ごとに異なっているため単純な比較はできないが, 既存の最先端手法と同程度の性能を示していることが確認できる. また，ドメインを限定した追加の再学習やマスク言語モデルによるリランキングが性能の向上に効果的であることも確認できる.

## 6.2 折り返し翻訳・逆翻訳との比較

Lichtarge et al. (2019)は，折り返し翻訳により得られたデータによる事前学習が文法誤り訂正に効果的であることを示した。また, Xie et al. (2018)は，文法誤り訂正の逆翻訳において効果的にノイズを加える方法を示し, Kiyono et al. (2019) は, 逆翻訳を大規模なデータで実施し, その有効性を示した，本節では，提案手法を折り返し翻訳，逆翻訳と比較し，ルールによる誤り生成の利点と欠点について分析する.

折り返し翻訳については，まず，ドイツ語・フインランド語・フランス語・ラトビア語の機械翻訳モデルを WMT のニュースタスクのデータセットを用いて学習する。翻訳モデルには， Transformer モデルの base 設定を用いた。その結果を表 8 に示す. 4 言語で， 1,600万文に対して折り返し翻訳を行い，事前学習のデータとして用い，学習者データで再学習を行った。さらに，学習データ中の事例が多様になるように，各エポックで 4 言語でのデータから文ごとにランダムに学習事例をサンプルする実験も行った，逆翻訳については，ランダムノイズを加えるXie et al. (2018)の手法を用い, Koyama et al. (2021a)で用いられている設定を採用し, Transformer モデルの base 設定の逆翻訳モデルを学習し， $\beta_{\text {random }}=8$ を用いた.

結果を表 9 に示した，提案手法を用いた結果は，折り返し翻訳によるすべての設定よりも高

 &  &  &  \\

Choe et al. (2019) & 69.06 & 60.33 & - & - \\
Grundkiewicz et al. (2019) & 69.47 & 64.16 & 55.81 & 61.22 \\
Kiyono et al. (2019) & 70.2 & 65.0 & - & 61.4 \\
Lichtarge et al. (2020) & 73.0 & 66.8 & - & $\mathbf{6 4 . 9}$ \\
Wan et al. (2020) & 70.0 & 65.9 & $\mathbf{6 2 . 6}$ & - \\
Stahlberg and Kumar (2021) & $\mathbf{7 4 . 9}$ & $\mathbf{6 8 . 3}$ & - & 64.7 \\

学習者コーパスのみ & 59.09 & 54.03 & 50.18 & 57.33 \\
シングル & 63.56 & 56.79 & 53.14 & 58.15 \\
アンサンブル & 66.06 & 60.49 & 54.38 & 60.49 \\
アンサンブル + リランキング & & & & \\
事前学習 + 再学習 & 70.20 & 63.71 & 55.94 & 60.98 \\
シングル & 71.93 & 64.91 & 57.23 & 61.34 \\
アンサンブル & 71.80 & $\underline{65.23}$ & 57.31 & $\underline{63.47}$ \\
アンサンブル + リランキング & & \\

シングル & 70.28 & - & 57.65 & - \\
アンサンブル & 73.11 & - & $\underline{59.19}$ & - \\
アンサンブル +リランキング & $\underline{72.85}$ & - & 58.87 & - \\

表 7 再学習・追加の再学習まで行った場合の提案手法での結果. 既存研究は, 学習者コーパスを用いたものである。なお，下線は valid データで最も性能が高かった値に付している。

表 8 折り返し翻訳モデルの BLEU スコア（SacreBLEU (Post 2018)を用いた)

い性能を示していることが確認できる。一方で，逆翻訳を用いた手法と比較した場合，すべての評価データで性能が劣る結果となった，提案手法には，ルールによって学習データの誤り種類をコントロールできるという利点があるものの，単に誤り訂正の性能を改善したいのであれば，逆翻訳による手法は有力な選択肢と言える。

そこで, 各手法間のデータ拡張の効率について議論する。本研究では, 産総研の AI 橋渡しクラウド $(\mathrm{ABCI})$ を利用しており，そこでの費用で比較を行う。折り返し翻訳・逆翻訳によるデータ拡張では GPUを用いた翻訳に毎時 0.3 ポイントの費用を消費するrt_G.smallノードを

 &  &  &  \\

フィンランド語 & $65.89 / 68.25$ & $60.09 / 62.02$ & $\underline{53.44} / 55.15$ & $\underline{59.45} / 59.65$ \\
フランス語 & $65.81 / 68.08$ & $59.50 / 61.10$ & $53.01 / 55.19$ & $58.78 / 59.31$ \\
ラトビア語 & $65.80 / 67.97$ & $58.79 / 60.51$ & $53.27 / \underline{55.26}$ & $59.20 / 59.65$ \\
4 言語からサンプル & $\underline{66.05} / \underline{68.71}$ & $\underline{60.30} / \underline{62.09}$ & $53.22 / 54.79$ & $59.41 / 59.97$ \\

表 9 提案手法・折り返し翻訳・逆翻訳の比較（5 モデルの平均 / アンサンブル）

用い, 毎時 20 万文程度の生成が可能である。そのため, 1,600万文のデー夕拡張を行うためには, 折り返し翻訳で，約 96 ポイント（約 9,600 円）, 逆翻訳で約 24 ポイント（約 4,800 円）が必要となる。なお, 逆翻訳では, 誤り生成モデルを学習するため, さらに約 3 ポイント消費するため, 実際には合計約 27 ポイント（約 5,400 円）が必要となる. これに対して, 提案手法では,毎時 0.6 ポイントの費用を消費するrt_C.largeノードを用いる．毎時 150 万文で SpaCyによる夕グ付け, 毎時 1,000 万文で誤り生成を行うとすると, 1,600 万文・ 10 エポックのデータ拡張を行うためには, 約 16 ポイント（約 3,200 円）が必要となる. 以上のことから, 提案手法は, よりデータ拡張の効率が良い手法であると言える.

5.2 節と同様に, 再学習後のモデルで誤り種類別評価も行った. 結果を図 6 に示す. 提案手法による結果は, 折り返し翻訳のものと比較して, ほとんどの誤り種類で良い結果となっている.特に, ORTH, PUNCT, SPELL などの表記の誤りや, NOUN:NUM で高い性能を示している。一方で, PREP, WOでは, 折り返し翻訳を用いた方が良い結果を示している。これは, 前置詞誤りや語順誤りが，誤りの訂正に広い文脈や深い構文の情報が必要となる種類の誤りであり，ルールによる単語単位の手法では十分な誤り生成が行えていない可能性を示唆している。

逆翻訳のものと比較した場合，ほとんどの誤り種類で，逆翻訳の方が良い結果となっている.特に，DET，PREP, PRON などの機能語の誤りに関しては，一貫して逆翻訳が良い結果となっている。また，WOの語順誤りにおいても，高い性能を示している。このような誤り種類では，提案手法でのルールによる誤り生成が, 十分に行われていない可能性がある. これは, 折り返し翻訳での結果と同様に，文脈などの情報を捉えられていないことが原因だと考えられる。一方で，ORTH，PUNCT などの表記の誤りでは，ルールによる誤り生成が依然有効であることが分かる。このような種類の誤りでは，学習者コーパスの分布から誤りの分布を逆翻訳で適切に再現できていない可能性がある.

以上のように，表記の誤りの中には，ルールによる誤り生成が効率的かつ効果的に生成でき

図 $6 \mathrm{BEA}-19$ 評価データでの, 折り返し翻訳と提案手法との誤り種類別性能比較 (5 モデルの平均).

る場合がある一方で，機能語や語順の誤りなどでは，ルールによる手法は劣る結果となっている.このことから，ルールによる誤り生成・折り返し翻訳・逆翻訳によるデータ拡張の間には,得意な誤り種類に違いがあることが分かる．今後，これらの手法を適切に組み合わせ，より良い誤り生成手法を探求していきたいと考えている.

## 7 おわりに

本研究では，文法カテゴリごとに誤り生成を行うモジュールを設計し，その組み合わせによって誤りの種類が制御可能な, 文法誤り訂正のためのデー夕拡張手法を考案した。そして, デー 夕拡張における 3 つの仮定について検証を行った. デー夕拡張で用いるモジュールの誤りカテゴリを変え, 文法誤り訂正のモデルに事前学習を行い比較を行うことで, 仮定 (1)「生成される誤りの種類の多様さが, 訂正性能に寄与する」については, データ拡張によって生成されるデー 夕中の誤りの多様さが, 性能の向上に寄与することを確認した. また, 仮定 (2)「特定の種類の誤りが生成されることが，その種類の誤り訂正性能に寄与する」については，事前学習のみを行った場合は, 多くの誤り種類で妥当であり, 再学習を行った場合でも, 機能語・語順・表記の誤り種類において妥当であることが明らかになった. 仮定 (3)「データ拡張に用いるデータの規模が，訂正性能に寄与する」については，十分なステップ数に渡ってモデルのパラメータを更新することと，十分な回数誤り生成を行うことが，訂正性能の向上に寄与する一方で，デー 夕拡張に用いる単言語コーパスの規模は訂正性能の向上に大きな影響を持たないことが判明した. 提案手法を用いてより大規模なデー夕を作成し学習し, 性能向上の工夫を行えば, 既存の最先端手法と同程度に高性能なモデルを学習できることを確認した。 また, 事前学習のみを行ったモデルは, 既存の学習者コーパスを用いない教師なし設定より高い性能を示した. ルールによる誤り生成の性質を調査するため, 折り返し翻訳・逆翻訳でのデータ拡張との比較を行った. その結果，手法ごとに得意な誤り種類に差があることがわかった．また，ルールによる誤り生成は，効率的に実行できることがわかった。

## 謝 辞

本論文の查読にあたり，ご意見・ご指摘をくださった査読者の方々へ感謝いたします.

本論文の内容の一部は, 言語処理学会第 27 回年次大会 (古山他 2021) および The 35th Pacific Asia Conference on Language, Information and Computation (PACLIC 35) (Koyama et al. 2021b) で発表したものである。本研究成果は,「産総研・東工大実社会ビッグデータ活用オープンイノベーションラボラトリ」により得られたものである。また, 産総研の $\mathrm{AI}$ 橋渡しクラウド $(\mathrm{ABCI})$ を利用した。

## 参考文献

Brockett, C., Dolan, W. B., and Gamon, M. (2006). "Correcting ESL Errors Using Phrasal SMT Techniques." In Proceedings of the 21st International Conference on Computational Linguistics and 44th Annual Meeting of the Association for Computational Linguistics, pp. 249-256.

Bryant, C., Felice, M., Andersen, Ø. E., and Briscoe, T. (2019). "The BEA-2019 Shared Task on Grammatical Error Correction." In Proceedings of the 14th Workshop on Innovative Use of NLP for Building Educational Applications, pp. 52-75.

Bryant, C., Felice, M., and Briscoe, T. (2017). "Automatic Annotation and Evaluation of Error Types for Grammatical Error Correction." In Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 793-805.

Cahill, A., Madnani, N., Tetreault, J., and Napolitano, D. (2013). "Robust Systems for Preposition Error Correction Using Wikipedia Revisions." In Proceedings of the 2013 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pp. 507-517.

Choe, Y. J., Ham, J., Park, K., and Yoon, Y. (2019). "A Neural Grammatical Error Correction System Built On Better Pre-training and Sequential Transfer Learning." In Proceedings of the 14th Workshop on Innovative Use of NLP for Building Educational Applications, pp. 213-227.

Chollampatt, S., Wang, W., and Ng, H. T. (2019). "Cross-Sentence Grammatical Error Correction." In Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics, pp. 435-445.

Dahlmeier, D. and Ng, H. T. (2012). "Better Evaluation for Grammatical Error Correction." In Proceedings of the 2012 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pp. 568-572.

Dahlmeier, D., Ng, H. T., and Wu, S. M. (2013). "Building a Large Annotated Corpus of Learner English: The NUS Corpus of Learner English." In Proceedings of the 8th Workshop on Innovative Use of NLP for Building Educational Applications, pp. 22-31.

Devlin, J., Chang, M.-W., Lee, K., and Toutanova, K. (2019). "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding." In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers), pp. 4171-4186.

Flachs, S., Lacroix, O., and Søgaard, A. (2019). "Noisy Channel for Low Resource Grammatical Error Correction." In Proceedings of the 14th Workshop on Innovative Use of NLP for

Building Educational Applications, pp. 191-196.

Ge, T., Wei, F., and Zhou, M. (2018). "Fluency Boost Learning and Inference for Neural Grammatical Error Correction." In Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 1055-1065. Association for Computational Linguistics.

Granger, S. (1998). "The Computer Learner Corpus: A Versatile New Source of Data for SLA Research." In Granger, S. (Ed.), Learner English on Computer, pp. 3-18. Addison Wesley Longman, London and New York.

Grundkiewicz, R. and Junczys-Dowmunt, M. (2019). "Minimally-Augmented Grammatical Error Correction." In Proceedings of the 5th Workshop on Noisy User-generated Text (W-NUT 2019), pp. 357-363. Association for Computational Linguistics.

Grundkiewicz, R., Junczys-Dowmunt, M., and Heafield, K. (2019). "Neural Grammatical Error Correction Systems with Unsupervised Pre-training on Synthetic Data." In Proceedings of the 14th Workshop on Innovative Use of NLP for Building Educational Applications, pp. 252-263.

Hendrycks, D. and Gimpel, K. (2016). "Gaussian Error Linear Units (GELUs)." arXiv preprint arXiv:1606.08415v3.

Izumi, E., Uchimoto, K., Saiga, T., Supnithi, T., and Isahara, H. (2003). "Automatic Error Detection in the Japanese Learners' English Spoken Data." In The Companion Volume to the Proceedings of 41st Annual Meeting of the Association for Computational Linguistics, pp. 145-148.

Junczys-Dowmunt, M., Grundkiewicz, R., Guha, S., and Heafield, K. (2018). "Approaching Neural Grammatical Error Correction as a Low-Resource Machine Translation Task." In Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long Papers), pp. 595-606.

Kiyono, S., Suzuki, J., Mita, M., Mizumoto, T., and Inui, K. (2019). "An Empirical Study of Incorporating Pseudo Data into Grammatical Error Correction." 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. 1236-1242.

Koyama, A., Hotate, K., Kaneko, M., and Komachi, M. (2021a). "Comparison of Grammatical Error Correction Using Back-Translation Models." In Proceedings of the 2021 Conference of the North American Chapter of the Association for Computational Linguistics: Student Research Workshop, pp. 126-135. Association for Computational Linguistics.

Koyama, S., Takamura, H., and Okazaki, N. (2021b). "Various Errors Improve Neural Grammat-
ical Error Correction." In Proceedings of the 35th Pacific Asia Conference on Language, Information and Computation, pp. 251-261, Shanghai, China. Association for Computational Lingustics.

古山翔太，高村大也，岡崎直観 (2021). ニューラル文法誤り訂正のための多様な規則を用いる人工誤り生成. 言語処理学会第 27 回年次大会発表論文集, pp. 1017-1022. [S. Koyama et al. (2021). Nyuraru Bunpo Ayamari Teisei notameno Tayo na Kisoku wo Mochiiru Jinko Ayamari Seisei. Proceedings of the 27th Annual Meeting for the Association for Natural Language Processing, pp. 1017-1022.].

Lee, J. and Seneff, S. (2008). "Correcting Misuse of Verb Forms." In Proceedings of the 46th Annual Meeting of the Association of Computational Linguistics: Human Language Technology (ACL/HLT), pp. 174-182.

Lichtarge, J., Alberti, C., and Kumar, S. (2020). "Data Weighted Training Strategies for Grammatical Error Correction." Transactions of the Association for Computational Linguistics, 8, pp. 634-646.

Lichtarge, J., Alberti, C., Kumar, S., Shazeer, N., Parmar, N., and Tong, S. (2019). "Corpora Generation for Grammatical Error Correction." In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers), pp. 3291-3301.

Liu, Y., Ott, M., Goyal, N., Du, J., Joshi, M., Chen, D., Levy, O., Lewis, M., Zettlemoyer, L., and Stoyanov, V. (2019). "RoBERTa: A Robustly Optimized BERT Pretraining Approach." CoRR, abs/1907.11692.

Loshchilov, I. and Hutter, F. (2019). "Decoupled Weight Decay Regularization." In 7th International Conference on Learning Representations, ICLR 2019, New Orleans, LA, USA, May 6-9, 2019.

Miller, G. A. (1995). "WordNet: A Lexical Database for English." Communications of the ACM, 38 (11), pp. 39-41.

Mizumoto, T., Komachi, M., Nagata, M., and Matsumoto, Y. (2011). "Mining Revision Log of Language Learning SNS for Automated Japanese Error Correction of Second Language Learners." In Proceedings of the 5th International Joint Conference on Natural Language Processing, pp. 147-155.

Napoles, C., Sakaguchi, K., Post, M., and Tetreault, J. (2015). "Ground Truth for Grammatical Error Correction Metrics." In Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing (Volume 2: Short Papers), pp. 588-593.

Napoles, C., Sakaguchi, K., and Tetreault, J. (2017). "JFLEG: A Fluency Corpus and Benchmark for Grammatical Error Correction." In Proceedings of the 15th Conference of the European Chapter of the Association for Computational Linguistics: Volume 2, Short Papers, pp. 229-234.

Ng, H. T., Wu, S. M., Briscoe, T., Hadiwinoto, C., Susanto, R. H., and Bryant, C. (2014). "The CoNLL-2014 Shared Task on Grammatical Error Correction." In Proceedings of the 18th Conference on Computational Natural Language Learning: Shared Task, pp. 1-14.

Ng, H. T., Wu, S. M., Wu, Y., Hadiwinoto, C., and Tetreault, J. (2013). "The CoNLL-2013 Shared Task on Grammatical Error Correction." In Proceedings of the 17th Conference on Computational Natural Language Learning: Shared Task, pp. 1-12.

Post, M. (2018). "A Call for Clarity in Reporting BLEU Scores." In Proceedings of the 3rd Conference on Machine Translation: Research Papers, pp. 186-191.

Press, O. and Wolf, L. (2017). "Using the Output Embedding to Improve Language Models." In Proceedings of the 15th Conference of the European Chapter of the Association for Computational Linguistics: Volume 2, Short Papers, pp. 157-163.

Provilkov, I., Emelianenko, D., and Voita, E. (2020). "BPE-Dropout: Simple and Effective Subword Regularization." In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 1882-1892.

Rei, M., Felice, M., Yuan, Z., and Briscoe, T. (2017). "Artificial Error Generation with Machine Translation and Syntactic Patterns." In Proceedings of the 12th Workshop on Innovative Use of NLP for Building Educational Applications, pp. 287-292.

Rozovskaya, A. and Roth, D. (2010a). "Generating Confusion Sets for Context-Sensitive Error Correction." In Proceedings of the 2010 Conference on Empirical Methods in Natural Language Processing, pp. 961-970.

Rozovskaya, A. and Roth, D. (2010b). "Training Paradigms for Correcting Errors in Grammar and Usage." In Human Language Technologies: The 2010 Annual Conference of the North American Chapter of the Association for Computational Linguistics, pp. 154-162.

Salazar, J., Liang, D., Nguyen, T. Q., and Kirchhoff, K. (2020). "Masked Language Model Scoring." In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 2699-2712.

Stahlberg, F., Bryant, C., and Byrne, B. (2019). "Neural Grammatical Error Correction with Finite State Transducers." In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers), pp. 4033-4039. Association for Computational Linguis-
tics.

Stahlberg, F. and Kumar, S. (2020). "Seq2Edits: Sequence Transduction Using Span-level Edit Operations." In Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP), pp. 5147-5159.

Stahlberg, F. and Kumar, S. (2021). "Synthetic Data Generation for Grammatical Error Correction with Tagged Corruption Models." In Proceedings of the 16th Workshop on Innovative Use of NLP for Building Educational Applications, pp. 37-47.

Tajiri, T., Komachi, M., and Matsumoto, Y. (2012). "Tense and Aspect Error Correction for ESL Learners Using Global Context." In Proceedings of the 50th Annual Meeting of the Association for Computational Linguistics (Volume 2: Short Papers), pp. 198-202. Association for Computational Linguistics.

Takahashi, Y., Katsumata, S., and Komachi, M. (2020). "Grammatical Error Correction Using Pseudo Learner Corpus Considering Learner's Error Tendency." In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics: Student Research Workshop, pp. 27-32. Association for Computational Linguistics.

Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., Kaiser, Ł., and Polosukhin, I. (2017). "Attention is All you Need." In Advances in Neural Information Processing Systems, Vol. 30.

Wan, Z., Wan, X., and Wang, W. (2020). "Improving Grammatical Error Correction with Data Augmentation by Editing Latent Representation." In Proceedings of the 28th International Conference on Computational Linguistics, pp. 2202-2212.

White, M. and Rozovskaya, A. (2020). "A Comparative Study of Synthetic Data Generation Methods for Grammatical Error Correction." In Proceedings of the 15th Workshop on Innovative Use of NLP for Building Educational Applications, pp. 198-208. Association for Computational Linguistics.

Xie, Z., Genthial, G., Xie, S., Ng, A., and Jurafsky, D. (2018). "Noising and Denoising Natural Language: Diverse Backtranslation for Grammar Correction." In Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long Papers), pp. 619-628.

Xu, S., Zhang, J., Chen, J., and Qin, L. (2019). "Erroneous Data Generation for Grammatical Error Correction." In Proceedings of the 14th Workshop on Innovative Use of NLP for Building Educational Applications, pp. 149-158.

Yannakoudakis, H., Briscoe, T., and Medlock, B. (2011). "A New Dataset and Method for Automatically Grading ESOL Texts." In Proceedings of the 49th Annual Meeting of the

Association for Computational Linguistics: Human Language Technologies, pp. 180-189.

Yasunaga, M., Leskovec, J., and Liang, P. (2021). "LM-Critic: Language Models for Unsupervised

Grammatical Error Correction." In Proceedings of the 2021 Conference on Empirical Methods in Natural Language Processing, pp. 7752-7763. Association for Computational Linguistics. Zhao, W., Wang, L., Shen, K., Jia, R., and Liu, J. (2019). "Improving Grammatical Error Correction via Pre-Training a Copy-Augmented Architecture with Unlabeled Data." In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers), pp. 156-165.

## 付録

第 3 章で説明した誤り生成モジュールについて詳しく説明する。各モジュールの適用順序, 誤りカテゴリ, 誤り生成確率をサンプルするべータ分布のパラメータは， モジュール名の後ろに記す。

誤りカテゴリの注釈は以下の通りである。

B：基礎

F: 機能語誤り (Function Word)

I：語形変化誤り (Inflection)

L：語彙選択誤り (Lexical Choice)

0: 語順誤り (Word Order)

W：表記誤り (Writing)

誤り生成や実験に用いたソースコードは公開している8.

## 前置詞

前置詞誤り生成モジュールは, Penn Treebank 品詞夕グがINで, 係り受けタグが, prep, ROOT, conj の場合，適用される。前置詞誤り生成モジュールは, 機能語誤りカテゴリに分類される。

standard_prep $(1$, F $, \sigma=0.05, \mu=0.05)$ of, to, in, for, on, with, at $\rightsquigarrow \varepsilon$, of, to, in, for, on, with, by, at

prep_from $(2, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ from $\rightsquigarrow \varepsilon$, in, at, of, with, about, since

prep_into $(3, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

into $\rightsquigarrow \varepsilon(0.2)$, in (0.3), to (0.3), toward (0.1), towards (0.1)

prep_among $(4, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

among $\rightsquigarrow \varepsilon$, in, on, at, about, between, amid
^{8}$ https://github.com/shotakoyama/arteraro
}

prep_amongst $(5, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ amongst $\rightsquigarrow \varepsilon$, in, on, at, about, between, amidst

prep_amid $(6, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ amid $\rightsquigarrow \varepsilon$, in, on, at, about, between, among prep_amidst $(7, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ amidst $\rightsquigarrow \varepsilon$, in, on, at, about, between, amongst

prep_about $(8, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ about $\rightsquigarrow \varepsilon$, in, on, of, to, at

prep_against $(9, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ against $\rightsquigarrow$ to, for, of, with

prep_by $(10, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ by $\rightsquigarrow \varepsilon$, in, on, at, for, with, of, from, through, until, till

prep_since $(11, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ since $\rightsquigarrow$ from

prep_until $(12, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ until $\rightsquigarrow$ by, for, to, in, up to, when

prep_till $(13, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ till $\rightsquigarrow$ by, for, to, in, up to, when

prep_between $(14, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ between $\rightsquigarrow \varepsilon$, in, on, at, about, among, amongst, amid, amidst

prep_during $(15, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ during $\rightsquigarrow$ in, for, while, when, through, across

prep_within $(16, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ within $\rightsquigarrow$ with, in, of, on

prep_after $(17, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ after $\rightsquigarrow$ for, by, over, from, when

prep_before $(18, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ before $\rightsquigarrow$ on, for, when

prep_as $(19, \mathrm{~F}, \sigma=0.05, \mu=0.05)$
as $\rightsquigarrow$ by, of, in, on, at, like

prep_like $(20, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

like $\rightsquigarrow$ as (0.8), that (0.1), than (0.1)

prep_than $(21, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

than $\rightsquigarrow \varepsilon(0.2)$, to (0.4), from (0.2), over (0.1), beyond (0.1)

prep_through $(22, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

through $\rightsquigarrow$ in, over, across, into, of, with, by, throughout, thru

prep_throughout $(23, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ throughout $\rightsquigarrow$ in, over, across, into, of, with, by, through

prep_above $(24, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ above $\rightsquigarrow$ on, from, to, over

prep_behind (25, F, $\sigma=0.05, \mu=0.05)$

behind $\rightsquigarrow$ after, from, of, out

prep_below $(26, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

below $\rightsquigarrow$ in, on, by, with, under, through, within

prep_beyond (27, F, $\sigma=0.05, \mu=0.05)$ beyond $\rightsquigarrow$ on, over, above, out of, far from prep_over $(28, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ over $\rightsquigarrow$ on, from, to, above

prep_across $(29, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ across $\rightsquigarrow$ beyond, over, through, throughout, during

prep_under $(30, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ under $\rightsquigarrow i n$, on, by, with, below, through, within

prep_upon $(31, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ upon $\rightsquigarrow$ on, up, up on, over, after, to

prep_out $(32, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ out $\rightsquigarrow \varepsilon$

prep_toward $(33, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ toward, towards $\rightsquigarrow$ to, with, of, for, in, into

## 節標識

Penn Treebank 品詞タグが IN で，係り受けタグが，markの場合，適用される。機能語誤りカテゴリに分類される.

standard_mark $(34, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ as, if, because, so, whether, while, since, although, than, though, once, whereas, whilst, like, except $\rightsquigarrow \varepsilon$

mark_for $(35, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

for $\rightsquigarrow \varepsilon(0.2)$, to (0.6), on (0.1), in (0.1)

## 動作主

Penn Treebank 品詞タグがINで，係り受けタグが, agentの場合, 適用される。機能語誤りカテゴリに分類される.

agent_by $(36, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

by $\rightsquigarrow \varepsilon$, of, from, with, on

agent_between (37, F, $\sigma=0.05, \mu=0.05)$

between $\rightsquigarrow \varepsilon$, by, in, on, at, from, with, about, among, amongst, amid, amidst

## 前置詞補部

Penn Treebank 品詞タグが INで，係り受けタグが, pcomp の場合, 適用される。機能語誤りカテゴリに分類される.

pcomp_of $(38, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ of $\rightsquigarrow \varepsilon$

pcomp_to $(39, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ to $\rightsquigarrow \varepsilon$

pcomp_on $(40, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ on $\rightsquigarrow a t$, in, of

pcomp_for (41, F, $\sigma=0.05, \mu=0.05)$ for $\rightsquigarrow$ to (0.4), at (0.2), in (0.2), on (0.2)

pcomp_at $(42, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

at $\rightsquigarrow o n$, in, of
pcomp_by $(43, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

by $\rightsquigarrow a t$, in, on, of, from

## 与格

Penn Treebank 品詞夕グが INで, 係り受けタグが, dativeの場合, 適用される。機能語誤りカテゴリに分類される.

dative_to $(44, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

$
\text { to } \rightsquigarrow \varepsilon(0.4), \text { for }(0.6)
$

dative_for $(45, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

$
\text { for } \rightsquigarrow \varepsilon(0.4), \text { to }(0.6)
$

## 副詞修飾語

Penn Treebank 品詞タグが INで, 係り受けタグが, advmod の場合, 適用される。機能語誤りカテゴリに分類される.

prep_advmod $(46, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

at, as $\rightsquigarrow \varepsilon$

## 前置詞の挿入

post_vb_prep $(47, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

以下の条件 1., 2., 3. を満たす位置に, $t o$, in, on, at, by, for, with, of を挿入する.

1. 左の単語の Penn Treebank 品詞タグが VB, VBD, VBG, VBN, VBP, VBZ.

2. 左の単語の係り受けタグが acl, advcl, xcomp, pcomp.

3. 3a.または $3 \mathrm{~b}$.

3a. 右の単語の Universal 品詞夕グが NOUN, DET, ADJ, PROPN.

3b. 右の単語について, Universal 品詞夕グが SCONJで，かつ係り受けタグが mark.

## 代名詞

見出し語が-PRON-の語に適用する。

## 一人称単数

1sng_subj $(48, \mathrm{~F}, \sigma=0.03, \mu=0.03)$係り受けタグがnsubj, nsubjpass, conj, appos, attr.

$I \rightsquigarrow \varepsilon i, i t, m e, w e$

1sng_nsubj_obj $(49, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受けタグがnsubj, nsubjpass, conj, appos, attr.

$m e \rightsquigarrow \varepsilon, I, m y$

1sng_dobj $(50, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受けタグが dobj.

me $\rightsquigarrow \varepsilon(0.1)$, I (0.1), for me (0.3), to me (0.3), on me (0.05), in me (0.05), at me (0.05), of me (0.05)

1sng_pobj $(51, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受けタグが pobj.

$m e \rightsquigarrow \varepsilon, I, m y$

1sng_dative $(52, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受けタグが dative.

$m e \rightsquigarrow \varepsilon(0.1)$, I (0.1), for me (0.3), to me (0.35), on me (0.05), in me (0.05), at me (0.05)

1sng_poss $(53, \mathrm{~F}, \sigma=0.03, \mu=0.03)$ mine $\rightsquigarrow$ my, me, ours, his, hers

1sng_poss_det $(54, \mathrm{~F}, \sigma=0.03, \mu=0.03)$ $m y \rightsquigarrow I$, me, mine, a, an, the, its, his, her, their

1sng_reflexive $(55, \mathrm{~F}, \sigma=0.03, \mu=0.03)$係り受けタグが dobj, conj, nsubj, nsubjpass, npadvmod, dative, attr. myself $\rightsquigarrow \varepsilon(0.2), \quad$ to myself $(0.1)$, of myself (0.1), for myself (0.1), by myself (0.1), with myself (0.1), myselves (0.02), to myselves (0.02), of myselves (0.02), for myselves (0.02), by myselves (0.02), with myselves (0.02), me (0.1),
my (0.02), mine (0.02), yourself (0.02), ourselves $(0.02)$

1sng_appos_reflexive $(56, \mathrm{~F}, \sigma=0.03, \mu=$ $0.03)$

係り受けタグがappos.

myself $\rightsquigarrow \varepsilon$, me, myselves, my self, for myself, by myself

1sng_pobj_reflexive $(57, \mathrm{~F}, \sigma=0.03, \mu=$ $0.03)$

係り受けタグが pobj.

myself $\rightsquigarrow$ me, my, my self, myselves, I

## 一人称複数

1plu_subj (58, F, $\sigma=0.03, \mu=0.03)$

係り受けタグがnsubj, nsubjpass, conj, appos, nmod, compound, attr.

we $\rightsquigarrow I$, us, our, me, they, you

1plu_pobj (59, F, $\sigma=0.03, \mu=0.03)$

係り受けタグが pobj.

$u s \rightsquigarrow w e$, ours, our, ourselves

1plu_dobj (60, F, $\sigma=0.03, \mu=0.03)$

係り受けタグが dobj.

us $\rightsquigarrow \varepsilon(0.1)$, we (0.1), for us (0.3), to

us (0.3), on us (0.05), in us (0.05), at us (0.05), of us (0.05)

1plu_nsubj_obj $(61, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受けタグがnsubj, nsubjpass, conj, appos, nmod, compound, attr.

us $\rightsquigarrow \varepsilon$, we, our

1plu_dative $(62, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受けタグが dative.

us $\rightsquigarrow \varepsilon(0.1)$, we (0.1), for us (0.3), to us (0.35), on us (0.05), in us (0.05), at us (0.05)

1plu_poss $(63$, F $, \sigma=0.03, \mu=0.03)$ ours $\rightsquigarrow$ our, us, we, mine, theirs, yours

1plu_poss_det $(64, \mathrm{~F}, \sigma=0.03, \mu=0.03)$ our $\rightsquigarrow \varepsilon$, we, us, ours, a, an, the, theirs, its, my

1plu_reflexive $(65, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受け夕グが dobj, conj, nsubj, nsubjpass, npadvmod, dative, attr.

ourselves $\rightsquigarrow \varepsilon(0.2)$, to ourselves (0.1), of ourselves (0.1), for ourselves (0.1), by ourselves (0.1), with ourselves (0.1), ourself (0.02), to ourself (0.02), of ourself (0.02), for ourself (0.02), by ourself (0.02), with ourself (0.02), us (0.1), our (0.02), ours (0.02), yourselves (0.02), myself (0.02)

1plu_appos_reflexive $(66, \mathrm{~F}, \sigma=0.03, \mu=$ $0.03)$

係り受けタグがappos.

ourselves $\rightsquigarrow \varepsilon$, us, ourself, our selves, for ourselves, by ourselves

1plu_pobj_reflexive $(67, \mathrm{~F}, \sigma=0.03, \mu=$ $0.03)$

係り受けタグが pobj.

ourselves $\rightsquigarrow \varepsilon$, us, ourself, our selves, for ourselves, by ourselves

## 二人称

2nd_subj (68, F, $\sigma=0.03, \mu=0.03)$

係り受けタグがnsubj, nsubjpass, conj, appos, nmod, compound, attr.

you $\rightsquigarrow u$, yo, your, yours, me, they

2nd_pobj (69, F, $\sigma=0.03, \mu=0.03)$

係り受けタグが pobj.

you $\rightsquigarrow u$, yo, your, yours, yourself, yourselves
2nd_dobj (70, F, $\sigma=0.03, \mu=0.03)$

係り受けタグがdobj.

you $\rightsquigarrow \varepsilon(0.1), u$ (0.05), yo (0.05), for you (0.3), to you (0.3), on you (0.05), in you (0.05), at you (0.05), of you (0.05)

2nd_dative (71, F, $\sigma=0.03, \mu=0.03$ )

係り受けタグが dative.

you $\rightsquigarrow \varepsilon$ (0.1), и (0.05), уо (0.05), for you (0.3), to you (0.35), on you (0.05), in you (0.05), at you (0.05)

2nd_poss (72, F, $\sigma=0.03, \mu=0.03)$ yours $\rightsquigarrow$ you, your, theirs, mine, ours

2nd_poss_det (73, F $\sigma=0.03, \mu=0.03)$ your $\rightsquigarrow \varepsilon$, you, yours, their, a, an, the, its, they

## 二人称単数

2sng_reflexive $(74, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受け夕グが dobj, conj, nsubj, nsubjpass, npadvmod, dative, attr. youself $\rightsquigarrow \varepsilon(0.2)$, to yourself (0.1), of yourself (0.1), for yourself (0.1), by yourself (0.1), with yourself (0.1), yourselves (0.02), to yourselves (0.02), of yourselves (0.02), for yourselves (0.02), by yourselves (0.02), with yourselves (0.02), you (0.1), your (0.02), yours (0.02), themself (0.02), myself (0.02)

2sng_appos_reflexive $(75, \mathrm{~F}, \sigma=0.03, \mu=$ $0.03)$

係り受けタグがappos. youself $\rightsquigarrow \varepsilon$, you, yourselves, your self, for yourself, by yourself

2sng_pobj_reflexive $(76, \mathrm{~F}, \sigma=0.03, \mu=$ $0.03)$係り受けタグがpobj.

youself $\rightsquigarrow$ you, your self, yourselves, your

## 二人称複数

2plu_reflexive (77, F, $\sigma=0.03, \mu=0.03)$

係り受け夕グが dobj, conj, nsubj, nsubjpass, npadvmod, dative, attr. yourselves $\rightsquigarrow \varepsilon(0.2)$, to yourselves (0.1), of yourselves (0.1), for yourselves (0.1), by yourselves (0.1), with yourselves (0.1), yourself (0.02), to yourself (0.02), of yourself (0.02), for yourself (0.02), by yourself (0.02), with yourself (0.02), you (0.1), your (0.02), yours (0.02), themselves (0.02), ourselves (0.02)

2plu_appos_reflexive $(78, \mathrm{~F}, \sigma=0.03, \mu=$ 0.03 )

係り受けタグが appos.

yourselves $\rightsquigarrow \varepsilon$, you, yourself, your selves, for yourselves, by yourselves

2plu_pobj_reflexive $(79, \mathrm{~F}, \sigma=0.03, \mu=$ 0.03 )

係り受けタグが pobj.

yourselves $\rightsquigarrow$ you, your self, myselves, your

## 三人称単数男性

3sng_masc_subj (80, F $\sigma=0.03, \mu=0.03)$

係り受けタグがnsubj, nsubjpass, conj, appos, nmod, compound, attr.

he $\rightsquigarrow$ she, his, him, they, them, their

3sng_masc_pobj (81, F, $\sigma=0.03, \mu=0.03)$

係り受けタグが pobj.

him $\rightsquigarrow$ her, he, his, their, them, himself

3sng_masc_dobj (82, F, $\sigma=0.03, \mu=0.03)$

係り受けタグが dobj.

him $\rightsquigarrow \varepsilon(0.1)$, her (0.05), he (0.05), for
him (0.3), to him (0.3), on him (0.05), in him (0.05), at him (0.05), of him (0.05)

3sng_masc_nsubj_obj $(83, \mathrm{~F}, \sigma=0.03, \mu=$ $0.03)$

係り受けタグがnsubj, nsubjpass, conj, appos, nmod, compound, attr.

him $\rightsquigarrow \varepsilon$, her, he, his

3sng_masc_dative $(84, \mathrm{~F}, \sigma=0.03, \mu=$ $0.03)$

係り受けタグが dative.

him $\rightsquigarrow \varepsilon(0.1)$, her (0.05), he (0.05), for him (0.3), to him (0.35), on him (0.05), in him (0.05), at him (0.05)

3sng_masc_poss $(85, \mathrm{~F}, \sigma=0.03, \mu=0.03)$ his $\rightsquigarrow \varepsilon$, he, him, her, a, an, the, its, theirs

3sng_masc_reflexive $(86, \mathrm{~F}, \sigma=0.03, \mu=$ $0.03)$

係り受けタグが dobj, conj, nsubj, nsubjpass, npadvmod, dative, attr.

himself $\rightsquigarrow \varepsilon(0.2), \quad$ to himself (0.1), of himself (0.1), for himself (0.1), by himself (0.1), with himself (0.1), himselves 0.01 , to himselves (0.01), of himselves (0.01), for himselves (0.01), by himselves (0.01), with himselves (0.01), themself (0.01), to themself (0.01), of themself (0.01), for themself (0.01), by themself (0.01), with themself (0.01), he (0.045), his (0.045), him (0.045), herself (0.045)

3sng_masc_appos_reflexive $(87, \mathrm{~F}, \sigma=0.03$, $\mu=0.03)$

係り受けタグが appos.

himself $\rightsquigarrow \varepsilon$, him, themself, him self, for himself, by himself, herself 3sng_masc_pobj_reflexive $(88, \mathrm{~F}, \sigma=0.03$, $\mu=0.03)$

係り受けタグがpobj.

himself $\rightsquigarrow$ him, him self, themself, he, herself

## 三人称単数女性

3sng_fem_subj (89, F, $\sigma=0.03, \mu=0.03)$

係り受けタグがnsubj, nsubjpass, conj, appos, nmod, compound, attr.

she $\rightsquigarrow$ her, hers, they, them, their, he

3sng_fem_pobj (90, F, $\sigma=0.03, \mu=0.03)$係り受けタグが pobj. her $\rightsquigarrow$ she, hers, their, them, herself, him

3sng_fem_dobj (91, F, $\sigma=0.03, \mu=0.03)$

係り受けタグが dobj.

her $\rightsquigarrow \varepsilon(0.1)$, she (0.05), him (0.05), for her (0.3), to her (0.3), on her (0.05), in her (0.05), at her (0.05), of her (0.05)

3sng_fem_nsubj_obj $(92$, F $, \sigma=0.03, \mu=$ $0.03)$

係り受けタグがnsubj, nsubjpass, conj, appos, nmod, compound, attr.

her $\rightsquigarrow \varepsilon$, she, hers, them, him

3sng_fem_dative $(93, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受けタグが dative.

her $\rightsquigarrow \varepsilon(0.1)$, she (0.05), him (0.05), for her (0.3), to her (0.35), on her (0.05), in her (0.05), at her (0.05)

3sng_fem_poss $(94, \mathrm{~F}, \sigma=0.03, \mu=0.03)$ hers $\rightsquigarrow \varepsilon$, she, her, theirs, his, they, yours

3sng_fem_poss_det $(95, \mathrm{~F}, \sigma=0.03, \mu=$ 0.03 )

her $\rightsquigarrow \varepsilon$, she, hers, their, his, a, an, the, its

3sng_fem_reflexive $(96, \mathrm{~F}, \sigma=0.03, \mu=$
$0.03)$

係り受け夕グが dobj, conj, nsubj, nsubjpass, npadvmod, dative, attr.

herself $\rightsquigarrow \varepsilon(0.2)$, to herself (0.1), of herself (0.1), for herself (0.1), by herself (0.1), with herself (0.1), herselves (0.01), to herselves (0.01), of herselves (0.01), for herselves (0.01), by herselves (0.01), with herselves (0.01), themself (0.01), to themself (0.01), of themself (0.01), for themself (0.01), by themself (0.01), with themself (0.01), she (0.045), her (0.045), hers (0.045), himself (0.045)

3sng_fem_appos_reflexive (97, F, $\sigma=0.03$, $\mu=0.03)$

係り受けタグが appos.

herself $\rightsquigarrow \varepsilon$, her, themself, her self, for herself, by herself, himself

3sng_fem_pobj_reflexive $(98, \mathrm{~F}, \sigma=0.03$, $\mu=0.03)$

係り受けタグが pobj.

herself $\rightsquigarrow$ her, her self, themself, she, himeslf

## 三人称複数

3plu_subj (99, F, $\sigma=0.03, \mu=0.03)$

係り受けタグがnsubj, nsubjpass, conj, appos, nmod, compound, attr.

they $\rightsquigarrow$ them, their, he, him, she, her, themself, themselves

3plu_pobj (100, F, $\sigma=0.03, \mu=0.03)$

係り受けタグが pobj.

them $\rightsquigarrow$ they, their, him, her

3plu_dobj (101, F, $\sigma=0.03, \mu=0.03)$

係り受けタグが dobj. them $\rightsquigarrow \varepsilon(0.05)$, they (0.05), her (0.05), him (0.05), for them (0.2), to them (0.2), on them (0.1), in them (0.1), at them (0.1), of them (0.1)

3plu_nsubj_obj $(102, \mathrm{~F}, \sigma=0.03, \mu=0.03)$係り受けタグがnsubj, nsubjpass, conj, appos, nmod, compound, attr.

them $\rightsquigarrow \varepsilon$, they, their, him, her

3plu_dative $(103, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受けタグが dative.

them $\rightsquigarrow \varepsilon(0.05)$, they (0.05), him (0.05), her (0.05), for them (0.3), to them (0.35), on them (0.05), in them (0.05), at them (0.05)

3plu_poss $(104$, F, $\sigma=0.03, \mu=0.03)$ theirs $\rightsquigarrow \varepsilon$, they, them, their, its, his, hers

3plu_poss_det $(105, \mathrm{~F}, \sigma=0.03, \mu=0.03)$ their $\rightsquigarrow \varepsilon$, they, them, theirs, a, an, the, its, his, her

3plu_reflexive $(109, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受けタグが dobj, conj, nsubj, nsubjpass, npadvmod, dative, attr. themselves $\rightsquigarrow \varepsilon(0.2)$, to themselves (0.1), of themselves (0.1), for themselves (0.1), by themselves (0.1), with themselves (0.1), themself (0.01), to themself (0.01), of themself (0.01), for themself (0.01), by themself (0.01), with themself (0.01), himself (0.005), to himself (0.005), of himself (0.005), for himself (0.005), by himself (0.005), with himself (0.005), herself (0.005), to herself (0.005), of herself (0.005), for herself (0.005), by herself (0.005), with herself (0.005), they (0.06), them (0.06), their (0.06)
3plu_appos_reflexive $(110, \mathrm{~F}, \sigma=0.03, \mu=$ $0.03)$

係り受けタグがappos.

themselves $\rightsquigarrow \varepsilon$, they, them, themself, them selves, for themselves, by themselves, herself, himself

3plu_pobj_reflexive $(111$, F $, \sigma=0.03, \mu=$ $0.03)$

係り受けタグが pobj.

themselves $\rightsquigarrow$ them, them selves, herself, himself

## 三人称中性

3sng_neut_reflexive $(106, \mathrm{~F}, \sigma=0.03, \mu=$ $0.03)$

係り受け夕グが dobj, conj, nsubj, nsubjpass, npadvmod, dative, attr.

themself $\rightsquigarrow \varepsilon(0.2)$, to themself (0.1), of themself (0.1), for themself (0.1), by themself (0.1), with themself (0.1), themselves (0.01), to themselves (0.01), of themselves (0.01), for themselves (0.01), by themselves (0.01), with themselves (0.01), himself (0.005), to himself (0.005), of himself (0.005), for himself (0.005), by himself (0.005), with himself (0.005), herself (0.005), to herself (0.005), of herself (0.005), for herself (0.005), by herself (0.005), with herself (0.005), she (0.03), her (0.03), hers (0.03), he (0.03), him (0.03), his (0.03)

3sng_neut_appos_reflexive $(107, \mathrm{~F}, \sigma=0.03$, $\mu=0.03)$

係り受けタグが appos.

themself $\rightsquigarrow \varepsilon$, they, them, themselves, them self, for themself, by themself, herself, himself

3sng_neut_probj_reflexive $(108, \mathrm{~F}, \sigma=0.03$, $\mu=0.03$ )

係り受けタグが pobj.

themself $\rightsquigarrow$ them, them self, herself, himself

## 三人称無生物

3sng_inan_subj $(112, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受けタグがnsubj, nsubjpass, conj, appos, nmod, compound, attr.

it $\rightsquigarrow \varepsilon$, its, they, he, she, this, that, which

3sng_inan_pobj $(113, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受けタグが pobj.

it $\rightsquigarrow$ its, them, him, her, this, that, which

3sng_inan_dobj $(114, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

係り受けタグが dobj.

it $\rightsquigarrow \varepsilon$, its, them, him, her, this, that, which, for it, to it, on it, in it, at it, of it

3sng_inan_dative $(115, \mathrm{~F}, \sigma=0.03, \mu=$ $0.03)$

係り受けタグが dative.

it $\rightsquigarrow \varepsilon$, its, her, him, them, for it, to it, on it, in it, at it

3sng_inan_poss $(116, \mathrm{~F}, \sigma=0.03, \mu=0.03)$ its $\rightsquigarrow \varepsilon$, it, theirs, their, his, hers, whose, a, an, the

3sng_inan_reflexive $(117, \mathrm{~F}, \sigma=0.03, \mu=$ $0.03)$

係り受けタグが dobj, conj, nsubj, nsubjpass, npadvmod, dative, attr.

itself $\rightsquigarrow \varepsilon(0.2)$, to itself (0.1), of itself (0.1), for itself (0.1), by itself (0.1), with itself (0.1), themself (0.005), to themself (0.005), of themself (0.005), for them-
self (0.005), by themself (0.005), with themself (0.005), themselves (0.005), to themselves (0.005), of themselves (0.005), for themselves (0.005), by themselves (0.005), with themselves (0.005), itselves (0.005), to itselves (0.005), of itselves (0.005), for itselves (0.005), by itselves (0.005), with itselves (0.005), himself (0.005), to himself (0.005), of himself (0.005), for himself (0.005), by himself (0.005), with himself (0.005), herself (0.005), to herself (0.005), of herself (0.005), for herself (0.005), by herself (0.005), with herself (0.005), she (0.025), her (0.025), hers (0.025), he (0.025), him (0.025), his (0.025)

3sng_inan_appos_reflexive $(118, \mathrm{~F}, \sigma=0.03$, $\mu=0.03)$

係り受けタグが appos.

itself $\rightsquigarrow \varepsilon$, it, they, them, themselves, it self, for itself, by itself, themself, herself, himself

3sng_inan_pobj_reflexive $(119, \mathrm{~F}, \sigma=0.03$, $\mu=0.03$ )

係り受けタグが pobj.

itself $\rightsquigarrow i t$, it self, herself, himself

## 限定詞

Universal 品詞夕グが DET である語に適用される。

$\operatorname{art}(135, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

$a$, an, the $\rightsquigarrow \varepsilon(0.2), a(0.2)$, an (0.2), the (0.3), this (0.025), that (0.025), these (0.025), those (0.025)

demonstrative (136, F, $\sigma=0.05, \mu=0.05)$

係り受けタグが det. this, that, these, those $\rightsquigarrow \varepsilon$, this, that, these, those, a, an, the

demonstrative_extra $(137, \mathrm{~F}, \sigma=0.05, \mu=$ $0.05)$

係り受けタグがnsubj, nsubjpass, pobj, dobj, conj, appos, attr, advmod, ROOT, quantmod, npadmod かつ Penn Treebank 品詞タグがWDT.

this, that, these, those $\rightsquigarrow \varepsilon$, this, that, these, those

det_no $(138, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

no $\rightsquigarrow$ not, non, any

det_any $(139, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

any $\rightsquigarrow \varepsilon(0.4)$, some $(0.1)$, every $(0.1)$,

$a$ (0.1), an (0.1), all (0.1), anything (0.1)

det_some $(140, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

some $\rightsquigarrow \varepsilon(0.4), \quad a(0.05)$, an (0.05),

the (0.05), those (0.05), these (0.05),

few (0.05), little (0.05), something (0.05),

somewhere (0.05), much (0.05),

many (0.05), so (0.05)

det_all $(141, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

all $\rightsquigarrow$ both, each, every

det_both $(142$, F, $\sigma=0.03, \mu=0.03)$

both $\rightsquigarrow \varepsilon$, all, each, every

det_each $(143, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

each $\rightsquigarrow \varepsilon$, all, both, every

det_every $(144, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

every $\rightsquigarrow \varepsilon$, all, both, each

ins_det $(151, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

以下の条件 1., 2. を満たす位置に， $a(0.3)$, an (0.3), the (0.3), this (0.025), that (0.025), these (0.025), those (0.025) を插入す.

1. 左の単語の Penn Treebank 品詞タグ

が VB, VBD, VBG, VBN, VBP, VBZ, IN.

2. 右の単語の Penn Treebank 品詞タグが NN, NNS, JJ, JJN, JJS.

## 限定詞的副詞

so $(145, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

so $\rightsquigarrow \varepsilon$, such, too

such $(146, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

such $\rightsquigarrow \varepsilon$, so, very

another $(147, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

another $\rightsquigarrow$ other, the other, an other

other $(148, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

other $\rightsquigarrow$ another, others

there $(149, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

there $\rightsquigarrow \varepsilon(0.5)$, here $(0.3)$, they (0.1), it $(0.1)$

here $(150, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

here $\rightsquigarrow \varepsilon(0.5)$, there (0.3), they (0.1), it $(0.1)$

## 疑問詞

int_how $(120, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

how $\rightsquigarrow$ what (0.6), that (0.2), who (0.1), which (0.1)

int_what $(121, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

what $\rightsquigarrow$ how (0.6), that (0.2), which (0.1), who (0.1)

int_whatever $(122, \mathrm{~F}, \sigma=0.02, \mu=0.02)$

whatever $\rightsquigarrow$ what (0.4), however (0.2), whichever (0.2), whoever (0.2)

int_who $(123, \mathrm{~F}, \sigma=0.03, \mu=0.03)$

who $\rightsquigarrow$ that (0.3), which (0.3), what (0.2), how (0.2)

int_whoever $(124, \mathrm{~F}, \sigma=0.02, \mu=0.02)$

whoever $\rightsquigarrow$ whatever, whichever, however, who int_which $(125, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

which $\rightsquigarrow$ that (0.3), who (0.3), what (0.2), how (0.2)

int_whichever $(126, \mathrm{~F}, \sigma=0.02, \mu=0.02)$ whichever $\rightsquigarrow$ whatever, whoever, however, which

int_that $(127, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

Penn Treebank 品詞夕グが WDT.

that $\rightsquigarrow$ which, who, how, what

int_whose $(128, \mathrm{~F}, \sigma=0.03, \mu=0.03)$ whose $\rightsquigarrow$ which, who, that, its, his, her, their

int_when $(129, \mathrm{~F}, \sigma=0.03, \mu=0.03)$ when $\rightsquigarrow$ where, until, that, what, for, in

int_whenever $(130, \mathrm{~F}, \sigma=0.02, \mu=0.02)$ whenever $\rightsquigarrow$ when, whatever, wherever, whichever, until, that, what, for, in

int_where $(131, \mathrm{~F}, \sigma=0.03, \mu=0.03)$ where $\rightsquigarrow$ when, wherein, whereas, whereby

int_wherever $(132, \mathrm{~F}, \sigma=0.02, \mu=0.02)$

wherever $\rightsquigarrow$ where, whatever, whenever, whichever, wherein, whereas, whereby

int_whither $(133, \mathrm{~F}, \sigma=0.03, \mu=0.03)$ whither $\rightsquigarrow$ when, whence, that, what

int_whence $(134, \mathrm{~F}, \sigma=0.03, \mu=0.03)$ whence $\rightsquigarrow$ when, whither, where, what

## 句読法

comma (153, W, $\sigma=0.1, \mu=0.1)$ , $\rightsquigarrow \varepsilon(0.9), .(0.05)$, . (0.025), ; (0.025)

ins_left_comma (154, W, $\sigma=0.1, \mu=0.1)$以下の条件 1., 2.のいずれかを満たす位置に, $(0.9)$, , (0.025), . (0.025), ; (0.025), : $(0.025)$ を挿入する.

1. 1a. かつ $1 \mathrm{~b}$.

1a. 1a1.または 1a2.
1a1. 左の単語の Penn Treebank 品詞タグが NN, NNS, NNP, NNPS.

1a2. 1a2a. かつ 1a2b.

1a2a. 左の単語の Penn Treebank 品詞タグが RB, RBR, RBS.

1a2b. 左の単語の Universal 品詞タグが ADV.

1b. 右の単語の Penn Treebank 品詞タグが CC, DT, IN, WDT, WP, WP\$, WRB.

2. 2a. かつ $2 \mathrm{~b}$.

2a. 左の単語の Penn Treebank 品詞タグが NN, NNS, NNP, NNPS.

2b. 2b1. かつ 2b2.

2b1. 右の単語の Penn Treebank 品詞タグが RB, RBR, RBS.

2b2. 右の単語の Universal 品詞タグが ADV.

ins_right_comma $(155, \mathrm{~W}, \sigma=0.1, \mu=0.1)$

以下の条件 1., 2.を満たす位置に，(0.9), , , (0.025), . (0.025), ; (0.025), : (0.025) を挿入する。

1. 1a.または $1 \mathrm{~b}$.

1a. 左の単語の Penn Treebank 品詞タグが NN, NNS, NNP, NNPS.

1b. 1b1. かつ $1 \mathrm{~b} 2$.

1b1. 左の単語の Penn Treebank 品詞タグが RB, RBR, RBS.

1b2. 左の単語の Universal 品詞タグが ADV

2. 右の単語の Penn Treebank 品詞タグが VB, VBD, VBG, VBN, VBP, VBZ.

$\operatorname{period}(156, \mathrm{~W}, \sigma=0.1, \mu=0.1)$

. $\rightsquigarrow \varepsilon(0.5)$, , (0.3), . . (0.05), . (0.05),

: $(0.025), ;(0.025), !(0.025), ?(0.025)$

hyphen (157, W, $\sigma=0.05, \mu=0.05)$
- $\rightsquigarrow \varepsilon(0.85), \quad--(0.1), \quad--\quad(0.025)$,
- - $(0.025)$

two_hyphen $(158, \mathrm{~W}, \sigma=0.05, \mu=0.05)$

-- $\rightsquigarrow \varepsilon(0.2),-(0.7),---(0.05),--(0.05)$

ins_hyphen (159, W, $\sigma=0.05, \mu=0.05)$

以下の条件 1., 2., 3., 4. のいずれかを満たす位置に- (0.7), -- (0.25), --- (0.025),一 - (0.025), を挿入する.

1. 1a. かつ $1 \mathrm{~b}$.

1a. 左の単語の Penn Treebank 品詞タグが JJ, JJR, JJS, NN, NNS, RB, CD.

1b. 右の単語の Penn Treebank 品詞タグが JJ, JJR, JJS, NN, NNS, VBN, VBG.

2. 2a. かつ $2 \mathrm{~b}$.

2a. 左の単語の Penn Treebank 品詞夕グが JJ, JJR, JJS, CD, NN, NNS.

2b. 右の単語の Penn Treebank 品詞タグが RB.

3. 3a. かつ 3b.

3a. 左の単語の Penn Treebank 品詞タグが CD.

3b. 右の単語の Penn Treebank 品詞タグが $\mathrm{CD}$.

4. 4a. かつ $4 \mathrm{~b}$.

4a. 左の単語の Penn Treebank 品詞タグが VB, VBG, VBN, NN, NNS.

4b. 右の単語の Penn Treebank 品詞タグが RP.

quot $(160, \mathrm{~W}, \sigma=0.05, \mu=0.05)$

Penn Treebank 品詞夕グが‘‘または’,のトークン $\rightsquigarrow \varepsilon$, , , ", ’ , , “

colon $(161, \mathrm{~W}, \sigma=0.05, \mu=0.05)$

: $\rightsquigarrow \varepsilon(0.4), .(0.2),,(0.2), ;(0.2)$

semicolon (162, W, $\sigma=0.05, \mu=0.05)$

$
; \rightsquigarrow \varepsilon(0.4), .(0.2),,(0.2),:(0.2)
$

hatena (163, $\mathrm{W}, \sigma=0.05, \mu=0.05)$

$
? \rightsquigarrow \varepsilon(0.1), .(0.75),,(0.1), ?(0.05)
$

bang (164, W, $\sigma=0.05, \mu=0.05)$

$
! \rightsquigarrow \varepsilon(0.4), .(0.2),,(0.2), ?(0.2)
$

## 接続詞

conj_and $(168, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ and $\rightsquigarrow \varepsilon(0.95)$, but (0.05)

conj_but $(169, \mathrm{~F}, \sigma=0.05, \mu=0.05)$ but $\rightsquigarrow \varepsilon(0.9)$, and $(0.1)$

## 形容詞/副詞/名詞/動詞

to $(152, \mathrm{I}, \sigma=0.05, \mu=0.05)$

Penn Treebank品詞タグがTO.

to $\rightsquigarrow \varepsilon(0.6)$, by (0.2), for $(0.2)$

auxpass $(170, \mathrm{I}, \sigma=0.03, \mu=0.03)$

係り受けタグがauxpass の語 $ぃ \varepsilon$

confusion (172, L, $\sigma=0.005, \mu=0.005$ )

$x \rightsquigarrow x$ の confusion set からサンプルされた語

Confusion set は，接尾辞を置き換え・削除・追加の操作をすることで生成する. confusion set $=\left.\{w^{\prime} \mid w \underset{\text { 接尾辞 }}{\text { 操 }} w^{\prime} \wedge w^{\prime} \in\right.$ dictionary $\}$. 接尾辞集合 $=\{$ ability, able, ably, acy, ade, age, al, an, ance, ancy, ant, ar, arch, archy, ard, arian, ary, aster, ate, ation, ative, bility, ble, bly, ce, cide, cle, cracy, craft, crat, cule, cum, cy, d, dom, drome, e, ed, ee, eer, en, ence, ency, ent, eous, er, erel, ern, ery, es, esce, escent, ese, esque, ess, est, eth, ette, ey, fic, fication, fold, form, free, ful, fy, gamy, gate, gen, gon, gram, graph, graphy, handed, hood, i, ial, ian, ibility, ible, ibly, ic, ical, ically, ice, ician, ics, id, ie, ied, ier, ies, iform, ify, ile, ily, in, ine, ing, ion, ior, iour, isation, ise, ish, ism, ist, ite, itis, itive, itude, ity, ium, ive, ization, ize, le, let, like, ling, log, logical, logist, logue, logy, looking, ly, lysis, man, mancy, mania, manship, men, ment, meter, metry, most, n, nce, ness, nik, nomy, ock, oid, ology, onomy, or, ory, ose, osis, osity, our, ous, pathy, person, phil, phile, philia, philiac, phobe, phobia, phone, phony, ple, proof, red, rel, ry, s, scape, scope, se, self, selves, ship, some, speak, sphere, ster, $t$, th, tion, tious, tour, tude, ty, ular, ule, ulous, ure, ward, wards, way, ways, wide, wise, worthy, $y$, yer \}.

synonym $(171, \mathrm{~L}, \sigma=0.05, \mu=0.05)$

Penn Treebank 品詞夕グが JJ, JJR, JJS, NN, NNS, RB, RBR, RBS, VB, VBD, VBG, VBN, VBP, VBZ.

$w \rightsquigarrow$ WordNet のシソーラスからサンプルした語

adj_infl $(173, \mathrm{I}, \sigma=0.05, \mu=0.05)$

Penn Treebank 品詞タグが JJ, JJR, JJS.

$w \rightsquigarrow$ lemminflectを用いて, $w$ を別の語形

に変える (e.g. JJ $\rightarrow$ JJR)

noun_infl $(174, \mathrm{I}, \sigma=0.05, \mu=0.05)$

Penn Treebank 品詞夕グが NN, NNS.

$w \rightsquigarrow$ lemminflectを用いて, $w$ を別の語形

に変える (e.g. NN $\rightarrow$ NNS)

verb_infl $(175, \mathrm{I}, \sigma=0.1, \mu=0.1)$

Penn Treebank 品詞タグが VB, VBD, VBG, VBN, VBP, VBZ.

$w \rightsquigarrow$ lemminflectを用いて, $w$ を別の語形

に変える (e.g. VBG $\rightarrow$ VBN)

Penn Treebank 品詞夕グが VBG, VBN の場合,

20\%の事例で, auxiliary word (have, has, ..., be，...) を追加する。

## 小辞

Pee Treebank 品詞タグが RP かつ係り受けタグが prtの語に適用される。

part $(176, \mathrm{~F}, \sigma=0.05, \mu=0.05)$

$x \rightsquigarrow \varepsilon(0.65)$, out, up, down, about, on, in, off $(0.05)$

## 縮約

$\operatorname{contr}(177, \mathrm{~W}, \sigma=0.05, \mu=0.05)$

縮約 (' $m$ など) の'を取り除く.

## 削除

$\operatorname{del}(178, \mathrm{~B}, \sigma=0.01, \mu=0.01)$

削除集合のトークンを削除する。

削除集合 $=\{$ !, ", \#, \$, \%, \&, ', 're, 's, (, ), *, +, , , -, ., /, :, ;, <, =, >, ?, ๑, [, \, ], `, -, ', a, about, after, against, am, an, and, are, around, as, at, away, back, back, be, because, been, before, being, but, by, can, could, dare, did, do, does, down, during, for, from, had, has, have, how, if, in, into, is, it, just, like, may, might, of, off, on, or, ought, out, over, shall, should, since, than, that, the, them, there, these, they, this, those, through, to, under, up, was, were, what, when, where, whether, which, while, who, whom, whose, why, will, with, would, $\{\},, \sim\}$

## 表記

ent $(165, \mathrm{~W}, \sigma=0.03, \mu=0.03)$

固有表現中の単語の先頭の大文字を小文字にする (e.g. Long Island $\rightarrow$ long island). $\mathrm{SpaCy}$ で検出された固有表現に対して適用される. $80 \%$ の事例で，全単語に対して小文字化を行い， $20 \%$ はランダムに行う。 title (166, W, $\sigma=0.01, \mu=0.01)$

単語の先頭を小文字から大文字に変える。先頭が小文字で，ラテン文字から成る語に適用される。

uncase (167, W, $\sigma=0.03, \mu=0.03)$単語の先頭を大文字から小文字に変える。先頭が大文字で，ラテン文字から成る語に適用される。

del_orth $(180, \mathrm{~W}, \sigma=0.03, \mu=0.03)$ 2 単語間の空白文字を取り除く.

ins_orth (181, W, $\sigma=0.03, \mu=0.03)$単語中に空白文字を挿入する。 $80 \%$ の事例で, 空白文字の插入で分割された両部分が辞書中に含まれているようにする。20\%は，任意の位置からランダムに分割する。このため, "football" は "foo tball"より "foot ball" と分割されやすい.

綴り

綴り誤りは便宜上，表記の誤りとした。そのため，このモジュールも $\mathrm{W}$ こ分類される.

spell $(179, \mathrm{~W}, \sigma=0.05, \mu=0.05)$

以下のようにして，綴り誤りを生成する。

1. 幾何分布 $(p=0.9)$ から誤り生成の操作回数をサンプルする.

2. Delete, Swap, Insert(挿入), Replace(置き換え) から当確率で操作を選択する。

Delete: 1 文字削除

Swap: 隣り合う 2 文字の入れ替え

Insert：学習済み分布を用いサンプルした文字を 2 文字間に挿入

Replace: 学習済み分布を用い, 元の文字以外からサンプルした文字で 1 文字を置き換え
学習済み分布は, 順方向ニューラルネットを学習し, 推論することで得る。

図 7 綴り誤りの生成 (Replace の例)

## 語順

語句を移動する距離は正規分布からサンプルされる。そのため, 移動後の位置は, intではなく floatとなる. 最終的な順序は, float で表された位置に基づいて argsortを行ったものとなる.

an_wo $(182,0, \sigma=0.03, \mu=0.03)$

連続する形容詞 (ここでは, Penn Treebank 品詞タグが JJ, JJR, JJS, CD の語) を並び替える (例. “big fat” $\rightsquigarrow$ "fat big"). さらに, 10\%の事例で，後続の連続する名詞 (Penn Treebank 品詞タグが NN, NNS) とその順番を入れ替える (例. “big fat cat” $\rightsquigarrow$ "cat fat big").

of_wo $(183,0, \sigma=0.02, \mu=0.02)$

$A$ of $B \rightsquigarrow B$ of $A . A, B$ はともに，

(ADJ | DET | NUM) ${ }^{*}$ NOUN $^{+}$.

pp_wo $(184,0, \sigma=0.02, \mu=0.02)$

前置詞句を移動させる，前置詞句は以下のものとして抽出する.

(IN\&ADP\&prep\& of) ((ADV|ADJ |DET | NUM

| NOUN | PRON | PROPN)\& WDT) ${ }^{+}$ adv_wo $(185,0, \sigma=0.03, \mu=0.03)$

Universal 品詞夕グが ADV である語を移動させる。移動距離は, 正規分布 $(\mu=1.0, \sigma=$ 1.5) からサンプルする.

wh_wo $(186,0, \sigma=0.02, \mu=0.02)$

how, what, who, which, whose, when, where, whither, whence, why, whether を移動させる. 移動距離は, 正規分布 $(\mu=1.5, \sigma=1.0)$ からサンプルする.

norm_wo $(187,0)$

文中の全単語を移動させる。移動距離は,正規分布 $(\mu=0.0, \sigma=0.5 \times x)$ からサンプルする． $x$ は各文に対して, ベータ分布 $(\mu=0.03, \sigma=0.03)$ からサンプルされる.

## マスクトークン予測

mask $(188, \mathrm{~B}, \sigma=0.15, \mu=0.15)$

$80 \%$ の事例で, 単語全体を黒マスクトークン (0x25A8) に，20\%の事例で，単語中の文字を白マスクトークン (0x25A1)に置き換える。文字を置き換える回数は幾何分布 $(p=0.8)$ からサンプルする.

## 略歴

古山翔太：2020 年東京工業大学情報理工学院情報工学系卒業. 2022 年同情報理工学院情報工学系知能情報コース修士課程修了. 同年, 博士後期課程に進学. 修士 (工学).

高村大也：2003 年奈良先端科学技術大学院大学情報科学研究科博士課程修了.博士 (工学)。2003 年から 2009 年まで東京工業大学精密工学研究所助教. 2010 年から 2016 年まで同准教授. 2017 年から 2021 年まで同教授. 2017 年より産業技術総合研究所人工知能研究センター研究チーム長.

岡崎直観 : 2007 年東京大学大学院情報理工学系研究科博士課程修了. 東京大学大学院情報理工学系研究科 - 特任研究員, 東北大学大学院情報科学研究科准教授を経て, 2017 年 8 月より東京工業大学情報理工学院教授. 言語処理学会, 人工知能学会, 情報処理学会, ACL 各会員.