JP5302922B2 - 自然言語解析装置、方法及びプログラム - Google Patents

自然言語解析装置、方法及びプログラム Download PDF

Info

Publication number
JP5302922B2
JP5302922B2 JP2010064512A JP2010064512A JP5302922B2 JP 5302922 B2 JP5302922 B2 JP 5302922B2 JP 2010064512 A JP2010064512 A JP 2010064512A JP 2010064512 A JP2010064512 A JP 2010064512A JP 5302922 B2 JP5302922 B2 JP 5302922B2
Authority
JP
Japan
Prior art keywords
character
dependency
type
source
dependence
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
JP2010064512A
Other languages
English (en)
Other versions
JP2011198075A (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.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan Corp
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 Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2010064512A priority Critical patent/JP5302922B2/ja
Publication of JP2011198075A publication Critical patent/JP2011198075A/ja
Application granted granted Critical
Publication of JP5302922B2 publication Critical patent/JP5302922B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Machine Translation (AREA)

Description

本発明は、自然言語解析装置、方法及びプログラムに関する。
従来より、日本語の文の解析では、形態素解析を行った単語(形態素)列を文節としてまとめ、その文節間の係り受け関係(依存関係)で解析結果を表現することが主流である。この場合、係り受け解析の手法は、事前に文頭から文末までスキャンして形態素解析を行う必要があり、形態素解析後にまた文頭に戻って、文頭から文末までスキャンして文節まとめ上げを行い、文節まとめ上げ後にまた文頭に戻って、文頭から文末までスキャンして係り受け解析を行っている。
この様な日本語の文節間の係り受け関係を解析する技術において、文節まとめ上げと係り受け解析とを1回のスキャンで行う特許文献1が知られている。
特許文献1が開示する技術は、解析対象の文を形態素に分解されたものを入力し、形態素列の各単語(形態素)間の依存関係(係り元とその係り先との決定と、係り関係のタイプの決定との二つ)を決定する処理を、スタックを利用して行う。ここで、この決定された係り関係のタイプは、文節の区切りも表わしている。したがって、特許文献1が開示する技術は、このような依存関係を決定する処理を行うことで、文節まとめ上げと係り受け解析とを同時に行なうことができ、文節まとめ上げと係り受け解析とで独立したモジュールを必要としないと共に、処理を高速化することができる。
特開2009−176062号公報
しかしながら、特許文献1で開示する技術は、文末が明瞭な文を解析対象とする技術であり、解析対象の文を文末まで形態素に分解して形態素解析を行った後に、文節のまとめ上げと文節間の係り受け関係を決定するものである。したがって、特許文献1で開示する技術は、文末が不明瞭な場合には、形態素解析が行われず、文節間の係り受け関係を決定できない。
そこで、文を文末まで形態素に分解して形態素解析を行わなくても、文節間の係り受け関係を決定することができる装置が求められている。
本発明は、解析対象の文を文末まで形態素解析しなくても、文字ごとの係り受け関係を決定することが可能な自然言語解析装置、方法及びプログラムを提供することを目的とする。
本発明では、以下のような解決手段を提供する。
(1) 自然言語文を解析する自然言語解析装置であって、解析対象の文を構成する文字を文字単位で取得する文字取得手段と、取得した文字ごとの依存関係を決定する文字係り受け解析手段と、を備え、前記文字係り受け解析手段は、前記解析対象の文の先頭文字から順に前記文字ごとの依存関係を判定する過程で、係り先が未確定の文字をスタックしていき、依存関係の判定により文字の係り先が決定した後に、スタックに蓄積された文字の依存関係の決定を行って文字の係り受けを決定し、前記文字ごとの依存関係判定は、依存元文字と依存先候補文字とが同一単語内の文字連続を構成することを示すタイプW、依存元文字と依存先候補文字とが同一文節内の単語連続を構成することを示すタイプB、依存元文字が末尾となる文節と、依存先候補文字が末尾となる文節とが文節間の依存関係にあることを示すタイプD、依存関係なしを示すタイプO、及び文節であることを示すタイプEのいずれかであるかを、依存元文字の文字種と依存先候補文字の文字種が同一且つ依存元文字の直後に依存先候補文字がある場合に、当該依存元文字は前記タイプWと判定し、依存元文字の文字種と依存先候補文字の文字種が異なり且つ依存元文字の直後に依存先候補文字がある場合に、当該依存元文字は前記タイプBと判定し、依存元文字が「の」であって且つ依存先候補文字が格助詞に用いられる文字の場合に、当該依存元文字は前記タイプDと判定し、上記以外の場合に当該依存元文字は前記タイプOと判定し、依存元文字が文末の場合に当該依存元文字は前記タイプEと判定する、自然言語解析装置。
(1)の構成によれば、本発明に係る自然言語解析装置は、解析対象の文を構成する文字を文字単位で取得し、取得した文字ごとの依存関係を決定する。当該解析対象の文の先頭文字から順にこの文字ごとの依存関係を決定する過程で、自然言語解析装置は、係り先が未確定の文字をスタックしていき、依存関係の判定により文字の係り先が決定した後に、スタックに蓄積された文字の依存関係の決定を行って文字の係り受けを決定する。
したがって、本発明に係る自然言語解析装置は、依存関係が未確定な文字をスタックに蓄積しながら文字ごとの係り受け解析をするので、解析対象の文を文末まで形態素解析しなくても、文字ごとの係り受け関係を決定することができる。
(2) 前記文字係り受け解析手段における依存関係の判定は、依存元及び依存先候補の文字の種類と、文字の位置の関係とに応じた判定結果のタイプを対応付けた文法定義テーブルに基づいて行う、(1)に記載の自然言語解析装置。
(2)の構成によれば、当該自然言語解析装置は、文字ごとの依存関係の判定を、依存元及び依存先候補の文字の種類と、文字の位置の関係とに応じた判定結果のタイプを対応付けた文法定義テーブルに基づいて行う。
したがって、当該自然言語解析装置は、文法定義テーブルに基づいて文字ごとの依存関係を決定するので、解析対象の文を文末まで形態素解析しなくても、文字ごとの係り受け関係を決定することができる。
(3) 前記文字係り受け解析手段における依存関係の判定は、SVMにより機械学習された文法ルールに基づいて行う、(1)又は(2)に記載の自然言語解析装置。
(3)の構成によれば、当該自然言語解析装置は、文字ごとの依存関係の判定を、SVM(Support Vector Machine)により機械学習された文法ルールに基づいて行う。したがって、当該自然言語解析装置は、SVMにより文字ごとの依存関係を決定することができる。
(4) 自然言語解析装置が、自然言語文を解析する自然言語解析方法であって、解析対象の文を構成する文字を文字単位で取得するステップと、取得した文字ごとの依存関係を決定する文字係り受け解析ステップと、を含み、前記文字係り受け解析ステップは、前記解析対象の文の先頭文字から順に前記文字ごとの依存関係を判定する過程で、係り先が未確定の文字をスタックしていき、依存関係の判定により文字の係り先が決定した後に、スタックに蓄積された文字の依存関係の決定を行って文字の係り受けを決定し、前記文字ごとの依存関係判定は、依存元文字と依存先候補文字とが同一単語内の文字連続を構成することを示すタイプW、依存元文字と依存先候補文字とが同一文節内の単語連続を構成することを示すタイプB、依存元文字が末尾となる文節と、依存先候補文字が末尾となる文節とが文節間の依存関係にあることを示すタイプD、依存関係なしを示すタイプO、及び文節であることを示すタイプEのいずれかであるかを、依存元文字の文字種と依存先候補文字の文字種が同一且つ依存元文字の直後に依存先候補文字がある場合に、当該依存元文字は前記タイプWと判定し、依存元文字の文字種と依存先候補文字の文字種が異なり且つ依存元文字の直後に依存先候補文字がある場合に、当該依存元文字は前記タイプBと判定し、依存元文字が「の」であって且つ依存先候補文字が格助詞に用いられる文字の場合に、当該依存元文字は前記タイプDと判定し、上記以外の場合に当該依存元文字は前記タイプOと判定し、依存元文字が文末の場合に当該依存元文字は前記タイプEと判定する、自然言語解析方法。
したがって、本発明に係る自然言語解析方法は、当該自然言語解析装置が、依存関係が未確定な文字をスタックに蓄積しながら文字ごとの係り受け解析をするので、解析対象の文を文末まで形態素解析しなくても、文字ごとの係り受け関係を決定することができる。
(5) 自然言語文を解析する自然言語解析プログラムであって、コンピュータに、解析対象の文を構成する文字を文字単位で取得するステップと、取得した文字ごとの依存関係を決定する文字係り受け解析ステップと、を実行させ、前記文字係り受け解析ステップは、前記解析対象の文の先頭文字から順に前記文字ごとの依存関係を判定する過程で、係り先が未確定の文字をスタックしていき、依存関係の判定により文字の係り先が決定した後に、スタックに蓄積された文字の依存関係の決定を行って文字の係り受けを決定し、前記文字ごとの依存関係判定は、依存元文字と依存先候補文字とが同一単語内の文字連続を構成することを示すタイプW、依存元文字と依存先候補文字とが同一文節内の単語連続を構成することを示すタイプB、依存元文字が末尾となる文節と、依存先候補文字が末尾となる文節とが文節間の依存関係にあることを示すタイプD、依存関係なしを示すタイプO、及び文節であることを示すタイプEのいずれかであるかを、依存元文字の文字種と依存先候補文字の文字種が同一且つ依存元文字の直後に依存先候補文字がある場合に、当該依存元文字は前記タイプWと判定し、依存元文字の文字種と依存先候補文字の文字種が異なり且つ依存元文字の直後に依存先候補文字がある場合に、当該依存元文字は前記タイプBと判定し、依存元文字が「の」であって且つ依存先候補文字が格助詞に用いられる文字の場合に、当該依存元文字は前記タイプDと判定し、上記以外の場合に当該依存元文字は前記タイプOと判定し、依存元文字が文末の場合に当該依存元文字は前記タイプEと判定する、プログラム。
したがって、本発明に係る自然言語解析プログラムを自然言語解析装置に導入して実行することにより、当該自然言語解析装置は、依存関係が未確定な文字をスタックに蓄積しながら文字ごとの係り受け解析をするので、解析対象の文を文末まで形態素解析しなくても、文字ごとの係り受け関係を決定することができる。
本発明によれば、自然言語解析処理において、解析対象の文を文末まで形態素解析しなくても、文字ごとの係り受け関係を決定することができる。
本発明の一実施形態に係る自然言語解析装置の構成例を示す図である。 本発明の一実施形態に係る自然言語解析装置において、SVMを用いた場合の依存関係判定部の構成例を示す図である。 本発明の一実施形態に係る自然言語解析装置における解析文字格納部の例を示す図である。 本発明の一実施形態に係る自然言語解析装置における文法定義テーブルの例を示す図である。 本発明の一実施形態に係る自然言語解析装置の係り受け解析処理部の具体的な処理例を示す図である。 図5に続く、係り受け解析処理部の具体的な処理例を示す図である。 図6に続く、係り受け解析処理部の具体的な処理例を示す図である。 図7に続く、係り受け解析処理部の具体的な処理例を示す図である。 図8に続く、係り受け解析処理部の具体的な処理例を示す図である。 図9に続く、係り受け解析処理部の具体的な処理例を示す図である。 図10に続く、係り受け解析処理部の具体的な処理例を示す図である。
以下、本発明の実施形態について図を参照しながら説明する。
本実施形態は、コンピュータ及びその周辺装置に適用される。本実施形態における各部は、コンピュータ及びその周辺装置が備えるハードウェア並びに該ハードウェアを制御するソフトウェアによって構成される。
上記ハードウェアには、制御部としてのCPU(Central Processing Unit)の他、記憶部、通信装置、表示装置及び入力装置が含まれる。記憶部としては、例えば、メモリ(RAM:Random Access Memory、ROM:Read Only Memory等)、ハードディスクドライブ(HDD:Hard Disk Drive)及び光ディスク(CD:Compact Disk、DVD:Digital Versatile Disk等)ドライブが挙げられる。通信装置としては、例えば、各種有線及び無線インターフェース装置が挙げられる。表示装置としては、例えば、液晶ディスプレイやプラズマディスプレイ等の各種ディスプレイが挙げられる。入力装置としては、例えば、キーボード及びポインティング・デバイス(マウス、トラッキングボール等)が挙げられる。
上記ソフトウェアには、上記ハードウェアを制御するコンピュータ・プログラムやデータが含まれる。コンピュータ・プログラムやデータは、記憶部により記憶され、制御部により適宜実行、参照される。また、コンピュータ・プログラムやデータは、通信回線を介して配布されることも可能であり、CD−ROM等のコンピュータ可読媒体に記録して配布されることも可能である。
図1は本発明の一実施形態に係る自然言語解析装置10の構成例を示す図である。なお、以下では日本語を対象とした例について説明するが、文節に区切ることが可能で、文節間の係り受け関係が存在する言語であれば同様に適用することができる。
図1において、自然言語解析装置10は、解析対象の文を構成する文字を文字単位で取得する解析対象文字入力部101と、この解析対象文字入力部101により入力された文字から、取得した文字ごとの依存関係を決定する係り受け解析処理部102とを備える。係り受け解析処理部102は、解析対象の文の先頭文字から順に文字ごとの依存関係を決定し、解析結果を解析文字格納部108に格納する。解析文字格納部108のデータ構造については、図3において説明する。
また、自然言語解析装置10は、係り受け解析処理部102により作業用データ領域として用いられる依存元文字ID格納エリア105と、依存先候補文字ID格納エリア106と、依存先未決スタック107と、係り受け解析処理部102の処理において文字間の依存関係の判定に用いられる依存関係判定部103と、解析結果を出力する解析結果出力部104とを備えている。
依存元文字ID格納エリア105は、処理過程で依存元となる文字IDを保持し、依存先候補文字ID格納エリア106は、処理過程で依存先候補となる文字IDを保持し、依存先未決スタック107は、依存先が決まらなかった依存元の文字IDを後入れ先出し(LIFO:Last In First Out)で保持する。
また、依存関係判定部103は、文法定義テーブル110を有している。そして、係り受け解析処理部102は、依存関係判定部103により文字の係り先が決定された後に、依存先未決スタック107に蓄積された文字の依存関係の決定を行う。ここで、文法定義テーブル110は、依存元と依存先との関係をIF―THEN形式等のデータ構造として保持するほか、SVMによる機械学習により生成されたモデルとして保持する場合も含む。文法定義テーブル110の例については、図4において後述する。
図2は、本発明の一実施形態に係る自然言語解析装置10において、SVMを用いた場合の依存関係判定部103の構成例を示す図である。
図2において、依存関係判定部103は、機械学習のための教師データを入力する教師データ入力部1031と、この教師データ入力部1031により入力された教師データに基づいてSVMにより機械学習を行う機械学習部1032と、機械学習により生成されたモデルを保持する文法ルール記憶部(例えば、図4において後述する文法定義テーブル110に相当)1033とを備えている。
また、依存関係判定部103は、係り受け解析処理部102(図1)から依存元文字IDと、依存先候補文字IDとを引数に依存関係判定要求を受け付ける依存関係判定要求受付部1034と、この依存関係判定要求受付部1034で受け付けた依存関係判定要求に基づき、文法ルール記憶部1033を用いて依存関係を判定し、判定結果を係り受け解析処理部102に返す依存関係判定実行部1035とを備えている。
図3は、本発明の一実施形態に係る自然言語解析装置10における解析文字格納部108の例を示す図である。解析文字格納部108は、一文を構成する文字ごとに、文字を識別する「文字ID」フィールドと、文字が格納される「文字コード」フィールドと、文字の属性のうち、例えば、文字の種類(例えば、ひらがなや、カタカナ、英数字、漢字、記号等)である文字種を示す「文字種」フィールドと、依存先の文字IDを示す「依存先」フィールドと、依存先の文字との依存関係のタイプを示す「タイプ」フィールドとを含んでいる。なお、文字解析の初期状態は、「文字ID」のフィールドが埋められ、「文字コード」、「文字種」、「依存先」及び「タイプ」のフィールドはブランクである。図3が示す例は、自然言語解析装置10による係り受け解析が終了し、文字の係り先の文字IDが依存先に格納され、単語区切が設定され、文節区切が設定されていることを示す例である。さらに、図3が示す例は、矢印221が文字IDによる文字の係り先を示し、矢印211が設定された単語区切を示し、矢印212が設定された文節区切を示す例である。
図4は、本発明の一実施形態に係る自然言語解析装置10における文法定義テーブル110の例を示す図である。文法定義テーブル110は、依存元及び依存先候補の文字種、位置関係(文章を構成する文字において、文字同士の前後の関係)等の条件と、判定結果のタイプとを対応付けている。
ここで、判定結果のタイプ「W」は、「依存元文字と依存先候補文字とが同一単語内の文字連続を構成する」ことを示すタイプである。判定結果のタイプ「B」は、「依存元文字と依存先候補文字とが同一文節内の単語連続を構成する」ことを示すタイプである。判定結果のタイプ「D」は、「依存元文字が末尾となる文節と、依存先候補文字が末尾となる文節とが文節間の依存関係にある」ことを示すタイプである。判定結果のタイプ「O」は、「依存関係なし」を示すタイプである。判定結果のタイプ「E」は、「文末である」ことを示すタイプである。
さらに、上記のタイプの判定条件の一例として、例えば、「依存元文字の文字種と依存先候補文字の文字種とが同一 AND 依存元文字の直後に依存先候補文字」の場合に、依存元文字はWと判定される。また、「依存元文字と依存先候補文字との文字種が異なる AND 依存元文字の直後に依存先候補文字」の場合に、依存元文字はBと判定される。また、「依存元文字が「の」 AND 依存先候補文字が格助詞に用いられる文字」の場合に、依存元文字はDと判定される。上記以外の場合に、Oと判定される。そして、文末の場合に、Eと判定される。ここで、この様な条件は例であり、これに限られるものではない。この様な条件は、機械学習により作成され、文法定義テーブル110に記憶される。
ここで、本発明の一実施形態に係る自然言語解析装置10の解析処理を高水準言語で示す。
procedure analyze(m,h,t)
var s:stack
begin
Push(−1,s)
m[0]=get_token()
Push(0,s)
m[1]=get_token()
i=1
while (m[i]!=EOS) do begin
j=Pop(s)
m[i+1]=get_token()
while (j!=−1 && (Dep(j,i,m,t)||(m[i+1]==EOS)) do begin
h[j]=i
j=Pop(s)
end
Push(j,s)
Push(i,s)
++i;
end
j=Pop(s)
h[j]=i
t[j]=“E”
end
上述の解析処理において、mは形態素(文字)の配列、hは係り先を記憶する配列、tは判定結果のタイプを記憶する配列である。また、Push(値,s)はスタックに値をプッシュする関数であり、get_token()は1文字を取得する関数であり、Pop(s)はスタックから値をポップする関数であり、Dep(j,i,m,t)はj番目の文字がi番目の文字に依存するか否かを判定する関数である。
すなわち、Dep関数は、依存関係判定部103に相当し、j番目の文字(依存元文字ID)とi番目の文字(依存先候補文字ID)とを引数に依存関係判定要求を受け付けて、依存元文字と依存先候補文字との判定条件を記憶する文法定義テーブル110を用いて文字種や種々の属性を判断して格納し、依存関係を判定する。そして、Dep関数は、j番目の文字がi番目の文字に依存する(係る)と判定する場合に「True」を返し、依存しない(係らない)と判定する場合に「False」を返す。
なお、Dep関数が判断する文字種は、簡単のため上記の例を示したが、これに限られるものではない。具体的には、その他の文字種の例として、漢数字になりうる文字(○の記号や、漢字の中の一、二、・・・壱、弐、百、千、万等)や、一般的には記号と見なされているが、仮名と同類で扱ったほうがよい文字(濁点、半濁点、長音の記号等)や、名前の一部に使われる確率が高い文字(子、優、宏、朗、・・・)等も含まれる。さらに、Dep関数の判断の例として、Dep関数は、解析対象の文字の種類が漢数字になりうる文字である場合、当該文字は漢数字内の文字連続を構成すると判断する場合がある。また、解析対象の文字の種類が名前の一部に使われる確率が高い文字である場合、当該文字は名前内の文字連続を構成すると判断する場合がある。また、一つの文字が複数の文字種を有すると判断する場合もある。具体的には、「○」が、記号であると共に、漢数字の一部である、という二つの文字種を有すると判断する場合である。このように、Dep関数は、文字の種々の属性を参照して依存関係を判定する。
以下、形態素解析結果「メグが彼にあのペンをあげた。」(図3)という具体例について、図5〜図11を用いて上述の解析処理を説明する。図5は、本発明の一実施形態に係る自然言語解析装置10の係り受け解析処理部102の具体的な処理例を示す図である。図6〜図11は、それぞれ前の図に続く、係り受け解析処理部102の具体的な処理例を示す図である。
図5において、係り受け解析処理部102は、処理を開始すると、依存先未決スタック107に「−1」をプッシュして、文字ID「0」の文字「メ」を解析文字格納部108の文字コードに格納する。引き続き、係り受け解析処理部102は、依存先未決スタック107に「0」をプッシュして、文字ID「1」の文字「グ」を解析文字格納部108の文字コードに格納する。次に、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字IDを初期値「1」に設定する。
図6(1)において、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字IDが示す文字コードがEOSではないので、依存先未決スタック107からポップした値「0」を依存元文字ID格納エリア105の依存元文字IDに設定する。次に、係り受け解析処理部102は、依存先候補文字ID+1(即ち1+1=「2」)の文字「が」を解析文字格納部108の文字コードに格納する。
次に、図6(2)において、係り受け解析処理部102は、依存元文字ID格納エリア105の依存元文字IDが「−1」ではなく、依存関係判定部103の判定結果が「True」なので、以下の処理を行う。より具体的には、依存関係判定部103は、文字ID「0」の文字「メ」の文字種に「カタカナ」を格納し、文字ID「1」の文字「グ」の文字種に「カタカナ」を格納し、「メグ」が単語辞書にあるので、「メ」が「グ」に「係る」とする判定(機械学習による判定)を行い、「True」を返す。係り受け解析処理部102は、依存関係判定部103の判定結果が「W」であるので、解析文字格納部108の依存元文字のタイプに判定結果の「W」を設定し、依存先に依存先候補文字ID格納エリア106の依存先候補文字ID「1」を設定する。次に、係り受け解析処理部102は、依存先未決スタック107からポップした値「−1」を依存元文字ID格納エリア105の依存元文字IDに設定する。
図6(3)において、係り受け解析処理部102は、依存元文字ID格納エリア105の依存元文字IDが「−1」であるので、依存先未決スタック107に依存元文字ID格納エリア105の依存元文字ID「−1」をプッシュする。さらに、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字ID「1」をプッシュする。次に、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字IDをインクリメントして(1+1=)「2」にする。
図7(1)において、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字IDが示す文字コードがEOSではないので、依存先未決スタック107からポップした値「1」を依存元文字ID格納エリア105の依存元文字IDに設定する。次に、係り受け解析処理部102は、依存先候補文字ID+1(即ち2+1=「3」)の文字「彼」を解析文字格納部108の文字コードに格納する。
図7(2)において、係り受け解析処理部102は、依存元文字ID格納エリア105の依存元文字IDが「−1」ではなく、依存関係判定部103の判定結果が「True」なので、以下の処理を行う。より具体的には、依存関係判定部103は、文字ID「2」の文字「が」の文字種に「ひらがな」を格納し、「メグ」が単語辞書にある、「グが」が単語辞書にない、「グが」が文字種が異なる等、注目する文字及びその文字の前後の素性を見ることで「グ」が単語の区切りで、かつ「が」が助詞等の情報を使い、「が」に係るとする判定(機械学習による判定)を行い、「True」を返す。係り受け解析処理部102は、依存関係判定部103の判定結果が「B」であるので、解析文字格納部108の依存元文字のタイプに判定結果の「B」を設定し、依存先に依存先候補文字ID格納エリア106の依存先候補文字ID「2」を設定する。次に、係り受け解析処理部102は、依存先未決スタック107からポップした値「−1」を依存元文字ID格納エリア105の依存元文字IDに設定する。
図7(3)において、係り受け解析処理部102は、依存元文字ID格納エリア105の依存元文字IDが「−1」であるので、依存先未決スタック107に依存元文字ID格納エリア105の依存元文字ID「−1」をプッシュする。さらに、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字ID「2」をプッシュする。次に、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字IDをインクリメントして(2+1=)「3」にする。
図8(1)において、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字IDが示す文字コードがEOSではないので、依存先未決スタック107からポップした値「2」を依存元文字ID格納エリア105の依存元文字IDに設定する。次に、係り受け解析処理部102は、依存先候補文字ID+1(即ち3+1=「4」)の文字「に」を解析文字格納部108の文字コードに格納する。
図8(2)において、係り受け解析処理部102は、依存元文字ID格納エリア105の依存元文字IDが「−1」ではなく、依存関係判定部103の判定結果が「False」なので、以下の処理を行う。より具体的には、依存関係判定部103は、文字ID「3」の文字「彼」の文字種に「漢字」を格納し、「が」は「彼」に「係らない」とする判定(機械学習による判定)を行い、「False」を返す。係り受け解析処理部102は、依存関係判定部103の判定結果が「O」であるので、解析文字格納部108の依存元文字のタイプに判定結果「O」を設定し、依存先を設定しない(未決にする)。
図8(3)において、係り受け解析処理部102は、依存先未決スタック107に依存元文字ID格納エリア105の依存元文字ID「2」をプッシュする。さらに、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字ID「3」をプッシュする。次に、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字IDをインクリメントして(3+1=)「4」にする。
図9(1)において、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字IDが示す文字コードがEOSではないので、依存先未決スタック107からポップした値「3」を依存元文字ID格納エリア105の依存元文字IDに設定する。次に、係り受け解析処理部102は、依存先候補文字ID+1(即ち4+1=「5」)の文字「あ」を解析文字格納部108の文字コードに格納する。
図9(2)において、係り受け解析処理部102は、依存元文字ID格納エリア105の依存元文字IDが「−1」ではなく、依存関係を依存関係判定部103の判定結果が「True」なので、以下の処理を行う。より具体的には、依存関係判定部103は、文字ID「4」の文字「に」の文字種に「ひらがな」を格納し、「彼」が「に」に「係る」とする判定(機械学習による判定)を行い、「True」を返す。係り受け解析処理部102は、依存関係判定部103の判定結果が「B」であるので、解析文字格納部108の依存元文字のタイプに判定結果の「B」を設定し、依存先に依存先候補文字ID格納エリア106の依存先候補文字ID「4」を設定する。次に、係り受け解析処理部102は、依存先未決スタック107からポップした値「2」を依存元文字ID格納エリア105の依存元文字IDに設定する。次に、係り受け解析処理部102は、依存元文字ID格納エリア105の依存元文字IDが「−1」ではなく、依存関係を依存関係判定部103の判定結果が「False」なので、以下の処理を行う。より具体的には、依存関係判定部103は、「が」が「に」に「係らない」とする判定(機械学習による判定)を行い、「False」を返す。係り受け解析処理部102は、依存関係判定部103の判定結果が「O」であるので、解析文字格納部108の依存元文字のタイプに判定結果「O」を設定し、依存先を設定しない(未決にする)。
図9(3)において、係り受け解析処理部102は、依存先未決スタック107に依存元文字ID格納エリア105の依存元文字ID「2」をプッシュする。さらに、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字ID「4」をプッシュする。次に、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字IDをインクリメントして(4+1=)「5」にする。
以下同様に、係り受け解析処理部102は、依存先が未決の文字IDをスタックしていき、文字間の依存関係の判定により文字の係り先が決定した後に、スタックに蓄積された文字IDの依存関係の決定を行って文字の係り受けを決定する。
文末近くでの処理を図10で説明する。図10が示す例は、依存先未決スタック107に、依存先が未決の3個の文字IDと、次の処理対象の文字IDとがスタックされており、依存先候補文字ID格納エリア106の依存先候補文字IDが「13」である状態である。
図10(1)において、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字IDが示す文字コードがEOSではないので、依存先未決スタック107からポップした値「12」を依存元文字ID格納エリア105の依存元文字IDに設定する。次に、係り受け解析処理部102は、依存先候補文字ID+1(即ち13+1=「14」)の文字「EOS」を解析文字格納部108の文字コードに格納する。
図10(2)において、係り受け解析処理部102は、依存元文字ID格納エリア105の依存元文字IDが「−1」ではなく、かつ、依存先候補文字ID格納エリア106の依存先候補文字ID+1が示す文字コードがEOSであるので、以下の処理を行う。より具体的には、依存関係判定部103は、文字ID「13」の文字「。」の文字種に「記号」を格納し、「た」が「。」に「係る」とする判定(機械学習による判定)を行い、「True」を返す。係り受け解析処理部102は、依存関係判定部103の判定結果が「B」であるので、解析文字格納部108の依存元文字のタイプに判定結果の「B」を設定し、依存先に依存先候補文字ID格納エリア106の依存先候補文字ID「13」を設定する。次に、係り受け解析処理部102は、依存先未決スタック107からポップした値「9」を依存元文字ID格納エリア105の依存元文字IDに設定する。
図10(3)において、係り受け解析処理部102は、依存元文字ID格納エリア105の依存元文字IDが「−1」ではなく、かつ、依存先候補文字ID格納エリア106の依存先候補文字ID+1が示す文字コードがEOSであるので、解析文字格納部108の依存元文字ID「9」のタイプに「D」を設定し、依存先に依存先候補文字ID格納エリア106の依存先候補文字ID「13」を設定する。次に、係り受け解析処理部102は、依存先未決スタック107からポップした値「4」を依存元文字ID格納エリア105の依存元文字IDに設定する。
図11(1)において、係り受け解析処理部102は、依存元文字ID格納エリア105の依存元文字IDが「−1」ではなく、かつ、依存先候補文字ID格納エリア106の依存先候補文字ID+1が示す文字コードがEOSであるので、解析文字格納部108の依存元文字ID「4」のタイプに「D」を設定し、依存先に依存先候補文字ID格納エリア106の依存先候補文字ID「13」を設定する。次に、係り受け解析処理部102は、依存先未決スタック107からポップした値「2」を依存元文字ID格納エリア105の依存元文字IDに設定する。
図11(2)において、係り受け解析処理部102は、依存元文字ID格納エリア105の依存元文字IDが「−1」ではなく、かつ、依存先候補文字ID格納エリア106の依存先候補文字ID+1が示す文字コードがEOSであるので、解析文字格納部108の依存元文字ID「2」のタイプに「D」を設定し、依存先に依存先候補文字ID格納エリア106の依存先候補文字ID「13」を設定する。次に、係り受け解析処理部102は、依存先未決スタック107からポップした値「−1」を依存元文字ID格納エリア105の依存元文字IDに設定する。
図11(3)において、係り受け解析処理部102は、依存元文字ID格納エリア105の依存元文字IDが「−1」であるので、依存先未決スタック107に依存元文字ID格納エリア105の依存元文字ID「−1」をプッシュする。さらに、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字ID「13」をプッシュする。次に、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字IDをインクリメントして(13+1=)「14」にする。そして、係り受け解析処理部102は、依存先候補文字ID格納エリア106の依存先候補文字IDが示す文字コードがEOSであるので、依存先未決スタック107からポップした値「13」の依存先に依存先候補文字ID格納エリア106の依存先候補文字ID「14」を設定し、解析文字格納部108の依存元文字ID「13」のタイプに「E」を設定し、処理を終了する。このようにして、自然言語解析装置10は、例えば「メグが彼にあのペンをあげた。」という文を構成する文字を文字単位で取得し、取得した文字ごとの依存関係を図11(2)の様に決定する。
本実施形態によれば、自然言語解析装置10は、解析対象の文を構成する文字を文字単位で取得し、取得した文字ごとの依存関係を決定する。そして、自然言語解析装置10は、当該解析対象の文の先頭文字から順にこの文字ごとの依存関係を決定する過程で、係り先が未確定の文字を依存先未決スタック107にスタックしていき、依存関係の判定により文字の係り先が決定した後に、依存先未決スタック107に蓄積された文字の依存関係の決定を行って文字の係り受けを決定する。さらに、自然言語解析装置10の依存関係の判定は、依存元及び依存先候補の文字の種類、文字の前後関係の条件に応じた判定結果のタイプを対応付けた文法定義テーブル110に基づいて行う。さらに、自然言語解析装置10の依存関係の判定は、SVMにより機械学習された文法ルールに基づいて行う。したがって、自然言語解析装置10は、依存関係が未確定な文字を蓄積しながら文字ごとの係り受け解析をするので、解析対象の文を文末まで形態素解析しなくても、文字ごとの係り受け関係を決定することができる。
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
10 自然言語解析装置
101 解析対象文字入力部
102 係り受け解析処理部
103 依存関係判定部
104 解析結果出力部
105 依存元文字ID格納エリア
106 依存先候補文字ID格納エリア
107 依存先未決スタック
108 解析文字格納部
110 文法定義テーブル
1031 教師データ入力部
1032 機械学習部
1033 文法ルール記憶部
1034 依存関係判定要求受付部
1035 依存関係判定実行部

Claims (5)

  1. 自然言語文を解析する自然言語解析装置であって、
    解析対象の文を構成する文字を文字単位で取得する文字取得手段と、
    取得した文字ごとの依存関係を決定する文字係り受け解析手段と、を備え、
    前記文字係り受け解析手段は、
    前記解析対象の文の先頭文字から順に前記文字ごとの依存関係を判定する過程で、係り先が未確定の文字をスタックしていき、依存関係の判定により文字の係り先が決定した後に、スタックに蓄積された文字の依存関係の決定を行って文字の係り受けを決定し、
    前記文字ごとの依存関係判定は、
    依存元文字と依存先候補文字とが同一単語内の文字連続を構成することを示すタイプW、依存元文字と依存先候補文字とが同一文節内の単語連続を構成することを示すタイプB、依存元文字が末尾となる文節と、依存先候補文字が末尾となる文節とが文節間の依存関係にあることを示すタイプD、依存関係なしを示すタイプO、及び文節であることを示すタイプEのいずれかであるかを、依存元文字の文字種と依存先候補文字の文字種が同一且つ依存元文字の直後に依存先候補文字がある場合に、当該依存元文字は前記タイプWと判定し、依存元文字の文字種と依存先候補文字の文字種が異なり且つ依存元文字の直後に依存先候補文字がある場合に、当該依存元文字は前記タイプBと判定し、依存元文字が「の」であって且つ依存先候補文字が格助詞に用いられる文字の場合に、当該依存元文字は前記タイプDと判定し、上記以外の場合に当該依存元文字は前記タイプOと判定し、依存元文字が文末の場合に当該依存元文字は前記タイプEと判定する、
    自然言語解析装置。
  2. 前記文字係り受け解析手段における依存関係の判定は、依存元及び依存先候補の文字の種類と、文字の位置の関係とに応じた判定結果のタイプを対応付けた文法定義テーブルに基づいて行う、請求項1に記載の自然言語解析装置。
  3. 前記文字係り受け解析手段における依存関係の判定は、SVMにより機械学習された文法ルールに基づいて行う、請求項1又は2に記載の自然言語解析装置。
  4. 自然言語解析装置が、自然言語文を解析する自然言語解析方法であって、
    解析対象の文を構成する文字を文字単位で取得するステップと、
    取得した文字ごとの依存関係を決定する文字係り受け解析ステップと、を含み、
    前記文字係り受け解析ステップは、
    前記解析対象の文の先頭文字から順に前記文字ごとの依存関係を判定する過程で、係り先が未確定の文字をスタックしていき、依存関係の判定により文字の係り先が決定した後に、スタックに蓄積された文字の依存関係の決定を行って文字の係り受けを決定し、
    前記文字ごとの依存関係判定は、
    依存元文字と依存先候補文字とが同一単語内の文字連続を構成することを示すタイプW、依存元文字と依存先候補文字とが同一文節内の単語連続を構成することを示すタイプB、依存元文字が末尾となる文節と、依存先候補文字が末尾となる文節とが文節間の依存関係にあることを示すタイプD、依存関係なしを示すタイプO、及び文節であることを示すタイプEのいずれかであるかを、依存元文字の文字種と依存先候補文字の文字種が同一且つ依存元文字の直後に依存先候補文字がある場合に、当該依存元文字は前記タイプWと判定し、依存元文字の文字種と依存先候補文字の文字種が異なり且つ依存元文字の直後に依存先候補文字がある場合に、当該依存元文字は前記タイプBと判定し、依存元文字が「の」であって且つ依存先候補文字が格助詞に用いられる文字の場合に、当該依存元文字は前記タイプDと判定し、上記以外の場合に当該依存元文字は前記タイプOと判定し、依存元文字が文末の場合に当該依存元文字は前記タイプEと判定する、自然言語解析方法。
  5. 自然言語文を解析する自然言語解析プログラムであって、コンピュータに、
    解析対象の文を構成する文字を文字単位で取得するステップと、
    取得した文字ごとの依存関係を決定する文字係り受け解析ステップと、を実行させ、
    前記文字係り受け解析ステップは、
    前記解析対象の文の先頭文字から順に前記文字ごとの依存関係を判定する過程で、係り先が未確定の文字をスタックしていき、依存関係の判定により文字の係り先が決定した後に、スタックに蓄積された文字の依存関係の決定を行って文字の係り受けを決定し、
    前記文字ごとの依存関係判定は、
    依存元文字と依存先候補文字とが同一単語内の文字連続を構成することを示すタイプW、依存元文字と依存先候補文字とが同一文節内の単語連続を構成することを示すタイプB、依存元文字が末尾となる文節と、依存先候補文字が末尾となる文節とが文節間の依存関係にあることを示すタイプD、依存関係なしを示すタイプO、及び文節であることを示すタイプEのいずれかであるかを、依存元文字の文字種と依存先候補文字の文字種が同一且つ依存元文字の直後に依存先候補文字がある場合に、当該依存元文字は前記タイプWと判定し、依存元文字の文字種と依存先候補文字の文字種が異なり且つ依存元文字の直後に依存先候補文字がある場合に、当該依存元文字は前記タイプBと判定し、依存元文字が「の」であって且つ依存先候補文字が格助詞に用いられる文字の場合に、当該依存元文字は前記タイプDと判定し、上記以外の場合に当該依存元文字は前記タイプOと判定し、依存元文字が文末の場合に当該依存元文字は前記タイプEと判定する、プログラム。
JP2010064512A 2010-03-19 2010-03-19 自然言語解析装置、方法及びプログラム Active JP5302922B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010064512A JP5302922B2 (ja) 2010-03-19 2010-03-19 自然言語解析装置、方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010064512A JP5302922B2 (ja) 2010-03-19 2010-03-19 自然言語解析装置、方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2011198075A JP2011198075A (ja) 2011-10-06
JP5302922B2 true JP5302922B2 (ja) 2013-10-02

Family

ID=44876182

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010064512A Active JP5302922B2 (ja) 2010-03-19 2010-03-19 自然言語解析装置、方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5302922B2 (ja)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5295576B2 (ja) * 2008-01-24 2013-09-18 ヤフー株式会社 自然言語解析装置、自然言語解析方法および自然言語解析プログラム

Also Published As

Publication number Publication date
JP2011198075A (ja) 2011-10-06

Similar Documents

Publication Publication Date Title
Hirst et al. Bigrams of syntactic labels for authorship discrimination of short texts
JP5362095B2 (ja) インプットメソッドエディタ
US7970600B2 (en) Using a first natural language parser to train a second parser
JP5362353B2 (ja) 文書中のコロケーション誤りを処理すること
US8364470B2 (en) Text analysis method for finding acronyms
US20110093258A1 (en) System and method for text cleaning
US20140316764A1 (en) Clarifying natural language input using targeted questions
US9836447B2 (en) Linguistic error detection
US20140380169A1 (en) Language input method editor to disambiguate ambiguous phrases via diacriticization
Chen et al. Integrating natural language processing with image document analysis: what we learned from two real-world applications
Shatnawi et al. Verification hadith correctness in islamic web pages using information retrieval techniques
US8977538B2 (en) Constructing and analyzing a word graph
Mekki et al. Tokenization of Tunisian Arabic: a comparison between three Machine Learning models
JP5302922B2 (ja) 自然言語解析装置、方法及びプログラム
de Mendonça Almeida et al. Evaluating phonetic spellers for user-generated content in Brazilian Portuguese
Londhe et al. Challenges in multilingual and mixed script sentiment analysis
Eder et al. Stylistic Fingerprints, POS-tags, and Inflected Languages: A Case Study in Polish
CN109960720B (zh) 针对半结构化文本的信息抽取方法
JP5295576B2 (ja) 自然言語解析装置、自然言語解析方法および自然言語解析プログラム
Pla et al. Improving chunking by means of lexical-contextual information in statistical language models
Aydinov et al. Investigation of automatic part-of-speech tagging using CRF, HMM and LSTM on misspelled and edited texts
Jiacuo et al. Tibetan Case Grammar Error Correction Method Based on Neural Networks
Yusuf et al. HindiWSD: A package for word sense disambiguation in Hinglish & Hindi
Sornlertlamvanich Probabilistic language modeling for generalized LR parsing
Radhakrishna Intent Based Utterance Segmentation for Multi IntentNLU

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120312

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121002

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20121101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121203

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: 20130604

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130621

R150 Certificate of patent or registration of utility model

Ref document number: 5302922

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350