# データ拡張手法を用いたスペイン語文法誤り訂正

飯島 与喜 ${ }^{1} \mathrm{Tad}$ Gonsalves ${ }^{1}$
${ }^{1}$ 上智大学 理工学研究科 理工学専攻 情報学領域
t-iijima-2n3@eagle.sophia. ac.jp t-gonsal@sophia. ac.jp

## 概要

スペイン語の文法誤り訂正では，人の手によって 訂正されたコーパスが限られ，英語と比較して使用 できるデータが少ない. データ不足の問題を解決す る方法としてデータ拡張手法がある。既存のデータ 拡張手法ではランダムにデータを生成するため，コ 一パスに収録されているスペイン語学習者から取得 したデータとは全く異なるものになる。そこで，本研究ではコーパスから誤りパターンを抽出し, デー 夕に反映させることで，コーパスに収録されている スペイン語学習者の誤りを再現するデータ拡張手法 を提案する。この手法によって訓練用のデータを生成し, 限られたデータで高性能なモデルを構築する.

## 1 はじめに

文法誤り訂正 (Grammatical Error Correction: GEC) はスペルや句読点, 文法的な誤りを検出して訂正す る自然言語処理のタスクである.このタスクでは誤 りを含む文（誤文）を GEC のモデルに入力し，その 誤文に含まれる誤りを訂正した文（正文）を出力す る. 本研究では，スペイン語の誤りを訂正する.

文法誤り訂正では, 主に誤文と正文をぺアとした 学習者のコーパスを教師データとしてモデルを学習 させる手法が用いられる．スペイン語の学習者コー パスには Lang8[1]と COWSL2H[2]があるが，これら のデータセットだけでは英語のコーパスと比較する とデータ数が少ない，そこで，本研究では文法誤り 訂正固有のデータ拡張手法である人工誤り生成手法 を用いて，より高性能なモデルを構築する. 人工誤 り生成手法は単一言語データから誤文を生成する。生成した誤文と単一言語データの正文を組にして事前学習を行う. 事前学習をした後にファインチュー ニングする手法が有効であると[3]で報告されてい る.

また，人工誤り生成手法で単一言語データに誤り
を注入する際に，ランダムに誤りを注入するよりも 学習者が犯した誤りに近いものを注入した方がより 高性能なモデルを構築できると考えられる。そこで 本研究では, 学習者コーパスから誤りパターンを抽出し，単一言語データに誤りを注入することで，ス ペイン語学習者の誤りを再現するデータ拡張手法を 提案する．学習者コーパスから抽出した誤りパター ンを単一言語データに注入して誤りを生成すること で，学習者コーパスに含まれる特定の品詞誤りや語形変化だけでなく様々な誤りを再現することができ る. 誤りを注入する際にコーパス内の分布に従って 誤りを生成することで，ランダムに誤り生成するよ りも学習者が書いたものに近い文を得ることができ る。また，誤りをコーパスから抽出する手法を用い ることで，誤りの規則を定義する手間を軽減するこ とが可能である.

第 3 章でデータ拡張手法の詳細を説明し, 第 4 章 の実験でその有効性を確認するための実験設定につ いて述べる. 第 5 章の結果では, 提案手法が既存研究[2]や[4]よりも高性能であった結果とデータ拡張手法の 1 文あたりの誤り率を変化させた場合のモデ ルの性能、誤りタグごとのモデル性能を検証した結果を示す。

## 2 関連研究

スペイン語文法誤り訂正の研究として Davidson ら[2]が行なったものがある.この研究では COWSL2H データセットを提案し, GEC モデルを学習させた結果を示している.スペイン語 GEC のベー スラインとして"Bi-directional LSTM encoder + LSTM decoder”のモデルを使用している. COWLS2H には，スペイン語の L2 学習者（第二言語としてス ペイン語を学ぶ者）が書いたエッセイとそれを人間 が訂正したものが含まれる。モデルの訓練に用いる 際には，エッセイを 1 文ごとに分割し，誤文と正文 のペアにしたものが用いられている. さらに， 1 文 ごとに分割しぺアにしたものを訓練用データ，検証
用データ,テストデータの 3 つに分割して使用する.

また, Flachs ら[4]が行なった研究もある. この研究では人工誤り生成手法を用いている. 誤りを生成 する際は[5]で提案された規則べースの生成手法を 用いて挿入, 交換, 置換, 削除の操作を行い, 誤り を生成する. 置換の操作には Aspell Dictionary と Unimorph[6], またはそれら両方を用いた場合のモデ ル性能を比較している。スペイン語においては， Aspell Dictionary のみを使用した場合が最も高精度 であった. さらに, ノイズの多いデータを活用方法 についても言及している. WikiEdit[7], Lang8[1]の 2 つのデータセットを用いた場合で検証し, 事前学習 の後これらのデータをファインチューニングしたモ デルが最も性能が良いという結果が示されている.

WikiEdit は 4,871,833 文, Lang8 は 1,214,781 文が使用されている.

## 3 手法

本研究では提案するデータ拡張手法は, コーパス の誤りの抽出とデータへの誤りの注入の 2 段階に分 かれている.

誤りの抽出には, 正文と誤文から訂正箇所と誤り タイプを取得できる ERRANT[8]というツールを用 いる. ERRANT は英語用に作られたツールであるが， [2]で述べられている通りスペイン語でも問題なく 使用できる. しかし, より正確に使用できるように するために以下の項目について訂正を行った.
- ADJ:FORM を ADJ:INFL に変更
- Determiner-noun agreement に対応する DET:INFL の追加
- NOUN:POS $の$ 削除

ERRANT で誤文の誤り部分 (単語または文の一部の 複数語) に 3 つの誤りタグ $\operatorname{Missing}(\mathrm{M})$, Unnecessary(U), Replacement(R)を付与し, 訂正箇所 とともに誤りパターンとして抽出する. この誤りパ ターンから MUR それぞれの操作対象となる単語 （または文の一部の複数語）をその出現確率ととも にノイズスキームへ格納した．各コーパスの MUR の割合は表 1 の通りである。

誤りの注入では, 抽出操作で獲得した誤りタグ MUR と注入操作 Delete, Add, Replace を対応させ たノイズスキームを用いる. Delete と Replace の操作は操作対象の文中の単語の中でノイズスキームに 格納された単語に対して行われる. Add の操作では ノイズスキームに格納された単語を確率に基づいて選出し, 任意の位置に挿入する.

表 1 各コーパスの MUR の割合

誤りの生成を行う際に 1 文あたりの誤り率と 1 文 あたりの拡張数を設定できる. 1 文あたりの操作回数は 1 文あたりの誤り率と文の長さの積で決定する.

図 1 誤りタグと操作の対応

誤りパターンの抽出と誤りの注入操作は図 1 の通り に行われる。

図 2 データ拡張手法の概略図

ERRANT を用いて抽出した誤りパターンから構築 したノイズスキームを用いて訓練用の誤文と正文の ペアを作成する過程を図 2 に示す.

## 4 実験

## 4. 1 実験内容

まず, 既存研究 [4]で使用されている Aspell Dictionary を用いた手法と既存研究[2]の結果を比較 した. 次に, 1 文あたりの誤り率を変化させた場合 にモデルの性能にどのような影響があるかを検証し，誤りタグごとのモデルの性能についても検証した.

## 4. 2 データセット

事前学習には WMT News Crawl から抽出した $10,000,000$ の正文を用いた. 抽出したデータを拡張 して誤文を生成し，誤文と正文を組にして訓練用デ 一タとし，事前学習を行った。

ファインチューニングには GEC タスク用の誤文 と正文が収録されている Lang8，COWSL2H を用い た. Lang8 にはスペイン語以外の言語が含まれるた め, スペイン語のみを抽出し, Training と Validation に分割した. 本研究では Lang8 で使用可能な部分を 用い，データ数はそれぞれ $189,190 ， 10,611$ とした. COWSL2H は訓練用データ，検証用データ，テスト データに分割した。それぞれデータ数は 10,071 , $1,000,1,000$ とした.

また，それぞれのデータについてデータクリーニ ングを行った。数字とスペイン語に使用される文字 と記号以外の文字を削除し半角に変換した，単語と 記号間を半角スペースで統一した。 さらに，URLな どの文字列を削除し, 連続記号をその記号 1 文字に 変換した。

## 4. 3 データ拡張の設定

各操作の割合は GEC コーパスの Lang8 と COWSL2H から抽出したノイズスキームの各誤りタ グの割合に従う. 1 文あたりの誤り率は[4]との比較 を行うため 0.15 に設定した. 誤りを生成する際の候補の単語はコーパス中で 3 回以上誤っているものを 使用した。

## 4.4 モデル

本研究では GEC を行う Encoder-Decoder モデルと して Transformer を用いた。具体的な設定として Vaswami ら[9]が定義した Transformer bigを使用した.実装は fairseq 0.12.2 で行った. また, 事前学習, フ アインチューニングで設定したハイパーパラメータ
は表 2 と表 3 の通りである. ファインチューニング 時には Early stopping を用いて検証損失が最も小さ いモデルをテストに用いた.

表 2 事前学習時のハイパーパラメータ

表 3 ファインチューニング時の

## 4. 5 評価方法

本研究では, Precision, Recall, F0.5を評価手法と して用いる. 既存研究[4] と [2]の結果と比較を行うた めに F0.5 を MaxMatch(M2) scorer[10]と ERRANT[8] の 2 通りの方法で算出した。

## 5 結果

## 5.1 既存研究との比較

既存研究[4](Aspell_10m)の結果と本研究の提案手法(Errant $10 \mathrm{~m})$ を用いた結果, 既存研究と提案手法を 合わせて用いた結果 $(\mathrm{A}+\mathrm{E}-10 \mathrm{~m})$ について比較を行っ た結果を表 4 に示す. 全てのモデルを COWSL2H で ファインチューニングした. + (L)は Lang8 を追加で ファインチューニングしたことを表す.

また, 既存研究[2](Bi-LSTM+LSTM) との比較を行 なった結果を表 5 に示す.ここでは，F0.5を ERRANT で算出した.

## 表 4 既存研究 [4]との比較

表 5 既存研究[2]との比較

表 4 と表 5 の結果からいずれの既存研究よりも本研究の提案手法を用いた場合の方が Precision, Recall, F0.5 の值が高い. 既存研究[4]ではファインチューニ ング時に本研究の提案手法よりも多くのデータを用 いているが，提案手法はより少ないデータでより高 い性能を実現している. 本研究ではファインチュー ニングに用いるデータと同質の誤りを事前学習用デ 一夕に注入することでより良い結果を得ることがで きた.

## 5.21 文あたりの誤り率とモデル性能

提案手法で 1 文あたりの誤り率を変化させた結果 を表 6 に示す.モデルは Errant_10m+(L)を使用した.

表 61 文あたりの誤り率とモデル性能

誤り率を大きくするほど Precision が低くなり， Recall が高くなった. F0.5は 0.15 の場合に最大にな った.このことから 1 文あたりに注入する誤り数を 増やすと誤りの検出精度は上がるが，検出した誤り を正しく訂正できなくなると考えられる．特に誤り率 0.2 の場合の Precision が比較的大きく低下してい ることから, 誤り率から算出される注入する誤り数 が多くなりすぎることによって精度に悪影響を及ぼ すと考えられる。また、F0.5 が最大となった誤り率 0.15 が提案手法において最適な值であった.

## 5.3 誤りタグごとのモデル性能

誤りタグごとのモデル性能を表 7 に示す. モデル は Errant_10m+(L)を使用した。

Recall に着目すると誤りの注入回数が多いほど誤 りをより多く検出できると考えられる。 また, 誤り の注入回数は $\mathrm{U}$ よ $\mathrm{M}$ の方が多いのにも関わらず， F0.5 の値は M の方が低くなっている。これは Precision の值がUに比べ低いことが原因であるため,検出した誤りを正しく訂正できるよう，Mに対する 操作 Delete を改善する必要がある。また, U に対す る操作 Addについても誤りをより検出できるよう改善することでよりモデルの性能を向上させることが できると考えられる。

## 6 おわりに

本研究では，スペイン語の文法誤り訂正において 学習者の誤りを再現するデータ拡張手法を提案し,事前学習用データを拡張して学習を行うことで既存研究よりも高い性能を実現した。スペイン語のよう なデータが少ない言語の文法誤り訂正においてデー 夕拡張手法の有用性を示すことができた。

本研究ではコーパスの誤りを抽出, 注入すること でモデルの性能を向上させたが，今後はどのような 誤りが性能に寄与するか, スペイン語特有の誤りが モデルの性能にどのように影響するかについて詳し い分析や検証が必要である. より詳細な分析を行う ために本研究で使用しなかったスペイン語 ERRANT の誤りカテゴリ(ADJ, NOUN など)の認識性能を改良する必要がある. モデル性能の向上とと もに今後取り組みたい。

## 参考文献

[1] Tomoya Mizumoto, Mamoru Komachi, Masaaki Nagata and Yuji Matsumoto. 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(IJCNLP), pp.147-155. Chiang Mai, Thailand, November 2011.

[2] Sam Davidson, Aaron Yamada, Paloma Fernández Mira, Agustina Carando, Claudia H. Sánchez Gutiérrez, and Kenji Sagae. Developing NLP Tools with a New Corpus of Learner Spanish. In Proceedings of the Twelfth Language Resources and Evaluation Conference, pages 7238-7243, Marseille, France. European Language Resources Association. 2020.

[3] Jared Litchtarge, Chris Alberti, Shankar Kumar, Noam Shazeer, Niki Parmar, and Simon Tong. 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, 2019.

[4] Simon Flachs, Felix Stahlberg, and Shankar Kumar. Data Strategies for Low-Resource Grammatical Error Correction. In Proceedings of the 16th Workshop on Innovative Use of NLP for Building Education Applications, pages 117-122, Online. Association for Computational Linguistics. 2021.

[5] Jakub Náplava and Milan Straka. Grammatical Error Correction in Low-Resource Scenarios. In Proceedings of the 5th Workshop on Noisy User-generated Text (W-NUT 2019), pages 346-356, HongKong, China. Association for Computational Linguistics. 2019.

[6] Christo Kirov, Ryan Cotterell, John Sylak-Glassman, Géraldine Walter, Ekaterina Vylomova, Patrick Xia, Mannal Faruqui, Sebastian Mielke, Arya McCarthy, Sandra Kübler, Davaid Yarowsky, Jason Eisner, and Mans Hulden. UniMorph 2.0: Universal morphology. In Proceedings of the Eleventh International Conference on Language Resources and Evaluation (LREC 2018), Miyazaki,
Japan. European Language Resources Association (ELRA). 2018.

[7] Adriane Boyd. Using Wikipedia edits in low resource grammatical error correction. In Proceedings of the 2018 EMNLP Workshop W-NUT: The 4th Workshop on Noisy User-generated Text, pages 79-84, Brussels, Belgium. Association for Computational Linguistics. 2018.

[8] Christopher Bryant, Mariano Felice, and Ted Briscoe. Automatic Annotation and Evaluation of Error Types for Grammatical Error Correction. In Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume1: Long Papers), pages 793-805, Vancouver, Canada. Association for Computational Linguistics. 2017.

[9] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Lukasz Kaiser, and Illia Polosukhin. Attention is All you Need. In I. Guyon, U. V. Luxburg, S. Bengio, H. Wallach, R. Fergus, S. Vishwanathan, and R. Garnett, editors, NeurIPS, pages 5998-6008. Curran Associates, Inc. 2017.

[10] Daniel Dahlmeier and Hwee Tou Ng. 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, pages 568-572, Montréal, Canada. Association for Computational Linguistics. 2012.
 飯島 与喜 ${ }^{1} \mathrm{Tad}$ Gonsalves ${ }^{1}$ ${ }^{1}$ 上智大学 理工学研究科 理工学専攻 情報学領域 t-iijima-2n3@eagle.sophia. ac.jp t-gonsal@sophia. ac.jp  