# 含意や推意への論理的なアプローチでの関係把握の検討

太田 博三
放送大学教養学部
9924658973@campus.ouj.ac.jp

## 1 はじめに

GPT-3 をはじめとした AI の文生成が向上している中で, 解釈可能性などの視点から, かつての国際的な言語処理タスクやその評価方法が見直されようとしている。本稿では，機械というより人間の視点も考慮しながら，含意や推意を論理的に把握することを考察したものである. 最近では，人間に近い解釈可能なものを対象とする動きが主流になりつつある.マーケティングの消費者行動モデルの分野では，解釈できないものは取り入れない姿勢もあり，ヒトから機械へ, 機械からヒトへの相互作用が, 今どき,必要とされていると言える.

得に，語用論の面白さは，書き言葉としての文章だけではなく，話し言葉としての対話にも含まれ，機械に落とし込み際には, 大きな課題となっている.

既存の RoBERTa や T5 などの言語モデルは, 省略された語句を mask させ，予測させるものであると言える。この語句と語句との間の関係を捉えることでは，その精度面から成功したと言えるが，チャットボットなどの短い発話から，相手の背景まで推測させることは，まだ発展途上にあると思われる．文と文の間の関係は明示的にはないままである。

ここで, 人間から機械への落とし込みを行う際に，数理論理学を並行して機能させることで，その背景を複数のパターンで捉えることができる. 含意関係認識の文や書き言葉や話し言葉，更には，親子や友人同士などの人間関係を認識したうえで考察する関係性理論において，論理的なアプローチの可能性を検討したものである.

## 2 研究の目的・新規性

本研究では, 日常生活で用いられる基本的な書き言葉や話し言葉に対して, 数理論理学を用いた応用とし

捉え, 機械での処理にも，適用する上で，人間関係や含意や推意をいくつかに捉えることを考察した。一昔前の人工知能で用いられたのが記号推論学であるが，成功例は専門知としてのエキスパートシステムなどである。ここでは，＜IF-THEN>で分岐させる手法が中心であった。これを拡張し，現在の深層学習に記号推論も並べて適用したものである. <IF-THEN-BECAISE>であれば，文と文の間の関係が，直感的に捉えられる. 更に，短い文や発話でも， その前後の文脈の背景を，よくありがちなパターンで落とし込み，解釈可能な接近が可能となる.

## 2.1 記号論理学によるアプローチ

本節では，日常生活に必要な日本語を機械でどのくらい捕捉できるかを検討する. まず, 記号論理学による表現と推論の視点から入り, 次に, 含意関係認識 (Recognition of Textual Entailment; RTE)を取り上げ, Multi-Hop Reasoning による会話断片に照らし合わせて,考察する. [Arabishahi 2021]の研究では, 人間の $65 \%$ に対して, 35\%であり, SOTA であるとされた.このアプローチを，書き言葉と話し言葉への適用例とを，それぞれ検討する。

## 2.1 記号論理学による表現と推論

機械での知識表現の成功例として,「IF-THEN $\rfloor$ 形式のエキスパートシステムが挙げられる. 1 つつの論理命題の列挙が分岐する内容で捉えられるものに限る. 日常生活で出てくるものには弱く, 医師の診察など専門性の高いものに限られる.この要因の一つに，記号論理学の一階述語論理での表現 (図 2-1-1)にある.この場合, 数字の単位は表せず, 非常に曖昧なものに限られる.

ここで 1 つ 1 つの知識抽出は Web で可能になったものの，それを捕捉するフレームワークが記号論理学では曖昧なものになり，具体性のあるものは，その対象にならなかった。

 & $\exists \mathrm{x}($ have(I, computer(x)) \\

## 2.2 含意関係認識による対象範囲

含意関係認識とは, 2 つの文を想定し, 1 つは前提となる文(Text; T)を，もう 1 つは仮定となる文(Hypothesis; $\mathrm{H})$ を設定し, それらの関係が成立するかを Yes,No $(0,1)$ で判定するタスクである. 例を以下に示す(図 2-2-1 参照).

ここでは，京都で食事をしていた行為と滞在していた行為とを，直接的に確認する手間を省くものであるが，論理命題となる 1 つ 1 が確認される訳ではないため, ニュース記事なのでは，事実関係が必要になることもあり, 注意が必要である. 使用される場合は, ポライトネスなどのように, 長年, 付き合いのある友人や家族同士の会話で, 省略する方がくどくなく自然な場合が妥当と考えられる。

2000 年代の前半の国際的な言語タスクは,この含意関係認識が主流であった. その後, 2019 年頃から BERT による深層学習が出てくると, 店舗の広告文と相性の良い消費者の SNS との相性分析が行われるなど,文脈を考慮した活用が消費者の意思を表すとして, マ一ケテイング分野で広く使われるようになった.このように, 気持ちや思考などを捉えるのには事実確認がされにくい分野では, 利便性は高くなるが, 知識や事実関係に照らし合わせる際は, 不得手となる.

BERT による含意関係認識は, 言葉と言葉の距離によるものであり，論理的推論も加わることが期待されている.

## 2.3 Multi-Hop Reasoning での適用

Multi-Hop Reasoning には, 広い概念のため, 本項では， Arbashahi(2020)の IF(State)-THEN(action) -BECAUSE(Goal)のアプローチを検討する. 深層学習での処理に並行して, 論理テンプレートを採用したものである.この IF-THEN-BECAUSE は 3 段論法を始めとしたモーダスポーネンスなど, 非単調推論などがある. しかし, 逐次段階で, 人間の感覚で十分にわかってしまうなどで，あまり効果的ではなかった. これに対して, 論理展開が早く, 且つ仮設を基にしたアブダクションの推論法を応用したものが，前述の Multi-Hop Reasoning である. 隠れた背景や意図・推意を聞き手や読み手に委ねることができる。 つまり，BECAUSE 節は複数の選択肢が考えられ， IF-THEN で固定できるのがメリットである.

 & 早く起きよう. &  \\

 &  &  \\

IF-THEN-BECAUSE で捉えると図 2-3-1 のようになり，字義的にも，そのまま捉えることができる.

## 2.4 書き言葉への適用

最近, よくニュースでも取り上げられたコロナ下の政府の依頼文を取り上げて考察する(図 2-4-1 参照)，ヒトの認知機能では, 論理学の対偶関係で捉える傾向があり, ここを起点として考えるが, 「午後 8 時前なら, 飲食店での食事は構わない」とい文脈で捉えてはいけないといら政府側の指摘も受け，国民的には混乱した覚えがある.この対偶での解釈では，私たちがよく考えがちで，語用論的には誘導推論と言われている.

午後 8 時を過ぎたら, 飲食店での食事は避けて下さい.図 2-3-1 書き言葉の例: 緊急事態宣言での政府の依頼文

この対偶関係では, 論理学上は $\mathrm{p} \Rightarrow \mathrm{q}$ から $\Rightarrow \mathrm{q} \Rightarrow \mathrm{p}$ が成立するが注意が必要である. 直観主義論理の立場で，排中律の除去を行う必要がある. 排中律とは,「p V ᄀp」の姿勢をとり, 1 つつの命題を確認するものである. 含意関係認識の際も同様の注意が必要となる.

 &  \\

 &  &  \\

IF-THEN-BECAUSE で捉えると図 2-4-1 のようになり,字義的にも，そのまま捉えることができる.

## 2.5 話し言葉への適用

以下, 夫婦間の会話を取り上げて考察する（図 2-5-1 参照).

同じくIF-THEN-BECAUSE で捉えると図 4-5-2 のようになり, 捉えることができる.

 &  \\

ここでは，「コーヒーを飲むと，早く寝付ける」の間に，「コーヒーにはカフェイン効果があり, 寝つきが悪くなることもある」という知識が含まれているのか明確ではない.直観主義的には, 命題を 1 つつ, 確認する必要があり, ここが知識活用と論理展開との間でネックになっていると思われる. しかし, 「コーヒーを飲むと, カフェイン効果で寝つきが悪くなる」という捉え方はやや強引になるため, 常識レベルで捉えることも考えられる.

## 2.6 関係性理論への適用

以下, 関連性理論での親と子の会話の背景の捕捉について, 考察する. 母と娘との会話であり, たった 1 対の対話でしかないが，これを推論するのには，単なる文の省略を補完するだけでは不十分であり, 母と娘との共通認識や背景の理解が必要となる. 背景を 5 つ場面で記し(図 2-6-1 参照), 会話断片を記す(図 2-6-2 参照).

 \\

ここで, IF-THEN-BECAUSE で捉えると, 図 2-6-3 のようになり, 字義的にも，そのまま捉えることができる.この場面は, 文化交流の中でも，ローカル性の高いものだが，よく見かける場面である.

 &  & \\

## 3 反実仮想への拡張

「IF-THEN-BECAUSE」など論理フレーム以外にも, 反実仮想の「IF would, I would... ,But I really want to.」が，日常生活の後悔の念を背景にした場合に考えられる (図 2-6-1).ここでは, 実際に「帰省できた」 のは実在していないため，発話者の過去の経験を踏まえて，その意図が反映・内包される．事実とは反対の「次はどうしても帰省したい.」などを表している.このように，論理フレームに話者の意図や後悔を含めることができ，ある一定の文脈を設立させることができる点で, 有効と思われる.また必ずしも，字義上の文と文の関係を解釈できるとは限らないが，日常生活の多くの場面では，定性的に成立するものであれば，適用はそう難しくないと考えられる。

「コロナになっていなければ，お正月に帰省できたのに, しかし出来なかった, 残業だ, 次回, 行きたい」

図 2-6-1 IF would, I would... ,But I really want to.

Next I will.

## 4 おわりに

本稿は, 記号論理学の応用である Multi-Hop Reasoning の異なる談話や発話をまたいで,「IF-THEN-BECAUSE 」や「IF would, I would $\cdots$,But.」などの論理フレームで, 知識を捕捉できる可能性を確認した. 解釈可能なアプローチの一つとして, 書き言葉だけではなく話し言葉の場面でも直感的にも受け入やすいと考えられる. 自然言語だけでのアプローチは, $35 \%$ に過ぎないが，今後は，画像等を取り入れたマルチモー ダルなアプローチで考察してゆくことで, 人間の $65 \%$ に近づけていきたい. 画像や動画では, 場面と場面との繋がりが精度に直結すると思われ, 引き続き, 取り組みたい.

## 5 参考文献

[1] 新田「知識と推論」, サイエンス社, 2002

[2] 加藤・土屋「記号論理学」, 放送大学出版会, 2014

[3] 時本「あいまいな会話はなぜ成立するのか」, 岩波書店, 2020

[4] 坂原「日常言語の推論」, 東京大学出版会, 1985

[5] Minsky（竹林訳）「ミンスキー博士の脳の探検」,共立出版会, 2009

[6] 小出「Common Lisp と人工知能プログラミング

(下巻)」オントロノミー合同会社, 2017

[7] Peter Norvig Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp, Morgan Kaufmann, 1991

[8] 長尾「知識と推論」, 岩波書店, 1988

[9] 宇佐美まゆみ監修(2020)『BTSJ 日本語自然会話

コーパス（トランスクリプト・音声）2020 年版』

[10] Recent Advances in Natural Language Inference: A Survey of Benchmarks, Resources, and Approaches Shane Storks, Qiaozi Gao, Joyce Y. Chai, 2019

[11] ブラウン \& レヴィンソン「ポライトネス言語使用における、ある普遍現象」“Politeness : Some Universals in Language Usage” , 1987

[12] 生田「ポライトネスの理論」大修館書店, 『月刊言語』, pp.66-71, 1997

[13] 松井「関連性理論から見たポライトネス」30 巻 No. 3 特集月刊言語, 2001

[14] 井之上「言語データからの知識獲得と言語処理への応用」人工知能 33 巻 3 号, 2018

[15] 太田「言語学の語用論や配慮表現の先端技術への適用に関する一考察」第 23 回 SIG-AM 人工知能学会合同研究会, 2019

[16] 米盛「アブダクション一仮説と発見の論理」勁草書房, 2007

[17] 麻生深層学習と知識・記号推論の融合による AI 基盤技術の発展,報告書, 研究開発戦略センター（CRDS）, 科学技術振興機構研究開発戦略センター, 2020

[18] Arabshahiet.al "Conversational Neuro-Symbolic Commonsense Reasoning", AAAI Conference on AI, 2020

[19] Arabshahi et.al 2021]"Conversational Multi-Hop Reasoning with Neural Commonsense Knowledge and Symbolic Logic Rules" arXiv preprint, 2021
[20] Arabshahi et.al "Conversational Multi-Hop Reasoning with Neural Commonsense Knowledge and Symbolic Logic Rules" arXiv preprint, 2021

[21] Maarten, Shwartz, Choi et .al., Introductory Tutorial: Commonsense Reasoning for Natural Language Processing, Computational Linguistics, pages 27-33, 2020

[22] Mueller Commonsense Reasoning: An Event Calculus Based Approach, Morgan Kaufmann, 2nd edition, 2014

[23] Lehman, Laird. A Gentle Introduction to Soar, an Architecture for Human Cognition, 2006

[24] Shwartz Maarten, Choi et .al., Introductory Tutorial: Commonsense Reasoning for Natural Language Processing, Computational Linguistics, pages 27-33, 2020

[25] Lin et.al "CommonGen: A Constrained Text Generation Challenge for Generative Commonsense Reasoning, EMNLP2020, 2020

[26] Mueller, Erik "Commonsense Reasoning: An Event Calculus Based Approach”, Morgan Kaufmann, 2nd edition, 2014


# キーワード付与による画像キャプション生成

木村文飛 1 新納浩幸 ${ }^{2}$
1 茨城大学工学部情報工学科 2 茨城大学大学院理工学研究科情報科学領域
18t4030r@vc.ibaraki.ac.jp hiroyuki.shinnou.0828@vc.ibaraki.ac.jp

## 概要

画像の内容を自動的に記述する画像キャプション生成という技術は、自然言語処理と画像処理という二つの分野を組み合わせて行う分野である。本論文では、キーワード付与というデコーダの入力ベクトルにキーワードのベクトルを付与する手法を提案し、それを行うことで画像キャプション生成における問題点の解決を図った。提案手法を行わなかったモデルと比較することで評価を行い、結果として提案手法が CIDEr のスコアを 0.7 更新したことが確認できた。

## 1 はじめに

本論文では、画像とキャプションのペアを用いて行うキャプション生成について、キーワード付与を用いることで、生成されるキャプションの精度を向上させる手法を提案する。

画像キャプション生成は、画像からその画像の簡単な説明文（キャプション）を生成するタスクである。人力で作成された、画像とキャプション文のセットを用いて学習する手法によって、近年目覚ましい発展を遂げている分野である。

画像キャプション生成における従来の手法の問題点として、十分なデータセットの用意が困難という点があげられる。人力で作成された画像とキャプション文のセットをさらに拡張することは、非常にアノテーションコストがかかる作業なのである。これの解決策として、教師なし学習 $[1,2]$ やデータ拡張 [3] などがある。また画像キャプション生成の大きな問題点の一つとして、不適当なキャプションが生成された場合、原因が何であるかを特定することが容易ではないという点があげられる。画像キャプション生成をする際には、画像畳み込みといった画像側の処理と、画像キャプション文の学習という言語側の処理を一連の流れの中で行わなければならない。つまり、原因が言語側にあるか画像側にあるか不明確なのである。本論文ではこれらの問題点に着目し、画像を畳み込み作成されたべクトルに、学習に使われるキャプション内に出現するキーワードに対応したべクトルを付与することで、生成するキャプションの精度を向上させることを目指す。また、 キーワード付与をすることで物体検出が正常に行われた状況下となるかということを実験する。

実験では、訓練データの画像に MSCOCO のデー タセット [4]、キャプションに STAIR Captions の日本語キャプション [5] を用いた。テストデータは MSCOCO のデータセットから一部を抜き出して使用した。そして、キーワード付与を行ったデータで学習を行ったシステムで得られたキャプションと、 キーワード付与を行っていないデータで学習を行ったシステムで得られたキャプションを比較し評価を行った。

## 2 関連研究

本研究では、[6] で提唱された画像キャプション生成モデル、NIC の構造を参考にした。

このモデルは畳み込みニューラルネットワーク （CNN）をエンコーダ、長短期記憶ニューラルネットワーク（LSTM）をデコーダとして、それらを組み合わせることで画像キャプションを生成するモデルである。入力画像から畳み込みニューラルネットワーク（CNN）によって特徴量を取り出したものと、画像の説明文を単語埋め込みによりべクトル化したものを、長短期記憶ニューラルネットワーク （LSTM）に入力することで文章を生成するものである。このモデルの特徴として、画像キャプション生成に利用可能なデータセットのサイズが大きくなればなるほど、出力するキャプションの精度が上がることは明らかであると述べられている。しかし、実際には利用可能なデータセットを増やすことは非常にコストがかかり容易ではない。

## 3 提案手法

画像キャプション生成の問題点は、データセット拡張のコストが高いことと、不適切なキャプション生成の原因が言語側にあるか画像側にあるか不明確であることの 2 点である。これらを解決するため、学習に用いられるデータセットに、キャプションから取り出したキーワードをもとに作成したベクトルを付与する手法を提案する。

## 4 実験

## 4.1 実験設定

本実験で付与するべクトルとは、キーワードとなる単語 150 個を用いて、学習に用いられるキャプションから作成したキーワードの bag of words である。これを各キャプションごとに作成し、キャプションに対応する画像を畳み込むことで得られるべクトルにアペンドした。尚、キーワードとなる単語 150 個は、データセット全体における名詞の出現回数をもとに決定しており、物体検出で出力されないような名詞（色、数字等）は手動で除外した。

本実験では、MSCOCO の画像データセットと STAIR Captions の日本語キャプションを組み合わせて学習を行った。キーワード付与を行った場合におけるキャプションの品質の変化を調べるために、デフォルトのデータセットとキーワード付与を行ったデータセットの合わせて 2 パターンの訓練データを用意した。これらを用いて学習を行い、デフォルトのデータセットを用いて学習を行ったモデルと、提案手法を用いて作成されたデータセットを用いて生成されたモデルとを比べることによって品質が向上したかを調査する。

今回の実験では CNN は学習させずに、学習対象をエンコーダの最後に行う 1 層の全結合層と、 デコーダとなる LSTM のみを学習させた。また、本実験では CNN に学習済みネットワークである VGG-16[7]を用いて画像畳み込みを行った。

学習に用いたデータセットは、MSCOCO の訓練データ画像と、STAIR Captions の 5 つのキャプション文のセットを組み合わせた 82732 個である。図 1 に訓練データ例を示す。

これに対してバッチサイズ 100、エポック数 10 として学習を行った。そして、学習する際の各エポック終了時にモデルを保存し、各モデルに対してテス

図 1 訓練データ例

トデータとなる MSCOCO のデータセットから抜き出した画像 10000 枚からキャプションを生成させ評価を行った。

実験後、キーワードとして埋め込んだ単語がどれほどの出現率となるかを調査するために、提案手法を用いたモデルで最高精度だったモデルと提案手法を用いないモデルで最高精度だったモデルを用いて生成されたキャプション 10000 文に対して、ベクトルを付与する際に用いたキーワードの bag of words を作成し分析した。

分析内容は以下の 3 通りである。

・キーワードとして付与した単語の出現率。

・ bag of words の値で場合分けした、キー ワードとして付与した単語の出現率。

・不適切なキーワードの出現率。

これらについて調査を行い、分析を行った。

## 4.2 評価手法

生成キャプションの評価には CIDEr[8]を用いた。 CIDEr とは、動画や画像のキャプション生成で評価に用いるメソッドであり、n-gram 形式を用いた TF-IDF による平均コサイン類似度を表すものである。キャプション画像の枚数やアノテーション数を考慮しているという点から本実験の評価手法に用いた。

## 4.3 実験結果

実験結果として、キーワード付与前と付与後のモデルで行ったテスト結果をまとめたものを図 3 に示

す。キーワードの付与前のモデルで最高精度となったのはエポック 3 のものであり、値は 42.1 であった。キーワードの付与後のモデルで最高精度となったのはエポック 4 のものであり、值は 42.8 であった。この結果により、CIDEr という評価手法では提案手法がベースラインを上回る最高精度を記録し、提案手法が精度向上に起因することが確認できた。

キーワードとして付与した単語の出現率についての分析結果をまとめたものを表 1 に示す。この結果から、キーワードとして付与した単語の出現率は、上昇したが大きな変化がなかったことが確認できた。

キーワードを付与する際に埋め込まれるべクトルは、正解キャプション 5 つから作成したキーワー ドの bag of words であるので、各キーワードごとに出現回数によって重みが違うという問題がある。表 1 はその問題点を考慮していないため、画像ごとではなく単語単位で、正解キャプション 5 つにおけるキーワードの出現回数によって場合分けし、分析した。その結果を表 2 に示す。

間違ったキーワードが出現した確率も同時に調査した。具体的には、追加したべクトルに含まれていないキーワードが出現する確率を計算した。計算結果は追加前が 52.75 \%、追加後が 47.74 \%であった。

## 4.4 出力例

図 2 にモデル別のキャプション出力例を示す。

「パソコン」、「サーフ」はキーワードであり、ベクトルに埋め込まれているため、提案手法を用いることで生成されるキャプションがより正確になっている場合があることが確認できる。

## 5 考察

実験結果より、本実験の提案手法は CIDEr の評価値こそ微増させたものの、埋め込んだキーワードをキャプションに出現させるという観点においてはあまり効果がないということが分かった。特に、正解キャプション内で出現回数が少ないキーワードに関してはほとんど改善が見られなかった。埋め込んだキーワードをよりキャプションに出現させることができなかった要因の一つに、画像に様々な物体が移っているという要因が考えられる。

提案手法を追加する前から、生成キャプション 1 つにつき平均 1 つのキーワードを出現させることが出来ている。よってこの提案手法によってキャプ

生成キャプション

前男性がベッドの上で本を読んでいる<EOS>後男性がパソコンを見ている<EOS>

生成キャプション

前砂浜で男性がフリスビーをしている<EOS>

後砂浜でサーフボードを持っている人がいる<EOS>

図 2 テスト画像例

ションの精度を向上させるには、すでに生成キャプションに含まれている物体に加えて他の物体も表現しなければならないのである。

埋め込んだキーワード数の平均から、多くの画像には 3 つ以上の物体が写っていることが確認でき、 これらは提案手法によって、学習に用いるべクトルへと確実に付与されている。故に、正確に物体検出出来ている状況に近い状態にあると言える。しかし、それでもあまり改善が見られないことから、本実験によって、単純に画像の物体すべてを物体検出することが出来ても、それらを複数用いて正しく画像キャプション生成をすることは困難であるということが考えられる。

また、提案手法は表記ゆれを吸収できないという欠点がある。例えば、「男性」、「男」、「青年」などといった意味上は似通った単語については、本研究では特に操作せずに別の単語として扱っている。加えて、「男」や「青年」等の単語は埋め込むキーワードにバリエーションを持たせるために除去した。そのため、意味上は似通った単語であっても追加するべクトルには反映されない。これが影響し、埋め込んだキーワードをキャプションに出現させることが出来なかった可能性が考えられる。

図 $3 \mathrm{CIDEr}$ の評価

表 1 埋め込んだキーワード数（平均）に対する、出力されたキーワード数（平均）

表 2 正解文内の各キーワードの出現回数（bag of words の数値）をもとにした、キーワードの出力率

しかし、提案手法が全く機能していなかったというわけではない。表 2 から、正解キャプション内で出現回数が 5 回の単語に関しては、出現確率が約 $3.305 \% 、 4$ 回の単語に関しては、出現確率が 2.692 \%ほど上昇している。この結果から、出現回数が多い、つまり重要度の高いキーワードの出現確率は向上していることが確認出来る。逆に、出現回数が 1 回や 2 回だけの、出現回数が少ないキーワー ドに関しては出現確率が下降している。これらは単純に bag of words の数值に起因するものであると考察できる。bag of words が高いキーワードのみが優先されてしまい、低いキーワードの生成に至らなかったと考えられる。

また、誤ったキーワードを含めたキャプション

の例のように、当初の目的である物体検出の安定、 キャプションの正確性を増すという点では提案手法は効果的であるということが確認できた。

## 6 おわりに

本論文では、キーワード付与を行うことで画像キャプション生成における品質の向上を行った。具体的には、画像を畳み込んだべクトルに、爰選したキーワードを用いた正解キャプションの bag of words をアペンドした。提案手法を用いて生成したキャプションは評価值については微増することが確認できた。しかし、複数のキーワードの生成という点においてあまり大きな効果がないことが実験結果の分析からわかった。

本実験を行っていくうえで Chive のような日本語単語分散表現を追加するべクトルに使ってみるというアイデアは出ていた。本実験ではよりシンプルになる用に bag of words を採用したが、これらのべクトルを利用して実験を行うことも検討する。また、本提案手法の弱点として述べた表記ゆれについての対抗策も検討する予定である。

キーワードを付与することで物体検出は出来ていると考えられることから、問題点は言語処理側にあるといえるはずである。今後は言語処理側に注視し、追加するべクトルについて改良に関する研究を重ねてく。

## 謝辞

本研究は JSPS 科研費 JP19K12093 および 2021 年度国立情報学研究所公募型共同研究 (2021-FC05) の助成を受けています。

## 参考文献

[1] Yang Feng, Lin Ma, Wei Liu, and Jiebo Luo. Unsupervised image captioning. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), June 2019.

[2] Ukyo Honda, Yoshitaka Ushiku, Atsushi Hashimoto, Taro Watanabe, and Yuji Matsumoto. Removing word-level spurious alignment between images and pseudo-captions in unsupervised image captioning. In Proceedings of the 16th Conference of the European Chapter of the Association for Computational Linguistics: Main Volume, pp. 3692-3702, Online, April 2021. Association for Computational Linguistics.

[3] 岩村紀与彦, ルイ笠原純ユネス, モロアレッサンドロ,山下淳, 淺間一. アテンション機構を用いたクロップとマスクによるキャプション生成のためのデータ拡張. 精密工学会誌, Vol. 86, No. 11, pp. 904-910, 2020.

[4] Tsung-Yi Lin, Michael Maire, Serge Belongie, James Hays, Pietro Perona, Deva Ramanan, Piotr Dollár, and C. Lawrence Zitnick. Microsoft coco: Common objects in context. In David Fleet, Tomas Pajdla, Bernt Schiele, and Tinne Tuytelaars, editors, Computer Vision - ECCV 2014, pp. 740-755, Cham, 2014. Springer International Publishing.

[5] Stair captions: Constructing a large-scale japanese image caption dataset. In Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 2: Short Papers), pp. 417-421, Vancouver, Canada, July 2017. Association for Computational Linguistics.

[6] Oriol Vinyals, Alexander Toshev, Samy Bengio, and Dumitru Erhan. Show and tell: A neural image caption generator. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 2015.

[7] Karen Simonyan and Andrew Zisserman. Very deep convolutional networks for large-scale image recognition. In International Conference on Learning Representations, 2015.

[8] Ramakrishna Vedantam, C. Lawrence Zitnick, and Devi Parikh. Cider: Consensus-based image description evaluation. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 2015.

(C) The Association for Natural Language Processing, (Licensed under CC BY 4.0）https://creativecommons.org/licenses/by/4.0/


# 単語の分散表現および音素列の類似性を考慮した 単語アラインメントに基づく教師なし Entity Linking

邊土名朝飛 友松祐太 杉山雅和 戸田隆道 東佑樹 下山 翔
株式会社 AI Shift
\{hentona_asahi, tomomatsu_yuta, sugiyama_masakazu,
toda_takamichi, azuma_yuki, sho_shimoyama_xb\}@cyberagent.co.jp

## 概要

本研究では，多様なパターンのユーザ発話やエントリを考慮した，音声認識誤りに頑健な教師なし Entity Linking 手法を提案する，提案手法は，単語の分散表現と音素列を利用してアラインメントをとることで，意味的類似性と音韻的類似性の両方を考慮する. 手法の妥当性を検証するため，自社で運用している音声対話システムのデータを利用し，テキス卜間類似度を測る複数の手法との間で比較実験を行った. 実験の結果，提案手法は従来手法よりも高い性能を示し, 多様なパターンのユーザ発話やエントリを考慮できることがわかった.

## 1 はじめに

Entity Linking とは，テキスト中に含まれる Entity を認識し，知識べース上のエントリと紐付ける夕スクである。 タスク指向型の音声対話システムにおいては，前段で自動音声認識（Automatic Speech Recognition; ASR）システムを用いてユーザ発話をテキスト化し, 後段の言語理解 (Natural Language Understanding; NLU）モジュールで Entity Linking を行う構成がとられていることが多い.

図 1 音声対話システムにおける Entity Linking

しかし，近年の汎用 ASR システムの認識性能は非常に高い性能を有しているものの，依然としてドメイン固有の単語は誤認識しやすいという問題がある. ドメインごとに音声認識モデルを構築することで認識誤りを低減することは可能であるが [1], ドメインごとに十分な量の学習データを用意してモデ
ルを学習するためには多大なコストがかかる。この問題に加えて，環境音などのノイズや音質劣化，イントネーションの差異などの要因により認識性能はさらに低下する。また，ユーザ発話やエントリには多様な表記方式や言い間違いのパターンが存在するため，より Entity Linking を難しいものにしている (表 1 参照).

 \\

本研究では，多様なパターンのユーザ発話やエントリを考慮した，音声認識誤りに頑健な教師なし Entity Linking 手法を提案する. 提案手法は，単語分散表現で意味的類似度を，単語音素列で音韻的類似度を考慮してアラインメントをとり，ユーザ発話と各エントリ間の類似度を計算することで Entity Linking を実現する ${ }^{1)}$. 実験では，自社で運用している音声対話システムのログデータを使用し，アブレーション実験およびテキスト間類似度を測る複数の教師なし手法との間で比較実験を行うことで提案手法の有効性を示す.

1）本来であれば Entity Linking の前にテキスト中から Entity を抽出する必要があるが，実験に用いた対話データではほとんどのユーザが Entity のみ発話していたため，直接 Entity Linkingを行っている.

## 2 関連研究

Raghuvanshi らは，ASR の認識結果をデータベー ス上の人名と紐付けることを目的とした教師なし手法を提案した [2]. この手法は，テキストと音素の類似度を利用することで音声認識誤りに頑健な人名検索を行うことができる. 本研究では，Raghuvanshi らと同様に音素情報を用いるとともに，単語分散表現も利用することで意味的類似度も考慮した Entity Linking を行う.

単語ベクトルを利用して 2 つのテキスト間の意味的類似性を計算する主流のアプローチとして, 最適輸送に基づいたアラインメント手法がある. 代表的な手法としては Word Mover's Distance (WMD)[3] が挙げられ，その他にも超球面上で最適輸送を行う Word Rotator's Distance (WRD) [4] や, 不均衡最適輸送 (Unbalanced Optimal Transport; UOT) を導入した Lazy Earth Mover's Distance (Lazy-EMD)[5] などが提案されている. 本研究では, ユーザ発話とエントリ間の類似度を計算するために, 最適輸送に基づいた単語アラインメントのアプローチを採用する.

## 3 提案手法

提案手法は，ASR の認識結果のテキストと，知識ベース上のエントリの 2 つのテキストを入力として与える. ASRテキストと各エントリとの間で類似度を計算した後，最も類似度が高かった ASR テキストとエントリのペアを紐付けることで Entity Linking を行う。

以下，単語数 $n, n^{\prime}$ をそれぞれ持つ 2 つのテキスト (ASRテキスト，エントリ）を $s=\left.\{t_{1}, t_{2}, \cdots, t_{n}\right.\}, s^{\prime}=$ $\left.\{t_{1}^{\prime}, t_{2}^{\prime}, \cdots, t_{n^{\prime}}^{\prime}\right.\}$ と表す. また, 各単語 $t_{i}$ に対応する単語ベクトルを $w_{i} \in \mathbb{R}^{D}$ と表す.

## 3.1 単語アラインメント

本研究では，単語アラインメントに使用する最適輸送アルゴリズムとして Unbalanced Optimal Transport (UOT)[6][7] を用いる. UOT は, 文の長さが大きく異なるテキスト間の類似度を適切に計算できる [5] ため，正式名称と略称との間の類似度を高くできると考えられる. UOTを用いたテキスト $s, s^{\prime}$間の距離の計算式を以下に示す。

$
\begin{gathered}
D\left(s, s^{\prime}\right)=\min _{T \in \mathbb{R}_{+}^{n \times n^{\prime}}} \sum_{i, j} T_{i, j} d\left(t_{i}, t_{j}^{\prime}\right)+\operatorname{reg} \cdot \Omega(T) \\
+\operatorname{reg}_{\mathrm{m} 1} \cdot \operatorname{KL}\left(T^{\top} \mathbb{1}_{n}, \mu_{s}\right)+\operatorname{reg} \mathrm{rg}_{\mathrm{m} 2} \cdot \operatorname{KL}\left(T \mathbb{1}_{n^{\prime}}, \mu_{s^{\prime}}\right), \\
\Omega(T)=\sum_{i, j} T_{i, j} \log \left(T_{i, j}\right) .
\end{gathered}
$

ここで, $T_{i, j}$ は $i$ から $j$ への輸送量を,$d\left(t_{i}, t_{j}^{\prime}\right)$ は 2 つの単語 $t_{i}, t_{j}^{\prime}$ 間の輸送コスト表している. また, $\Omega(T)$ は Entropic regularization term, $\operatorname{KL}\left(T^{\top} \mathbb{1}_{n}, \mu_{s}\right)$ は分布 $T^{\top} \mathbb{1}_{n}, \mu_{s}$ 間の Kullback-Leibler divergence である. reg, reg $_{\mathrm{m} 1}, \mathrm{reg}_{\mathrm{m} 2}$ は各ペナルティ項の影響を調整するハイパーパラメータである。 $\mu_{s}, \mu_{s^{\prime}}$ はそれぞれ輸送前と輸送後の確率分布を表しており，以下のように表される。

$
\begin{aligned}
\mu_{s}=\left.\{\left(t_{i}, m_{i}\right)\right.\}_{i=1}^{n}, \mu_{s^{\prime}} & =\left.\{\left(t_{j}^{\prime}, m_{j}^{\prime}\right)\right.\}_{j=1}^{n^{\prime}}, \\
\sum_{i} m_{i} & =1, \sum_{j} m_{j}^{\prime}=1 .
\end{aligned}
$

ここで， $m_{i} \in[0,1]$ は確率質量であり， $\mu_{s}$ は各単語 $t_{i}$ について質量 $m_{i}$ の荷物があることを意味している.

## 3.2 単語間の輸送コスト

WMD では単語間の輸送コストとしてユークリッド距離が用いられているが，ユークリッド距離にはノルム (単語重要度) と偏角（意味的類似度）が混在している [8]. そのため, 重要度が大きく異なる単語間では，意味的に近いにもかかわらず，類似度が不当に低く見積もられてしまう恐れがある。そこで, 本研究では, 横井らの研究 [8] に従い, 単語べクトル間のコサイン距離を輸送コストの計算に使用する. さらに，単語の意味的な類似度だけでなく音声の類似度も考慮するために，単語の音素列間のレー ベンシュタイン距離も導入する. 2 つの単語 $t_{i}, t_{j}^{\prime}$ 間の輸送コスト $d\left(t_{i}, t_{j}^{\prime}\right)$ を以下のように定義する.

$d\left(t_{i}, t_{j}^{\prime}\right)=\lambda \cdot d_{\cos }\left(w_{i}, w_{j}^{\prime}\right)+(1-\lambda) \cdot d_{\text {edit }}\left(p_{i}, p_{j}^{\prime}\right)$.

ここで, $d_{\mathrm{cos}}\left(w_{i}, w_{j}^{\prime}\right)$ は単語ベクトル $w_{i}, w_{j}^{\prime}$ 間のコサイン距離, $d_{\text {edit }}\left(p_{i}, p_{j}^{\prime}\right)$ は単語 $t_{i}, t_{j}^{\prime}$ にそれぞれ対応する音素列 $p_{i}, p_{j}^{\prime}$ の間の正規化レーベンシュタイン距離である。また， $\lambda \in[0,1]$ は，輸送コスト計算時に意味的類似度をどの程度考慮するかを決定する八イパーパラメータである.

## 3.3 単語の重み付け

本研究では，知識ベース内における単語の重要度を考慮するために，Inverse Document Frequency(IDF) を確率質量に導入する。しかし，通常のIDFを利用した場合, 音声認識誤りの影響で IDF 辞書内の単語とマッチせず適切な単語スコアが計算できなくなる恐れがある。そこで，Soft TFIDF[9]を参考に新たに Phonetic Soft IDF (PS-IDF) を提案する. PS-IDF は音素列の類似度を考慮した IDFであり，IDF 辞書内の単語と完全一致していない場合でも類似した発音の単語から IDF スコアを計算する．PS-IDF の定義を以下に示す。

$
\begin{aligned}
\operatorname{PSIDF}\left(t_{i}\right) & =\frac{1}{\left|\mathscr{D}\left(p_{i}, P^{e}, \theta\right)\right|} \\
& \sum_{p_{j}^{e} \in \mathscr{D}\left(p_{i}, P^{e}, \theta\right)} \operatorname{IDF}\left(p_{j}^{e}\right) \cdot\left(1-d_{\text {edit }}\left(p_{i}, p_{j}^{e}\right)\right)
\end{aligned}
$

ここで,$p_{j}^{e}$ は知識ベース上にあるエントリを構成する単語 $t_{j}^{e}$ の音素列, $P^{e}$ は知識ベース上にあるエントリの単語音素列の集合である。また, $\mathscr{D}\left(p_{i}, P^{e}, \theta\right)$ は $P^{e}$ に含まれる単語音素列 $p_{j}^{e}$ のうち, 音素列 $p_{i}$ との正規化レーベンシュタイン距離が $d_{\mathrm{edit}}\left(p_{i}, p_{j}^{e}\right) \leq \theta$ であるものの集合であり， $\theta$ はしきい値（ハイパー パラメータ) である.

最終的に，2つのテキストの確率分布は以下のように表される。

$\mu_{s}=\left.\{\left(t_{i}, \frac{\operatorname{PSIDF}\left(t_{i}\right)}{\mathrm{Z}}\right)\right.\}_{i=1}^{n}, \mu_{s^{\prime}}=\left.\{\left(t_{j}^{\prime}, \frac{\operatorname{PSIDF}\left(t_{j}^{\prime}\right)}{\mathrm{Z}^{\prime}}\right)\right.\}_{j=1}^{n^{\prime}}$.

ここで， $Z, Z^{\prime}$ は正規化定数である.

## 4 実験と考察

## 4.1 データセット

提案手法を評価するためのデータセットとして，自社で運用している自動音声対話サービス AI Messenger Voicebot ${ }^{2}$ )の Entity 辞書および発話ログデータを使用した. このデータセットには，飲食系と医療系の 2 種類のドメインのデータが含まれている.

Entity 辞書とは，商品名や店舗名などのエントリと，そのエントリの同義語を人手で登録したドメイ

ン固有の知識ベースである. エントリの同義語には，エントリの略称や表記ゆれなどのフレーズの他に，音声認識誤りを考慮したフレーズ（e.g. エントリ : Abema Towers，同義語：阿部タワー）も登録されている. Entity 辞書に含まれているエントリ数と同義語数を表 2 に示す.

発話ログデータは，Entity 辞書内のエントリと正しく紐付けられたユーザ発話を収集したものである. データセット内のユーザ発話の件数を表 3 に示す.なお，発話ログデータには同じ内容の発話デー タが多数含まれているため，実際に収集された発話データの件数を「重複あり」, 重複を除いた発話データの件数を「重複なし」で示している. 実験では，重複ありデータを用いて実際の運用時の性能を，重複なしデータを用いて発話パターンのカバー 率を評価した。

表 2 各 Entity 辞書内のエントリ数と同義語数

表 3 ユーザ発話件数

## 4.2 実験設定

提案手法を評価するにあたり，テキスト間類似度を測る教師なし手法として，音素列の正規化レーベンシュタイン距離, WMD[3], WRD[4], Lazy-EMD[5] を採用した. 本実験では，単語分散表現として chiVe[10] の事前学習済み Magnitude モデル (v1.2 mc30 $)^{3}$ を採用し, 形態素解析器には SudachiPy [11] ${ }^{4)}$ を使用した. SudachiPy の分割モードは A モード （UniDic 短単位相当）とした. テキストから音素列への変換は pyopenjtalk ${ }^{5)}$ を用いた. PS-IDF のしきい値 $\theta$ は 0.1 に設定した. UOTを使用している手法（提案手法, Lazy-EMD) の Entropic regularization term の係数 reg は, Lazy-EMD の実験に倣い 0.009 に設定した [5]. また, Kullback-Leibler divergence にかかる 2 つの係数 $\mathrm{reg}_{\mathrm{m} 1}, \mathrm{reg}_{\mathrm{m} 2}$ は，略称を発話するユーザ側のテキストの重要度を高くするために

3) https://github.com/WorksApplications/chive

4) https://github.com/WorksApplications/SudachiPy

5) https://github.com/r9y9/pyopenjtalk
$\operatorname{reg}_{\mathrm{m} 1}=1.0, \mathrm{reg}_{\mathrm{m} 2}=0.5$ に設定した.

## 4.3 Entity 辞書内実験

提案手法が音声認識誤りフレーズを含む多様な同義語に対処できるのかを評価するために， Entity 辞書に登録された同義語を入力として与え，その同義語に対応するエントリを紐付ける Entity 辞書内実験を行った. このとき，紐付け対象であるエントリセットには，Entity 辞書内にある同義語は含まれないものとする. 評価結果を表 4 に示す. 提案手法は, 飲食系, 医療系の両方のドメインで比較手法よりも高い性能を示した。

次に，提案手法の各構成要素の効果を確かめるためにアブレーション実験を行った。実験結果を表 5 に示す. ここで, -Word vector は, 提案手法から単語分散表現の要素を抜いたもの，すなわち輸送コス卜計算時に音素列の類似度のみを考慮したモデルである。一方，-Phone は単語分散表現の類似度のみを考慮したモデルである。-PS-IDF では，単語の重み付けに PS-IDF を利用せず，WMD と同様に一様な重みを付与した。 -UOT は，最適輸送アルゴリズムにUOTを利用せず，WMD と同様に Earth Mover's Distance(EMD)を用いた。

結果より，飲食系ドメインにおいては提案手法が最も高い性能を示していることが分かる。一方，医療系ドメインでは PS-IDFを利用しないモデルが最も性能が高くなった. 医療系ドメインの Entity 辞書の同義語には，飲食系ドメインと比較して音声認識誤りフレーズが多数登録されていたことから， PS-IDF が音声認識誤りにうまく対処できず，適切な単語の重みが計算できなかったことが要因と考えられる。

表 4 Entity 辞書内実験の結果（Accuracy [\%]）.

## 4.4 発話ログデータを用いた実験

次に，実際のユーザ発話が与えられた際の Entity Linking の性能を評価した。評価結果を表 6 , 表 7 に示す. 提案手法は，飲食系ドメインにおいては重複あり，重複なしのデータの両方で最も高い性能を示表 5 アブレーション実験結果（Accuracy[\%]）

した. 一方，医療系ドメインにおいては，重複ありのデータではレーベンシュタイン距離が最も高い性能を示した. 提案手法の性能が低くなった原因として，ユーザが頻繁に言及していた特定のエントリについて適切に紐付けできなかったことが挙げられる. ただし，提案手法は重複なしのデータでは最も高い性能を示しているため，比較手法よりもエントリや発話の多様なパターンをカバーしていると考えられる.

表 6 発話ログデータを用いた評価実験の結果（重複あり, Accuracy $[\%])$

表 7 発話ログデータを用いた評価実験の結果（重複なし, Accuracy $[\%])$

## 5 まとめ

本研究では，意味的類似性と音韻的類似性の両方を考慮した単語アラインメントに基づく教師なし Entity Linking 手法を提案した. 比較実験の結果，提案手法は飲食系ドメインでは最も高い性能を示した.一方，医療系ドメインのユーザ発話データを用いた実験では，提案手法がレーベンシュタイン距離よりも性能が低いという結果が示されたが，多様な発話パターンのカバー率という面では比較手法よりも優れていることが示唆された. 今後は，より効果的な音韻的特徵を組み込んだ Entity Linking 手法の検討を進めていきたい。

## 参考文献

[1] Yong Zhao, Jinyu Li, Shixiong Zhang, Liping Chen, and Yifan Gong. Domain and speaker adaptation for cortana speech recognition. In 2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), pp. 5984-5988, 2018.

[2] Arushi Raghuvanshi, Vijay Ramakrishnan, Varsha Embar, Lucien Carroll, and Karthik Raghunathan. Entity resolution for noisy ASR transcripts. In Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLPIJCNLP): System Demonstrations, pp. 61-66, 2019.

[3] Matt J. Kusner, Yu Sun, Nicholas I. Kolkin, and Kilian Q. Weinberger. From word embeddings to document distances. In Proceedings of the 32nd International Conference on International Conference on Machine Learning, Vol. 37, p. 957-966, 2015

[4] Sho Yokoi, Ryo Takahashi, Reina Akama, Jun Suzuki, and Kentaro Inui. Word rotator's distance. In Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP), pp. 2944-2960, 2020.

[5] Yimeng Chen, Yanyan Lan, Ruinbin Xiong, Liang Pang, Zhiming Ma, and Xueqi Cheng. Evaluating natural language generation via unbalanced optimal transport. In Proceedings of the Twenty-Ninth International Joint Conference on Artificial Intelligence, IJCAI-20, pp. 37303736, 2020.

[6] Lénaïc Chizat, Gabriel Peyré, Bernhard Schmitzer, and François-Xavier Vialard. Scaling algorithms for unbalanced optimal transport problems. Mathematics of Computation, Vol. 87, No. 314, pp. 2563-2609, February 2018.

[7] Charlie Frogner, Chiyuan Zhang, Hossein Mobahi, Mauricio Araya-Polo, and Tomaso Poggio. Learning with a wasserstein loss. In Proceedings of the 28th International Conference on Neural Information Processing Systems, Vol. 2, p. 2053-2061, 2015.

[8] Sho Yokoi, Ryo Takahashi, Reina Akama, Jun Suzuki, and Kentaro Inui. Word rotator's distance. In Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP), pp. 2944-2960, 2020.

[9] William W. Cohen, Pradeep Ravikumar, and Stephen E. Fienberg. A comparison of string distance metrics for name-matching tasks. In Proceedings of the 2003 International Conference on Information Integration on the Web, p. 73-78, 2003.

[10] 真鍋陽俊, 岡照晃, 海川祥毅,一馬, 内田佳孝, 浅原正幸. 複数粒度の分割結果に基づく日本語単語分散表現. 言語処理学会第 25 回年次大会 (NLP2019), pp. NLP2019-P8-5, 2019.

[11] Kazuma Takaoka, Sorami Hisamoto, Noriko Kawahara, Miho Sakamoto, Yoshitaka Uchida, and Yuji Matsumoto. Sudachi: a japanese tokenizer for business. In Proceedings of the Eleventh International Conference on Language Resources and Evaluation (LREC 2018), 2018.


# 機械翻訳における単語埋め込み共有時の問題の 言語埋め込み導入による緩和

毛剣楠 1 松本忠博 1
1 岐阜大学 大学院
z4525087@edu.gifu-u.ac.jp tadggifu-u.ac.jp

## 概要

単語埋め込みの共有はニューラル機械翻訳モデルのパラメータ数を大幅に削減し，翻訳精度を向上させる. 本研究では, 単語埋め込み共有時に両言語間の共通単語が部分的に負の影響を与えることを予備実験から予想し，その緩和ために言語埋め込みを導入して単語埋め込みに加えることを提案する。これにより 2 言語間の共通単語の埋め込みはエンコー ダーとデコーダーで異なる分布を示した，日中，日英言語ぺアの翻訳に対して提案手法を適用したところ，言語や言語埋め込みの付与方法にもよるが概ね翻訳精度が向上する傾向が見られた.

## 1 はじめに

強力なアーキテクチャ [1] の登場により，ニュー ラル機械翻訳（NMT）が最も有望な機械翻訳方式となっており，それに伴って，NMT によるGPUメモリの必要性が高まっている．従来の NMT モデル $[1,2]$ では，単語埋め込みは NMT モデルの最も重要なモジュールの 1 つであり，単語埋め込みを用いて単語の構文的，意味的属性を捕捉する. NMT モデルでは一般的に，エンコーダー入力埋め込み，デコーダー大力埋め込み，デコーダー出力埋め込みの 3 つの行列が使用される. これらの埋め込みはモデルパラメータの大部分を占め，トレーニング時に多くのGPUメモリを占有している.

単語埋め込みの GPUメモリの使用を減らすために，NMT 単語の表現に用いるパラメータを減らすいくつかの方法が提案されている. Press[3] は単語埋め込みのパラメータを大幅に減らすために 「three-way weight tying」と呼ばれる重みの共有方法を提案したが，これは実用 NMT の新しい事実上の標準となった.「three-way weight tying」は3つの単語埋め込みを表すために 1 つの行列を使用し，源言語と目的言語で共通の単語が 1 つの単語ベクトルを共有する。この方法は源言語と目的言語の共通サブワードの NMT にも適用でき，英独仏など，同じ文字が多い言語ペアではうまく機能した [1].

本研究では，単語埋め込み共有が翻訳結果に負の影響を与えていないか調べるための予備実験を行った. 翻訳結果の文中には源言語の単語が存在する場合があった.

また，PCAアルゴリズムを用いて単語埋め込みを可視化し，中一日および英 $\rightarrow$ 日翻訳モデルにおける単語埋め込みを比較した. 予備実験の結果と PCA 可視化のグラフに基づいて言語的な観点から， Transformer の単語埋め込みの共有が翻訳結果に悪影響を及ぼしていることが予想された。その緩和のために，Transformer-base モデルに最大 2048 個の訓練パラメータを追加する 3 種類の手法を提案し，評価実験を行なった．実験の結果，パラメータの付与の方法と翻訳対象となる言語，翻訳方向にもよるが，概ね翻訳精度が向上する傾向が見られた。

## 2 予備実験

max-tokens は，1 回のイテレーションで使用される源言語および目的言語の token の最大数（バッチサイズ）である. Popel ら [4] の実験結果から， max-tokens が Transformer の翻訳精度に大きな影響を与えていることが分かった.この影響は，イテレーション回数の増加によって大きく変化することはない。まず，共通単語の多い言語ペアである中日と，比較のため英日に対して，max-tokens を 1024 に設定して実験1を行った．翻訳結果に存在した源言語の単語の数を表 1 に示す。中日翻訳と比較すると，英日翻訳では間違った単語が大量に出現することはなかった.

図 1 単語埋め込み分布の比較

Mikolov ら [5] によると，単語埋め込みを共有しない場合でも，異なる言語の単語はべクトル空間において類似した位置に分布することが知られている。我々は，前述の中日・英日翻訳実験での最適モデルの単語埋め込みを抽出し, 頻度上位 5000 単語を PCA アルゴリズムを用いて次元削減した後，2 次元グラフにプロットした. 図 $1^{2)}$ から明らかなように,同一言語に固有単語が分布しているのに対して，共通単語は両言語間に分布しており，英日翻訳と比較して，中日翻訳ではより多くの共通単語が両言語間に分布している.

## 3 言語埋め込み

本研究は, 図 1 の中日翻訳と英日翻訳における単語埋め込みの分布，及び BERT[6] におけるセグメン卜埋め込みの示唆に基づく言語埋め込み（Language

2） ch：中国語固有単語. jp : 日本語固有単語.

$\mathrm{en}$ : 英語固有単語. en $+\mathrm{jp}$ : 英語と日本語の共通単語. $\mathrm{ch}+\mathrm{jp}$ ：中国語と日本語の共通単語.表 1 max-token=1024 の時，翻訳実験結果

Embedding，LE）を提案する. エンコーダーとデコーダーにそれぞれ異なる言語埋め込みを加え，同一の単語がエンコーダー側とデコーダー側で異なる表現を持つようにする。提案手法では，コーパス中の単語を 3 つのクラス3)に分類し，言語埋め込みをどのように付与するかによって 3 つの手法を提案する.

提案手法 1 エンコーダー側では，源言語固有単語と，源言語・目的言語の共通単語を 2 つに分類し，源言語固有単語の言語埋め込みを 0 （更新なし）とする.デコーダー側では，目的言語固有単語と，源言語・目的言語の共通単語を 2 つに分類し，目的言語固有単語の言語埋め込みを 0 （更新なし）とする. LE はそれぞれエンコーダーとデコーダーの端で計算され，式 (1)のようになる。この時，モデルにおいて増加するパラメータ数は $\left.2 \times 2 \times 512^{4}\right)=2048$ になり，計算すべきパラメータ数は 1024 になる.

$
\begin{aligned}
& \text { Word }_{L E}^{\text {Encoder }}=\text { Word }_{\epsilon[\mathrm{src}=0, \mathrm{src}+\mathrm{tgt}]} \times L E_{2 \times 512}^{\text {Encoder }} \\
& \text { Word }_{L E}^{\text {Decoder }}=\text { Word }_{\epsilon[\mathrm{tgt}=0, \mathrm{src}+\mathrm{tgt}]} \times E_{2 \times 512}^{\text {Decoder }}
\end{aligned}
$

提案手法 2 エンコーダー側では，源言語固有，源言語・目的言語の共通単語を 1 つに分類する。すなわち，エンコーダーへの入力単語は 1 種類である.デコーダー側では，目的言語固有，源言語・目的言語の共通単語を 1 つに分類する. すなわち，デコーダーへの入力単語は 1 種類である。LE はそれぞれエンコーダーとデコーダーの端で計算され，式 （2）のようになる．このとき，モデルが増加するパラメータ数は $2 \times 512=1024$ になり，計算すべきパラメータ数は 1024 になる.

$
\begin{aligned}
& \text { Word }_{L E}^{\text {Encoder }}=\text { Word }_{\epsilon[(\mathrm{src}, \mathrm{src}+\mathrm{tgt})]} \times L E_{1 \times 512}^{\text {Encoder }} \\
& \text { Word }_{L E}^{\text {Decoder }}=\text { Word }_{\epsilon[(\mathrm{src}, \mathrm{src}+\mathrm{tgt})]} \times L E_{1 \times 512}^{\text {Decoder }}
\end{aligned}
$

提案手法 3 エンコーダー側では，源言語固有単語，源言語・目的言語の共通単語を 2 つに分類する.
)$ クラス 2 : 目的言語に固有の単語 $(t g t)$ クラス 3 : 源言語と目的言語に共通の単語 $(s r c+t g t)$

4) transformer-base の単語埋め込みは 512 次元。
}

提案手法:1

提案手法:2

提案手法: 3

図 2 提案手法. 上の長方形はエンコーダーの言語埋め込み，下の長方形はデコーダーの言語埋め込みである. 長方形左側の円を固有単語の言語埋め込み，長方形右側の円を共通単語の言語埋め込みとする．提案手法ごとに，円に紋様がない場合はその言語埋め込みが 0 であり，更新しないことを表す. 同一長方形中の円の紋様が同じ場合は，固有単語と共通単語が同じ言語埋め込みを持つことを表す。各円で表される言語埋め込みのサイズは，単語埋め込みのサイズと同じである.

図 3 モデルへの入力過程. 赤い円は源言語の固有単語埋め込み，青い円は目的言語の固有単語埋め込み，紫の円を源言語と目的言語の共通単語埋め込みを表す. 実験に用いたコーパスにおいて「環境」，「測定」などは共通単語となった.

デコーダー側では，目的言語固有単語，源言語・目的言語の共通単語を 2 つに分類する. LE はそれぞれエンコーダーとデコーダーの端で計算され，式 (3) のようになる. このとき，モデルが増加するパラメータ数は $2 \times 2 \times 512=2048$ になり，計算すべきパラメータ数は 2048 になる.

$
\begin{aligned}
\text { Word }_{L E}^{\text {Encoder }} & =\text { Word }_{\epsilon[\mathrm{src}, \mathrm{src}+\mathrm{tgt}]} \times L E_{2 \times 512}^{\text {Encoder }} \\
\text { Word }_{L E}^{\text {Decoder }} & =\text { Word }_{\epsilon[\mathrm{tgt}, \mathrm{src}+\mathrm{tgt}]} \times L E_{2 \times 512}^{\text {Decoder }}
\end{aligned}
$

以上の 3 つの提案手法を図 2 に示す.

LE と単語埋め込みの融合方式を式 (4)に示す.

$
\begin{aligned}
& \text { Encoder }_{\text {input }}=\text { Word }_{\text {embedding }}+\text { Word }_{L E}^{\text {Encoder }} \\
& \text { Decoder }_{\text {input }}=\text { Word }_{\text {embedding }}+\text { Word }_{L E}^{\text {Decoder }}
\end{aligned}
$

提案手法の詳しい過程を図示すると図 3 のようになる. エンコーダーとデコーダーの入力単語を単語埋め込みに変換し，それに各単語の LEを加えて，
モデルに入力する.

## 4 翻訳実験

実験では，コーパス中の全角記号を半角記号に変換した後，単語分割を行った. 中国語文はLTP[7]で単語分割を行い，英語文は Stanza[8] で，日本語文は Ginza[9] で単語分割を行なった. データクリーニングなど前処理は行っていない. train データを用いてモデルの訓練を行い，中日，日中，英日，日英の 4 つ方向の翻訳実験を行った.

## 4.1 コーパス説明

コーパスには ASPEC-JC および ASPEC-JE[10] を用いた. ASPEC-JCは，日本の科学論文を手作業で中国語に翻訳して構築されている. ASPEC-JE は日本語と英語の科学論文の要約から構成されており,大量の英文名詞と数字を含む. 語彙は train データの単語分割結果に基づいて作成した. 使用データ数と語彙サイズを表 2 に示す.

表 2 用いた ASPEC コーパスデータ数

## 4.2 実験設定

ベースラインとして使用するモデルの構造は Transformer-base[1] と同じであり，実装には Fairseq[11] を用いた. 学習率は 0.0007 とし, Adam を用いて学習を行なった. max-tokens は 2048 とした. SEED は 1 に固定し，訓練は 15 万イテレーショ
表 3 BLEU および PPL による評価結果

ン実行した。

提案手法の実験では，3つの提案手法を使い，パラメーターはベースライン実験と同じ設定にした.

dev データにおいて valid loss が最小のモデルを保存した。これを最適モデルと呼ぶ. devデータでの Perplexity と test データに対する BLEU スコア（翻訳精度）により最適モデルを評価した。

## 4.3 実験結果

表 3 に BLEU スコアと Perplexity（PPL）を示す.

実験の結果，BLEU スコアは，手法 1 では日英翻訳で 1.01 ポイント向上したが，日中では 0.48 ポイント低下した (平均 0.14 ポイント向上). 手法 2 では中日翻訳で 0.69 向上したほか, すべての翻訳で向上した (平均 0.35 ポイント向上). 手法 3 は中日翻訳で 0.99 ポイント向上したが，英日ではわずかに低下した (平均 0.29 ポイント向上).

中日翻訳におけるベースラインの最適モデルと提案手法 3 の最適モデル中の単語埋め込みを抽出し, PCA アルゴリズムを用いて次元削減して 2D グラフにプロットしたが，言語埋め込みがエンコーダやデコーダの入力に与える影響がグラフからははっきりと見えなかった. そこで，単語埋め込みを 512 次元から 3 次元に削減して 3D グラフにプロットした (図4).

この図において, baseline はベースライン実験の単語埋め込み, word_embedding は提案手法 3 の単語埋め込み, encoder_input は提案手法 3 のエンコーダー 入力, decoder_input は提案手法 3 のデコーダー入力を表す. ベースライン実験での max-tokens=2048 のときの単語埋め込みの空間分布は，1024 のとき（2 節）とほぼ同じである.

図 4 を見ると，ベースラインと提案手法 3 には明らかな違いはない. エンコーダー入力を見てもべー スラインの入力は単語埋め込みであるのに対し, 提案手法 3 の入力は明らかに変化し, 3 次元空間で線形分離可能な状態となった.この変化から，エンコーダーに入力される共通単語に言語埋め込みを付

図 4 ベースラインと提案手法 3 を用いた場合の中日翻訳の単語埋め込み分布の比較

加すると，共通単語は，単語埋め込み中においてエンコーダーの入力言語（中国語）の方にシフトすると考えられる. 同様に，デコーダーに入力される共通単語は，単語埋め込み中ではデコーダーの入力言語（日本語）に傾いている。共通単語は，エンコー ダーとデコーダーにおける単語埋め込みが異なる表現を持つことを示している.

## 5 終わりに

Transformerにおいて単語埋め込みを共有した場合に，源言語と目的言語の単語埋め込みの分布から，両言語の共通単語が翻訳精度に悪影響を及ぼしているのではないかと予想した. 本研究では両言語を区別するための少量のパラメータ（言語埋め込み）を単語埋め込みと組み合わせて使用すること提案し,評価実験を行なった. その結果, 翻訳対象となる言語と翻訳方法, 言語埋め込み付与の仕方などの条件により違いはあるが，概ね翻訳精度が向上する傾向が見られた。

今後は，提案手法による実験結果のばらつきに対して，さらに頑健な解決策を提案するとともに，文字レベルとサブワードレベルの翻訳実験を行う予定である.

## 参考文献

[1] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, and Illia Polosukhin. Attention is all you need. In Advances in Neural Information Processing Systems 30: Annual Conference on Neural Information Processing Systems 2017, December 4-9, 2017, Long Beach, CA, USA, pp. 5998-6008, 2017.

[2] Mia Xu Chen, Orhan Firat, Ankur Bapna, Melvin Johnson, Wolfgang Macherey, George Foster, Llion Jones, Niki Parmar, Mike Schuster, Zhifeng Chen, et al. The best of both worlds: Combining recent advances in neural machine translation. arXiv preprint arXiv:1804.09849, 2018.

[3] Ofir Press and Lior Wolf. Using the output embedding to improve language models. In Proceedings of the 15th Conference of the European Chapter of the Association for Computational Linguistics, EACL 2017, Valencia, Spain, April 3-7, 2017, Volume 2: Short Papers, pp. 157-163. Association for Computational Linguistics, 2017.

[4] Martin Popel and Ondrej Bojar. Training tips for the transformer model. Prague Bull. Math. Linguistics, Vol. 110, pp. 43-70, 2018.

[5] Tomás Mikolov, Kai Chen, Greg Corrado, and Jeffrey Dean. Efficient estimation of word representations in vector space. In 1st International Conference on Learning Representations, ICLR 2013, Scottsdale, Arizona, USA, May 2-4, 2013, Workshop Track Proceedings, 2013.

[6] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: pre-training of deep bidirectional transformers for language understanding. CoRR, Vol. abs/1810.04805, , 2018.

[7] Wanxiang Che, Yunlong Feng, Libo Qin, and Ting Liu. N-ltp: A open-source neural chinese language technology platform with pretrained models. arXiv preprint arXiv:2009.11616, 2020.

[8] Peng Qi, Yuhao Zhang, Yuhui Zhang, Jason Bolton, and Christopher D. Manning. Stanza: A Python natural language processing toolkit for many human languages. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics: System Demonstrations, 2020.

[9] Colin Raffel, Noam Shazeer, Adam Roberts, Katherine Lee, Sharan Narang, Michael Matena, Yanqi Zhou, Wei $\mathrm{Li}$, and Peter J. Liu. Exploring the limits of transfer learning with a unified text-to-text transformer. arXiv e-prints, 2019.

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

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


# Eコマースにおける検索クエリの整形と 属性値抽出への適用

中山祐輝 Chen Zhao Erick Mendieta 村上 浩司 新里 圭司
楽天グループ株式会社 楽天技術研究所
\{yuki.b.nakayama, chen.a.zhao, erick.mendieta\}@rakuten.com
\{koji.murakami,keiji.shinzato\}@rakuten.com

## 概要

Eコマースでの商品検索の質を向上させるために，クエリを意味のあるまとまりに整形する研究が盛んである.しかし, 既存研究のほとんどは, 一つの操作に絞っており, かつ英語を対象とした研究で

のタスクに応用する試みは，ほぼなされていない。本稿では，三つの操作を考慮する日本語のクエリ整形手法を提案し，実験によってその有効性を示す. さらに, 本手法を $\mathrm{E} コ$ コースの属性値抽出に適用し，クエリ整形の重要性を示す.

## 1 はじめに

EC サイトでの購買活動が高まり, 商品検索のクエリが膨大に蓄積されている。蓄積されたクエリは，ユーザの需要把握や，検索の質向上を目的としたクエリ補完や属性值抽出などのタスクに有効利用できる. しかし, クエリは語の境界が不適切な場合があり，検索結果やタスクに悪影響を及ぼす。例えば，「アディダスマスク」というクエリは，「アディダス」というブランドと「マスク」という分野相当の語が混在しているため, ゼロヒット [1]を引き起こす可能性がある。一方，「肉口のロとみや」というクエリ（は空白）は，「肉のとみや」という店名を誤って分割しているため, 当該肉店に関連のない商品が表示される可能性がある.

このような問題を軽減するために， E コマースドメインにおいてクエリの語に表 1 のような操作を行い，クエリを意味のあるまとまりに整形するするクエリ整形の研究が盛んである $[2,3,4]$. しかし、既存研究の手法には, (1)一つの操作しか対象としない研究がほとんど, (2) 日本語を対象とした研究はない, (3) 改良手法を NLP タスクに適用した研究はな

いという三つの課題がある. そこで，本稿では日本語を対象とした三つの操作を考慮するクエリ改良手法を提案する。本稿の貢献は， E コマースドメインにおける日本語に対応した全く新しいクエリ改良の手法を提案し, ベースライン手法と比較して優れた成果が得られたこと，クエリ改良手法を NLP タスクに応用し, 形態素解析を事前処理に用いた手法と比べて精度の向上を達成したことである. 我々は，提案手法を NLP タスクとして代表的な属性値抽出に適用する.

## 2 関連研究

Eコマースにおけるクエリ整形手法として，Salehi ら [5] は，英語を対象としたセグメント化を対象としたクエリ改良の手法を提案した． $\mathrm{Li} ら$ [6] は，中国語を対象としたクエリ改良の手法を提案した。しかし，英語や中国語とは異なり，日本語は分かち書きされておらず，異なる三つの字種を持つことから, 既存手法を日本語のクエリに適用することは困難である. Guo ら [7] は, 表 1 の三つの操作を網羅したクエリ改良の手法を提案し, 適合判定の IR タスクに適用した。それに対して，我々は属性値抽出という NLP の代表的なタスクに焦点を当てる。

Eコーマスの検索クエリを対象とした様々な属性値抽出手法がある．Kozareva ら [8] と Zhai ら [9] は, それぞれ LSTM-CRF に基づく手法と文法規則を用いて，ブランドと商品ジャンルを認識する手法を提案した. Jiang ら [10] は, 人手による少数の学習データに品質改善を施した擬似学習データを追加することで, 属性值抽出の改善を図った. Cheng ら

[11] は, 人手による少数の学習データで学習されたモデルを用いて, 品質の高い擬似データの生成を繰り返して学習を行うフレームワークを提案した。しかし, クエリ整形という事前処理の観点から精度向上を図った研究はない.

## 3 提案手法

## 3.1 概要

図 1 に提案手法の概観を示す。空白によって分割されたクエリの語 $x_{i}$ からなる入力系列 $\boldsymbol{x}=x_{1} \ldots x_{l}$ が与えられた時, 我々の目標は整形された語の系列 $\boldsymbol{y}=y_{1} \ldots y_{L}$ を予測することである. $l$ と $L$ はそれぞれ, 入力系列の語数と出力系列の語数である. 本研究では, 表 1 にある分割, 結合, セグメント化の三つの操作に焦点を当てる.具体的には, 整形操作の系列 $\boldsymbol{o}=o_{1} \ldots o_{l}$, ただし $o_{i} \in\{$ Split, Merge, Segment, Single $\}$ を予測するタスクを解く.ここで, Single は操作を必要としないクエリの語に割り当てられる. 整形操作の系列が決定されれば， $\boldsymbol{o}$ を用いて， $\boldsymbol{x}$ を整形後の系列に変換できる.

Wikipedia のタイトルは，製品名やブランド名など Eコーマスに関わる固有表現を多く含み，それらは整形後のクエリ語となる可能性が高い。また, 二つのクエリ語が頻繁に隣接して共起すれば、それらからなる語も整形後のクエリ語となる可能性が高いと考える．以上の二つの考えに基づいて，まずキー ワードマッチング（3.2 節）によって， $x_{i}$ の操作 $o_{i}$ を Merge,Segment,Single のいずれかに分類する.もしクエリ語が，いずれのキーワードにもマッチしなかった場合は, Uncetain label を暫定的に付与し, 整形後のクエリ $\boldsymbol{x}_{\boldsymbol{r}}$ を入力とした機械学習（3.3 節）によって Split, Merge, Segment, Single のいずれかに分類される.

## 3.2 キーワードマッチング手法

まずは，以下の手順でクエリ語の系列と収集されたキーワードとのマッチングをとる.

1 oを [Uncetarin,...,Uncertain] に初期化

2 Uncertain ラベルを持つ全ての系列 $x_{i} \ldots x_{j}$ を取得

3 各系列とキーワードとの最左最長マッチをとる

$4 x_{i} \ldots x_{j}$ がキーワードにマッチすれば, $x_{i} \ldots x_{j}$ に対応する Uncertain ラベルを Merge, Segment, Single のいずれかに更新する

マッチングは，三つのキーワードリストを用いて，信頼性を考慮し以下の順番で行われる。

1. Eコーマスドメインの属性値リスト (ORD) ブ

メインに関連する約 7 万 8 千語からなる属性值のリストを構築する。

2. ウィキペディアタイトルと本文のキーワード

(Wiki) 2021 年 3 月時点最新の日本語版ウィキペディアダンプと, 2021 年 2 月時点最新の英語版ウィキペディアダンプから，それぞれ約 190 万のタイトルと約 1273 万のタイトルを収集する。また， 2021 年 2 月時点最新のからを収集する. さらに, 日本語版ウィキペディアの本文から形態素解析によるトー クン N-gram $(1 \leq N \leq 4)$ を抽出し, 頻繁に隣接して共起する $\mathrm{N}$-gram ペアをキーワードとして登録した。二つの $\mathrm{n}$-gram トークン $w_{1}, w_{2}$ の共起度合いを測る尺度として，式 (1) の相互情報量を用いる.

$
\operatorname{PMI}\left(w_{1}, w_{2}\right)=\log _{2} \frac{N * \operatorname{Freq}\left(w_{1}, w_{2}\right)}{\operatorname{Freq}\left(w_{1}\right) * \operatorname{Freq}\left(w_{2}\right)}
$

$N$ は語の総数であり, freq $\left(w_{1}, w_{2}\right)$ は, $w_{1}, w_{2}$ の順で両者が隣接して出現する頻度である.

3. クエリ語のトークンリストと接頭辞/接尾辞リスト（Query） クエリ語内の語の共起性を考慮する. クエリ語の形態素解析で得られたトークンに対して，隣接トークンペアの PMI を式 (1) で求め, 間值を上回るペアを収集する.

## 3.3 マッチング結果を考慮した機械学習に

## 基づく手法

3.2 節で整形された Uncertain ラベルを持つクエリの系列 $\boldsymbol{x}_{\boldsymbol{r}}=x_{1} \ldots x_{m}$ が与えられた時, Uncertain ラベルの分類を文字単位の BIOES チャンキングとして定式化する．具体的には，空白を含む $x_{r}$ の文字系列 $\boldsymbol{c}=c_{1,1} \ldots c_{m, n}$ に対して, 系列 $z=z_{1,1} \ldots z_{m, n}$, $z_{i, j} \in\{B, I, O, E, S\}$ を予測するタスクを解く.ここで, $c_{i, j}$ は, $i$ 番目のクエリ語内の $j$ 番目の文字である. 最後に, 出力系列 $z$ から Uncertain ラベルに対応するクエリ語の部分を抜き出し，ラベルを Split,Merge,Segment,Single のいずれかに更新する. チャンキングの手順は, 文字系列の埋め込み表現の獲得，マッチング手法の結果を考慮したクエリ語の埋め込み表現の結合, 全結合, CRF の 4 層からなる。本稿では前半の二つのステップについて説明する. まずは, 周辺文字を意識するために，

図 1 提案手法の概観 (ロは空白を表す)

Character-BERT を用いて文字系列の埋め込み表現 $\boldsymbol{H}=\left[\boldsymbol{h}_{[\mathrm{CLS}]}, \boldsymbol{h}_{1,1}, \ldots, \boldsymbol{h}_{m, l}, \boldsymbol{h}_{[\mathrm{SEP}]}\right]$ を獲得する. ここで， $\boldsymbol{h}_{i, j}$ は, 文字 $c_{i, j}$ に対応する Character-BERT による埋め込み表現である. 次に, クエリ語 $x_{i}$ の埋め込み表現を， $c_{i, j}$ の埋め込み表現に結合させる. 提案手法では, 以下の二つの理由でキーワードマッチングでマッチしたクエリ語のみの埋め込み表現を考える.一つ目は，マッチング情報をモデルの素性として加えるためである。二つ目は，不適切な埋め込み表現を避けるためである。一般的に，文字レベルの系列ラベリングタスクにおいて, 単語の埋め込み表現は Watson ら [12] のように対応する全ての文字に考慮される。しかし, 「アディダスマスク」のような語の境界が不明な問題を扱っているため, 不必要なクエリ語の埋め込みを文字の埋め込みに結合する可能性がある. クエリ語 $x_{i}$ の埋め込み表現は, 構成される文字における埋め込み表現の平均によって得る.

## 4 評価実験

## 4.1 クェリ整形

日本語のクエリ整形における公開データセットは存在しないため, 楽天市場の商品検索で使用された 10,239 件のクエリに対して整形操作のスパンを人手で特定した。10,239 件のクエリのうち， 8,240 件 (学習: 7325 件, 開発: 825 件) は Character-BERT のファインチューニングに用いた. Character-BERT は, 東北大学が提供している事前学習モデル1) を用いた。また， 999 件のクエリを 3.2 節の PMI の閾値を決定するために用いた. 残り 1000 件のクエリを評価セット $|Q|$ として用いた（表 2).Guo ら [7] にし

たがい, (2) 式の正解率を評価尺度とした.

$
\frac{1}{|Q|} \sum_{q \in Q} \frac{q \text { 内で整形操作が正解である語の数 }}{\text { クエリ } q \text { の語数 }}
$

表 3 に実験結果を示す.ベースライン手法として, 固有表現抽出でよく利用される Character-BERT $\mathrm{CRF}$ を用いた。提案手法の正解率は $88.12 \%$ となり, ベースラインより 4.54 ポイント優れた正解率を達成し, 両側 $\mathrm{t}$ 検定により両者の間には $1 \%$ の統計的有意差があった。また，アブレーションテストを通してキーワードマッチング手法における各ステップの有効性を確認した。さらに，全てのクエリ語の埋め込み表現を追加した場合と比べて，クエリ語の埋め込み表現の追加をキーワードリストに含まれる語に限定した場合，正解率が $87.18 \%$ から $88.12 \%$ に向上し，埋め込み対象のクエリ語を限定したとことの有効性を確認した。

提案手法によって誤った整形操作に分類された 272 のクエリ語に対して分析を行った. 272 語中, 227 語がステージ 1 にで誤りが発生した。そこで, STAGE1 においてキーワードリストのアブレーションテストを行うことで，どのリストが誤りを引き起こしているかを調査した。 227 語中, 119 語が単一のリストによって引き起こされた誤りとなり，それぞれ ORD が 19 語, Wiki が 37 語, 63 語がクエリからのキーワードに起因する誤りだった。ORD と Wiki については，キーワードが網羅されておらず，キーワードの部分一致を引き起こしたことが原因である．例えば，二つのクエリ語「出産」と「祝い」が一つのクエリ語「出産祝い」に結合されるべきところが，「出産祝い」がリストに登録されておらず，「出産」と「祝い」というキーワードにマッチし, Single ラベルが付与されたため, 結合されなかった。クエリからのキーワードに起因する 63 語

の誤りのうち， 61 語は隣接するトークン間の PMI が意図せず閾値を上まわった結果，両者の結びつきが強くなり, 複数のクエリ語に分割されなかった. ステージ 2 では, 45 件の誤りが発生した. 誤りの傾向として, 「リバーシブル D-86」や「かみつき！ Tレックス」のようなアルファベット，数字，カタカナなど様々な字種で構成される商品名が複数のクエリ語に誤って分割されていた。このような複雑なケースに対応することが今後の課題である.

## 4.2 ブランド抽出

クエリ整形手法をブランド抽出に適用し， $\mathrm{E} コ$ マースドメインにおける提案手法の有効性を検証した.ブランド抽出を文字レベルの系列タギング問題として定式化し, 再現性を担保するために FLAIR [13] で公に利用できるモデル2)を用いた. モデル内の埋め込み層では, 以下の Flair 埋め込みと単語埋め込みを用いた。

単語埋め込み楽天市場の商品検索で入力された 2018 年分のクエリをランダムに 240 万件抽出し, word2vec によって次元数 300 , 最小頻度 100 で事前学習した。

Flair 埋め込み Flair は, 文脈の前後の関係を意識した強力な文字列の埋め込み手法である [14]. 楽天市場の商品検索で入力された 2018 年分のクエリをランダムに 100 万件抽出し, 事前学習を行う. 文字列ベクトルの次元数は, 前方からのモデル 2048 次

2) https://github.com/flairNLP/flair/blob/master/

flair/models/sequence_tagger_model.py\#L26元と後方からのモデル 2048 次元を結合した 4096 である.

ファインチューニングには，人手による 9000 件のラベル付きクエリと辞書ベースによって付与された擬似ラベル付き $560 \mathrm{~K}$ のクエリを学習に用い,別途 2,248 件の人手によるラベル付きクエリを開発用セットとした。表 4 に評価データの詳細を示す.表 5 に実験結果を示す. MeCab と Unidic 辞書による形態素解析結果をモデルの入力とした場合と比較して，提案手法を適用したモデルは $\mathrm{F} 1$ スコアで 8.9 ポイントの精度向上を達成した。

表 6 に，クエリ整形の提案手法がブランドの抽出に成功し, 形態素解析 (MeCab+Unidic) による事前処理が失敗した例を示す。提案手法は，クエリ「カネテツロデリカロフーズ」を意味のある一語に結合させたことで，「カネテツデリカフーズ」をブランドとして認識できた。この結果から，提案手法のクエリの整形化によって文脈情報を保持し，かつ不必要な単語埋め込みを避けることができていると考える。

表 4 ブランド抽出における評価データの基礎情報

表 6 ブランド抽出て提案手法が成功した例（カネテツデ

 & カネテツロデリカロフーズ \\
Results &  &  \\

## 5 おわりに

本稿では， Eコマースにおける三つの操作を考慮した日本語のクエリ整形手法を提案し，実験によってその有効性を示した。また，提案手法をブランド抽出に適用し, 形態素解析器による事前処理と比較実験を行い，クエリ整形の重要性を示した。誤り事例の解決方策を考案することが今後の課題である.

## 参考文献

[1] Yuki Amemiya, Tomohiro Manabe, Sumio Fujita, and Tetsuya Sakai. How do users revise zero-hit product search queries? In European Conference on Information Retrieval, pp. 185-192. Springer, 2021.

[2] Saša Hasan, Carmen Heger, and Saab Mansour. Spelling correction of user search queries through statistical machine translation. In Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing, pp. 451-460, Lisbon, Portugal, September 2015. Association for Computational Linguistics.

[3] Saurav Manchanda, Mohit Sharma, and George Karypis. Intent term selection and refinement in e-commerce queries. arXiv preprint arXiv:1908.08564, 2019.

[4] Sharon Hirsch, Ido Guy, Alexander Nus, Arnon Dagan, and Oren Kurland. Query reformulation in e-commerce search. In Proceedings of the 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval, SIGIR '20, p. 1319-1328, New York, NY, USA, 2020. Association for Computing Machinery.

[5] Bahar Salehi, Fei Liu, Timothy Baldwin, and Wilson Wong. Multitask learning for query segmentation in job search. In Proceedings of the 2018 ACM SIGIR International Conference on Theory of Information Retrieval, ICTIR '18, p. 179-182, New York, NY, USA, 2018. Association for Computing Machinery.

[6] Zhao Li, Donghui Ding, Pengcheng Zou, Yu Gong, Xi Chen, Ji Zhang, Jianliang Gao, Youxi Wu, and Yucong Duan. Distant supervision for e-commerce query segmentation via attention network. In Intelligent Processing Practices and Tools for E-Commerce Data, Information, and Knowledge, pp. 3-19. Springer, 2022.

[7] Jiafeng Guo, Gu Xu, Hang Li, and Xueqi Cheng. A unified and discriminative model for query refinement. In Proceedings of the 31st Annual International ACM SIGIR Conference on Research and Development in Information Retrieval, p. 379-386, 2008.

[8] Zornitsa Kozareva, Qi Li, Ke Zhai, and Weiwei Guo. Recognizing salient entities in shopping queries. In Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 2: Short Papers), pp. 107-111, Berlin, Germany, August 2016. Association for Computational Linguistics.

[9] Ke Zhai, Zornitsa Kozareva, Yuening Hu, Qi Li, and Weiwei Guo. Query to knowledge: Unsupervised entity extraction from shopping queries using adaptor grammars. In Proceedings of the 39th International ACM SIGIR Conference on Research and Development in Information Retrieval, SIGIR '16, p. 255-264, New York, NY, USA, 2016. Association for Computing Machinery.

[10] Haoming Jiang, Danqing Zhang, Tianyu Cao, Bing Yin, and Tuo Zhao. Named entity recognition with small strongly labeled and large weakly labeled data. In Proceedings of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing (Volume 1: Long Papers), pp. 1775-1789, Online, August
2021. Association for Computational Linguistics.

[11] Xiang Cheng, Mitchell Bowden, Bhushan Ramesh Bhange, Priyanka Goyal, Thomas L. Packer, and Faizan Javed. An end-to-end solution for named entity recognition in ecommerce search. In AAAI, 2021.

[12] Daniel Watson, Nasser Zalmout, and Nizar Habash. Utilizing character and word embeddings for text normalization with sequence-to-sequence models. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing, pp. 837-843, Brussels, Belgium, October-November 2018. Association for Computational Linguistics.

[13] Alan Akbik, Tanja Bergmann, Duncan Blythe, Kashif Rasul, Stefan Schweter, and Roland Vollgraf. Flair: An easyto-use framework for state-of-the-art nlp. In NAACL 2019, 2019 Annual Conference of the North American Chapter of the Association for Computational Linguistics (Demonstrations), pp. 54-59, 2019.

[14] Alan Akbik, Duncan Blythe, and Roland Vollgraf. Contextual string embeddings for sequence labeling. In Proceedings of the 27th International Conference on Computational Linguistics, pp. 1638-1649, Santa Fe, New Mexico, USA, August 2018. Association for Computational Linguistics.


# 日本語大規模データセットにおける嘘つき検出

青木洋繁
静岡大学情報学部
haoki@kanolab.net
}

狩野芳伸
静岡大学情報学部
kano@inf.shizuoka.ac.jp

## 概要

言語情報のみでの欺瞒・嘘つき検知1は人間にとって難しい. 日本語での対話データを用いた欺瞒・嘘つき検出の研究はこれまでいくつかあったが，非言語情報を主に用いたものが多く, 言語情報のみを用いたものが筆者の知る限り存在しなかった. また,英語で行われた欺瞞・嘘つき検出の研究には言語情報のみの対話データを用いたものがあったが，欺瞒・嘘つきラベルが付けられたデータセットは集めにくいという特性上,これまで行われてきた研究で使用されていたデータセットは規模が小さかった. そこで本研究では, 日本語の大規模データセッ卜を用い, 英語の先行研究の手法が日本語のデータセットにおいても有効かどうかの検証に加え, 深層学習モデルを学習させ, 英語の先行研究の手法と比較した. Accuracy 約 $72.4 \%$ で分類に成功し, 先行研究よりも安定して嘘つきを検出できた。

## 1 はじめに

言語情報のみの欺暪・嘘つき検知は人間にとって難しく, 人間はオンラインのテキストコミュニケー ションで, 相手を信頼する傾向があることが分かっている [1]. SNS の流行やコロナウイルスの影響でオンラインでのコミュニケーションの機会が増えた今, 言語情報のみの対話データでの嘘つき検出は重要であり, 客観的に対話相手が嘘つきかどうかを判定出来るモデルは有用である。

英語の書き言葉のみの対話データを用いた欺瞒・嘘つき検出の研究はいくつかある [2], [3]. しかし, 日本語の対話データでの欺瞒検知の研究では非言語情報も用いたものが主であった [4], [5], [6]. また,これまでの対話データを用いた嘘つき検出の研究では,嘘付きラベルが付与されたデータの取得が難しいと

いう特性上,小規模なデータが用いられていた。本研究では,インターネット上で行われていた人狼ゲームの人狼 $\mathrm{BBS}^{2}$ のロログを使い, 大きなデータセットで深層学習モデルを学習させ, 嘘つきを予測できるモデルの作成を目指す.また, モデルが予測の際に着目した箇所を可視化し,どのように嘘つきの特徴を捉えているかを検証する。

## 1.1 人狼ゲームとは

人狼ゲームとは,プレイヤーを騙す人狼陣営と嘘付きを見破る市民陣営にランダムに分け,それぞれの勝利のために対戦するゲームである. 人狼は夜になると人間を一人襲撃する. 人狼による襲撃を止めるため, 昼間に村人全員で話し合いを行い,一日に一度, 最も怪しい村人を投票で 1 人選び処刑する. 市民陣営は人狼を全て処刑すれば勝利し, 人狼陣営は市民陣営よりも多くなった時点で勝利する. 市民陣営には他のプレイヤーの役職を知る事が出来る占い師などの能力者がおり,市民陣営の勝利に大きく貢献する.ただし, 役職はランダムに割り振られ,ゲームが終わるまで正解は明かされないため, 能力者と人狼以外 (人狼同士は打互いを認識している) は, 他のプレイヤーの役職を知る事が出来ない.したがって，人狼陣営は容易に市民陣営を欺くことができ, 市民陣営が勝つためには発言を吟味しながら,嘘つきを見破る必要がある.

## 2 関連研究

## 2.1 言語心理学の特徵量による嘘つき検出

Girlea ら (2016)[2] は, Barnwell によって収集された英語版人狼ゲームのログ $(86 \text { ゲーム分 })^{3}$ を用い, これまで言語心理学で提唱されてきた嘘つきの特徴を特徴量として,ロジスティック回帰や Random

2）人狼 BBS のログ: http://ninjinix.com/

3）先行研究で用いられた人狼ゲームのログ: https://www. brenbarn.net/werewolf/logindex.html

Forest 等で騙し役をプレイヤーの全発話単位で予測し, Random Forest で 90.87\%の精度で嘘つきを予測することが出来た. また, logistic 回帰の結果から英語の嘘つき検出において特に TTR(type token ratio) が予測に寄与することを示した. ただし，この実験で用いられたデータは小規模であり (701インスタンス，内 116 インスタンスが騙し役), 言語は英語であった.今回はこの手法を日本語の大規模データセット (人狼 BBS データセット) でも同様に有効か検証し, 深層学習モデルと比較した.

## 2.2 深層学習モデルを利用した欺瞞検知

Peskov(2020) ら [3] は, Diplomacy という国盗りゲームを実験参加者にプレイさせ, 発話に送り手が嘘を付いたかのアノテーションと受け手が嘘の発話に見えたかどうかの双方向のアノテーションを付けたデータセットを作成した. このデータセットを使い, ロジスティック回帰とニューラルモデルで発話単位での真偽の予測を行った. 結果, 人間のベースラインと近い精度が得られた. ただし, この研究は, 発話の真偽予測を対象としているため, 対話データ全てを使い騙し役を予測する本研究と直接比較することは出来ない.

## 3 データセット

## 3.1 人狼 BBS データセット

今回はデータセットに人狼 BBS のログデータを用いる. 人狼 BBS は電子掲示板上で以前行われていた人狼対戦ゲームで,インターネット上に過去 10 年分のログデータ (7,264 ゲーム分) が公開されている.初日に襲撃の対象になるコンピュータを含め, 10 人から 16 人の参加者で 1 ゲーム当たり 1 週間程度で行われていた. 一日に一度更新があり, そのタイミングで投票が行われ, 最も怪しい村人の処刑, 人狼の襲撃, 能力者の能力使用が行われる. 役職の役割等,人狼 BBS についての更に詳しい情報は, まとめサイト4)を参照されたい.

人狼 BBS では, 人狼同士が昼間の話し合いの間も他の村人に気付かれることなく会話をすることができるため, 人狼同士連携の取れた高度な嘘が展開されていた. 図 1 に人狼 BBS のログの一部を示した. この例では, ジムソンが市民陣営で, カタリナが人狼陣営である。

図 1 人狼 BBS のログの例

図 1 の吹き出し 1 つを 1 発話として, プレイヤー の 1 ゲーム内の全発話を 1 インスタンスとした. 今回はは人狼 BBS の役職の内, 人狼陣営の人狼, 狂人と市民陣営の村人, 占い師, 霊能者, 狩人を使用した.本研究では, 市民陣営を欺き自陣営の勝利を得ようとする人狼陣営のプレイヤーを「嘘つき」とみなし二值分類を試みた. 前処理を行った後, 市民陣営を 0 , 人狼陣営を 1 とラベル付けしたところ, 市民陣営 61,839 インスタンス, 人狼陣営 26,977 インスタンスとなった.

## 3.2 前処理

web からクロールした人狼 BBS データセットから, 不要な文字列 (顔文字, 絵文字, URL, レスアンカー) の削除, 表記ゆれの統一 (半角ひらがな, 半角アルファベットに統一), 空白・改行の削除, 数字の 0 への変換, モデルが人狼用語 (キャラクター名) に頼って予測をしないようにキャラクター名やニックネー ムの<person>トークンへの置換,嘘つき検出に関係のない部分 (独り言, 人狼同士の対話, 墓地での会話, プロローグ, モノローグ,コンピュータの発話) の削除, 10 発話以下のプレイヤーの削除を行った.

尚, キャラクター名やニックネームは, 人狼 BBS まとめサイトの登場人物のページ5)を参考にしてリストアップし,ログデータを見て手作業で更に追加した. そして, 正規表現を用い, 関係ない箇所が置換されないように工夫して置換した。

人狼 BBS を何度もプレイしているユーザの特徴からモデルが予測をしてしまう事を避けるため, 同じユーザが train:valid:test に跨って出現しないよう

5）人狼 BBS まとめサイト登場人物: https://wolfbbs.jp/ $\%$ C5\%D\%\%BE\%EC\%BF\%CD\%CA\%AA.html

にデータセットを train:valid:test 8:1:1 に分割した. 分割後の市民陣営と人狼陣営の数はそれぞれ, train(49,601: 21,447), valid(6,138:2,751) test $(6,100$ : 2,779 ) となった. ここから人狼陣営をオーバーサンプリングして, 市民陣営と人狼陣営が $1: 1$ になるようにした. オーバーサンプリング後の統計量を表 1 に示した.

前処理を行ったデータセットから, mecab(ipadic neologd[7]) を使い形態素分割した後, 先行研究 [2] で用いられた言語心理学の特徴量をカウントしたデータセット,プレイヤー毎に発話をまとめたデー タセットを作成した。

## 4 モデル

## 4.1 Random Forest

先行研究 [2] の言語心理学の特徴量を用いたモデルの中で, Random Forest が最も精度が高かったため,本研究では Random Forest を使って先行研究を再現した. 先行研究 [2] で使用された特徴量の内, 認知的な複雑さを測るために用いられていた"6 文字より長い単語"は除外し, 英語の前置詞の数の代わりに助詞の数を用いた. また, ネガティブ感情語数は東北大の極性辞書を用いてネガティブ感情語をカウントしたものを用いた. 和らげ・ぼかし表現, 自己参照, 認知語, 動作語, 除外語, 否定語, 動作語, 知覚語は mecab の辞書にあるか確認しながらリストを作り, 発話を形態素解析した後, リストに存在する語をカウントした. その他の品詞の数は, mecab の形態素解析結果に応じてそれぞれカウントした. 以下に使用した特徵量をまとめた。
- TTR (type-token ratio)

・ロごもり語の数 (hesitation) $($ えーと,うーん)(14 語)

・ネガティブ感情語数

・形態素数
- 自己参照の数 (私, 僕, おいどん)(45 語)
- 否定語の数 (しない, ない, 違う)(12 語)

・和らげ・ぼかし表現の数 (hedge)(みたいな, 多分, ちょっと)(34 語)

・認知語の数 (信じる, 考える, 思い出す)(50 語)

・動作語の数 (到着する, 走る, 歩く)(31 語)
- 知覚語の数 (触る, 見る, 聞く)(30 語)
- 除外語の数 (以外, その他) $(7$ 語)

・助詞と接続詞の数
- 代名詞の数
- 形容詞の数
- 名詞の数

・動詞の数
- 接続詞の数
- 助詞の数

## 4.2 HAN(Hierarchical Attention Network)

HAN(Hierarchical Attention Network)[8] は, attention 機構を擁した 2 層の bidirectional GRU からなるモデルである. 1 層目は単語レベルで 2 層目は文レベルである. 2 層目は, 1 層目の単語の重み付き和を入力として受け取る (図 2). つまり,一発話ずつ読み,これまでの発話と照らし合わせながらそのプレイヤーが人狼かどうかを判断する.この処理は, 人間が人狼をプレイするときの処理に似ている. また, 人間が着目してる箇所と深層学習モデルが着目している箇所を定量的比較分析した研究で bidirectional LSTM の注目している箇所は人間に近いということが報告されている [9]. 予測の結果だけでなく, 人間に分かりやすい根拠を attention の可視化等を用いて示せば, 実際に人間が嘘つきを検出するときの助けになると考え, HANを選択した。

今回, training データと前処理で除外して学習・評価に使用しなかったデータ (プロローグ等) から学習した Sentencepiece[10](bpe, skip-gram, 語彙数 32,000) を用いて, 発話をサブワードに分割した. サブワー ドの分散表現の獲得には, fasttext[11](200 次元)を用いた.

## 5 実験

実験の評価は, accuracy, precison, recall, f1 で行った. 実験の結果, HAN で Acuracy 約 $72.5 \%$ で分類に成功し, 先行研究の手法を上回った (表 2,3 ). 先行研究の手法の accuracy が約 $52.4 \%$ に落ちたのは, 英語のデータセットで有効であった特徴量が日本語のデー

図 2 Hierarchical Attention Network

タセットには適していなかったこと,データセットのサイズが大きく変わったこと (先行研究のデータセット: 701 インスタンス, 人狼 BBS データセット: 88,816インスタンス) が考えられる.

表 2 実験結果

表 3 陣営毎の precision, recall, f1, support(HAN)

## 6 モデルが着目した箇所の分析

モデルが重視した箇所を検証するために, モデルが $90 \%$ 以上の確信度で予測した時, 文の中で attention の重みが一定以上 (発話中のサブワード全体に均等に割り振った確率以上 ${ }^{6)}$ ) かかっていた trigram の重みを足し合わせ, 重みが大きい順に True Positive(TP), False Positive(FP), True Negative(TN), False Negative(FP) に分けて, 重みの和が大きい順に並べた。それから, $\mathrm{TP}$ と $\mathrm{TN}$ 特有の trigramを $\mathrm{TP}-(\mathrm{TN}+\mathrm{FP}+\mathrm{FN}), \mathrm{TN}-(\mathrm{TP}+\mathrm{FP}+\mathrm{FN})$ のように差を取り, wordcloud で可視化した. wordcloud を見ると, $90 \%$ 以上の確信度でモデルが人狼陣営だと判定し, 実際に正解だった時, モデルが着目した箇所は曖昧な当た

6) trigram $の$ threshold $の$ 求めかた

$
\text { threshold }=\frac{3}{\text { 発話長 }-2}
$

り障りのない箇所が多かった (図 3).一方, $90 \%$ 以上の確信度でモデルが市民陣営だと判定し, 実際に正解だった時, モデルが着目した箇所には<person> トークン (キャラクター名やニックネーム) が列挙されている箇所が多く(図 4), <person>を列挙するのは,他のプレイヤーの役職推定をするときに多いため, プレイヤーが具体的に自分の考えを表明した箇所にモデルが注目していたのだと考えられる.このように処理が人間に近い階層型モデルが確信をもって予測して正解した時には, 人間にも分かりやすい基準 (無難な発話ばかりするプレイヤーは人狼)を持って予測をする傾向がある事が分かった. 更なる可視化の例は付録に示した。

TP-(TN+FP+FN) (A:werewolf)

図 3 モデルの確信度 $90 \%$ の時の TP 特有の trigram

図 4 モデルの確信度 $90 \%$ の時の $\mathrm{TN}$ 特有の trigram

## 7 おわりに

本研究では, 日本語の大規模データセットを用い,深層学習モデルを学習させ, 先行研究のモデルよりも高い精度で嘘つきを検出できるモデルを作成した. さらに, モデルが予測した時に着目した箇所を可視化すると, 人間にも解釈しやすい基準で分類している事が分かった. 今後はこのモデルが一般的な嘘つきの特徴を捉えられているかを検証するため, 詐欺等のデータでこのモデルが嘘を見抜けるかどうかを検証したい。また、bidirectional GRUを BERT や RoBERTa, Sentence BERT に変更するなど, モデルの構造を工夫して, HAN に捉えられなかった嘘を捉えられるモデルの構築を目指したい.
本研究を行うにあたり, 人狼 BBS のデータ使用を許可していただいた ninjin 氏に心より感謝致します.

## 参考文献

[1] Ben Shneiderman. Designing trust into online experiences. Commun. ACM, Vol. 43, No. 12, p. 57-59, dec 2000.

[2] Codruta Girlea, Roxana Girju, and Eyal Amir. Psycholinguistic features for deceptive role detection in werewolf. In Proceedings of the 2016 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pp. 417-422, San Diego, California, June 2016. Association for Computational Linguistics.

[3] Denis Peskov, Benny Cheng, Ahmed Elgohary, Joe Barrow, Cristian Danescu-Niculescu-Mizil, and Jordan BoydGraber. It takes two to lie: One to lie, and one to listen. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 38113854, Online, July 2020. Association for Computational Linguistics.

[4] Yuiko Tsunomori, Graham Neubig, Sakriani Sakti, Tomoki Toda, and Satoshi Nakamura. Comparison of effective features and analysis of questions towards dialogue-based deception detection.

[5] Shohei Takabatake and Kazutaka Shimada. Construction and analysis of liar corpus. http: //www.pluto.ai.kyutech.ac.jp/ shimada/paper/ HCG2017_takabatake.pdf. Accessed: 2022-1-5.

[6] Kenichiro Tsuji, Sho Mitarai, and Nagisa Munekata. Investigation and analysis of utterance information based on the suspects' actual voice of the communications fraud. Proceedings of the Annual Conference of JSAI, Vol. JSAI2021, pp. 3J1GS6a01-3J1GS6a01, 2021.

[7] Sato Toshinori. Neologism dictionary based on the language resources on the web for mecab, 2015.

[8] Zichao Yang, Diyi Yang, Chris Dyer, Xiaodong He, Alex Smola, and Eduard Hovy. Hierarchical attention networks for document classification. In Proceedings of the 2016 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pp. 1480-1489, San Diego, California, June 2016. Association for Computational Linguistics.

[9] Cansu Sen, Thomas Hartvigsen, Biao Yin, Xiangnan Kong, and Elke Rundensteiner. Human attention maps for text classification: Do humans and neural networks focus on the same words? In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 4596-4608, Online, July 2020. Association for Computational Linguistics.

[10] Taku Kudo and John Richardson. Sentencepiece: A simple and language independent subword tokenizer and detokenizer for neural text processing. CoRR, Vol. abs/1808.06226, , 2018.

[11] Piotr Bojanowski, Edouard Grave, Armand Joulin, and Tomas Mikolov. Enriching word vectors with subword

## 付録 A

## A. 1 可視化例

以下に unigram での可視化例を示した (図 5, 6). サブワード・文の重みが threshold よりも大きいときに色付けされた. unigram での threshold は (2) で決定した.

$
\text { threshold }=\frac{1}{\text { 発話長 }}
$

図 5 TP 確信度 $92.81 \%$ での attention 可視化の例

図 $6 \mathrm{TN}$ 確信度 $99.62 \%$ での attention 可視化の例


# ユーザから情報を引き出すための強化学習による応答生成

佃夏野 1 品川政太朗 1,2 中村 哲 1,2
1 奈良先端科学技術大学院大学
2 理化学研究所革新知能統合研究センター
\{tsukuda.natsuno.tn1 sei.shinagawa s-nakamura\}@is.naist.jp

## 概要

雑談対話システムをユーザに長く使用してもらうには，システムがユーザに興味のある話題を提供する必要があるが，まずシステムがユーザの情報を知らねばならない。この時ユーザの心象を損ねず対話でユーザから情報を引き出すのが理想だと考えられ，質問や相槌等の複数の言動を効果的に使い分けることが有望な方法の一つとして考えられる. 本研究では初歩として，指定された情報をユーザ発話から抽出する簡単なタスクを設定した。また，タスクを達成するために単純な報酬を用意し，強化学習を利用して既存の対話システムの最適化を行い，システムの応答文の変化について実験を行なった. 結果として，システムをタスクに最適化できたことと，的外れな内容の生成への対策の必要性が分かった.

## 1 はじめに

雑談対話システムを実運用するには，ユーザに長く使用してもらうことは重要な課題の一つである. そのために, システムがユーザの趣味や職業等の情報をユーザから引き出し，ユーザに興味のある話題を提供することが考えられる。ここで情報を引き出すために単に質問のみ繰り返すと，ユーザが煩わしさや不信感を感じ，システムを使用しなくなる恐れがある。これを防ぐには，質問以外に相槌や自己開示等の複数の対話行為をシステムが扱いつつ，情報を引き出すせるように戦略的に複数の対話行為を使い分けることが必要となる．また，情報を引き出す戦略を学習するには, 正解文と比較して最適化を行う教師あり学習より，タスクの目的に合わせて報酬を設計し，より直接的にタスクを解くように最適化できる強化学習を用いるのが良いと考えられる．理想的にはユーザの心象によって複数の対話行為を使い分けられるように最適化を行うべきであるが，扱う対話行為が多いことやユーザの心象についてのモ

図 1 本研究の対話システムの概要図.

デリングのしにくさからタスクとして複雑になる.

そこで本研究では初歩的な実験として，図 1 のように雑談における情報抽出に目的を限定し，そのための対話戦略を強化学習を用いて学習する. また,対話行為について質問か質問でないかの二つのみを扱うこととし，強化学習の結果として直接的に情報取得をしやすい質問が行われやすくなることを期待する。そこで，「予め欲しい情報を定義し，システムの応答に対し，目的の情報を含む発話をユーザが行ったか」という単純なタスクと報酬を定義し， システムを REINFORCE [1] で最適化する。本来はユーザの心象と相関の高い機械的な指標を用意し報酬に含めるべきであるが，今回は情報の取得のみを報酬として定義する。これによりユーザのシステムに対する心象や会話に対する反応を考慮しないため，対話行為として質問を行いやすくなると考えられる.この際，JPersonChat データセット [2]で予め fine-tuning した Encoder-Decoder モデルを学習対象のシステムと，ユーザの代わりであるユーザモデルの双方に適用し，両者を会話させて学習のためのデー タセットを収集する。また，強化学習を適用する前後のシステム応答を比較し，報酬の変化，質問の生成しやすさ，及び生成した応答例を評価する。

## 2 関連研究

## 2.1 対話による情報抽出

Han らの研究 [3] では，カウンセリング対話における患者から情報を引き出す $5 \mathrm{~W} 1 \mathrm{H}$ の質問文の作成
表 1 タスク達成判断の例。

と，患者の回答から対応する情報を抽出する手法を提案した. この手法ではあらかじめ用意したテンプレートをもとにした質問文の作成と情報抽出により，テンプレートに沿った質問と発話については自然な質問作成と正確な情報抽出が行えた。しかし， テンプレートにない多様な質問や発話には対応できなかった. Cotris らの対話システム [4]では対話からイベントに関する人や場所，日付等のユーザの情報を抽出・統合し，外部利用が可能なモジュールを作成した. また，Tigunova らの研究 [5] ではユー ザ発話の潜在的な特徴量やスピーチスタイルを元に，趣味や職業等のユーザの個人情報の推定を行なった.

## 2.2 既存研究と本研究の差分

対話からの情報抽出についての既存研究 [3][4][5] では，ユーザ発話の中にユーザ自身の情報が含まれることを前提とし，いかに情報を抽出するかが研究の主眼とされてきた. これに対し本研究では, 日常的な会話で考えられるように，会話の運び方や話し相手への心象によりユーザ発話に情報が含まれない場合があることを踏まえ，心情を損ねずユーザが自身の情報について言及するような対話戦略の学習を目標にしている。

## 3 提案手法

## 3.1 タスク設定

本研究では，対話システムが行なった応答 $R$ に対して，ユーザが発話 $U$ を返すという設定の下で、 ユーザ発話 $U$ にユーザ情報 $I$ が含まれるように，応答 $R$ をシステムが生成することを目標にする.ここで，取得したいユーザの情報を，今回は職業や出身地といった固有表現として抽出可能なものと定義する．また，この固有表現は，ユーザから取得可能で，かつ，正誤判定のために正解の固有表現をデー タセット中に保持できるものとする．タスクが達成できたかどうか判断する変数 isSuccess はシステムの応答に対するユーザの発話から判断され，式 1 となる。

$
\text { isSuccess }= \begin{cases}\text { True } & (I \in U) \\ \text { False } & (I \notin U)\end{cases}
$

また，固有表現抽出とタスク達成の評価の例を表 1 に示す。まず，このタスクで取得したいユーザの情報は表 1 のように，固有表現にあたる部分が

に，ユーザ発話に固有表現が含まれ，かつそれが正解であった場合，タスクについて成功したとみなし，ユーザの発話に正解の固有表現が一切含まれていなかった場合にタスク失敗とみなす。また，ユー ザ発話中に複数の固有表現が含まれている場合，一つでも正解の固有表現と合致していればタスクを達成したとみなす.

## 3.2 対話システムの概要

本研究の対話システムは，ユーザ自身について得たい情報とユーザ発話の 2 つをもとにして応答を生成するモデルからなる。概要を図 2 に示す.

図 2 対話システムの概要.

まず図 1 のようにユーザについて知りたい情報のうち固有表現部分をマスクした文と，コンテキストを繋げた文を区切り文字 [SEP] で繋げ入力文とする. 次に，これをトークン化し，Encoder-Decoder モデルからなる応答生成モデルに入力し, 最後にシステムの応答を得る。これにより，システムは知りたい情報を引き出すための対話行為と応答の内容，加えて前のターンの会話から大きく外れないことを考慮して，応答を生成できると考えられる。

## 3.3 学習方法

学習方法には REINFORCE [1] を用い，応答生成モデルを最適化する。 まず前提として，システムとユーザモデルを会話させる際に，図3のようにユー ザモデルには正解となるユーザについての情報「私は福岡出身です」が与えられ，システム側にはその情報のうち固有表現をマスクしたものが与えられる.これは，学習・推論のいずれの場合でも同様である.

図 3 報酬計算のためのデータ処理とそれぞれのシステムに与えられる入力.

次に報酬 $r$ について，先程の前提を元に，コンテキストを元にした 1 ターンの会話でユーザからマスクした固有表現が得られれば $r=1$, 得られなければ $r=0$ とする. 以上のような学習設定と報酬を元に，予め学習前のシステムとユーザモデルを会話させ，報酬を計算しておくことで強化学習用のデータセットを構築しておく.

次に, 用意したデータセットからの学習方法について述べる. 今回のような言語生成に対して REINFORCE を適用する場合，損失 $L$ は，入力系列 $y$ のトークン長 $T$, 言語モデル（方策関数） $\pi_{\theta}$ と時間 $\mathrm{t}$ までの状態 $s_{t}$ に対して,

$
L=-\frac{1}{T} \sum_{t=1}^{T} r \log \pi_{\theta}\left(y_{t} \mid s_{t}\right)
$

となることが知られている。これは，通常の損失 $\log \pi_{\theta}\left(y_{t} \mid s_{t}\right)$ に対して報酬 $r$ で重み付けし, Teacher forcing で学習することに等しい. 通常の REINFORCE では，モデル更新にしたがってモデルが新たに生成する文も変化していくが，この方法では一般的に学習が不安定になりやすい。そこで本研究では，強化学習を行う前のシステムとユーザモデル間の対話によって対話のデータセットを予め作成しておき，このデータセットからサンプリングした対話データに対して報酬を評価し、訓練に用いた。

## 3.4 ユーザモデル

強化学習を行う際に用いるユーザモデルについて

えた固定のペルソナに沿った発話をするように学習した応答生成モデルを用いる.

固定された情報私は岐阜出身です $[S E P]$ 出身は？

図 4 ユーザモデル概要図。

このユーザモデルでは，まずユーザについて固定された情報とコンテキストを連結した文が，入力文として Encoder-Decoder モデルに与えられる. 学習時には大力文に対応したデータセット中の返答文を教師データとしてユーザモデルの学習を行う. 推論時には，与えられた情報とコンテキストに矛盾しない発話が生成される.

## 4 実験設定

## 4.1 データセット

まず，対話データを作成する際に用いる，対話システムとユーザモデルの fine-tuning に使用する JPersonaChat [2] について述べる。JPersonaChat は PersonaChat [6] の設定をもとにして，クラウドワー カーが与えられたペルソナに沿ってお互いを深く知り合うよう2 者間で話した対話を収集したものである. 各会話のそれぞれの話者にペルソナと呼ばれるユーザに関する情報が「私は横浜出身です」「私は島根県在住です」といった文の形で付与されている. このうち，対話データのみを用いてシステムの生成モデルを fine-tuning する．またユーザモデルは，対話データに加えてそれぞれの対話に結びついた話者のペルソナのうち，固有表現を含むペルソナのみを一つ抽出し， 3.4 で示した方法で fine-tuning を行う. これにより，与えた 1 つのペルソナに矛盾しない発話をユーザモデルに行わせる.

次に，強化学習用のデータセットについて述べる. fine-tuning を行ったシステムとユーザモデルについて，ユーザモデルのペルソナを変更しつつ 20 ターンの会話を行い，過去 3 発話程度のコンテキスト，システム応答，ユーザ発話，およびユーザ発話
表 2 学習した対話システムによる応答生成例と得られた報酬. テストセットや生成例に含まれる正解の情報，コンテキスト及びユーザモデルの発話については表に収まらないため省略した。

から計算される報酬の 4つからなる対話データセット作成した. このデータセットには，227 個のペルソナ， 227 個の対話，および 9080 発話が含まれており，データセットの総数は 4540 個である。このうち 3971 個を学習セットとし，569 個をテストセットとして評価に用いる。

## 4.2 評価尺度

評価尺度として，テストセットで得られる報酬の総和と，質問を行っている応答の総数を用い，システムが報酬を得やすくなったか，および質問をしやすくなったかについて評価する。また，質問の報酬獲得率を計算し，質問で報酬を獲得できているかについて評価する．質問の報酬獲得率の計算式は

$
\text { 質問の報酬獲得率 }=\frac{\text { 報酬を得られた質問の総数 }}{\text { 質問をしている応答の総数 }}
$
となる。

## 5 実験結果と考察

4.2 節で述べた尺度による評価の結果を表 3 に示す. 学習前後の報酬の総和を比較すると，学習後の

表 3 報酬の総和と質問数・質問の報酬獲得率の変化による比較.

システムの方が多くなっており，また，質問の数も多くなっていることから, 狙った方向性にシステムが正常に学習できていると考えられる. しかし，学習した後は質問が 2 倍近く増加しているのに対して, recall はあまり増加していない.この結果から，質問という対話行為を選択しやすくなったものの，知りたいことを適切に聞けるような発話ができてはいないと考えられる。

そこで，詳しく結果を分析するために，テストセットから生成した応答を表 2 に示す. 表 2 の上から1つ目の例は，質問はしたが報酬に結び付かなかった応答の代表的な例である. 報酬に結び付かな
かった質問は，このように「お休みの時は何をされるのか」という内容のものが多かった。これは学習セット中で，報酬を獲得できた質問が 570 個であるのに対し，これに類する質問が，44 個含まれており，頻出する質問を行うよう学習したためと考えられる。続いて，表 2 上から 2 つ目の例は，報酬を獲得できた質問の代表的なものである。報酬を獲得できた質問は，このように質問の答えのドメインが絞られる内容のものが主になっていた。加えて，表 2 の上から 3 つ目のように，質問でなくても報酬が得られた応答としては，会話のドメインを絞った内容のものが主になっている.これらのことから，今回用いたユーザモデルに対して，システムがドメインを絞った直接的な質問を行うことで，更に報酬を増やすことが期待できると分かった.

## 6 まとめ

本研究では初歩的な実装として，ユーザから指定された情報を引き出すことのみをタスクとして， ユーザが情報を話したか，という単純な報酬を用いて強化学習で対話システムを最適化し, 学習したモデルの応答文の変化について調査を行なった. その結果，質問を生成しやすくなり，タスクへの最適化が行えたことが確認できた. また，ユーザから対話的に情報抽出を行うためには，情報抽出のための適切な内容を含む必要があるという課題も分かった.本研究の本来の最終的な目標は, 対話行為を適切に使い分けることでユーザの心象を損ねず対話でユーザから情報を引き出すことである．今後はユー ザが情報を話しやすい状態かの判断を報酬設計に組み込み，質問や相槌等の対話行為をシステムが適切に使い分けることを目指す. また，今回の課題も踏まえて対話行為だけでなく, 応答の内容についても適切なものを生成できる機構をシステムに導入することを検討していく，将来的には，取得すべき情報を増やしてタスクを複雑化し, 本研究を拡張してマルチターンの対話による最適化を行い，最終的に人手の評価を行う予定である.

## 参考文献

[1] Ronald J. Williams. Simple statistical gradient-following algorithms for connectionist reinforcement learning. Mach. Learn., Vol. 8, No. 3-4, p. 229-256, may 1992.

[2] Hiroaki Sugiyama, Masahiro Mizukami, Tsunehiro Arimoto, Hiromi Narimatsu, Yuya Chiba, Hideharu Nakajima, and Toyomi Meguro. Empirical analysis of training strategies of transformer-based japanese chit-chat systems. arXiv:2109.05217, 2021

[3] Sangdo Han, Kyusong Lee, Donghyeon Lee, and Gary Geunbae Lee. Counseling dialog system with 5W1H extraction. In Proceedings of the SIGDIAL 2013 Conference, pp. 349-353, Metz, France, August 2013. Association for Computational Linguistics.

[4] Keith Cortis and Charlie Abela. Semchat: Extracting personal information from chat conversations. In EKAW 2010. Workshop W2, p. 14. Citeseer.

[5] Anna Tigunova. Extracting personal information from conversations. In Companion Proceedings of the Web Conference 2020, WWW '20, p. 284-288, New York, NY, USA, 2020. Association for Computing Machinery.

[6] Saizheng Zhang, Emily Dinan, Jack Urbanek, Arthur Szlam, Douwe Kiela, and Jason Weston. Personalizing dialogue agents: I have a dog, do you have pets too? In Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 2204-2213, Melbourne, Australia, July 2018. Association for Computational Linguistics.

## A 実験で使用したモデルについて

節 3.1 で行う固有表現抽出は，オープンソース日本語 NLP ライブラリである Ginza で配布されている ja_ginaza モデル ${ }^{1)}$ を用いて，JPersonaChat データセットに対して行う. また，応答生成モデルとして，システムとユーザモデルの両方で NTT による日本語事前学習済み Encoder-Decoder モデル [2] を用いる.

1) https://github.com/megagonlabs/ginza


# 単語埋め込みを利用した商品に対するキーワードの予測

山口泰弘 深澤祐援 原島純
クックパッド株式会社
\{ yasuhiro-yamaguchi, yusuke-fukasawa, jun-harashima \}@cookpad.com

## 概要

出品者が商品情報を自由に入力できる EC サービスでは，入力される商品名の多様性のため，出品された商品がなにであるかを機械的に判断することは難しい。本研究では，事前学習した単語埋め込みを用いて，予め定義されたキーワード集合の中から商品名に最も関連するものを予測するモデルを提案する. クックパッドマートの商品を元に作成したデータセットによる実験の結果，提案手法では Accuracy@5 で $95.8 \%$ の精度でキーワードの予測が可能になった. また，注意機構を用いることで教師なしの手法においても Accuracy@5 で 81.0\% の精度で予測できることがわかった.

## 1 はじめに

出品者が商品情報を自由に入力できる EC サービスでは商品名や商品説明の表記は出品者によって大きく異なる。例えば食材を多く扱う EC サービスであるクックパッドマートでは, 豚の小間切れ肉の商品名について “豚肉小間切れ”, “豚コマ”, “豚小間肉”など複数の表記が存在する。さらに，じゃがいもなどの野菜では “メークイン”や“キタアカリ”といった品種名が記載される場合も多い。また，ユー ザーの購買意欲を高めるために “産地直送” “タイムセール”といったフレーズを含んでいるものもある. 検索や推薦といったタスクでは商品のカテゴリや性質は有用な情報になり得るが，こうした表記の多様性はその商品のカテゴリを機械的に判別することを困難にする。

そこで本研究では, 事前学習した単語埋め込みに基づく商品名とキーワードの類似性を利用してキー ワード集合の中から商品に関連するキーワードを割り当てる機械学習モデルを提案する. 表 1 に本研究で利用するデータセットの例を示す.データセットはクックパッドマートの商品をもとに作成した商品名とキーワードのペアからなり，モデルは与えられ

表 1 データセットの例

た商品名から対応するキーワードを予測する．本研究ではこのデータセットに基づいて提案手法の有効性を検証する。

## 2 関連研究

EC サービス上の商品名を元に商品をカテゴリに分類する手法がいくつか提案されている. Cevahir ら [1] は商品を階層化された 2 万以上のカテゴリに分類するために自己符号化器の近傍などを利用して階層的に予測を行う分類モデルを提案した。

Chen ら [2] は商品を詳細なカテゴリに分類するために，商品名や説明文中の商品カテゴリに相当する語に着目するニューラル分類器を提案している.

Cevahir らと Chen らの手法はいずれもカテゴリを分類ラベルとして予測するものであり，商品情報とカテゴリの文字列的・意味的な類似性を直接的に考慮するものではないという点で本研究とは異なっている.

また，テキストデータから商品の情報を抽出する先行事例として [3] や [4]がある. これらの手法は系列ラベリングを用いてテキスト中から属性情報を抽出する. 本研究は予め定義されたキーワード集合に分類するという点でこれらの手法とは異なる.

## 3 提案手法

本研究では，事前に定義したキーワード集合の中から与えられた商品名に最も関連のあるキーワードを予測するモデルを提案する。

図 1 に提案モデルの構造を示す.このモデルでは商品名とキーワードの類似度を計算し, 商品名との

図 1 キーワード予測モデルの構造

類似度が最も大きいキーワードを選択することで予測を行う. 商品名とキーワードの類似度の計算手順を次に示す:

1. 商品名・キーワードに対して形態素解析を行い単語ごとに分割する

2. 商品名・キーワードの各単語を事前に学習した fastText[5] を用いてべクトルに変換する

3. 商品名・キーワードの単語ベクトル列をそれぞれ Highway BiLSTM により変換する (3.1 節)
4. 3 で変換したべクトルをもとに注意機構を用いて商品名の単語ベクトルをキーワードの単語べクトルとの類似度で重み付ける (3.2 節)

5. 商品名・キーワードの単語ベクトル列をそれぞれ平均して商品名ベクトル・キーワードベクトルを計算する (3.2 節)

6. 商品名ベクトル・キーワードベクトル同士のコサイン類似度を商品名とキーワードの類似度とする (3.3 節)

## 3.1 Highway BiLSTM (H-BiLSTM)

本研究では学習済み fastText の特徴量を効果的に利用するために Highway 構造 [6] を導入した BiLSTMをエンコーダーに利用する。ここでは Hightway BiLSTM (H-BiLSTM) を以下のように定義する. $\boldsymbol{X}=\left(\boldsymbol{x}_{1}, \boldsymbol{x}_{2}, \cdots, \boldsymbol{x}_{T}\right)$ は BiLSTM の入力となるベクトル系列であり， $\sigma$ はシグモイド関数を表す.

$
\begin{aligned}
\boldsymbol{H} & =\operatorname{BiLSTM}_{\text {highway }}(\boldsymbol{X}) \\
\boldsymbol{G} & =\sigma\left(\operatorname{BiLSTM}_{\text {gate }}(\boldsymbol{X})\right) \\
\boldsymbol{Z} & =\boldsymbol{G} \circ \boldsymbol{H}+(1-\boldsymbol{G}) \circ \boldsymbol{X}
\end{aligned}
$

事前実験の結果から，本研究では商品名・キー
ワードの fastText ベクトル列をパラメータを共有した同一の H-BiLSTM を用いてエンコードする.

## 3.2 注意機構

商品名には “産地直送” “タイムセール”といったキーワードに直接関係のない語彙が含まれているものが多く存在する。本研究ではこうしたキーワー ドに無関係な単語の影響を小さくするために，注意機構を用いた商品名の単語に対する重み付けの仕組みを導入する。

商品名 $p$ の $n$ 番目の単語に対する重み $a_{n}$ をキー ワード $k$ の単語とのコサイン類似度を利用して次のように定義する。

$
a_{n}=\frac{1}{M} \sum_{m=1}^{M} \cos \left(z_{n}^{(p)}, z_{m}^{(k)}\right)
$

ここで $\boldsymbol{Z}^{(p)}=\left(z_{1}^{(p)}, z_{2}^{(p)}, \cdots, z_{N}^{(p)}\right), Z^{(k)}=$ $\left(z_{1}^{(k)}, z_{2}^{(k)}, \cdots, z_{M}^{(k)}\right)$ はそれぞれ H-BiLSTM を通して計算した商品・キーワードの単語ベクトル系列とする。

商品名とキーワードに対応するベクトルをそれぞれ以下の定義に従って計算する。

$
\begin{aligned}
\hat{z}^{(p)} & =\frac{1}{N} \sum_{n=1}^{N} a_{n} z_{n}^{(p)} \\
\hat{z}^{(k)} & =\frac{1}{M} \sum_{m=1}^{M} z_{m}^{(k)}
\end{aligned}
$

キーワードの単語列は十分短く，予測に不必要な単語が含まれることもほとんどないため単語の重み付けは商品名のみを対象とした。

## 3.3 類似度と損失関数

商品名 $p$ とキーワード $k$ の類似度 $s(p, k)$ は $\hat{z}^{(p)}$, $\hat{z}^{(k)}$ のコサイン類似度で以下のように定義する。

$
s(p, k)=\cos \left(\hat{z}^{(p)}, \hat{z}^{(k)}\right)
$

モデルの学習では商品名と関連するキーワードのペアからなるデータセット Dを用いて以下の損失関数を最小化する。

$
L=-\sum_{(p, k) \in \mathscr{D}} \log \left(\frac{e^{s(p, k)}}{e^{s(p, k)}+\sum_{k^{\prime} \in \mathcal{N}_{k}} e^{s\left(p, k^{\prime}\right)}}\right)
$

$\mathcal{N}_{k} \subseteq \mathscr{K} \backslash\{k\}$ は全キーワード集合 $\mathscr{K}$ から商品名 $p$ の正例であるキーワード $k$ を除いてネガティブサンプリングを行い得られた負例のキーワード集合を表す. 対照学習では負例サンプリングにおいて識別困難な事例を優先的に利用することでモデルの性能向上につながることが知られている [7]. 本研究では，1つの事例に対して負例のキーワード集合の中から 128 件をランダムに選んで商品名との類似度を計算し，この中から類似度が最も小さい上位 8 件のキーワードを hard example として損失の計算に利用した.

## 4 実験

## 4.1 データセット

クックパッドマートに出品されている 8,881 件の商品に対して食材を表すキーワードの割り当てを人手で行った. 一度アノテーションしたあとで割り当てたキーワードに対する表記摇れの修正やキーワー ドの統合などの処理をした結果，ユニークなキー ワードの数は 1,350 件となった. アノテーションしたデータセットをランダムに Train, Valid, Test の 3 つに分割し, モデル学習と評価に利用した. データセットのより詳細な統計情報は付録 A に記す。

## 4.2 比較手法

本研究では以下のモデルを用いて性能の比較を行った.

TF-IDF 類似度: 商品名・キーワードをそれぞれ単語分割した後 TF-IDFによるべクトル化を行い, TF-IDF ゙クトルのコサイン類似度が最も大きい商品名・キーワードを対応づける教師なしモデル.
fastText 分類器: 商品名の fastText ベクトル列を平均した商品名べクトルを入力とし, 順伝播型ニュー ラルネットワークを通してキーワードごとにクラス分類を行う教師ありモデル.

fastText 類似度: 商品名・キーワードの単語ベクトル列の平均ベクトルを計算し，各ベクトルのコサイン類似度が最も大きい商品名・キーワードを対応づける教師なしモデル。

fastText 類似度 + 注意機構: 商品名の fastText ベクトルを注意機構で重み付けした後，fastText 類似度を計算する手法. 提案手法から H-BiLSTM 層を除いたモデルと同等.

H-BiLSTM 類似度: 提案手法から注意機構を除いた教師ありモデル．

H-BiLSTM 類似度 + 注意機構: 本研究の提案手法である教師ありモデル。

本研究では単語埋め込みとしてクックパッドに公開されている約 350 万レシピのタイトルを用いて学習した fastText モデルを利用した. fastText の詳細は付録 Bに記す.レシピのタイトルの単語分割には MeCab (Unidic 辞書)を用いた。

各モデルは Train データで学習し, Valid データでハイパーパラメータの選択と Early Stopping を行い， Test データを用いて精度の比較を行った。

## 5 結果と考察

表 2 Test データに対する実験結果

表 2 に Test データに対する各手法の精度を示す.実験の結果，いずれの指標においても提案手法が最も高い精度となった。

また教師ありの fastText 分類器と教師なしの fastText 類似度+注意機構の精度を比較すると，いずれの指標でも教師なし注意機構モデルが高い精度となった.この結果から, 本タスクにおいては単にキーワードをラベルとして予測するよりも注意機構を用いて商品名とキーワードの類似性を考慮した予測を行うことが重要であると考えられる.

表 3 上位 5 件の予測結果の例

## 5.1 エラー分析

表 3 にモデルの予測結果の例を示す.“ギンダラ/銀だら” や“シルクスイートハさまいも”のように表記摇れや品種名の記載によってキーワードの文字列が商品名に含まれない場合であっても関連するキーワードを予測できていることがわかる.

一方，“お刺身用生桜海老（台湾産）”の例では“刺身”が最も関連するキーワードとして予測されている。また，“紫にんじん”に対する予測結果をみてみると“紫”が含まれるキーワードが多く予測されていることがわかる. fastText は単語の共起性に基づいて学習を行うため，“紫”や“刺身”のように多くのコンテキストで出現する語は他の多くの単語に対して高い類似度になる傾向がある。この傾向が提案モデルの予測結果にも現れていると考えられる。

## 5.2 注意機構の効果

表 2 から fastText 類似度・H-BiLSTM 類似度のそれぞれで注意機構の有無による精度を比較すると，いずれの指標においても注意機構を用いた場合に精度が向上した. 特に教師なしの fastText 類似度モデルでは注意機構の利用で各指標がそれぞれ $+10 \%$ 程度の上昇が確認できた。一方，教師ありの H-BiLSTM 類似度モデルでは fastText 類似度モデルの場合ほど大きな性能向上は見られなかったが，各指標におい $\tau+1 \%$ 程度の改善が見られた. 以上の結果から類似度の計算において注意機構を用いることがキー ワード予測モデルの性能向上につながると考えられる。

## 5.3 Highway 構造と Hard Negative Sampling

提案手法における Highway 構造と Hard Negative Sampling の影響を調べるために, Highway BiLSTM を通常の BiLSTM に置き換えたものと，キーワードの Negative Sampling をランダムに行ったものでそれぞれ実験を行った. 図 2 に学習中の Valid データに対する Accuracy@5 の推移を示す.
まず Hard Negative Sampling を行った手法で BiLSTM (BiLSTM with HNS) と Highway (H-BiLSTM with HNS) を比較すると，H-BiLSTM の方が高い精度を達成したものの大きな差は見られなかった。一方 HNS を行わずランダムに負例を選択した手法を比較すると，BiLSTM (BiLSTM with NS) では学習を進めると Valid データにおける精度が下がる傾向が見られた。

fastText 類似度+注意機構の教師なしモデルでも比較的高い精度で予測できることから，学習済み fastText が類似度を測る上で重要な特徴量であることがわかる. Highway 構造により学習済み fastText のベクトルをバイパス可能にすることで, fastText の特徵量を効果的に学習に活用できると考えられる。

図 2 学習中の Valid データに対する正解率の推移

## 6 おわりに

本研究では学習済み fastText ベクトルを用いて商品名からキーワードを予測する機械学習モデルを提案した。クックパッドマートのデータを用いた実験の結果，提案手法を用いることで Accuracy@5 95.8\% の精度で予測することができた．また，注意機構を用いることで教師なしでも比較的高い精度でキー ワードの予測が可能になることが示された。

一方，商品名に出現頻度の高い語が含まれる場合には上位の予測結果として関連の低いキーワードが予測されることが確認できた。より高い精度で予測を行うにはこうした単語埋め込みの特性を考慮した仕組みが必要になると考えられる。

## 参考文献

[1] Ali Cevahir and Koji Murakami. Large-scale multi-class and hierarchical product categorization for an E-commerce giant. In Proceedings of COLING 2016, the 26th International Conference on Computational Linguistics: Technical Papers, pp. 525-535, Osaka, Japan, December 2016. The COLING 2016 Organizing Committee.

[2] Hongshen Chen, Jiashu Zhao, and Dawei Yin. Fine-Grained Product Categorization in E-commerce. In Proceedings of the 28th ACM International Conference on Information and Knowledge Management, pp. 2349-2352, Beijing China, November 2019. ACM.

[3] Rayid Ghani, Katharina Probst, Yan Liu, Marko Krema, and Andrew Fano. Text mining for product attribute extraction. ACM SIGKDD Explorations Newsletter, Vol. 8, No. 1, pp. 41-48, June 2006.

[4] Huimin Xu, Wenting Wang, Xin Mao, Xinyu Jiang, and Man Lan. Scaling up Open Tagging from Tens to Thousands: Comprehension Empowered Attribute Value Extraction from Product Title. In Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics, pp. 5214-5223, Florence, Italy, 2019. Association for Computational Linguistics.

[5] Piotr Bojanowski, Edouard Grave, Armand Joulin, and Tomas Mikolov. Enriching word vectors with subword information. Transactions of the Association for Computational Linguistics, Vol. 5, pp. 135-146, 2017.

[6] Rupesh Kumar Srivastava, Klaus Greff, and Jürgen Schmidhuber. Highway Networks. arXiv:1505.00387 [cs], November 2015. arXiv: 1505.00387 .

[7] Florian Schroff, Dmitry Kalenichenko, and James Philbin. Facenet: A unified embedding for face recognition and clustering. 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 815-823, 2015.

## A データセット統計

本研究で作成したデータセットの統計情報を表 4 に示す. ユニークキーワード数は各サブセットにおけるユニークなキーワードの個数を表す.

表 4 データセットの統計

各キーワードが割り当てられた商品数の頻度分布を図 3 に示す.この図からキーワードの頻度分布はロングテールであることがわかる.

図 3 データセット中のキーワードの頻度分布

## B fastText の詳細

fastText の学習ではクックパッド上のレシピタイトルに対して skip-gramによる学習を行なった。 八イパーパラメータの設定は Bojanowski ら [5] の実装における既定値 ${ }^{1)}$ 利用し， 100 次元の単語埋め込みを学習した。

表 5 学習した fastText における近傍の単語

学習した fastText ベクトルのコサイン類似度を元に，いくつかの単語の近傍を抽出した結果を表 5 に示す.この表から, fastText の学習によって表記の違いや食材と品種名の対応がある程度考慮できていることがわかる。一方“紫”や“刺身”といった単語では，同じコンテキストで使われやすい複数種類の食材などが近傍にあることがわかった.

1) https://github.com/facebookresearch/fastText/tree/v0. 9.2/python\#train_unsupervised-parameters


# 汎用事前学習モデルを用いたアルゴリズムの手続き自動生成

大西朔永 ${ }^{1}$ 椎名広光 ${ }^{2}$
1 岡山理科大学大学院総合情報研究科 2 岡山理科大学総合情報学部
i20im01os@ous.jp shiina@mis.ous.ac.jp

## 概要

プログラム作成においては，プログラムの目的を必要な処理に分解する論理的思考力が重要となる. しかし，プログラム作成は論理的思考力に加えて， プログラム言語の知識等も同時に必要となる. これまで，アルゴリズムを考える力である論理的思考力を養う手続き学習システムを開発してきた. 手続き学習システムの問題作成等では, 問題文と必要な処理に分解した手続きを大量に作成する必要がある.論理的思考力には汎用知識が必要である場合も多いが，アルゴリズム手続き生成の大規模な学習データの開発は容易ではない. 本研究では, 汎用事前学習モデルを用いた問題文からプログラム手続きを生成する手法を提案する。

## 1 はじめに

小学校では 2020 年からプログラミング教育 [1] が導入されており，その目的は主に論理的思考力の育成である. 論理的思考力は, 様々な問題を解決するために必要な処理内容や処理順序を考える能力である. 論理的思考力を育成する研究では, 手作業によるアルゴリズム学習の研究 [2] がある. 我々は論理的思考力を養う手続き学習システム [3] を開発してきたが，プログラムの概要を表す問題文と手続きが大量に必要となる. 人手によるプログラム手続きの作成は，コストが高く，容易ではない. そこで，我々はこれまでにプログラムのソースコードからプログラム手続きを生成する手法 [4]，ソースコードを用いないプログラムの問題文からプログラム手続きを生成する手法 [5] を提案している.

近年，大規模なデータを用いた大規模な事前学習モデルの研究が盛んに行われている。そして，その学習済みモデルを個々のタスクに fine-tuning する手法が提案され, 様々な自然言語処理分野で成果を出している。一方, 本研究では学習に利用できるデー タは小規模であり, 大規模な事前学習モデルの構築
は困難である．そこで，ソースコードを用いない問題文からのプログラム手続きの自動生成において,汎用事前学習モデルを用いた Seq2Seq[6, 7, 8] を小規模なデータに fine-tuning する手法を提案する.プログラム手続きの自動生成には，問題文を必要な手続きに分解する論理的思考力が必要である. 入力される問題文から特徴を捉えた分散表現が作成されないと，論理的思考力を発揮できない. 汎用事前学習モデルは大規模なコーパスから言語理解の能力に加え $\tau$ ，汎用知識も獲得していると考えられる。プログラムの問題文からプログラム手続きを生成する手法に対して, 汎用事前学習モデルを適用することで,生成する手続きの改善を図っている.

また, 本研究では学習に小規模なデータを用いるため，手続き生成タスクの学習による汎用事前学習モデルの fine-tuning が十分でないと考えられる.そこで，fine-tuning した汎用事前学習モデルを用いたプログラム手続きの生成手法を提案する．汎用事前学習モデルである BERT[9] 単体の fine-tuning を pre-training と同様の方法で行い，プログラムの問題文というドメインへの適応を先に図る. そして, fine-tuning した BERTを用いてプログラム手続きの生成タスクを学習することで，タスクへの適応を行う二段階の手法である.

## 2 関連研究

プログラミング教育の分野において，エラーを可視化する学習支援ツールの研究 [10] や操作ログを用いた初心者向け教育の研究 $[11,12]$, カードの操作を基本とした学習システムの研究 [13] が行われている. プログラミング力と論理的思考力との相関に関する分析 [14] では, 論理的思考力と言語能力を必要とする論理的文章作成力とプログラミング力の関係を分析し，プログラミング力は論理的思考力を主に必要とすることが示されている.

汎用事前学習モデルである BERT は，双方向の Transformer[15]を用いたモデルである.トークンの

並び替え前

図 1 手続き学習システム

分散表現を出力する点は Word2Vec[16] と同様であるが，BERT はコンテキストを考慮した分散表現が得られる. 日本語に対応した BERT の事前学習モデルは幾つか公開されており, 本研究では東北大学の乾研究室が公開している BERT[17]を利用している.

事前学習済みの BERTをニューラル機械翻訳に利用した研究 [18] では，Transformer ベースの機械翻訳モデルの Encoder 部分を BERT に置き換えるモデルが提案されている.

## 3 手続き学習システム

プログラムには，プログラムの目的を達成するために必要な手続きを正しい順序で記述する必要がある. 我々は，手続きをプログラムが動作する順序に並び替える問題を解くことで，論理的思考力を養うシステムを開発してきた. 手続き学習システムを図 1 に示す. 手続き学習システムでは，最初にプログラムの問題文と必要な手続きを左の画面のように表示する. 例の為替のプログラムでは，問題文と 6 個の手続きが表示されている。次にユーザは手続きをプログラムが動作する順序に並び替える．右の画面はユーザが並び替えた後の画面である．最後に手続きの順序の正解，不正解を表示する。

## 4 プログラム手続きの生成

## 4.1 GRU による Seq2Seq を用いたプログ ラム手続きの生成 (ベースライン)

ベースラインとして，GRU[19]による Seq2Seqを用いた問題文からプログラム手続きを生成する手法について述べる. プログラムの問題文とプログラム手続きを対訳データとして，Seq2Seqを学習する. GRUによる Seq2Seqを用いた問題文からプロ

図 2 GRU による Seq2Seq を用いた問題文からプログラム手続きを生成するモデルの構造

図 3 BERT を用いた問題文からプログラム手続きを生成するモデルの構造

グラム手続きを生成するモデルの構造を図 2 に示す.また，モデルの定式化を式 (1) に示す. Encoder では問題文のトークン $T o k_{1}^{E}, \ldots, T o k_{N}^{E}$ を順に入力し, 問題文全体の特徵を捉えたべクトル $h_{N}$ を作成する. そして，Decoder がそのベクトル $h_{0}^{\prime}=h_{N}$ を用いて，問題文に対応するプログラム手続きのトー クン $T o k_{2}^{D}, \ldots, T o k_{M}^{D}$ を生成する. $h_{t-1}^{\prime}$ は GRU の前の隠れ状態である. ただし，隠れ状態の初期値 $h_{0}^{\prime}$ は Encoder 側の GRU の最後の隠れ状態 $h_{N}$ である.

$
\begin{aligned}
& p\left(\operatorname{Tok}_{2}^{D}, \ldots, \operatorname{Tok}_{M}^{D} \mid \operatorname{Tok}_{1}^{E}, \ldots, \operatorname{Tok}_{N}^{E}\right) \\
= & \prod_{t=2}^{M} p\left(T_{0} k_{t}^{D} \mid h_{t-1}^{\prime}, T_{0} k_{1}^{D}, \ldots, T o k_{t-1}^{D}\right)
\end{aligned}
$

英語と日本語の翻訳等とは異なり，短文 (問題文) から長文 (プログラム手続き)を生成するため，抽象的な情報を具体的な情報に分解する必要がある.事前学習をしていないため，大規模なコーパスから得られる汎用知識は期待できず，分散表現に含まれる情報は対訳データに含まれる情報のみとなる。つまり，生成する際に必要な汎用知識等の情報が不足し，モデルは問題文をプログラム手続きに分解する論理的思考力を発揮できないと考えられる.

## 4.2 汎用事前学習モデルを用いたプログラ 厶手続きの自動生成

本研究では，汎用事前学習モデルの BERTを用いた問題文からプログラム手続きを生成する手法を提案する．BERTを用いた問題文からプログラム手続きを生成するモデルの構造を図 3 に示す. モデル

図 4 BERT の pre-training と同様の方法による BERT 単体の fine-tuning

図 5 fine-tuning した BERT を用いた問題文からプログラム手続きを生成するモデルの構造

の入出力はベースラインの手法と変わらず，プログラムの問題文とプログラム手続きを対訳データとして，モデルを学習する. ベースラインの Seq2Seq では GRUを用いた Encoder を使用しているのに対し，このモデルでは Encoder を BERT に置き換えている. 汎用事前学習モデルである BERT はコンテキストを考慮した分散表現を作成でき，汎用知識も獲得していると考えられる. BERTを用いることで， Decoder が利用できる分散表現の情報が増え，生成するプログラム手続きが改善されると考えている.

## 4.3 fine-tuning した汎用事前学習モデル を用いたプログラム手続きの自動生成

汎用事前学習モデルの BERT を用いたプログラム手続きの生成手法では，プログラム手続きの生成というタスクを学習する過程で BERT も fine-tuning している。つまり，プログラム手続きの生成という夕スクへの適応に加えて，プログラムの問題文という特定ドメインへの適応も同時に行っていると捉えることができる. 本研究では学習に小規模なデータを用いるため，プログラムの問題文というドメインへの適応を先に行うことで更なる改善を図れると考えている. 本手法では，BERT 単体の fine-tuning を BERT の pre-training と同様の方法で行い，特定ドメインへの適応を図る. そして, fine-tuning した BERT表 1 生成されたプログラム手続きの BLEU による平均評価

を用いてプログラム手続きの生成というタスクを学習することで，タスクへの適応を行う。

BERT の pre-training と同様の方法による BERT 単体の fine-tuning の概要を図 4 に示す. プログラムの問題文をコーパスとして, fine-tuning 用のデータを作成している. fine-tuning の手法は pre-training の手法と同様に, Next Sentence Prediction(NSP) と Masked LMを用いている. また， fine-tuning した BERTを用いた問題文からプログラム手続きを生成するモデルの構造を図 5 に示す. ベースラインの Seq2Seq の Encoderをプログラムの問題文というドメインに fine-tuning した BERT に置き換えている.

## 5 各モデルの評価

## 5.1 実験環境

評価するモデルは，ベースラインである GRUを用いた Seq2Seq，BERTを用いた Seq2Seq, fine-tuning した BERTを用いた Seq2Seq の 3 種類である. デー タセットは，大学の情報科学科の講義で使用された $\mathrm{C}$ 言語のプログラムの問題文とプログラム手続きのペア 46 個を用いた. 評価方法には，小規模データである点を考慮し，5-Fold Cross Validationを用いた。各テストの平均を評価値としている。評価指標には自動機械翻訳評価指標である BLEU[20]を用い，生成したプログラム手続きを評価した。

## 5.2 評価指標 BLEU を用いた評価

生成されたプログラム手続きの BLEU による平均評価を表 1 に示す. Encoder に BERTを用いたモデルは，GRU の Encoder を用いたモデルと比較して, BLEU が約 0.06 向上している. 汎用事前学習モデルである BERT の有効性が確認できた. また， fine-tuning した BERTを用いたモデルでは，BERTを用いたモデルと比べて，BLEUが約 0.03 向上している. あらかじめプログラムの問題文というドメインに fine-tuning し，タスクの学習と分ける手法が有効であることが分かる. GRU の Encoder を用いたモデ
表 2 各モデルのプログラム手続きの生成例と評価

 &  & 0.0862 &  & 0.3683 &  & 0.4164 \\

ルと比較すると, BLEUが約 0.09 向上し, 汎用事前学習モデルの効果は大きい.

## 5.3 プログラム手続きの生成例による評価

各モデルのプログラム手続きの生成例と評価を表 2 に示す. GRU の Encoder を用いたモデルは，「整数型変数の宣言」を 6 回繰り返して生成している. 整数値を 2 つ読み込むため, 正しくは fine-tuning した BERT を用いたモデルのように 2 回である. BERT をプログラムの問題文のドメインに fine-tuning したことで，問題文の特徴を捉える能力が向上したと考えている。また，GRUの Encoder を用いたモデルは，改行のトークンを繰り返し生成しているため,低いBLEU になっている. 2 つ整数値を比較して条件分岐をし, 表示する部分の手続きは, GRU の Encoderを用いたモデルでは全く生成できていない. BERTを用いた 2 種類のモデルでは，条件分岐の手続きは生成できていないが，文章の表示は生成できている. 全体的には fine-tuning した BERTを用いたモデルが良い生成をしているが，過不足ない手続きの生成には改善が必要である.

## 6 おわりに

本研究では汎用事前学習モデルの BERTを用いた問題文からプログラム手続きを生成する手法を提案した．BERTを Encoderとして用いることで，汎用知識も含めて問題文の特徴をより捉えた分散表現が得られ, 生成されたプログラム手続きが改善された. さらに, fine-tuning した BERTを用いたプロ
グラム手続きの生成手法を提案した. 本研究では小規模なデータを用いたため，ドメインとタスクの fine-tuning を分割して行い，ベースラインの GRU を用いた手法と比べ，BLEU で約 0.9 の向上を確認した. 生成例においては過不足のない手続きの生成には至っていないため, Encoder 側だけでなく, Decoder 側の改善が今後の課題であると考えている.

## 参考文献

[1] Ministry of Education, Culture, Sports, Science and Technology. Elementary school programming education guide (2nd edition). https://www.mext.go.jp/ a_menu/shotou/zyouhou/detail/1403162.htm, 2018. Accessed May. 5, 2020 (in Japanse).

[2] Junko Shinkai, Yoshikazu Hayase, and Isao Miyaji. A trial of algorithm education emphasizing manual procedures. In Gregory Chamblee and Lee Langub, editors, Proceedings of Society for Information Technology \& Teacher Education International Conference 2016, pp. 113-118, Savannah, GA, United States, March 2016. Association for the Advancement of Computing in Education (AACE).

[3] Kohei Sakane, Nobuyuki Kobayashi, Hiromitsu Shiina, and Fumio Kitagawa. Kanji learning and programming support system which conjoined with a lecture. In IEICE Technical Report, Vol. 114 of ET2014-86, pp. 7-12, 2015.

[4] Sakuei Onishi, Akiyoshi Takahashi, Hiromitsu Shiina, and Nobuyuki Kobayashi. Automatic comment generation for source code using external information by neural networks for computational thinking. International Journal of Smart Computing and Artificial Intelligence(IJSCAI), Vol. 4, No. 2, pp. 39-61, 122020.

[5] Sakuei Onishi and Hiromitsu Shiina. Two-stage program procedure generation from problem statements us-
ing the seq2seq combination. In 2021 10th International Congress on Advanced Applied Informatics (IIAI-AAI), pp. 406-412, 2021.

[6] Ilya Sutskever, Oriol Vinyals, and Quoc V Le. Sequence to sequence learning with neural networks. In Advances in Neural Information Processing Systems 27 (NIPS 2014), pp. 3104-3112, 2014

[7] Thang Luong, Hieu Pham, and Christopher D. Manning. Effective approaches to attention-based neural machine translation. In Proceedings of the $\mathbf{2 0 1 5}$ Conference on Empirical Methods in Natural Language Processing, pp. 1412-1421, Lisbon, Portugal, September 2015. Association for Computational Linguistics.

[8] Alexander M. Rush, Sumit Chopra, and Jason Weston. A neural attention model for abstractive sentence summarization. In Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing, pp. 379-389, Lisbon, Portugal, September 2015. Association for Computational Linguistics.

[9] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv preprint arXiv:1810.04805, 2018

[10] Haruki Kanamori, Takahito Tomoto, and Takako Akakura. Development of a computer programming learning support system based on reading computer program. In Sakae Yamamoto, editor, Human Interface and the Management of Information. Information and Interaction for Learning, Culture, Collaboration and Business, pp. 63-69, Berlin, Heidelberg, 2013. Springer Berlin Heidelberg.

[11] Koki Okimoto, Shimpei Matsumoto, Shuichi Yamagishi, and Tomoko Kashima. Developing a source code reading tutorial system and analyzing its learning $\log$ data with multiple classification analysis. Artificial Life and Robotics, Vol. 22, No. 2, pp. 227-237, apr 2017.

[12] Shimpei Matsumoto, Koki Okimoto, Tomoko Kashima, and Shuichi Yamagishi. Automatic generation of c source code for novice programming education. In Masaaki Kurosu, editor, Human-Computer Interaction. Theory, Design, Development and Practice, pp. 65-76, Cham, 2016. Springer International Publishing.

[13] Shimpei Matsumoto, Yusuke Hayashi, and Tsukasa Hirashima. Development of a card operation-based programming learning system focusing on thinking between the relations of parts. IEEJ Transactions on Electronics, Information and Systems, Vol. 138, pp. 999-1010, 08 2018.

[14] Michiko Oba, Kei Ito, and Akio Shimogoori. Analysis of correlation between programming skills and technical writing skills. In IPSJ SIG Technical Report, Vol. 2015IFAT-118, pp. 1-4, 2015.

[15] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Lukasz Kaiser, and Illia Polosukhin. Attention is all you need. In Advances in neural information processing systems, pp. 5998-6008, 2017

[16] Tomás Mikolov, Kai Chen, Greg Corrado, and Jeffrey Dean. Efficient estimation of word representations in vec- tor space. In Yoshua Bengio and Yann LeCun, editors, 1st International Conference on Learning Representations, ICLR 2013, Scottsdale, Arizona, USA, May 2-4, 2013, Workshop Track Proceedings, 2013.

[17] 東北大学乾研究室. cl-tohoku/bertbase-japanese-whole-word-masking . hugging face. https://huggingface.co/cl-tohoku/ bert-base-japanese-whole-word-masking, 2020.

[18] Kenji Imamura and Eiichiro Sumita. Recycling a pretrained BERT encoder for neural machine translation. In Proceedings of the 3rd Workshop on Neural Generation and Translation, pp. 23-31, Hong Kong, November 2019. Association for Computational Linguistics.

[19] Kyunghyun Cho, Bart van Merriënboer, Caglar Gulcehre, Dzmitry Bahdanau, Fethi Bougares, Holger Schwenk, and Yoshua Bengio. Learning phrase representations using RNN encoder-decoder for statistical machine translation. In Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP), pp. 1724-1734, Doha, Qatar, October 2014. Association for Computational Linguistics.

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


# 常識推論エンジン開発に向けた 事態性名詞のアノテーション基準について

米本悠藤田響平永田 基樹森 遼太小代 義行
株式会社 pluszero
\{yonemoto.haruka, fujita.kyohei, nagata.motoki,
mori.ryota, ojiro.yoshiyuki\}@plus-zero.co.jp

## 概要

自然言語の高度な意味理解を伴うシステムとして有効な汎用的常識推論エンジンを構築するには事象の状態変化を正確に捉えることが重要である．以前提案した常識推論エンジン [1]においては, 述語に関連する状態変化を捉えることができること，また，それらが常識推論に有効であることを示した. しかしながら，状態変化を捉えるためには述語だけでは不十分で，動詞と同等の役割を果たす名詞（事態性名詞）も扱う必要があり，これらは我々のエンジンでは対応できていない. 本稿では，常識推論エンジンで事態性名詞を扱うにあたり既存コーパスで見られたアノテーションの不足について明らかにし，それらを補うようなアノテーション基準を提案する.

## 1 はじめに

機械が自然言語の高度な意味理解を行うためには，文章中に明示されている情報以外に，常識を用いて推論をする必要がある. 例えば，「リビングに新聞がある」「リサが新聞をとってキッチンへ歩いて行った」という 2 つ文があるとき，新聞がどこからどこへ移動したかを理解するには文章中の表現だけでは足りず，人間が解釈する際に用いるような常識, この場合, 「手に取って歩いていくと手に取ったものも一緒に移動する」という常識を必要とする. 我々は以前，このような常識推論の問題に取り組むため述語項構造シソーラスと Event Calculus （EC）を用いた汎用的常識推論エンジンを構築し提案を行った [1].

この推論エンジンは，大きく下記のステップに分かれている。

1. 事前処理として常識を意味表現に変換しておく
2. 自然言語文に対して意味役割付与を行う

3. 付与された意味役割を意味表現に変換する

4. 自然言語文から変換した意味表現と常識から変換した意味表現を用いて推論を行う

このうち，2 では日本語意味役割付与システム （ASA）[2]を用いた。これは，自然文に対して述語項構造解析を行い表層格の項を同定し，係り受け関係にある項に意味役割を付与するものである。この推論エンジンにより，述語に関連する状態変化を捉えることができること，また，それらが常識推論に有効であることを示した. しかしながら，常識推論に必要な状態変化を捉えるためには，述語以外にも，動詞と同等の役割を果たす名詞（事態性名詞） についても捉える必要があり, 提案した常識推論エンジンではこれらの表現に対応できていない. 我々は事態性名詞に関しても意味役割を付与をすることで，より汎用的な常識推論エンジンを構築することを目指している。

日本語に対する比較的規模の大きい事態性名詞のアノテーションデータに NAIST テキストコーパス [3] がある．事態性名詞と考えられる名詞に，表層格であるガ・ヨ・二格の項が付与されている。また，名詞の中には文脈上事態を現しているのか，物を現しているのかを判断することが難しい名詞があり，それらをどちらとしたかを示すためのラベルも付与されている．事態性名詞に着目したデータセットは少なく，NAIST テキストコーパスは貴重な言語資源であるが，常識推論エンジンの開発を目的として利用する際には，下記のような問題がある。

・作業者によりアノテーションにずれがある著者らによっても指摘されていることであるが [3]，作業者間でアノテーションが一致しない問題がある。これは，事態性名詞の基準が明文化されておらず，ある単語に事態性があると
捉える基準が人によって異なることが 1 つの原因だと推測される。
- 項をとらない状態変化を表す名詞を捉えられない

NAIST テキストコーパスにおける事態性名詞は表層格の項をとることを前提としている。そのため，項をとることはないが一般的に事態性があると想起させるような単語，例えば，雨，運動会といった単語は事態性名詞の対象とならない.

・状態変化を伴わない名詞が捉えられてしまう常識推論エンジンでは，状態変化を捉えることで高度な文章理解を行うが，NAIST テキストコーパスでは状態変化を伴わないような名詞にもアノテーションが付与されている. 1 つは，複合名詞を構成素に分解したときに前方に位置する構成素を事態性名詞としている場合である. 例えば，NAIST テキストコーパスでは「消費税」という複合名詞の「消費」を事態性名詞として捉えているが，我々は，このような名詞は後方の名詞を修飾するだけと考え，事態性名詞としてみなさないこととした。もう1つは，文脈上状態変化の情報を持たないような単語を事態性名詞としている場合である。例えば，「この街の暮らしにも慣れた」「自由貿易は暮らしの質を高める手段」という文中における「暮らし」という単語は，NAIST テキストコーパスでは両者とも事態性名詞として捉えているが，我々は，前者においては，具体的な事象であり状態変化の情報を持つと解釈し，後者は一般的な事柄について述べているだけで具体性がなく，状態変化の情報を持たないとして事態性名詞の対象から除外することとした.

1 つ目の問題点に取り組むため，事態性があるとみなせる基準を可能な限り明文化し，事態性名詞のアノテーション基準をフローチャート化した. 2 つ目の問題点に対しては，項をとらず，なおかつ事態を表す名詞の特徴を明文化し基準を作成した．3つ目の問題点に対しては，複合名詞の取り扱いについての基準に加え，実際に状態変化を伴う表現かどうかに関する基準の作成を行った。

## 2 判定基準詳細

## 2.1 作成方針

判定基準は，作業者が判断しやすいようにフロー チャート形式で作成した. また，他のアプリケー ションで利用する際に基準の追加や削除を行いやすいよう，目的ごとに基準をまとめ下記 3 つのブロックとした.

1. 事態性名詞であり得ないものを除外する（除外ブロック)

2. 事態性名詞であり得るものを取得する（取得ブロック)

3. 事態性を判定をする（事態性判定ブロック）

除外ブロックは，過剩なアノテーションを避けるための基準，取得ブロックは事態性名詞の候補となる単語を選び出すための基準，事態性判定ブロックは候補に対して状態変化の情報を持つかを判断するための基準をそれぞれまとめたものである.

## 2.2 全体像

図 1 は，事態性名詞を判断するためのフロー チャートである．丸四角で表現されているのは個々の判断基準であり，四角で表されているのは付与されるラベルである．矢印は，各基準に該当した （Yes），該当しない（No）場合に次に進む方向を示している. 色付きの四角は第 2.1 章で述べたブロックを示しており，右上に該当する名前を記載している. 以下の章では，各ブロックに含まれる基準の詳細を説明する。

## 2.3 事態性名詞であり得ないものを除外 する

## 2.3.1複合名詞の前方にある

NAIST テキストコーパスでは複合名詞の場合，分解してそれぞれの構成素に対して事態性の判別を実施していたが，文脈上状態変化を伴わない名詞が数多くアノテーションされていた。そのため複合名詞の前方の語は後方の語を修飾するだけと考え，事態性を考慮する対象としては除外した。例えば，「消費税」という単語の場合，前方の「消費税」に注目している場合，この単語は事態性の候補外，後方の 「税」に注目している場合，この単語は事態性名詞の候補とし，後段の基準でさらに判定を続ける。

図 1 事態性名詞の判定基準

## 2.3.2 サ変接続するサ変名詞である

サ変名詞はその性質上，事態性名詞の有力な候補となるが，サ変接続する場合には接続語も含めて述語として捉えることができるため，事態性名詞としては除外する．例えば，「家庭での学習が基本だ」 の「学習」は事態性名詞の候補となるが，「各家庭で学習する」のようにサ変接続する場合には事態性名詞の候補から除外する。

## 2.3.3事態性を持たないことが明らか

人の名前や机，花瓶といった物理的なものなど，一般的に明らかに事態として想起しない単語を除外する．以下に例を挙げる。

・物理的なもの・一・机，花瓶，車など

・役割・役職・一・部長，お父さんなど
- 場所・位置・方角・一・゙ス停，前方，南など

・時間・期間一 ・2 時，奈良時代など
- 固有名詞（地名，組織名，サービス名，人名，商品名，建物名）・一東京都，大学など
- 形容動詞として使われている名詞 ・.・正常,不能など

## 2.4 事態性名詞であり得るものを取得する

## 2.4.1 動詞に言い換えた語の意味が元の名詞の意味 と同じになる

動詞に言い換えられる名詞は状態変化を表現する候補として有力なため，動詞的要素を持つ名詞を事態性名詞の候補とする. 名詞に動詞的な役割があるかどうかを判断するために，動詞として言い換え可能な名詞中の語を動詞として言い換え，その意味を元の名詞と比較し, 同じ意味になる場合は該当するものとみなす．以下に言い換えの例を挙げる。

・サ変名詞をサ変接続する

「被災者の苦悩は察するに余りある」 $\rightarrow$ 「被災者が苦悩する」

・末尾が動詞の連用形と同形の名詞を終止形にする

「両者がせめぎ合いを続ける」 $\rightarrow 「$ 両者がせめぎ合う」

・末尾が動詞の連用形と同形の名詞を，下記のルールで言い換える

一用言を修飾する語+動詞
「六十五歳の男性がタンスの下敷きに

- 目的語+動詞

「国道 176 号が通行止めとなった」 $\rightarrow$「国道 176 号の通行を止める」

・熟語を下記のルールで言い換える
- 目的語+動詞

「40 代の男性が殺人の容疑で逮捕された」 $\rightarrow$ 「男性が人を殺す」
- 主語+動詞

「千畳敷カールで四日発生した雪崩に」

$\rightarrow$ 「雪が崩れる」

・接尾辞をサ変接続するもしくは，動詞の終止形にする

「地球温暖化が原因で海面が上昇する」、「地球温暖化する」

## 2.4.2 動詞に言い換えできないが事態性を持ちうる

一般的に事態として想起される名詞の中には，運動会，台風といった必ずしも動詞に言い換えできない (項をとることがない)ものも含まれる。これらの名詞は，動詞で表現されるような状態変化が複数同時に起こるような事態だと捉えることができる。．例えば，火事という名詞には，「建物が燃える」，「人が逃げる」といった複数の状態変化が含まれている.以下に例を挙げる。
- 行事，催事，競技名一一野球，東京オリンピック
- 事件，災害，人災一一火災，地盤沈下，事故

・自然現象，社会現象一・雨，ラグビーブーム

## 2.5 事態性を判定をする

## 2.5.1 時間と場所の情報を含み特定の事象と解釈で きる

状態変化を推論するには，対象としている事象が実際に事物の変化を起こすものであるかいう具体性が重要である。そのような具体性を持つ表現を捉えるには時間や場所などの情報が重要な要素となるため，ここでは時間や場所の情報が具体的に文脈上推定できる場合，事態性を持つと判定する。例えば，「この街の暮らしにも慣れた」「自由貿易は暮らしの質を高める手段」という文中における「暮らし」と
いう単語は，前者では時間や場所の情報を含む具体的な事象としてみなし事態性を持つと判定し, 後者は時間や場所などの情報を含まないとみなし事態性を持たないと判定する.

## 3 考察

本稿で作成したフローチャートは，大きく3つの部分からなる。除外ブロックは事態性名詞となり得ないものを除外することを目的とした基準の集合で，取得ブロックは事態性名詞となり得るものを選択することを目的とした基準の集合である. 事態性判定ブロックは，先 2 つのブロックで得られた事態性名詞の候補に対し，事態性を判断することを目的とした基準の集合である. それぞれのブロックに含まれる基準は常識推論エンジンの開発に向けた判定基準であり，アプリケーションが変われば必要となる基準も異なると考えられる。 そのような場合においても，ブロック毎の目的に合わせて個々の基準を組み替えることでより柔軟に対応が可能である．例えば，項をとらないような単語を事態性名詞と扱いたくない場合には，第 2.4.2 章の基準を除外ブロックへ移動させることで対応が可能であるし，事態性の定義を変更したいような場合には，事態性判定ブロックについてのみ基準を追加・削除することにより対応が可能である.

また，第 1 章で，フローチャート形式による基準の明文化には，作業者間のアノテーションのずれを軽減する狙いがあると述べたが，実際にどの程度有効であるかは定量的な調査を行う必要がある．それらの調査で確認される摇れの傾向を把握し，基準のさらなる改定を行う予定である.

本稿では，常識推論エンジンの開発を目的としているため，状態変化の情報を含む名詞を事態性名詞としてアノテーションする基準を作成した. 状態変化の情報を持つかどうかの指標として，場所や時間の表現が含まれており，具体的な事象かどうかを判断するとしたが，この基準のみで状態変化の情報をすべて捉えられるかどうかには検討の余地がある.例えば，動作主体が明示されている場合に，時間や場所の情報を必ずしも含まなくても具体事象として解釈することが自然な事例が存在する可能性がある.このような点を踏まえ，さらに基準に関して検討する必要がある.

## 参考文献

[1] 杉本智紀, 藤田響平, 井坂諭紀雄, 永田基樹, 森遼太. 述語項構造シソーラスと EC を用いた汎用的常識推論エンジンの構築. 言語処理学会第 26 回年次大会, pp. 597-600, 2020.

[2] 竹内孔一, 土山傑, 守屋将人, 森安祐樹. 類似した動作や状況を検索するための意味役割及び動詞語義付与システムの構築. 電子情報通信学会技術研究報告. NLC, 言語理解とコミュニケーション, Vol. 109, No. 390, pp. 1-6, 2010.

[3] 飯田龍, 小町守, 乾健太郎, 松本裕治ほか. Naist テキストコーパス: 述語項構造と共参照関係のアノテー ション. 情報処理学会研究報告自然言語処理 (NL), Vol. 2007, No. 7 (2007-NL-177), pp. 71-78, 2007.