IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電信電話株式会社の特許一覧 ▶ 国立大学法人 奈良先端科学技術大学院大学の特許一覧

特開2023-130197ゼロ代名詞同定装置、ゼロ代名詞同定方法、及びプログラム
<>
  • 特開-ゼロ代名詞同定装置、ゼロ代名詞同定方法、及びプログラム 図1
  • 特開-ゼロ代名詞同定装置、ゼロ代名詞同定方法、及びプログラム 図2
  • 特開-ゼロ代名詞同定装置、ゼロ代名詞同定方法、及びプログラム 図3
  • 特開-ゼロ代名詞同定装置、ゼロ代名詞同定方法、及びプログラム 図4
  • 特開-ゼロ代名詞同定装置、ゼロ代名詞同定方法、及びプログラム 図5
  • 特開-ゼロ代名詞同定装置、ゼロ代名詞同定方法、及びプログラム 図6
  • 特開-ゼロ代名詞同定装置、ゼロ代名詞同定方法、及びプログラム 図7
  • 特開-ゼロ代名詞同定装置、ゼロ代名詞同定方法、及びプログラム 図8
  • 特開-ゼロ代名詞同定装置、ゼロ代名詞同定方法、及びプログラム 図9
  • 特開-ゼロ代名詞同定装置、ゼロ代名詞同定方法、及びプログラム 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023130197
(43)【公開日】2023-09-20
(54)【発明の名称】ゼロ代名詞同定装置、ゼロ代名詞同定方法、及びプログラム
(51)【国際特許分類】
   G06F 40/205 20200101AFI20230912BHJP
【FI】
G06F40/205
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022034729
(22)【出願日】2022-03-07
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り 2021年7月26日にTwitterにて公開 2021年3月8日に言語処理学会第27回年次大会(予稿集)にて公開
(71)【出願人】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(71)【出願人】
【識別番号】504143441
【氏名又は名称】国立大学法人 奈良先端科学技術大学院大学
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100124844
【弁理士】
【氏名又は名称】石原 隆治
(72)【発明者】
【氏名】永田 昌明
(72)【発明者】
【氏名】岩田 晟
(72)【発明者】
【氏名】渡辺 太郎
【テーマコード(参考)】
5B091
【Fターム(参考)】
5B091CA01
(57)【要約】
【課題】従来よりも簡単な仕組みで入力文のゼロ代名詞を同定する。
【解決手段】ゼロ代名詞同定装置において、入力された文を分割する単語分割部と、前記単語分割部により単語分割された前記文から述語を同定する述語同定部と、訓練済み言語モデルに出力層を追加したモデルであるゼロ代名詞同定モデルを用いて、前記述語に対する項のスパンを求め、前記スパンのスコアと、前記述語に対する空範疇のスコアとを比較することにより、前記空範疇が存在するかどうかを判定し、前記空範疇が存在する場合に、前記空範疇を分類することによりゼロ代名詞の有無を判定するゼロ代名詞同定部とを備える。
【選択図】図1
【特許請求の範囲】
【請求項1】
入力された文を分割する単語分割部と、
前記単語分割部により単語分割された前記文から述語を同定する述語同定部と、
訓練済み言語モデルに出力層を追加したモデルであるゼロ代名詞同定モデルを用いて、前記述語に対する項のスパンを求め、前記スパンのスコアと、前記述語に対する空範疇のスコアとを比較することにより、前記空範疇が存在するかどうかを判定し、前記空範疇が存在する場合に、前記空範疇を分類することによりゼロ代名詞の有無を判定するゼロ代名詞同定部と
を備えるゼロ代名詞同定装置。
【請求項2】
前記ゼロ代名詞同定部は、前記スパンのスコアよりも前記空範疇のスコアのほうが大きい場合に、前記空範疇が存在すると判定する
請求項1に記載のゼロ代名詞同定装置。
【請求項3】
前記スパンのスコアは、前記項の開始位置が前記スパンの開始位置の単語である確率と、前記項の終了位置が前記スパンの終了位置の単語である確率との積であり、
前記空範疇のスコアは、前記項の開始位置が、前記ゼロ代名詞同定モデルへの入力系列における特殊トークンである確率と、前記項の終了位置が前記特殊トークンである確率との積である
請求項1又は2に記載のゼロ代名詞同定装置。
【請求項4】
前記ゼロ代名詞同定部は、前記空範疇を、複数個のゼロ代名詞の種類、及び、ゼロ代名詞以外の空範疇、のうちのいずれかのクラスに分類する
請求項1ないし3のうちいずれか1項に記載のゼロ代名詞同定装置。
【請求項5】
正解データを用いて、スパン予測に関する損失と空範疇に関する損失の重み付き和が最小になるように、前記ゼロ代名詞同定モデルのパラメータを更新するパラメータ更新部
を更に備える請求項1ないし4のうちいずれか1項に記載のゼロ代名詞同定装置。
【請求項6】
コンピュータが実行するゼロ代名詞同定方法であって、
入力された文を分割する単語分割ステップと、
前記単語分割ステップにより単語分割された前記文から述語を同定する述語同定ステップと、
訓練済み言語モデルに出力層を追加したモデルであるゼロ代名詞同定モデルを用いて、前記述語に対する項のスパンを求め、前記スパンのスコアと、前記述語に対する空範疇のスコアとを比較することにより、前記空範疇が存在するかどうかを判定し、前記空範疇が存在する場合に、前記空範疇を分類することによりゼロ代名詞の有無を判定するゼロ代名詞同定ステップと
を備えるゼロ代名詞同定方法。
【請求項7】
コンピュータを、請求項1ないし5のうちいずれか1項に記載のゼロ代名詞同定装置における各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ゼロ代名詞を同定する技術に関連するものである。
【背景技術】
【0002】
日本語、中国語、アラビア語などでは、文脈から了解可能な主語や目的語を省略することができる。これらは要素を省略することで代名詞(pronoun)と同様に照応等の役割を果たすことから、ゼロ代名詞(zero pronoun)又はpro(small pro)と呼ばれる。
【0003】
例えば、以下の日本語(JA)の2つ目の文「私は気に入った」では目的語(object)が省略されている。日本語では、「ケーキ」を気に入っていることは1つ目の文から明らかであり、省略する方が自然である。しかし、英語(EN)では目的語を代名詞itで表出する必要がある。
【0004】
JA このケーキは美味しい。私は(pro-OBJ)気に入った。
【0005】
EN This cake is delicious. I like (it).
さらにこの例では、日本語の2つ目の文では、下記のように主語(subject)を省略して「気に入った」とした方が、もっと自然である。しかし、英語では主語の省略は許されない。
【0006】
JA このケーキは美味しい。(pro-SBJ) (pro-OBJ)気に入った。
【0007】
EN This cake is delicious. (I) like (it).
日本語のように主語や目的語の省略を許容する(ゼロ代名詞が存在する)言語をpro-drop言語、英語のように主語が必須である言語をnon-pro-drop言語という。pro-drop言語からnon-pro-drop言語への翻訳において、pro-drop言語の入力文のゼロ代名詞を同定する技術は、文脈や状況に基づいて文の意味を正しく翻訳するために必須の技術である。
【0008】
ゼロ代名詞は空範疇(empty category)の一種である。空範疇とは、言語学、特に生成文法において、pro(又はsmall pro)と呼ばれる省略された代名詞(ゼロ代名詞)、PRO(又はbig pro)と呼ばれるコントロールされている明示されていない主語、及び、T(又はtrace)と呼ばれるWH疑問文・関係節などにおける移動の痕跡を表現する空要素(null element,音形を持たない要素)のことである。空範疇は空所(gap)と呼ばれることもある。
【先行技術文献】
【非特許文献】
【0009】
【非特許文献1】Linfeng Song, Kun Xu, Yue Zhang, Jianshu Chen, and Dong Yu. Zpr2: Joint zero pronoun recovery and resolution using multi-task learning and bert. In Proceedings of ACL-2020, pp. 5429-5434,2020.
【非特許文献2】Wei Wu, Fei Wang, Arianna Yuan, Fei Wu, and Jiwei Li. Corefqa: Coreference resolution as query-based span prediction. In Proceedings of ACL-2020, pp. 6953-6963, 2020.
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかし、入力文のゼロ代名詞を同定するための従来技術においては、構文木を得るための構文解析等の外部ツールを必要とする等、複雑な仕組みが必要であるという課題があった。
【0011】
本発明は上記の点に鑑みてなされたものであり、従来よりも簡単な仕組みで入力文のゼロ代名詞を同定するための技術を提供することを目的とする。
【課題を解決するための手段】
【0012】
開示の技術によれば、入力された文を分割する単語分割部と、
前記単語分割部により単語分割された前記文から述語を同定する述語同定部と、
訓練済み言語モデルに出力層を追加したモデルであるゼロ代名詞同定モデルを用いて、前記述語に対する項のスパンを求め、前記スパンのスコアと、前記述語に対する空範疇のスコアとを比較することにより、前記空範疇が存在するかどうかを判定し、前記空範疇が存在する場合に、前記空範疇を分類することによりゼロ代名詞の有無を判定するゼロ代名詞同定部と
を備えるゼロ代名詞同定装置が提供される。
【発明の効果】
【0013】
開示の技術によれば、従来よりも簡単な仕組みで入力文のゼロ代名詞を同定するための技術が提供される。
【図面の簡単な説明】
【0014】
図1】本発明の実施の形態におけるゼロ代名詞同定システム(ゼロ代名詞同定装置)の構成図である。
図2】ゼロ代名詞同定モデル学習部の構成図である。
図3】ゼロ代名詞同定モデルを学習する際の処理の流れを示す図である。
図4】ゼロ代名詞を同定する際の処理の流れを示す図である。
図5】装置のハードウェア構成を示す図である。
図6】NPCMJとOntoNotes 5.0の文書数、文数、述語数を示す図である。
図7】NPCMJとOntoNotesの訓練データにおけるゼロ代名詞の数と割合を示す図である。
図8】NPCMJにおける項スパンの予測精度とゼロ代名詞の同定精度を示す図である。
図9】NPCMJにおけるクラス別のゼロ代名詞の同定精度を示す図である。
図10】OntoNotes 5.0における項スパンの予測精度とゼロ代名詞の同定精度を示す図である。
【発明を実施するための形態】
【0015】
以下、図面を参照して本発明の実施の形態(本実施の形態)を説明する。以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。
【0016】
また、本実施の形態で説明するシステムや装置はいずれも、非特許文献1、2の技術のような従来手法に対して特定の改善を提供するものであり、ゼロ代名詞同定に係る技術分野の向上を示すものである。
【0017】
なお、以下の説明において引用する参考文献に記載された技術は公知技術であるが、参考文献に記載された技術に対する課題の説明の内容は公知技術ではない。参考文献の番号と文献名は、明細書の最後にまとめて記載した。下記の説明において挙げている参考文献の番号を"[1]"等のように示している。
【0018】
(実施の形態の概要)
まず、本実施の形態の概要を説明する。本実施の形態では、訓練済み言語モデルを用いたスパン予測を行う仕組みを、課題解決のための基本的な仕組みとして使用する。これにより、簡単で高精度なゼロ代名詞同定を実現している。
【0019】
後述するゼロ代名詞同定装置において、主語、直接目的語、間接目的語などの項のタイプごとに、述語に対する項のスパンを求め、項のスパンのスコアと項が空範疇であるスコアを比較して、述語の特定の項が空範疇であるかを判定し、さらにその空範疇がゼロ代名詞であるかを判定することによって、単純な系列ラベリングよりも高精度なゼロ代名詞同定を実現している。
【0020】
以下では、まず、本実施の形態に係る技術を理解し易くするために、ゼロ代名詞同定に関連する種々の参考技術について説明する。その後に、課題、及び、本実施の形態に係る装置構成及びその動作を説明する。
【0021】
(参考技術について)
<ラベリング問題としてのゼロ代名詞同定>
従来のゼロ代名詞同定手法の多くは、木又は系列のラベリング問題としてゼロ代名詞同定を扱っている。
【0022】
Xiangら[7]や竹野ら[5]は、文の構文木を入力とし、述語の最大投射である節に対応するノードを、ゼロ代名詞の有無(二値)又はゼロ代名詞の種類(多値)に関して分類する。参考文献[7]、[5]における処理対象は、ゼロ代名詞だけでなく、移動の痕跡(trace)を含む空範疇(empty category)である。
【0023】
Songら[4]は、単語の系列としての文を入力とし、すべての単語境界を、ゼロ代名詞の有無(二値)又はゼロ代名詞の種類(多値)に関して分類する。
【0024】
<訓練済み言語モデルを用いた質問応答>
BERT[1]は、Transformerのエンコーダを用いて、入力系列の各単語に対して前後の文脈を考慮した単語ベクトルを出力する言語表現モデル(language representation model) である。近年では、言語表現モデルを単に言語モデル(language model)と呼ぶこともある。
【0025】
マスクされた単語を前後の文脈から予測するクローズテスト(cloze test)又は穴埋め言語モデル(masked language model)タスク等を用いて大規模な言語データから言語モデルを作成することを事前訓練(pre-train)と呼び、作成された言語モデルを訓練済み言語モデル(pre-trained language model)と呼ぶ。
【0026】
BERT等の訓練済み言語モデルに適当な出力層を加え、対象とするタスクの訓練データで転移学習(fine-tune, ファインチューン)すると、意味テキスト類似度、自然言語推論(テキスト含意認識)、質問応答、固有表現抽出など様々なタスクで最高精度を達成できると報告されている[1]。
【0027】
例えば、SQuAD形式の質問応答(question answering, QA)は、テキストと質問(クエリ, query)が与えられ、質問に対する回答がテキストにある、言い換えれば、テキストの部分文字列(スパン,span)が回答であるようなタスクである[3]。
【0028】
訓練済み言語モデルを用いたSQuAD形式の質問応答では、まず'[CLS]質問[SEP]テキスト[SEP]'のように質問とテキストの二つの系列を、特殊記号を用いて連結して一つの系列とし、訓練済み言語モデルに入力として与える。次に訓練済み言語モデルが入力系列の各単語に対して出力する単語ベクトルを用いて、その単語が質問に対する回答(スパン)の開始点になる確率及び終了点となる確率を予測し、最も確率が大きいスパンを質問に対する回答としてテキストから抽出する。
【0029】
ここで[CLS]は二つの入力系列の情報を集約するベクトルを作成するための特殊なトークンであり、[SEP]は入力系列の区切りを表すトークンである。SQuAD v2.0[2]のように回答できない質問には回答できないことを示す必要がある場合には、[CLS]に対するベクトルの出力層に回答の可否を判定する分類器を配置する。
【0030】
<質問応答に基づく共参照解析>
近年では、訓練済み言語モデルを用いた質問応答あるいはスパン予測を、様々な言語処理技術に応用する手法が提案されている。
【0031】
ゼロ代名詞同定に比較的似ている問題では、Wu[6]らは、質問応答の枠組みを使って共参照解析を実現する方法を提案している。参考文献[6]に開示されている方法では、ある実体への言及(mention)を含む文について、言及を特殊トークン< mention>と</mention >で囲んだ文を質問として、質問に含まれる言及と同じ実体を指示する言及の集合をテキストから抽出する問題を、BIOタギングを用いたテキストの系列分類問題として扱う。
【0032】
(課題、及びその解決手段について)
従来技術では、構文木を得るための構文解析等の外部ツールを必要とするなど、ゼロ代名詞同定を実現するために複雑な仕組みが必要であった。
【0033】
そこで、本実施の形態では、訓練済み言語モデルを用いたスパン予測の枠組みを用いて、日本語のゼロ代名詞同定を実現することとしている。これにより、従来のように構文木を得るための構文解析等の外部ツールを必要とせず、訓練済み言語モデルとゼロ代名詞同定の正解データから簡単な仕組みで、系列ラベリングに基づく方法より高精度にゼロ代名詞同定を実現できる。
【0034】
(実施の形態に係る技術の説明)
<装置構成例>
図1に、本実施の形態におけるゼロ代名詞同定システム(ゼロ代名詞同定装置と呼んでもよい)の全体構成例を示す。
【0035】
図1に示すように、ゼロ代名詞同定システムは、入力部111、ゼロ代名詞同定モデル学習部110、出力部112、ゼロ代名詞同定訓練データDB120、訓練済み多言語モデルDB130、入力部211、単語分割部210、述語同定部220、ゼロ代名詞同定部230、出力部231、ゼロ代名詞同定モデルDB240を備える。
【0036】
また、図1に示す構成が1つの装置(コンピュータ)で実現されてもよいし、複数の装置(コンピュータ)で構成されてもよい。
【0037】
また、図1において点線枠で示すように、入力部111、ゼロ代名詞同定モデル学習部110、出力部112、訓練済み多言語モデルDB130を備える装置100が構成されてもよい。装置100は、学習装置と呼んでもよいし、ゼロ代名詞同定装置と呼んでもよい。
【0038】
また、入力部211、単語分割部210、述語同定部220、ゼロ代名詞同定部230、出力部231、ゼロ代名詞同定モデルDB240を備える装置200が構成されてもよい。置200は、推定装置と呼んでもよいし、ゼロ代名詞同定装置と呼んでもよい。
【0039】
ゼロ代名詞同定訓練データDB120には、訓練データとして、訓練(学習)用の文と、正解データが格納されている。訓練(学習)用の文は、単語分割及び述語同定が済んだ文であってもよいし、単語分割及び述語同定の処理の前の文であってもよい。
【0040】
後述する学習時の処理では、学習時においても、推定時と同様に、単語分割及び述語同定を実施する場合の例を示している。この場合のゼロ代名詞同定モデル学習部110の構成例を図2に示す。図2に示すように、ゼロ代名詞同定モデル学習部110は、単語分割部113、述語同定部114、ゼロ代名詞同定部115、及びパラメータ更新部116を備える。単語分割部113、述語同定部114、ゼロ代名詞同定部115はそれぞれ、推定時に使用される単語分割部210、述語同定部220、ゼロ代名詞同定部230と同じ機能を含む。
【0041】
<概要動作例>
ゼロ代名詞同定システムにおける各部の動作の概要を、図3図4のフローチャートを参照して説明する。なお、各処理の内容の具体的説明は後述する。
【0042】
まず、図3のフローチャートを参照して、ゼロ代名詞同定モデルを学習する際の動作を説明する。以下の処理において、ゼロ代名詞同定部115は、訓練済み言語モデルDB130から訓練済み言語モデルを読み出し、訓練済み言語モデルに出力層を追加したゼロ代名詞同定モデル(学習前のモデル)をメモリ等の記憶部に保持しているとする。ゼロ代名詞同定部115による処理はゼロ代名詞同定モデルを用いて行われる。あるいは、ゼロ代名詞同定部115がゼロ代名詞同定モデルであると考えてもよい。
【0043】
S101において、入力部111は、ゼロ代名詞同定訓練データDB120からゼロ代名詞同定訓練データである文を読み出し、単語分割部113に入力する。
【0044】
S102において、単語分割部113は、入力された文を単語分割し、述語同定部114が、文における述語を同定する。
【0045】
ゼロ代名詞同定部115は、S103~S106の処理を、文中の全ての述語の全ての項タイプについて繰り返す。ゼロ代名詞同定部115は、S103において、述語に対して項のスコアが最大となるスパンを求め、S104において、述語に対して項が空範疇であるスコアを求める。
【0046】
S105において、ゼロ代名詞同定部115は、スパンのスコアが空範疇のスコア以上か否かを判定し、判定結果がNoであればS106に進み、空範疇を分類してゼロ代名詞を同定する。
【0047】
S105の判定結果がYesであれば次の処理対象の処理を行う。文中の全ての述語の全ての項タイプについての処理が終了するとS107に進む。
【0048】
S107において、パラメータ更新部116は、学習処理が収束したかどうかを判定し、Noであれば、ゼロ代名詞同定モデルの学習パラメータを更新する(S108)。なお、学習処理が収束したかどうかの判定についてはどのような方法を用いてもよい。例えば、推定結果と正解データとの誤差が閾値以下になったことを収束と判断してもよいし、処理の繰り返し回数が予め定めた回数に達した場合に収束と判断してもよい。
【0049】
S107の判定結果がYesである場合、ゼロ代名詞同定モデル学習部110は、現在のゼロ代名詞同定モデルの学習パラメータ(モデルパラメータ)を出力部112に渡し、出力部112は、学習パラメータをゼロ代名詞同定モデルDB240に格納する。
【0050】
なお、本実施の形態における"モデル"は、ニューラルネットワークのモデルであり、DB等の記憶部に格納される際には、重みのパラメータ等からなるデータとして格納されるものである。
【0051】
次に、図4のフローチャートを参照して、入力文からゼロ代名詞を同定(推定)する際の動作を説明する。ここでの処理において、ゼロ代名詞同定部230は、ゼロ代名詞同定モデルDB240から学習済みのゼロ代名詞同定モデルを読み出し、メモリ等の記憶部に保持しているとする。ゼロ代名詞同定部230による処理はゼロ代名詞同定モデルを用いて行われる。あるいは、ゼロ代名詞同定部230がゼロ代名詞同定モデルであると考えてもよい。
【0052】
S201において、入力部211により、文を単語分割部210に入力する。S202において、単語分割部210が、入力された文を単語分割し、述語同定部220が、分割された単語群から文における述語を同定する。
【0053】
ゼロ代名詞同定部230は、S203~S206の処理を、文中の全ての述語の全ての項タイプについて繰り返す。ゼロ代名詞同定部230は、S203において、述語に対して項のスコアが最大となるスパンを求め、S204において、述語に対して項が空範疇であるスコアを求める。
【0054】
S205において、ゼロ代名詞同定部230は、スパンのスコアが空範疇のスコア以上か否かを判定し、判定結果がNoであればS206に進み、空範疇を分類してゼロ代名詞を同定する。
【0055】
S205の判定結果がYesであれば次の処理対象の処理を行う。文中の全ての述語の全ての項タイプについての処理が終了するとS207に進む。
【0056】
S207において、ゼロ代名詞同定部230は、ゼロ代名詞を出力部231に渡し、出力部231は、ゼロ代名詞を出力する。なお、ゼロ代名詞を出力するとは、述語に対するゼロ代名詞があることを示す情報を出力すること、ゼロ代名詞の種類を出力すること等、どのような出力形態であってもよい。
【0057】
以下、ゼロ代名詞同定システムにおける処理動作に関わる内容をより詳細に説明する。
【0058】
(空範疇とゼロ代名詞について)
前述したとおり、空範疇(empty category)とは、言語学、特に生成文法において、pro(又はsmall pro)と呼ばれる省略された代名詞(ゼロ代名詞)、PRO(又はbig pro)と呼ばれるコントロールされている明示されていない主語、及び、T(又はtrace)と呼ばれるWH疑問文・関係節などにおける移動の痕跡を表現する空要素(null element,音形を持たない要素)のことである。空範疇は空所(gap)と呼ばれることもある。
【0059】
本実施の形態では、主語、直接目的語、間接目的語のような、述語に対する項(argument)の種類を項タイプと呼び、argで表すことにする。
【0060】
ゼロ代名詞同定部115/230は、ある述語について、その述語が必要とする項タイプごとに項を入力文のスパンとして予測し、もしその項タイプのスパンが見つからなければ、その項タイプの項は空範疇であると判定する。
【0061】
ゼロ代名詞同定部115/230は、ゼロ代名詞の有無を判定する場合には、空範疇をゼロ代名詞であるか否かの二値に分類する。後述するNPCMJのようにゼロ代名詞がさらにpro, speaker, hearerなどに細分化されている場合には、ゼロ代名詞以外の空範疇, pro, speaker, hearerのように空範疇を多値に分類する。
【0062】
(質問応答に基づく日本語ゼロ代名詞同定について)
本実施の形態では、訓練済み言語モデルを用いた質問応答の実現方法[1]を日本語のゼロ代名詞同定に応用する。すなわち、ゼロ代名詞同定を、述語を質問とし、文をテキストとし、ゼロ代名詞を回答とするようなSQuAD形式の質問応答とみなす。
【0063】
まず入力文となるテキストは、単語分割部113/210及び述語同定部114/220に相当する形態素解析ソフトウェア等を用いた前処理により、単語に分割され、入力文中の述語が同定されているとする。
【0064】
ある文におけるゼロ代名詞を同定する場合、ゼロ代名詞同定部115/230(あるいは、ゼロ代名詞同定部115/230への入力を行う述語同定部114/220)は、'[CLS]質問[SEP]文[SEP]'という入力系列を作成する。
【0065】
入力文xにおける質問は以下のように構成する。
【0066】
{ xqs-C:qs-1, [S-PRED], xqs:qe, [E-PRED], xqe+1:qe+C}
ここでCは、述語に対応するスパンxqs:qeの前後の文脈窓(context window)の大きさ(単語数)である。スパンxqs:qeにおけるqsはスパンの開始位置であり、qeはスパンの終了位置である。
【0067】
[S-PRED]と[E-PRED]は述語の開始と終了を示す特殊記号(boundary marker)である。例えば以下の例文1では、ゼロ代名詞を表すφを除くと、「大学,へ,着き,まし,た」の5つの単語がある。
【0068】
(例文1) (φ) 大学 へ 着き まし た
(pro)-SBJ university at VB AX AXD
例文1における「着き」を述語とし、文脈窓C=1の場合、xqs-C:qs-1,は、「着き」の1つ前の単語になり、xqe+1:qe+Cは、「着き」の1つ後の単語になるので、質問は以下のように構成される。
【0069】
{"へ",[S-PRED],"着き", [E-PRED],"まし"}
以下、ゼロ代名詞同定部115/230に相当するゼロ代名詞同定モデルの構成及び動作について説明する。以下で説明するゼロ代名詞同定モデルの動作は全てニューラルネットワークで実現してもよいし、ニューラルネットワークと、ニューラルネットワーク以外のプログラムとの組み合わせで実現してもよい。
【0070】
(スパン予測による項の抽出と空範疇の検出について)
本実施の形態では、ゼロ代名詞同定モデルへの入力となる述語に対して特定のタイプの項の開始位置と終了位置を予測するために、ゼロ代名詞同定モデルは、訓練済み言語モデルに追加する形で、二つの独立な出力層(線形層)を含む。二つの独立な出力層のうち、1つの出力層は項の開始位置を予測し、もう1つの出力層は項の終了位置を予測する。ゼロ代名詞同定モデルによる項の抽出と空範疇の検出は以下のようにして実行される。
【0071】
入力文xにおいてスパンxi:jが項タイプargのスパンであるスコアを式(1)に示す。式(1)に示すとおり、当該スコアscorearg(i, j)は、項タイプargの項の開始位置がi番目の単語xiである確率と、項タイプargの項の終了位置がj番目の単語xjである確率の積と定義する。
【0072】
【数1】
また、式(2)に示すように、scorearg(i, j)を最大にする開始位置と終了位置を^iと^jとする。なお、本明細書のテキストにおいては、記載の便宜上、文字の頭に付される記号を文字の前に記載している。^iはその例である。
【0073】
【数2】
入力系列における文中に項タイプargのスパンが存在しない場合、項の開始位置と終了位置は特殊トークン[CLS]の位置だとみなし、空範疇nullのスコアを以下の式(3)のように定義する。
【0074】
【数3】
空範疇のスコアscorenullと項のスコアscorearg(^i,^j)の関係として以下の2つの場合を考える。
【0075】
【数4】
【0076】
【数5】
式(4)が成立する場合、つまり、項のスコアが空範疇のスコアより大きいか等しい場合、項タイプargの項がxの^i番目から^j番目に存在するとみなす。式(5)が成立する場合、つまり、項のスコアが空範疇のスコアより小さい場合、空範疇が存在するとみなす。
【0077】
学習時(訓練時)における一つの述語に関する項のスパン予測に対する損失は、式(6)に示すとおり、正解の開始位置i´と終了位置j´に対するクロスエントロピー損失として定義する。
【0078】
【数6】
(空範疇の分類について)
ゼロ代名詞の有無又はゼロ代名詞の種類を判定するために、ゼロ代名詞同定モデルは、訓練済み言語モデルに追加する形で、更に、特殊トークン[CLS]に対して独立した出力層(線形層)を含む。当該出力層は、ゼロ代名詞の有無又はゼロ代名詞の種類を判定する。
【0079】
項タイプargの空範疇がクラスclassである確率を以下の式(7)に示すように定義する。式(7)により、クラス毎の確率が出力される。
【0080】
【数7】
ここで、重みWarg∈RH×num_classとバイアスbarg∈Rnum_classはパラメータである。h[CLS]∈RHは、[CLS]に対する訓練済み言語モデルのエンコーダの最終層の埋め込みベクトルである。Hは訓練済み言語モデルの隠れ層のサイズである。num_classはクラス数である。クラスclassは、ゼロ代名詞の有無を判定する場合には、ゼロ代名詞以外の空範疇とゼロ代名詞の二つのクラスを表す。また、クラスclassは、pro, speaker, hearerのようにゼロ代名詞の種類まで判定する場合には、n個のゼロ代名詞の種類にゼロ代名詞以外の空範疇を加えたn +1個のクラスを表す。例えば、最も高い確率のクラスを分類結果として出力することができる。
【0081】
学習時における空範疇の分類に対する損失は、正解のクラスラベルに対するクロスエントロピー損失として式(8)に示すように定義する。
【0082】
【数8】
(ゼロ代名詞同定モデルの学習について)
学習時において、ゼロ代名詞同定モデルは、下記の式(9)のlosstotalを最適化(最小化)するように学習される。
【0083】
すなわち、ゼロ代名詞同定モデルは、訓練データ(正解データ)に対して、項のスパン予測に関する損失lossspanと空範疇の分類に関する損失losslabelの重み付き和を目的関数(損失関数)として、これを最適化(最小化)するように学習される。
【0084】
【数9】
ここでα(0<α<2)は、二つの損失関数に対する重みを表すハイパーパラメータである。
【0085】
(ハードウェア構成例)
以上説明したゼロ代名詞同定システム、装置100、及び装置200はいずれも、例えば、コンピュータにプログラムを実行させることにより実現できる。このコンピュータは、物理的なコンピュータであってもよいし、クラウド上の仮想マシンであってもよい。ゼロ代名詞同定システム、装置100、及び装置200を総称して「装置」と呼ぶ。
【0086】
すなわち、当該装置は、コンピュータに内蔵されるCPUやメモリ等のハードウェア資源を用いて、当該装置で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メール等、ネットワークを通して提供することも可能である。
【0087】
図5は、上記コンピュータのハードウェア構成例を示す図である。図5のコンピュータは、それぞれバスBSで相互に接続されているドライブ装置1000、補助記憶装置1002、メモリ装置1003、CPU1004、インタフェース装置1005、表示装置1006、入力装置1007、出力装置1008等を有する。
【0088】
当該コンピュータでの処理を実現するプログラムは、例えば、CD-ROM又はメモリカード等の記録媒体1001によって提供される。プログラムを記憶した記録媒体1001がドライブ装置1000にセットされると、プログラムが記録媒体1001からドライブ装置1000を介して補助記憶装置1002にインストールされる。但し、プログラムのインストールは必ずしも記録媒体1001より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置1002は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【0089】
メモリ装置1003は、プログラムの起動指示があった場合に、補助記憶装置1002からプログラムを読み出して格納する。CPU1004は、メモリ装置1003に格納されたプログラムに従って、当該装置に係る機能を実現する。インタフェース装置1005は、ネットワーク等に接続するためのインタフェースとして用いられる。表示装置1006はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置1007はキーボード及びマウス、ボタン、又はタッチパネル等で構成され、様々な操作指示を入力させるために用いられる。出力装置1008は演算結果を出力する。
【0090】
(実施の形態の効果)
本実施の形態に係る技術の有効性を検証するために、評価実験を行ったので、以下にその内容を説明する。
【0091】
<評価実験に使用したデータについて>
評価実験において、日本語については国立国語研究所が作成したNPCMJ(NINJAL Parsed Corpus of Modern Japanese)の2020年3月版、中国語については米国のLDC(Linguistic Data Consortium)が作成したOntoNotes 5.0を使用した。NPCMJとOntoNotes 5.0の文書数、文数、述語数を図6に示す。
【0092】
NPCMJは日本語の文に対して空範疇の情報を含む句構造の構文木が付与されたコーパスである。このデータでは、ゼロ代名詞を含む述語に対する項に対して'-SBJ'(主語),'-OB1'(直接目的語),'OB2'(間接目的語)というタグが付与されている。またゼロ代名詞は、pro, speaker, hearerなどに分類されている。
【0093】
OntoNotes 5.0は、英語、中国語、アラビア語に対して様々な言語情報が付与されたコーパスである。この中で本実験では、中国語の文に対して空範疇を含む句構造の構文木が付与されたデータを使用する。このデータでは、ゼロ代名詞を含む述語に対する項に対して'-SBJ'(主語), '-OBJ'(目的語), '-IO'(間接目的語)というタグが付与されている。
【0094】
図7に、NPCMJとOntoNotesの訓練データにおけるゼロ代名詞の数を、主語、直接目的語、間接目的語に分けて示す。括弧の中は、それぞれの要素でゼロ代名詞が出現する割合である。主語については、日本語と英語はどちらも20%程度の省略がある。直接目的語や間接目的語は、主語に比べて省略される割合は小さい。特に中国語の場合、直接目的語や間接目的語が省略される割合は非常に小さい。
【0095】
<実験結果について>
訓練済み言語モデルとして、日本語はNICT BERTを使用し、中国語はHuggingFace Transformersのbert-base-chineseを使用した。日本語の文はJuman辞書を使ったMeCab でトークン化し、中国語はBERT Tokenizerでトークン化した。なお、トークン化とは前述した単語分割に相当する。
【0096】
ハイパーパラメータは、batchi_size=16、learning_rate=3e-5、training_epoch=4、C=2、α=1である。
【0097】
ベースライン手法としては、BERTに基づく系列分類[1]を用いた。文に対して、特定のゼロ代名詞を持つ述語をBIOES形式の系列ラベリング問題として求める。また、ゼロ代名詞同定モデルとして、異なる項タイプに対して異なるモデルを作成した。
【0098】
図8に、NPCMJにおける項スパンの予測精度とゼロ代名詞の同定精度を示す。ALLはSBJ, OB1, OB2の和を表す。本発明に係る技術では、系列ラベリングに基づくベースラインに比べて、ゼロ代名詞の同定精度がF1で4ポイント向上している。
【0099】
図9に、NPCMJにおけるクラス別のゼロ代名詞の同定精度を示す。表の値は、SBJ,OB1,OB2の和に対する値を表す。pro, speaker, hearerのようにゼロ代名詞を細分化した場合でも、本発明に係る技術は、系列ラベリングに基づくベースラインに比べて、ゼロ代名詞の同定精度が高い。
【0100】
図10に、OntoNotes 5.0における項スパンの予測精度とゼロ代名詞の同定精度を示す。ALLはSBJ, OBJ,IOの和を表す。本発明は、系列ラベリングに基づくベースラインに比べて、ゼロ代名詞の同定精度がF1 で9ポイント向上している。
【0101】
(付記)
以上の実施形態に関し、更に以下の付記項を開示する。
(付記項1)
メモリと、
前記メモリに接続された少なくとも1つのプロセッサと、
を含み、
前記プロセッサは、
入力された文を単語に分割し、
単語分割された前記文から述語を同定し、
訓練済み言語モデルに出力層を追加したモデルであるゼロ代名詞同定モデルを用いて、前記述語に対する項のスパンを求め、前記スパンのスコアと、前記述語に対する空範疇のスコアとを比較することにより、前記空範疇が存在するかどうかを判定し、前記空範疇が存在する場合に、前記空範疇を分類することによりゼロ代名詞の有無を判定する
ゼロ代名詞同定装置。
(付記項2)
前記プロセッサは、前記スパンのスコアよりも前記空範疇のスコアのほうが大きい場合に、前記空範疇が存在すると判定する
付記項1に記載のゼロ代名詞同定装置。
(付記項3)
前記スパンのスコアは、前記項の開始位置が前記スパンの開始位置の単語である確率と、前記項の終了位置が前記スパンの終了位置の単語である確率との積であり、
前記空範疇のスコアは、前記項の開始位置が、前記ゼロ代名詞同定モデルへの入力系列における特殊トークンである確率と、前記項の終了位置が前記特殊トークンである確率との積である
付記項1又は2に記載のゼロ代名詞同定装置。
(付記項4)
前記プロセッサは、前記空範疇を、複数個のゼロ代名詞の種類、及び、ゼロ代名詞以外の空範疇、のうちのいずれかのクラスに分類する
付記項1ないし3のうちいずれか1項に記載のゼロ代名詞同定装置。
(付記項5)
前記プロセッサは、正解データを用いて、スパン予測に関する損失と空範疇に関する損失の重み付き和が最小になるように、前記ゼロ代名詞同定モデルのパラメータを更新する
付記項1ないし4のうちいずれか1項に記載のゼロ代名詞同定装置。
(付記項6)
コンピュータのプロセッサが実行するゼロ代名詞同定方法であって、
入力された文を分割する単語分割ステップと、
前記単語分割ステップにより単語分割された前記文から述語を同定する述語同定ステップと、
訓練済み言語モデルに出力層を追加したモデルであるゼロ代名詞同定モデルを用いて、前記述語に対する項のスパンを求め、前記スパンのスコアと、前記述語に対する空範疇のスコアとを比較することにより、前記空範疇が存在するかどうかを判定し、前記空範疇が存在する場合に、前記空範疇を分類することによりゼロ代名詞の有無を判定するゼロ代名詞同定ステップと
を備えるゼロ代名詞同定方法。
(付記項7)
ゼロ代名詞同定処理を実行するようにコンピュータによって実行可能なプログラムを記憶した非一時的記憶媒体であって、
前記ゼロ代名詞同定処理は、
入力された文を単語に分割し、
単語分割された前記文から述語を同定し、
訓練済み言語モデルに出力層を追加したモデルであるゼロ代名詞同定モデルを用いて、前記述語に対する項のスパンを求め、前記スパンのスコアと、前記述語に対する空範疇のスコアとを比較することにより、前記空範疇が存在するかどうかを判定し、前記空範疇が存在する場合に、前記空範疇を分類することによりゼロ代名詞の有無を判定する
非一時的記憶媒体。
(参考文献)
[1] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. Bert: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the NAACL-2019, pp.4171-4186, 2019.
[2] Pranav Rajpurkar, Robin Jia, and Percy Liang. Know what you don't know: Unanswerable questions for squad. In Proceedings of the ACL-2018, pp. 784-789, 2018.
[3] Pranav Rajpurkar, Jian Zhang, Konstantin Lopyrev, and Percy Liang. Squad: 100,000+ questions for machine comprehension of text. In Proceedings of EMNLP-2016, pp. 2383-2392, 2016.
[4] Linfeng Song, Kun Xu, Yue Zhang, Jianshu Chen, and Dong Yu. Zpr2: Joint zero pronoun recovery and resolution using multi-task learning and bert. In Proceedings of ACL-2020, pp. 5429-5434,2020.
[5] Shunsuke Takeno, Masaaki Nagata, and Kazuhide Yamamoto. Empty category detection using path features and distributed case frames. In Proceedings of EMNLP-2015, pp. 1335-1340, 2015.
[6] Wei Wu, Fei Wang, Arianna Yuan, Fei Wu, and Jiwei Li. Corefqa: Coreference resolution as query-based span prediction. In Proceedings of ACL-2020, pp. 6953-6963, 2020.
[7] Bing Xiang, Xiaoqiang Lue, and Bowen Zhou. Enlisting the ghost: Modeling empty categories for machine translation. In ACL-2013, pp. 822-831, 2013.
【0102】
以上、本実施の形態について説明したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0103】
110 ゼロ代名詞同定モデル学習部
111 入力部
112 出力部
113 単語分割部
114 述語同定部
115 ゼロ代名詞同定部
116 パラメータ更新部
120 ゼロ代名詞同定訓練データDB
130 訓練済み多言語モデルDB
210 単語分割部
211 入力部
220 述語同定部
230 ゼロ代名詞同定部
231 出力部
240 ゼロ代名詞同定モデルDB
1000 ドライブ装置
1001 記録媒体
1002 補助記憶装置
1003 メモリ装置
1004 CPU
1005 インタフェース装置
1006 表示装置
1007 入力装置
1008 出力装置
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10