JP7088490B2 - 文比較装置、方法、及びプログラム - Google Patents

文比較装置、方法、及びプログラム Download PDF

Info

Publication number
JP7088490B2
JP7088490B2 JP2018096983A JP2018096983A JP7088490B2 JP 7088490 B2 JP7088490 B2 JP 7088490B2 JP 2018096983 A JP2018096983 A JP 2018096983A JP 2018096983 A JP2018096983 A JP 2018096983A JP 7088490 B2 JP7088490 B2 JP 7088490B2
Authority
JP
Japan
Prior art keywords
semantic
similarity
sentence
unit
tuple
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018096983A
Other languages
English (en)
Other versions
JP2019204153A (ja
Inventor
貴秋 田中
昌明 永田
由紀 松下
真 鬼塚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Osaka University NUC
Original Assignee
Nippon Telegraph and Telephone Corp
Osaka University NUC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp, Osaka University NUC filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2018096983A priority Critical patent/JP7088490B2/ja
Publication of JP2019204153A publication Critical patent/JP2019204153A/ja
Application granted granted Critical
Publication of JP7088490B2 publication Critical patent/JP7088490B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、文比較装置、方法、及びプログラムに関する。
自然言語処理において、例えば、記述式試験問題の回答の採点、論文等の剽窃検出、機械翻訳の評価などを行う際に、複数の異なる文(テキストデータ)の類似性を測定することが行われている。文の類似性を測定する手法として、例えば、入力された文に含まれる単語や単語列の類似性に基づいて、複数の入力された文間の類似度を計算する手法が存在する(例えば、非特許文献1参照)。
Frane ▲S▼ari▲c▼, Goran Glava▲s▼, Mladen Karan, Jan ▲S▼najder and Bojana Dalbelo Ba▲s▼i▲c▼: TakeLab: Systems for Measuring Semantic Text Similarity, In Proceedings of the First Joint Conference on Lexical and Computational Semantics, SemEval '12, pp.441-448, (2012).
しかしながら、単語や単語列などの表層的な情報に基づく入力文の比較方法では、類似した単語や単語列が出現する入力文間において、本来の入力文の意味内容を適切に捉えた類似度を計算することが困難な場合がある。
例えば、"The dog wearing a hat was running."という原文に対して、比較対象の (1)"The dog wear with a hat was running out."、及び(2)"He saw the chihuahua with a hat run."という2文のどちらが意味的に類似しているかを判定することを考える。単純に原文の単語が比較対象の文に現れる割合を類似度と定義すると、 (1)には、原文の7語が全てが出現しているので、類似度は7/7、(2)には、原文の7語中、"the"、"a"、"hat"、及び"run"の4語が出現しているので、類似度は4/7となり、(1)の方が原文に類似しているという結果になってしまう。
これは、"dog"と"chihuahua"とが類似した意味内容を持つ語であること、原文と(2)とで共通する意味内容として、"run"の動作主が"dog"又は類似する概念であること、及び"hat"が付随している対象が"dog"又は類似する概念であることが、正しく捉えられていないことにより、類似度を適切に計算できていないことが原因である。
本発明は、上記の点に鑑みてなされたものであり、テキストデータである入力文の表現する意味内容を捉えて計算された類似度に基づいて、入力文同士を適切に比較することができる文比較装置、方法、及びプログラムを提供することを目的とする。
上記目的を達成するために、本発明に係る文比較装置は、自然言語で記述された複数の入力文の各々の文法的な言語の構文構造を解析する言語解析部と、前記言語解析部による解析結果に基づいて、前記複数の入力文の各々の意味的な構造を解析する意味解析部と、前記意味解析部による解析結果に基づいて、前記入力文同士を比較して、前記入力文間の類似度を計算する意味表現比較部と、を含んで構成されている。
本発明に係る文比較装置によれば、言語解析部が、自然言語で記述された複数の入力文の各々の文法的な言語の構文構造を解析し、意味解析部が、言語解析部による解析結果に基づいて、複数の入力文の各々の意味的な構造を解析し、意味表現比較部が、意味解析部による解析結果に基づいて、入力文同士を比較して、入力文間の類似度を計算する。
これにより、入力文の表現する意味内容を捉えて計算された類似度に基づいて、入力文同士を適切に比較することができる。
また、前記意味解析部は、文の意味的な構造を論理式により表現する論理形式型意味表現により、前記複数の入力文の各々の意味的な構造を解析することができる。また、前記意味解析部は、文に含まれる概念に対応するノード間をノード間の意味的な関係に基づいてエッジで接続した意味グラフにより、前記複数の入力文の各々の意味的な構造を解析することができる。このような意味表現を比較することで、入力文の表現する意味内容を捉えた適切な類似度を計算することができる。
また、前記意味表現比較部は、前記意味解析部の解析結果を、前記入力文中に含まれる概念に対応する変数と概念との関係を示す意味タプル、及び前記変数間の関係を示す意味タプルに変換する意味タプル変換部と、前記入力文間で、前記意味タプル変換部により変換された前記意味タプルの対応付けを行う意味タプルアライメント部と、を含んで構成することができる。これにより、意味表現の比較を容易に行うことができる。
また、前記意味タプル変換部は、前記変数間の関係を示す意味タプルのうち、前記変数間の関係及び前記意味タプルに含まれる変数の一方が共通する意味タプルに基づいて、前記意味タプルに含まれる他方の変数を組み合わせた、拡張意味タプルを追加することができる。これにより、入力文の表現する意味内容を柔軟に捉えた類似度を計算することができる。
また、本発明に係る文比較方法は、言語解析部と、意味解析部と、意味表現比較部とを含む文比較装置における文比較方法であって、前記言語解析部が、自然言語で記述された複数の入力文の各々の文法的な言語の構文構造を解析し、前記意味解析部が、前記言語解析部による解析結果に基づいて、前記複数の入力文の各々の意味的な構造を解析し、前記意味表現比較部が、前記意味解析部による解析結果に基づいて、前記入力文同士を比較して、前記入力文間の類似度を計算する方法である。
また、本発明に係る文比較プログラムは、コンピュータを、上記の文比較装置の各部として機能させるためのプログラムである。
以上説明したように、本発明の文比較装置、方法、及びプログラムによれば、入力文の意味的な構造を入力文間で比較して類似度を計算することにより、入力文の表現する意味内容を捉えて計算された類似度に基づいて、入力文同士を適切に比較することができる、という効果が得られる。
本実施の形態に係る文比較装置の機能ブロック図である。 入力文S及びSの構文解析結果の一例を示す図である。 入力文S及びSの意味解析結果の一例を示す図である。 意味タプルの一例を示す図である。 アライメント結果及び類似度計算の一例を示す図である。 本実施の形態における文比較処理ルーチンの一例を示すフローチャートである。 入力文S及びSの意味解析結果の他の例を示す図である。
以下、図面を参照して本発明の実施の形態を詳細に説明する。
本実施の形態に係る文比較装置10は、CPUと、RAMと、後述する文比較処理ルーチンを実行するためのプログラムや各種データを記憶したROMとを含むコンピュータで構成することができる。文比較装置10は、機能的には、図1に示すように、言語解析部12と、意味解析部14と、意味表現比較部16と、結果出力部22とを含んだ構成で表すことができる。また、文比較装置10の所定の記憶領域には、言語解析モデル32と、意味解析モデル34と、概念間類似計算モデル36とが記憶される。
言語解析部12は、自然言語で記述された文(テキストデータ)であって、文比較装置10に入力された文(以下、「入力文」という)を受け付ける。以下では、入力文として、入力文S"The dog wearing a hat was running. "と、入力文S"He saw the chihuahua with a hat run. "とが入力される場合を例にとって説明する。
言語解析部12は、言語解析モデル32を用いて、受け付けた入力文に対して、構文解析等の言語的な解析を行い(参考文献1)、構文解析結果を意味解析部14に受け渡す。なお、本実施の形態では、言語解析部12は、解析に用いる構文構造として、Universal Dependenciesの規定(参考文献2)を用いる場合について説明する。この場合、言語解析モデル32には、Universal Dependenciesの規定に従った解析に必要な情報が定義されている。なお、言語解析部12での解析に用いる構文構造は上記の例に限定されず、他の構文構造を用いてもよい。
参考文献1:Joakim Nivre et al.: MaltParser: A language-independent system for data-driven dependency parsing, Natural Language Engineering, 13(2), pp. 95{135 (2007).
参考文献2:Joakim Nivre: Towards a Universal Grammar for Natural Language Processing, In Proceedings of CICLing 2015, pp.3{16, (2015).
図2に、Universal Dependenciesの規定に従って入力文S及びSを解析した構文解析結果の例を示す。図2に示す構文解析結果では、文法的に依存関係のある2語が矢印で結ばれており、矢印の根元の語が主辞、矢印の先の語が従属部を示している。また、矢印に付与されたラベル(図2では、角丸四角で示している)は、矢印で結ばれた2語間の関係の種類を示している。例えば、図2の上図に示す入力文S1の構文解析結果において、「dog←(nsubj)←running」は、「dog」と「running」との間には、主語-述語の関係 nsubjがあり、「running」が主辞であることを示している。
意味解析部14は、言語解析部12から構文解析結果を受け取って、意味解析モデル34を用いて、入力文の意味的な構造を解析し、構文解析結果を意味表現に変換した意味解析結果を、意味表現比較部16に受け渡す。なお、本実施の形態では、意味解析部14は、意味表現として、UDepLambdaの規定(参考文献3)を用いる場合について説明する。この場合、意味解析モデル34には、UDepLambdaの規定に従った解析に必要な情報が定義されている。なお、意味解析部14での解析に用いる意味表現は上記の例に限定されず、Abstract Meaning Representation(AMR、参考文献4)のような意味グラフ型の意味表現などの他の意味表現の規定を用いてもよい。
参考文献3: Siva Reddy, Oscar Tackstrom, Slav Petrov, Mark Steedman and Mirella Lapata: Universal Semantic Parsing, In Proceedings of the Conference on Empirical Methods in Natural Language Processing, EMNLP 2017, (2017).
参考文献4: Laura Banarescu, Claire Bonial, Shu Cai, Madalina Georgescu, Kira Griffitt, Ulf Hermjakob, Kevin Knight, Philipp Koehn, Mrtha Palmer and Nathan Schneider: Abstract Meaning Representation for Sembanking, In Proceedings of the Linguistic Annotation Workshop, (2013).
図3に、UDepLambdaの規定に従って入力文S及びSを解析した意味解析結果の例を示す。図3に示す意味解析結果は、UDepLambdaの規定に従った、述語論理形式型の意味表現であり、個体(individual)やイベント(event)を指す変数と、関数とからなる。ya、xe等の添え字 aは、変数のタイプが個体であることを示し、添え字eは、変数のタイプがイベントであることを示している。なお、本実施の形態における述語論理形式型の意味表現では、入力文に含まれる語のうち、単独で概念を持つ語(以下、単に「概念」ともいう)を変数として扱う。
また、図3に示す入力文Sの意味解析結果において、λxで示される変数xは文の中心となる述語を表し、変数y、z、及びwは、その他の変数を表す。また、単項の論理式(例えば、「run(xe)」)は、概念と変数との紐付けを示す。例えば、run(xe)は、概念"run"を変数"xe"で表すことを示す。また、2項からなる関数(例えば、「arg1(xe,ya)」)は、変数で表す概念間の関係を示す。例えば、arg1(xe,ya)は、変数"ya"で表す個体(dog)が、変数"xe"で表すイベント(run)の動作主であることを示している。
意味表現比較部16は、意味解析部14から受け渡された意味解析結果である意味表現に基づいて、入力文同士を比較して、入力文間の類似度を計算する。図1に示すように、意味表現比較部16は、意味タプル変換部18と、意味タプルアライメント部20とを含む。
意味タプル変換部18は、意味解析部14から受け取った意味表現を、意味タプルに変換する。意味タプルは、「rel(variable1, variable2)」、及び「inst(variable, concept)」から構成される。前者の意味タプルは、2つの変数間の関係がラベル"rel"で示される関係であることを表し、後者の意味タプルは、変数と入力文中の概念(個体やイべント等)との紐づけを表す。例えば、inst(x, run)は、変数"x"が"run"という概念に属するものであることを示し、inst(y, dog)は、変数"y"が"dog"という概念に属するものであることを示している。
具体的には、意味タプル変換部18は、意味解析部14から受け取った、入力文S1及びS2の各々についての意味表現から、下記(1)式及び(2)式に示すように、それぞれ変数の集合V1及びV2を抜き出す。
V1= {v11, v12, v13, v14} = {x, y, z, w} (1)
V2 = {v21, v22, v23, v24, v25} = {p, q, r, s, t} (2)
なお、vijは、入力文Siのj番目の変数を示す。
意味タプル変換部18は、変数の集合V1及びV2それぞれについて、入力文S1及びS2の各々についての意味表現に含まれる単項の論理式から、inst(variable, concept)の形の意味タプルを作り、下記(3)式及び(4)式に示すように、意味タプル集合T1及びT2に追加する。
T1= {t11, t12, t13, t14}
= {inst(x, run), inst(y, dog), inst(z, hat), inst(w, wear)} (3)
T2 = {t21, t22, t23, t24, t25}
= {inst(p, see), inst(q, he), inst(r, chihuahua), inst(s, hat),
inst(t, run)} (4)
なお、tijは、入力文Siのj番目の意味タプルを示す。
また、意味タプル変換部18は、入力文S1及びS2の各々についての意味表現に含まれる2項からなる関数から、rel(variable1, variable2)の形の意味タプルを作り、意味タプル集合T1及びT2に追加する。rel(variable1, variable2)の形の意味タプルを追加した後の意味タプル集合T1及びT2を、図4の「直接抽出したタプル」に示す。
さらに、意味タプル変換部18は、ラベルが共通し(添え字を除く)、かつ第1項に共通する変数を持つ意味タプルを併合して、新しい意味タプルを追加する。具体的には、意味タプル変換部18は、r1(a, b)及びr2(a, c)のような2つの意味タプルから、新たな意味タプルrel*(b, c)及びrel*(c, b)を、拡張意味タプルとして作成して追加する。ここで、図4におけるラベルarg1、arg2は、それぞれ第2項が第1項の動作主、対象にあたることを示す。これらの拡張意味タプルにおける変数の関係を示すラベル"rel*"は、後述する意味タプルのアライメント(対応付け)時に他のあらゆるラベルと対応付けが可能なことを示すラベルである。拡張意味タプルを図4の右側に示す。これらの拡張意味タプルを意味タプル集合T1 に追加する。
意味タプル変換部18は、変換及び追加した意味タプルを意味タプルアライメント部20へ受け渡す。
意味タプルアライメント部20は、意味タプル変換部18から受け渡された、入力文S1及びS2の各々についての意味タプル間の最適なアライメントを求める。本実施の形態では、山登り法によるヒューリスティックな探索によって低い計算量で簡易にアライメントを行う場合について説明するが、整数計画法(Integer Linear Programming、ILP)などの方法で厳密解を求めることも可能である。
具体的には、意味タプルアライメント部20は、意味タプル変換部18により抽出された変数の集合の間で初期アライメント列を設定する。|V1|≦|V2|のとき、V1からV2への1対1のアライメントを考える。(t1i, t2j)にアライメントがある場合、ai=jと表し、V1から V2へのアライメント列をA=(a1, ..., am)と表す(ただし、m=|V1|)。t1iに対応するアライメントがない場合、ai=0とする。ここで、意味タプルアライメント部20は、初期アライメント列A0を、下記(5)式のように設定する。
A0= (1, 2, 3, 4) (5)
これは、変数の組(x, p)、(y, q)、(z, r)、及び(w, s)をアライメントすることを示している。
意味タプルアライメント部20は、意味タプル集合T1及びT2において、設定したアライメントのスコア(以下、「アライメントスコア」という)σalignを、下記(6)式により計算する。
Figure 0007088490000001
ここで、 意味タプルt1i(∈T1)及びt2j(∈T2)を、t1i=r1(h1i, d1i)、及びt2j=r2(h2j, d2j)とし、意味タプルt1iとt2jとの間の類似度σT(t1i, t2j)を、下記(7)~(9)式のように定義する。
Figure 0007088490000002
(7)~(9)式における、添え字付きの"r"は、relationの頭文字で、意味タプルのラベルを示すものであり、(2)式に示すV2の要素である添え字なしの"r"とは別物である。なお、(7)~(9)式における"h"は、headの頭文字、"d"は、dependentの頭文字で、それぞれ、意味タプルの第1項及び第2項を示す。
また、(9)式において、 I(・)は、変数と紐付いている概念への写像であり、例えば、入力文S1の意味解析結果の例では、I(x) = runである。また、simcon(・,・)は、概念間の類似度で、WordNet(参考文献5)のようなオントロジや、word2vec(参考文献6)やGloVe(参考文献7)などの単語分散表現によるものを定義することができる。
参考文献5:George A. Miller, WordNet: A Lexical Database for English, COMMUNICATIONS OF THE ACM, Vol. 38, pp.39-41, (1995).
参考文献6:Tomas Mikolov, Kai Chen, Greg Corrado and Jeffrey Dean, Efficient Estimation of Word Representations in Vector Space, In the International Conference on Learning Representations (ICLR) 2013 Workshop Papers, (2013).
参考文献7:Jeffrey Pennington, Richard Socher and Christopher D. Manning, Glove: Global Vectors for word representation, In Proceedings of the Conference on Empirical Methods in Natural Language Processing, EMNLP 2014, pp. 1532-1543, (2014).
本実施の形態では、類似度を0から1の実数の値とし、類似度が1のとき、比較対象の意味表現の部分構造が示す意味内容が完全に一致しているとする。例えば、意味タプルアライメント部20は、概念と、その概念を単語の分散表現に変換したベクトルとの対応関係が定義された概念間類似計算モデル36を用いて、下記(10)式に示すように、概念c1及びc2をベクトルvc1とvc2とに変換し、ベクトルvc1とvc2との間のコサイン距離を、概念間の類似度simcon(vc1,vc2)として用いる。
Figure 0007088490000003
また、α(・,・)は、下記(11)式に示すように、アライメントの有無を表す関数である。
Figure 0007088490000004
意味タプルアライメント部20は、(6)~(11)式により、初期アライメント列A0に対するアライメントスコア σalign(A0)を計算する。|T1|+|T2|、すなわち、入力文S1及びS2の意味表現から得られた意味タプルの数は18である。また、アライメントされていない変数を含む意味タプルの組み合わせに対しては、α(・,・)=0になるので、σalign(A0)は、下記(12)式により計算される。
Figure 0007088490000005
意味タプルアライメント部20は、初期アライメント列A0からできるだけ少ない操作でアライメントを変更し、アライメント列候補集合Qを生成する。すなわち,初期アライメント列A0に対して1つの変数を他の変数に対応付ける操作を行うか、又は、2つのアライメントの対応付けを入れ替える操作を行うかいずれかによって、最適なアライメント列の候補として、下記(13)式に示すように、アライメント列候補集合Qを生成する。
Q = {(1, 2, 3, 5), (1, 2, 5, 4), (1, 5, 3, 4), (5, 2, 3, 4),
(2, 1, 3, 4), (1, 3, 2, 4), (1, 2, 4, 3), (4, 2, 3, 1),
(3, 2, 1, 4), (1, 4, 3, 2)} (13)
意味タプルアライメント部20は、アライメント列候補集合Qに含まれる各アライメント列候補に対して、アライメントスコアを計算し、最も高いアライメントスコアを持つアライメント列候補を求める。具体的には、意味タプルアライメント部20は、アライメント列候補集合Qの中からアライメント列候補を1つ選択し、アライメントスコアを計算する。例えば、アライメント列候補A1 = (1, 2, 4, 3)が選択された場合、アライメントスコアσalign(A1)は、下記(14)式のように計算される。
Figure 0007088490000006
(14)式に示すσalign(A1)は、元のアライメントスコア σalign(A0)より高いので、意味タプルアライメント部20は、アライメント列候補A1を、次のアライメント列として設定する。また、意味タプルアライメント部20は、元のアライメント列 A0を、アライメント列候補集合Qから取り除くと共に、アライメントスコアを計算済みのアライメント列候補集合Cに追加する。意味タプルアライメント部20は、この処理を、アライメントスコアが元のアライメント列より高いアライメント列候補がなくなるまで、すなわち、全てのアライメント列候補がアライメント列候補集合Cに追加されるまで繰り返す。(13)式に示すアライメント列候補集合Qの場合、アライメント列An = (5, 3, 4, 1)の場合に、下記(15)及び(16)式に示すように、アライメントスコアが最大になる。
Figure 0007088490000007
意味タプルアライメント部20は、最大のアライメントスコアを入力文S1とS2との類似度の計算結果とする。また、意味タプルアライメント部20は、アライメントスコアが最大となるアライメント列が示す、意味タプルの最適なアライメント、及び最大のアライメントスコアの計算過程におけるアライメントされた意味タプル間の類似度を、意味タプルのアライメント結果とする。意味タプルアライメント部20は、類似度の計算結果及びアライメント結果を、結果出力部22へ受け渡す。
結果出力部22は、意味タプルアライメント部20から受け渡された意味タプルのアライメント結果及び類似度の計算結果を出力する。図5に、結果出力部22により出力される結果の一例を示す。図5の例では、入力文S1とS2との全体の類似度「0.5222」が示されると共に、意味タプルのアライメント結果として、アライメントされた意味タプル間の類似度(図5において「部分類似度」)とが示されている。このように、意味タプルのアライメント結果も示されることにより、意味表現の部分構造において一致又は類似する部分の情報も把握することができる。
次に、本実施の形態に係る文比較装置10の作用について説明する。比較対象の2つの入力文が文比較装置10に入力されると、文比較装置10によって図6に示す文比較処理ルーチンが実行される。
ステップS10で、言語解析部12が、文比較装置10に入力された入力文を受け付け、言語解析モデル32を用いて、受け付けた入力文の各々に対して、構文解析等の言語的な解析を行い、構文解析結果を意味解析部14に受け渡す。
次に、ステップS12で、意味解析部14が、言語解析部12から構文解析結果を受け取って、意味解析モデル34を用いて、入力文の意味的な構造を解析し、構文解析結果を意味表現に変換した意味解析結果を、意味表現比較部16に受け渡す。
次に、ステップS14で、意味タプル変換部18が、意味解析部14から受け取った意味解析結果である意味表現を、「rel(variable1, variable2)」、及び「inst(variable, concept)」から構成される意味タプルに変換する。
次に、ステップS16で、意味タプル変換部18が、ラベルが共通し(添え字を除く)、かつ第1項に共通する変数を持つ意味タプルを併合して、新しい意味タプル(拡張意味タプル)を作成して追加する。
次に、ステップS18で、意味タプルアライメント部20が、意味タプル変換部18により抽出された変数の集合の間で初期アライメント列A0を設定する。そして、意味タプルアライメント部20は、初期アライメント列A0のアライメントスコアσalign(A0)を、例えば、(6)~(11)式により計算し、σalign_maxに設定する。
次に、ステップS20で、意味タプルアライメント部20が、初期アライメント列A0から、1つの変数を他の変数に対応付けるか、又は、2つアライメントの対応付けを入れ替えるかのいずれかによって、アライメント列候補集合Qを生成する。また、意味タプルアライメント部20は、アライメントスコアを計算済みのアライメント列候補集合Cを空集合として用意する。
次に、ステップS22で、意味タプルアライメント部20は、アライメント列候補集合Qに、未選択のアライメント列候補が存在するか否かを判定する。未選択のアライメント列候補が存在する場合には、ステップS23へ移行し、未選択のアライメント列候補が存在しない場合には、ステップS30へ移行する。
ステップS23では、意味タプルアライメント部20が、アライメント列候補集合Qから未選択のアライメント列候補Aiを1つ選択し、選択したアライメント列候補Aiについて、Aiに隣接するアライメント列候補を生成し、アライメント列候補集合Qに追加する。Aiに隣接するアライメント列候補の生成は、上記ステップS20で初期アライメント列A0に対して行ったものと同様の方法で行う。ただし、既にアライメント列候補集合Q及びCに含まれているアライメント列候補は、アライメント列候補集合Qに加えない。
次に、ステップS24で、意味タプルアライメント部20が、選択したアライメント列候補Aiについて、アライメントスコアσalign(Ai)を計算する。
次に、ステップS25で、意味タプルアライメント部20が、選択したアライメント列候補Aiを、アライメント列候補集合Qから取り除くと共に、計算済みのアライメント列候補集合Cに追加する。
次に、ステップS26で、意味タプルアライメント部20が、上記ステップS24で計算したアライメントスコアσalign(Ai)が、上記ステップS18で設定したσalign_maxより大きいか否かを判定する。σalign(Ai)>σalign_maxの場合には、ステップS28へ移行し、σalign(Ai)≦σalign_maxの場合には、ステップS22に戻る。
ステップS28では、意味タプルアライメント部20が、上記ステップS24で計算したアライメントスコアσalign(Ai)をσalign_maxに設定し、ステップS22に戻る。
ステップS30では、意味タプルアライメント部20が、現在σalign_maxに設定されている最大のアライメントスコアσalign(AM)を入力文S1とS2との類似度の計算結果とする。また、意味タプルアライメント部20は、アライメントスコアが最大となるアライメント列AMが示す、意味タプルの最適なアライメント、及び最大のアライメントスコアの計算過程におけるアライメントされた意味タプル間の類似度を、意味タプルのアライメント結果とする。そして、意味タプルアライメント部20が、意味タプルのアライメント結果及び類似度の計算結果を、結果出力部22へ受け渡し、結果出力部22が、結果を出力して、文比較処理は終了する。
以上説明したように、本実施の形態に係る文比較装置によれば、比較対象の入力文(テキストデータ)の意味解析を行って、意味表現間の比較を行うことにより、入力文間の類似度を計算する。これにより、単純な単語や単語列の類似性に基づく類似度ではなく、入力文の表現する意味内容を捉えて計算された類似度に基づいて、入力文同士を適切に比較することができる。
また、上記実施の形態では、意味表現を変換した意味タプル間の類似度も得られるため、入力文全体の類似度だけではなく、意味表現の部分構造の一致又は類似を把握することができる。
また、上記実施の形態では、意味表現から、「rel(variable1, variable2)」、及び「inst(variable, concept)」の形式の意味タプルに変換し、さらに、ラベルが共通し(添え字を除く)、かつ第1項に共通する変数を持つ意味タプルを併合して、新しい意味タプルを拡張意味タプルとして追加する。このような意味表現の拡張を行わない場合、意味解析により得られる意味表現(参考文献8及び9)のみを比較して、入力文間の類似度を計算することになる(参考文献10及び11)。この場合、内容語を介した関係と付属語を介した関係とを柔軟に対応付けることができない場合がある。
例えば、入力文S1="The dog wearing a hat was running."、入力文S2="He saw the chihuahua with a hat run."の場合、入力文S1では、arg1(wear, dog)及びarg2(wear, hat)という内容語"wear"を介した2つの関係(意味タプル)が得られるが、入力文S2からは、nmod.with(dog,hat)という付属語を介した関係が得られ、両者を適切に対応付けることができない。
本実施の形態では、上記のように、拡張意味タプルを追加することにより、意味表現の対応付けを柔軟に行うことができるため、意味的内容を捉えた適切な類似度を計算することができる。
参考文献8:Laura Banarescu, Claire Bonial, Shu Cai, Madalina Georgescu, Kira Griffitt, Ulf Hermjakob, Kevin Knight, Philipp Koehn, Mrtha Palmer and Nathan Schneider: Abstract Meaning Representation for Sembanking, In Proceedings of the Linguistic Annotation Workshop, (2013).
参考文献9:Sebastian Schuster, Ranjay Krishna, Angel Chang, Li Fei-Fei and Christopher D. Manning: Generating Semantically Precise Scene Graphs from Textual Descriptions for Improved Image Retrieval, In Proceedings of the Workshop on Vision and Language (VL15), (2015).
参考文献10:Shu Cai and Kevin Knight: Smatch: an Evaluation Metric for Semantic Feature Structures, In Proceedings of the 51st Annual Meeting of the Association for Computational Linguistics, ACL 2013, (2013).
参考文献11:Peter Anderson, Basura Fernando, Mark Johnson and Stephen Gould: SPICE: Semantic Propositional Image Caption Evaluation, In Proceedings of the 14th European Conference on Computer Vision, ECCV 2016, (2016).
なお、上記の実施の形態では、各意味タプル間の類似度を計算する際には、動作主と述語との関係(arg1)であっても、名詞間の修飾関係(nmod)であっても、同じ重みで類似度を計算する場合について説明したが、simrel(r1,r2)を変更することにより、意味タプルの relationによって重みを変えてもよい。
また、上記の実施の形態では、UDepLambdaの論理形式型の意味表現を用いたが、 Abstract Meaning Representation(AMR)など他の論理形式型の意味表現や、意味グラフ型意味表現を用いてもよい。図7に、上記実施の形態で用いた入力文S1及びS2と同じ2文を意味グラフ型意味解析によって解析した例を示す。意味グラフの各ノードは、図3に示す論理形式型意味表現の変数にあたり、図7の例では、ノード内に、そのノードに対応する変数を明示している。また、ノード間を接続するエッジには、エッジの両端のノードに対応する変数間の関係を示すラベルが付与されている。また、各ノードが示す変数に対応する概念が、葉ノードとして各ノードに接続されている。この各ノードに対応する変数、エッジに付与されたラベル、及び葉ノードが示す概念を用いて、上記実施の形態と同様の手順を行うことで、図4と同じ意味タプルを抽出することができる。意味タプルの抽出以降は、上記実施の形態の論理形式型意味表現の場合と同様に意味タプルのアライメント及び類似度の計算を行うことが可能である。
また、例えば、上記実施の形態では、文比較装置10の各機能部を、プログラムを実行することによって実現する場合を例に説明したが、これに限定されない。文比較装置10の各機能部を、FPGA(Field-Programmable Gate Array)等のハードウェアで実現してもよいし、ハードウェアとソフトウェアとの組み合わせで実現してもよい。
また、本願明細書中において、プログラムが予めインストールされている実施の形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能であるし、ネットワークを介して提供することも可能である。
10 文比較装置
12 言語解析部
14 意味解析部
16 意味表現比較部
18 意味タプル変換部
20 意味タプルアライメント部
22 結果出力部
32 言語解析モデル
34 意味解析モデル
36 概念間類似計算モデル

Claims (6)

  1. 自然言語で記述された2つの入力文の各々の文法的な言語の構文構造を解析する言語解析部と、
    前記言語解析部による解析結果に基づいて、前記2つの入力文の各々の意味的な構造を解析する意味解析部と、
    前記意味解析部による解析結果に基づいて、前記入力文同士を比較して、前記入力文間の類似度を計算する意味表現比較部と、を含み、
    前記意味表現比較部は、
    前記意味解析部の解析結果を、前記入力文中に含まれる概念に対応する変数と概念との関係を示す意味タプルであって、前記変数及び前記概念を第1項及び第2項として含み、前記変数と概念との関係をラベルとして含む意味タプルと、前記変数間の関係を示す意味タプルであって、2つの前記変数を第1項及び第2項として含み、前記変数間の関係をラベルとして含む意味タプルに変換する意味タプル変換部と、
    前記入力文間で、前記意味タプル変換部により変換された前記意味タプル間の組み合わせについて、前記意味タプルのラベル間の類似度、前記意味タプルの第1項間の類似度、及び前記意味タプルの第2項間の類似度を用いて、前記入力文間の類似度を計算し、最も高い入力文間の類似度を与える前記意味タプル間の組み合わせを対応付け結果として出力する意味タプルアライメント部と、を含む
    比較装置。
  2. 前記意味解析部は、文の意味的な構造を論理式により表現する論理形式型意味表現により、前記2つの入力文の各々の意味的な構造を解析する請求項1に記載の文比較装置。
  3. 前記意味解析部は、文に含まれる概念に対応するノード間をノード間の意味的な関係に基づいてエッジで接続した意味グラフにより、前記2つの入力文の各々の意味的な構造を解析する請求項1に記載の文比較装置。
  4. 前記意味タプル変換部は、前記変数間の関係を示す意味タプルのうち、前記変数間の関係及び前記意味タプルに含まれる変数の一方が共通する意味タプルに基づいて、前記意味タプルに含まれる他方の変数を組み合わせた、拡張意味タプルを追加する請求項1~請求項3のいずれか1項に記載の文比較装置。
  5. 言語解析部と、意味解析部と、意味表現比較部とを含む文比較装置における文比較方法であって、
    前記言語解析部が、自然言語で記述された2つの入力文の各々の文法的な言語の構文構造を解析し、
    前記意味解析部が、前記言語解析部による解析結果に基づいて、前記2つの入力文の各々の意味的な構造を解析し、
    前記意味表現比較部が、前記意味解析部による解析結果に基づいて、前記入力文同士を比較して、前記入力文間の類似度を計算する際に、前記意味解析部の解析結果を、前記入力文中に含まれる概念に対応する変数と概念との関係を示す意味タプルであって、前記変数及び前記概念を第1項及び第2項として含み、前記変数と概念との関係をラベルとして含む意味タプルと、前記変数間の関係を示す意味タプルであって、2つの前記変数を第1項及び第2項として含み、前記変数間の関係をラベルとして含む意味タプルに変換し、前記入力文間で、変換された前記意味タプル間の組み合わせについて、前記意味タプルのラベル間の類似度、前記意味タプルの第1項間の類似度、及び前記意味タプルの第2項間の類似度を用いて、前記入力文間の類似度を計算し、最も高い入力文間の類似度を与える前記意味タプル間の組み合わせを対応付け結果として出力する
    文比較方法。
  6. コンピュータを、請求項1~請求項のいずれか1項に記載の文比較装置の各部として機能させるための文比較プログラム。
JP2018096983A 2018-05-21 2018-05-21 文比較装置、方法、及びプログラム Active JP7088490B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018096983A JP7088490B2 (ja) 2018-05-21 2018-05-21 文比較装置、方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018096983A JP7088490B2 (ja) 2018-05-21 2018-05-21 文比較装置、方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2019204153A JP2019204153A (ja) 2019-11-28
JP7088490B2 true JP7088490B2 (ja) 2022-06-21

Family

ID=68726924

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018096983A Active JP7088490B2 (ja) 2018-05-21 2018-05-21 文比較装置、方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP7088490B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001511564A (ja) 1997-07-22 2001-08-14 マイクロソフト コーポレイション 全体の精度を高めるためにサーチ結果の自然言語処理を用いる情報検索システムのための装置および方法
JP2004110161A (ja) 2002-09-13 2004-04-08 Fuji Xerox Co Ltd テキスト文比較装置
US20040088156A1 (en) 2001-01-04 2004-05-06 Rajaraman Kanagasabai Method of text similarity measurement
JP2014229078A (ja) 2013-05-22 2014-12-08 大学共同利用機関法人情報・システム研究機構 自然言語推論システム、自然言語推論方法及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001511564A (ja) 1997-07-22 2001-08-14 マイクロソフト コーポレイション 全体の精度を高めるためにサーチ結果の自然言語処理を用いる情報検索システムのための装置および方法
US20040088156A1 (en) 2001-01-04 2004-05-06 Rajaraman Kanagasabai Method of text similarity measurement
JP2004110161A (ja) 2002-09-13 2004-04-08 Fuji Xerox Co Ltd テキスト文比較装置
JP2014229078A (ja) 2013-05-22 2014-12-08 大学共同利用機関法人情報・システム研究機構 自然言語推論システム、自然言語推論方法及びプログラム

Also Published As

Publication number Publication date
JP2019204153A (ja) 2019-11-28

Similar Documents

Publication Publication Date Title
Chen et al. Neural symbolic reader: Scalable integration of distributed and symbolic representations for reading comprehension
Li et al. Leveraging linguistic structures for named entity recognition with bidirectional recursive neural networks
Gugnani et al. Implicit skills extraction using document embedding and its use in job recommendation
JP5825676B2 (ja) ノン・ファクトイド型質問応答システム及びコンピュータプログラム
Martschat et al. Latent structures for coreference resolution
US8832064B2 (en) Answer determination for natural language questioning
US10740379B2 (en) Automatic corpus selection and halting condition detection for semantic asset expansion
WO2021010260A1 (ja) 文比較装置、文比較方法、及び文比較プログラム
Li et al. Joint modeling of trigger identification and event type determination in Chinese event extraction
US20170140290A1 (en) Automated Similarity Comparison of Model Answers Versus Question Answering System Output
Yang et al. Extracting commonsense properties from embeddings with limited human guidance
Min et al. LCC-TE: a hybrid approach to temporal relation identification in news text
Derici et al. Question analysis for a closed domain question answering system
Persing et al. Unsupervised argumentation mining in student essays
Reshadat et al. A new open information extraction system using sentence difficulty estimation
Wei et al. Task-specific dependency-based word embedding methods
Lien et al. Semantic parsing for textual entailment
JP7088490B2 (ja) 文比較装置、方法、及びプログラム
Forsberg et al. Learning transducer models for morphological analysis from example inflections
Lima et al. Relation extraction from texts with symbolic rules induced by inductive logic programming
Koto et al. Improved document modelling with a neural discourse parser
Harrington et al. Asknet: Creating and evaluating large scale integrated semantic networks
Wang et al. Contextual compositionality detection with external knowledge bases and word embeddings
Mathew et al. Paraphrase identification of Malayalam sentences-an experience
Chen et al. Enhancing active learning for semantic role labeling via compressed dependency trees

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20180522

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201026

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211015

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211102

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211220

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220517

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220531

R150 Certificate of patent or registration of utility model

Ref document number: 7088490

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150