JP3930138B2 - 情報解析方法および情報解析プログラムを記憶した媒体 - Google Patents
情報解析方法および情報解析プログラムを記憶した媒体 Download PDFInfo
- Publication number
- JP3930138B2 JP3930138B2 JP06443298A JP6443298A JP3930138B2 JP 3930138 B2 JP3930138 B2 JP 3930138B2 JP 06443298 A JP06443298 A JP 06443298A JP 6443298 A JP6443298 A JP 6443298A JP 3930138 B2 JP3930138 B2 JP 3930138B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- analysis
- pattern symbol
- symbol string
- acceptance
- 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.)
- Expired - Fee Related
Links
- 238000004458 analytical method Methods 0.000 title claims description 293
- 238000000034 method Methods 0.000 claims abstract description 114
- 238000012545 processing Methods 0.000 claims abstract description 105
- 101150060512 SPATA6 gene Proteins 0.000 claims description 55
- 238000004364 calculation method Methods 0.000 claims description 41
- 238000009825 accumulation Methods 0.000 claims description 23
- 230000000644 propagated effect Effects 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 8
- 238000012805 post-processing Methods 0.000 claims description 6
- 239000000284 extract Substances 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 31
- 230000014509 gene expression Effects 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 8
- 230000015572 biosynthetic process Effects 0.000 description 5
- 238000010276 construction Methods 0.000 description 4
- 230000001902 propagating effect Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/19—Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
- G10L15/193—Formal grammars, e.g. finite state automata, context free grammars or word networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
Landscapes
- Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、ワードスポッティングを含む音声認識や文字認識等において、認識結果の単語や文字といった複数の候補が得られるような一般にラティス形式で表現できるような認識処理結果を与えられ、それを解析して利用者の意図した入力系列候補を絞り込むための情報解析方法および情報解析プログラムを記憶した媒体に関する。
【0002】
【従来の技術】
近年、電子計算機技術(コンピュータ技術)の発展により、利用者にとってより自然な方法で種々の情報を計算機に入力することが可能になってきており、その利用を促進する技術が求められるようになってきている。
【0003】
例えば、コンピュータにマイクロフォンと安価なA/Dコンバータが装備されたことにより、利用者はコンピュータに対して、自分の要求を発声すると、コンピュータがそれを音声認識処理することにより、ユーザの要求を解釈するような技術の重要性が増している。
【0004】
また、ぺンタブレットやイメージスキャナ等の普及により、手書き文字や紙面に印刷された文字等を文字認識し、ディジタルデータ化するような要求が一般化してきている。
【0005】
音声認識や文字認識といった認識処理を伴う入力の処理において、従来から問題になっていた点として、一般に、これらの認識処理において利用者の意図する入力が一意に認識結果として得ることができないということがあった。
【0006】
すなわち、入力信号の認識処理においては、100%の認識率を期待することはできず、そのため、一つの発声単語や文字に対して複数の候補が発生することが一般的である。
【0007】
このため、音声で利用者が文発声をしたり、文章を文字認識したりするような場合、候補となる単語や文字が格子状に組み合わされた形式である“ラティス形式”で表現できるような認識結果が得られる。
【0008】
利用者の入力を、一般のアプリケーションプログラムで利用可能にするためには、このような認識結果から利用者の入力として尤もらしい文や文字列を、高速かつ適切に決定するような認識の後処理技術が重要である。
【0009】
そこで、そのための後処理技術を考えてみると、例えば、音声認識や文字認識結果のラティス構造から、利用者の入力した文を決定する後処理の技術がある。
このような後処理技術として、従来、このラティス構造を展開して文候補集合を生成し、各候補に自然言語の構文解釈技術を応用することが考えられる。例えば、特開平5‐197389号公報「音声認識装置」に開示されているような先行発明では、少数の認識対象単語から得られる認識結果のラティス(文章を文字認識したり、あるいは利用者が音声で文発声をしたりするような場合での認識結果であって、候補となる単語や文字が格子状に組み合わされた形式で表現されたもの)を展開しながら、極めて単純な文法からなる文の入力同定に成功している。
【0010】
しかしながら、一般に人対人の対話で想定されるような多数の語棄と複雑な文法からなる文の入力に対する認識結果として得られるラティス構造は、一般に数多くの候補を含んで複雑に接続されているのが一般的である。
【0011】
例えば、「西宮インターチェンジまでどのくらいですか」という発声に対して、ワードスポッティング処理を施した結果の例を、図16に示す。
【0012】
図16では、1行に一つの単語候補が、「入力要素ID:単語表象(認識スコア)信号フレームにおけるこの単語の区間」の形式で示されている。
【0013】
この“0フレーム目”から“40フレーム目”までの音声入力に対して、正しくスポッティングされた4単語を含む合計42単語が得られており、実に38単語が“湧き出し誤り”となっている。
【0014】
このようなワードスポッティング結果から構成されるラティス構造を展開すると、単語間の時間的な前後関係や離れ、重なりなどによる制約を加えたとしても、数百万の単語系列候補が生成されることとなる。このため、ラティスを候補に展開して解析するという手法は計算量、必要メモリ量の両面において現実的ではない。
【0015】
また、候補展開よりも高速な解析手法として、特開平9‐134369号公報「ラティスをキーとした検索を行う辞書検索装置及び方法」に開示されているようなものがある。
【0016】
これは、ラティスの先頭を根とするツリー上に入力ラティスを展開し、トライ辞書を用いてそのツリーを解析することで解析の高速化を図る手法である。そして、この発明では、ツリー上に入力ラティスを展開することで、単純に全候補を展開する方法に対して解析対象候補数をかなり抑えることに成功している。また、その解析に際してもトライ辞書を用いることで高速化が図られている。
【0017】
しかしながら、前記図16のような、より曖味性の大きな入力ラティスに対しては、解析処理回数が無視できないほど多くなると共に、解析途中の候補系列を残しながらトライ辞書を引くための手数が無視できないほど大きくなってしまうという問題があった。
【0018】
【発明が解決しようとする課題】
このように、従来は、利用者の入力の認識結果として得られるラティス構造 (以下、入力ラティスと記す)の解析において、何らかの形でラティスを展開して解析しようとすると、現実的な問題においては莫大な計算量とメモリ量を必要とし、事実上解析が不可能であるという問題があった。
【0019】
本発明の第1の目的は、入力ラティスを展開することなく解析し、高速にその解析結果を得ることができる情報解析方法を提供することにある。
【0020】
【課題を解決するための手段】
上記目的を達成するため、本発明は次のように構成する。
【0021】
第1には、開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフであって、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つようなグラフ構造に変換可能な入力情報を、当該入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列で表される受理可能な受理パターン記号列の集合に基づいて解析し、零個以上の尤もらしい受理パターン記号列を出力する情報解析方法において、
前記開始ノードもしくは終了ノードから前記グラフ構造の解析を開始する解析開始ノード決定ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードが解経路候補の開始点または終了点からある順番で解経路候補に含まれる場合にとり得る受理パターン記号列を計算してノードに記録する受理パターン記号列計算・蓄積ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードに対する解析の経路パターンを網羅したか否かを判定するノード解析網羅判定ステップと、
あるノードについてそのノードの解析経路パターンが網羅された場合に零回以上の受理パターン記号列計算・蓄積ステップの実行によって蓄積されたそのノードへの受理パターン記号列を解析においてそのノードの次に接続されている一個以上のノードに伝播させる受理パターン記号列伝播ステップと、
解析が終了したかどうかを判定する解析終了判定ステップと、
解析が終了した際に前記開始ノードもしくは終了ノードに蓄積されている受理パターン記号列情報を用いて前記解析結果の出力である零個以上の尤もらしい受理パターン記号列を収集し、出力する受理パターン記号列収集・出力ステップとを具備することを特徴とする。
【0022】
すなわち、本発明に係る情報解析方法の全体的な処理の流れを示す図2を参照して説明すると、処理開始により、まず初期化処理S1が行われる。その後終了が選択されるまで、入力に対する解析処理を行うループに入る。そして、入力の認識結果が伝達されると(S2)、それを入力ラティスに再構成し(S5)、入力ラティス上で解釈処理を行って受理可能な入力要素カテゴリ系列の集合を構成し(S3)、得られた入力要素カテゴリ系列集合を元に入力ラティスを再スキャンすることで、受理可能な入力要素系列集合を得る(S4)。ここで文発声に対する音声ワードスポッティングの場合、S3の出力である入力要素カテゴリ系列集合とは受理可能な品詞系列の集合であり、S4の出力である入力要素系列集合とは単語系列の集合となる。
【0023】
すなわち、本発明の第一の特徴は、入力ラティスの解析S3において、後述する品詞系列のハッシュ辞書を用意してそれを参照しながら解析することでラティスを展開することなくかつ高速に解析処理を行い、入力要素カテゴリ系列集合を得ることができるようになることである。更に本発明の第二の特徴は、解析結果として入力要素系列集合が必要な場合、上記の入力要素カテゴリ系列集合を得た後、その入力要素カテゴリ系列集合を元に入力ラティスを再スキャンして受理可能な入力要素系列集合を得ることで、一度のスキャンで入力要素系列集合を得るよりもメモリ効率良く入力要素系列集合が得られるようになることである。
【0024】
本発明によれば、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、与えられた受理可能構文規則を満足する尤もらしい入力要素カテゴリ系列を高速かつ少ないメモリ要求量で導くことが可能となる。
【0025】
さらに、本発明によれば、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、与えられた受理可能構文規則を満足する尤もらしい入力要素系列を高速かつ少ないメモリ要求量で導くことが可能となる。
【0026】
また、第2には本発明は、開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフであって、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つ形式のグラフ構造に変換可能な入力情報を、当該入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列で表される受理可能な受理パターン記号列の集合に基づいて解析することにより、零個以上の尤もらしい受理パターン記号列を出力する情報解析方法において、
前記受理可能な受理パターン記号列のうち、特定の部分系列である部分受理パターン記号列を構成し、また、その部分受理パターン記号列を一つのカテゴリ記号として利用し、受理パターン記号列を再帰的に構成し、階層受理パターン記号列集合を生成する階層受理パターン記号列生成ステップと、
前記階層受理パターン記号列集合の中から、全てのカテゴリ記号が既知である前記部分受理パターン記号列を選択する部分受理パターン記号列選択ステップと、
前記階層部分受理パターン記号列集合の中の、各部分受理パターン記号列が既に選択されたか否かを記憶する処理状態管理ステップと、
この処理状態管理ステップにて記憶した情報から、選択された部分受理パターン記号列が最終の記号列か否かを判定し、最後でない場合は無条件で前記開始ノードと終了ノードとに全てのデータノードを連結して、前記選択された部分受理パターン記号列を受理パターンとした前記解析を実施し、最後の場合は、前記選択された部分受理パターン記号列を受理パターンとした前記解析を実施することにより、尤もらしい部分受理パターン記号列を出力する解析ステップと、
前記収集された尤もらしい部分受理パターン記号列集合と前記各ノードに蓄積された各ノードの受理パターン記号列の情報を用いて前記グラフ構造を探索し、前記尤もらしい受理パターン記号列集合の各要素を生成し得る零個以上の解経路候補の集合を発見し、各経路に存在するノードをマージし、その所属カテゴリを該当する部分受理パターンとする新たなノードを作成する新規ノード生成ステップと、
前記処理状態管理ステップから、全ての部分受理パターン記号列について解析ステップを通過したか否かを判定し、全ての部分受理パターン記号列につて解析ステップを通過した場合に処理を終了する終了条件判定ステップとを具備することを特徴とする。
【0027】
このような本発明は、従来、該当受理パターン記号列伝搬法において、正解となりうる品詞系列の集合が増大した場合に、記憶すベきハッシュ辞書の規模が大きくなり、膨大な量のメモリを必要とすること、また、解析途中の伝搬処理に必要な集合演算の規模が大きくなるため、計算量においても大きなコストを必要とし、また、正解となりうる品詞系列を生成するための、文型辞書にも配慮が必要であったという問題を解決し、正解となりうる品詞系列の集合が増大した場合においても、使用するメモリ量の増加を抑制し、解析時の伝搬処理の際の計算量の増加を抑制するラティス解析手法を提供できるようになる。また、該当受理パターン記号列伝搬法における品詞系列を生成するための文型辞書についても、システム管理者が管理し易い形式を与えることができるようになる。
【0028】
【発明の実施の形態】
以下、本発明の具体例を、図面を参照して説明する。
【0029】
本発明においては、音声で利用者が文発声をしたり、文章を文字認識したりするような場合において、候補となる単語や文字が格子状に組み合わされた形式である“ラティス形式”で表現できるような認識結果を使用して情報解析するもので、以下、詳細を説明する。
【0030】
(第1の具体例)
<概略説明>
本発明は、品詞系列のハッシュ辞書を参照しながら入力ラティス、すなわち、“利用者の入力の認識結果として得られるラティス構造”を展開することなく、かつ、高速に解析処理を行い尤もらしい入力要素カテゴリ系列を導く機能を持ち、また、入力ラティスを展開することなくかつ高速に解析処理を行い、尤もらしい入力要素系列を導く機能を持つ情報解析方式を提供するものであり、以下、図面を参照して本発明の詳細につき説明する。
【0031】
図1は、本発明による情報解析システムの概略的な構成図であり、図中、1はCPU、2はメインメモリ、3は入力部、4は出力部である。メインメモリ2は、本発明システムの機能を実現するに必要なプログラム等を格納しておくメモリであり、CPU1は、このメモリ2に記憶されたプログラムを実行して各種処理や各種制御を実施する演算制御の中枢であり、入力部3は、利用者の音声を取り込み、音声認識してデータ化したり、あるいは入力文字を取り込んで文字認識し、データ化するなどしてその入力情報をCPU1に与えるものである。
【0032】
出力部4は、認識結果や最終出力を表示あるいはデータとして出力したりするためのものである。
【0033】
また、この他、各種辞書等を保持するハードディスや光ディスクなどによる大容量外部記憶装置5、また、光ディスクやCD‐ROM、CD‐R、CD‐RW、DVDなどの可搬型記憶媒体をアクセスする大容量記憶媒体ドライブ装置6、外部システムとの通信を行う通信部7などを有する。
【0034】
図2は、本発明に係る情報解析方法の全体的な処理の流れを示すフローチャートであり、ここで説明する如きの機能が図1の装置で実行されることで実現される。このフローチャートに従って本発明の処理の流れを説明すると、次の通りである。
【0035】
本発明システムにおける情報解析処理は、[i]初期化処理、[ii]ラティス構築処理、[iii]ラティス解析処理、[iv]単語系列候補リスト形成処理から なる。
【0036】
CPU1は、処理を開始すると、まず、初めに[i]の初期化処理(ステップS1)を行う。その後、終了が選択されるまで、入力に対する解析処理を行うループに入る。すなわち、[ii]のラティス構築処理、[iii]のラティス解析処 理、[iv]の単語系列候補リスト形成処理である。
【0037】
そして、[ii]ラティス構築処理においては、入力の認識結果が伝達されると(ステップS2)、それを入力ラティスに再構成する(ステップS5)。ついで、[iii]のラティス解析処理を行い、ここで入力ラティス上で解釈処理を行っ て受理可能な入力要素カテゴリ系列の集合を構成する(ステップS3)。ついで[iv]の単語系列候補リスト形成処理に入り、ステップS3で得られた入力要素カテゴリ系列集合を元に入力ラティスを再スキャンすることで、受理可能な入力要素系列集合を得る(ステップS4)。
【0038】
ここで文発声に対する音声ワードスポッティングの場合、ステップS3での処理結果に基づく出力である“入力要素カテゴリ系列集合”とは受理可能な品詞系列の集合であり、ステップS4での処理に基づく出力である入力要素系列集合とは単語系列の集合となる。
【0039】
以上が、本発明に係る報解析方式の概略構成である。以下、文発声された音声信号に対し、ワードスポッティングを行った結果から適切な単語系列を同定する場合を例にとり、本発明を詳しく説明する。
【0040】
<具体例>
ここで、本発明に係る情報解析方式の処理過程において利用される辞書及びデータの構成について説明する。本発明に係る情報解析システムは、その処理過程において“品詞辞書”、“品詞系列パターン辞書”、“品詞系列ハッシュ辞書”、“処理中ノードリスト”を参照し、また、“品飼系列パターン辞書”と“品詞系列ハッシュ辞書”の生成の際に、“文型辞書”を参照する。これらは大容量外部記憶装置5に構築されている。
【0041】
尚、“処理中ノードリスト”は、現在処理対象とし得る入力ラティス上のノードのリストである。
【0042】
図12に、本発明システムで用いる“品詞辞書”の例を示す。この図に示す “品詞辞書”は、“品詞”、すなわち、“入力要素カテゴリ”については角丸長方形枠で囲んで示し、“単語”、すなわち、“入力要素”については長方形枠で囲んで示す。例えば、“品飼「場所」”は“「現在地」,「施設」,「目的地」,「経由地」”といった“子品詞”から構成され、“品詞「経由地」”は子品詞「出口・入口」と共に単語「インター」及び「インターチェンジ」を要素として持つ。
【0043】
本実施例では、このような形で入力解釈の基盤となる単語とその品詞構造の辞書を持つこととする。
【0044】
<文型辞書の例>
図13に、本実施形態で受理可能な単語系列である「文」の形を定義し蓄積する“文型辞書”の例を示す。この例の場合、
「((場所)|(経由地名)(経由地)|(代名詞:代名詞場所<そこ>))‐[道程])‐((疑問詞:HOW_MUCH<どれくらい>)|(疑問詞:H OW_MUCH 時間)|(疑問詞:HOW_MUCH 距離))」
なる内容の“g1”と、
「((場所固有名詞:地名)|(経由地名)(経由地))‐(疑問詞:WHAT:WHAT 物)‐((目印)|(場所:施設<食べるところ>))‐(動作 :存在:存在通常)」
なる内容の“g2”の2つの文型が登録されている。
【0045】
これらの文型において、“(”と“)”とで括られた最も小さい固まり、例えば“(場所)”や“(経由地名)”等、が一つの単語に対応する品詞となる。そして、それらの系列の連接が “‐(ハイフン)”で表され、「AかBかCのうちの何れかの選択」は “(A|B|C|)” と記述される。また、 “[”と“[”とで囲まれた区間は高々一回、すなわち、0回または1回だけ “[”と“]”で囲まれた区間が現れることを意味する。例えば、“g1”からは
「そこ」「まで」「どれくらい」
「京都」「まで」「どれぐらい」
「吹田」「まで」「何分」
「入口」「まで」「どのくらい」
等といったような単語系列が生成・受理可能であり、“g2”からは
「倉敷」「何か」「食べるところ」「ある」
「京都駅ロータリー」「なにか」「目印」「ある」
といったような単語系列が生成・受理できる。
【0046】
このような文型に従って読み展開すると、“文型辞書”は図14に示すような“品詞系列パターン辞書”に展開することができる。この図において図13の文型“g1”は“sp01‐g1”から“sp18‐g1”までの18パターンの品詞系列に展開することができ、文型“g2”は“sp01‐g2”から“sp04‐g2”までの4パターンに展開できる。
【0047】
この“sp01‐g1”から“sp18‐g1”と“sp01‐g2”から “sp04‐g2”までの各品詞系列パターンに付与された記号を、“品詞系列ID”と呼ぶ。“品詞系列パターン辞書”の各パターンは、各々が一つの単語に当たる品詞の連接からなる。例えば、“sp11‐g1”に品詞辞書を適用すると、
(「魚崎」「インター」「何キロ」)
といったような受理可能な単語系列が生成できる。
【0048】
“品詞系列パターン辞書”の内容を元に、各品詞の各品詞系列パターンにおける出現箇所(出現順序)と、その品詞によって“ハッシュ辞書”を構成すると図15に示す如きの“品詞系列ハッシュ辞書”が生成できる。
【0049】
例えば、図15(a)に示す“単語出現番号1”の“ハッシュ表”を見れば、本実施形態の文型辞書において“品詞(地名)”が文頭に現れる単語系列のパターンとしては、“品詞系列ID”が“sp01‐g2”と“sp02‐g2”の 2種類しかないことがわかる。
【0050】
“品詞系列ハッシュ辞書”は、単語出現番号が“1”から、あり得る品詞系列パターンの最長のもの(本実施形態では“5”)までの各“出現順位の表”と、各単語系列パターンの末尾からの“ハッシュ表”とから構成される。
【0051】
ここで処理の説明を簡単化させるため、得られたワードスポッティング結果が図8に示す如きの簡単化されたワードスポッティング結果であるとして話を進める。
【0052】
この入力はラティス構築処理部において各単語候補の時間的関係、及び重なりや離れの制約を用いることで、図9のような入力ラティス構造(文章を文字認識したり、あるいは利用者が音声で文発声をしたりするような場合での認識結果であって、候補となる単語や文字が格子状に組み合わされた形式で表現された構造)が構築される。
【0053】
この入力ラティス構造の各ノードには、図10に示す如きのデータ要素が格納される。
【0054】
すなわち、図10に示すように、“ノードID”、“所属品詞”、“前ノードリスト”、“次ノードリスト”、“未処理前ノードリスト”、“解析途中経過リスト”、“入力要素id:単語表象”の7要素である。
【0055】
ここで、入力ラティスのノードの第1の要素は、ノードの識別子である“ノードID”であり、図9で各ノードに示されているように、「入力要素ID:単語表象」の形式で記述される。
【0056】
第2の要素は、その単語の“所属品詞”である。
【0057】
第3の要素は、そのノードの前に接続する可能性のあるノードの集合を表す “前ノードリスト”である。
【0058】
第4の要素は、そのノードの後ろに接続する可能性のあるノードの集合を表す“次ノードリスト”である。
【0059】
第5の要素は、前ノードリストの要素中解析処理が終了していないノードの集合を表す“未処理前ノードリスト”であり、このリストの内容が空にならない限りそのノードの解析を行ってはならないことを示す。
【0060】
第6の要素は、そのノードが表象する単語が受理される単語系列の要素であるならば、どの品詞系列パターンがその単語系列のテンプレートとしてあり得るかを要素として持つ“解析途中経過リスト”である。解析途中経過リストは、そのノードが受理可能単語系列の何番目に現れるかの数値と、その順序でそのノードが表象する単語が現れたときに考えられる品詞系列IDのリストとの組のリストで表現される。
【0061】
例えば、図9の入力ラティスを例にとると、当該入力ラティスのノード“「07:今」”については“(「今」…)”という具合に、単語系列の最初に現れる場合と、“(「道」、「今」、…)”という具合に、2番目に現れる場合とが考えられる。
【0062】
このような場合、“解析途中経過リスト2は“[(1、1…1)、 (2、 […]]”と云う具合に、この単語が1番目に現れた場合に取り得る品詞系列パターンのリストと2番目に現れた場合に取り得る品詞系列パターンのそれとを分けて管理する。
<[iii]ラティス解析処理S3での処理機能>
図3は、図2で説明した本発明の具体例に係る情報解析方法におけるラティス解析処理S3での処理内容の概略を示すフローチャートである。ラティス解析処理S3での処理の詳細を図4乃至図7に示す。但し、図4はラティス解析処理フローの全体図、図5乃至図7はその部分拡大図である。
【0063】
以下、図3および図4乃至図7を参照して、解析処理の流れを説明する。
【0064】
処理が開始されると、まず初期設定処理(図3のステップS31)において解析処理の準備を行う。この初期設定処理(S31)の詳細は、図4乃至図6のステップS311〜S318に示す。
【0065】
この処理において、具体的には、
(1)入力ラティスの全ノードについて、前ノードリストの内容を未処理前ノードリストにコピーする、
(2)入力ラティスの開始ノードに接続している、すなわち単語系列の先頭になりうる単語を表象するノードを処理中ノードリストに含める、
(3)処理中ノードリストに含めたノードの解析途中経過リストの初期値を設定する、
(4)処理中ノードリストに含めた各ノードの未処理前ノードリストから開始ノードを除去する、
の4つの処理を行う。この例では、処理中ノードリストの内容は
[07:今,01:道,03:西宮]
となり、それらの各ノードの“未処理前ノードリスト”と“解析途中経過リスト”の内容は
となる。初期設定処理(S31)が終わった段階での単語ラティスのノード例は例えば、図11に示す如きとなる。
【0066】
初期設定処理(S31)が終わると、本ラティス解析処理S3では“処理中ノードリスト”が空になるまで(図3のステップS32)伝播処理(S33)を繰り返す。
【0067】
伝播処理S33の詳細は、図4および図6および図7におけるステップS331〜S338にあるが、この処理を一言でいうと、「あるノードにおいて未処理前ノードリストが空になり解析途中経過が確定すると、そのノードの後続のノードに解析途中経過リストの内容を伝播する」ということになる。
【0068】
そして、“処理中ノードリスト”が空になると、ラティスの“終了ノードの解析途中経過リスト”に蓄積されている内容が、ラティスで受理可能な“品詞系列ID”の集合となっている。
【0069】
このため、終了ノードの“解析途中経過リスト”の全ての“品詞系列ID”を“品詞系列候補リスト”にコピーして、ラティス解析処理(S3)は終了する。次に、このようにして得られた“品詞系列候補リスト”を利用して、入力ラティスをもう一度スキャンする前述の[iv]単語系列候補リスト形成処理(S4)を実行する。この単語系列候補リスト形成処理を実行することにより、求める受理可能な単語系列のリストを得る。
【0070】
以上が本発明に係る情報解析方法の処理概要とその機能である。
【0071】
<伝播処理S33での処理の詳細>
ここでこれまでの例を用い、図4および図6および図7のステップS331〜S338を参照してラティス解析処理における伝播処理(S33)の内容を更に詳しく説明する。
【0072】
まず、図4および図6および図7のステップS331において、“処理中ノードリスト”からノードが一つ取り出される。この場合、ノード「07:今」が処理対象前ノードMとなる。
【0073】
しかしながら、このノードの“未処理前ノードリスト”は空でないため、ステップS332のチェックで処理は開始されず、ステップS32の処理に戻る。そして、再び、ステップS331で別のノード「01:道」が“処理中ノードリスト”から取り出される。
【0074】
このノードの“未処理前ノードリスト”は空のため、後ろに接続するノード 「07:今」と「15:インターチェンジ」にこのノードの“解析途中経過リスト”の内容が伝播される。ただし、上に示すように「01:道」の“解析途中経過リスト”は空であるため、「07:今」と「l5:インターチェンジ」の“解析途中経過リスト”の内容は変化せず、これらのノードの“未処理前ノードリスト”から「01:道」が除去される。
【0075】
すなわち、この操作により、それらの各ノードの“未処理前ノードリスト”と“解析途中経過リスト”の内容が
となる。
【0076】
次にS331で、再び、ノード「07:今」が“処理中ノードリスト”から取り出されるが、“未処理前ノードリスト”は空となったため、今回は伝播が可能となる。
【0077】
しかしながら、このノードの“解析途中経過リスト”も事実上、“空”、すなわち、このノードを経由して受理可能な品詞系列はないため、このノードの後ろに接続する
「14:インター、18:今、20:まで、15:インターチェンジ」
の“解析途中経過リスト”の内容は変化せず、これらのノードの“未処理前ノードリスト”から「07:今」が除去されるのみである。
【0078】
これらの操作の結果、それらの各ノードの“未処理前ノードリスト”と“解析途中経過リスト”の内容は
となり、“処理中ノードリスト”から「07:今」が除去され、
となる。
【0079】
次にステップS331において、“処理中ノードリスト”からノード「03:西宮」が取り出される。このノードの“未処理前ノードリスト”は空のため、 “解析途中経過リスト”の内容の伝播が可能である。
【0080】
ここで、まず、ノード「03:西宮」の“解析途中経過リスト”の各順番インデックスに“1”を加えたリスト
[(2,[sp03‐g2,sp04‐g2,sp07‐g1、sp08‐g1,sp09‐g1、sp10‐g1,sp11‐g1,sp12‐g1])]
を生成する。そして、このリストと、後続するノードの対応する“品詞系列ハッシュ”の内容との積集合をとる。
【0081】
例えば、[14:インター」に伝播する際、前出のリストの単語出現番号である“2”のハッシュ辞書の「インター」の品詞である「経由地」の項目のリスト
[sp08‐g1,sp09‐g1,sp10‐g1,sp11‐g1、sp12‐g1,sp07‐g1、sp03‐g2、Sp04‐g2]
との積集合がとられ、その結果、「14:インター」の“解析途中経過リスト”の内容は
[(2,[sp03‐g2、sp04‐g2、sp07‐g1、sp08‐g1,sp09‐g1,sp10‐g1,sp11‐g1,8pl2‐g1])]
となる。
【0082】
同様の処理が「03:西宮」に接続する各ノードに対して行われ、それらの各ノードの“未処理前ノードリスト”と“解析途中経過リスト”の内容は
となり、“処理中ノードリスト”は、
[15:インターチェンジ,14:インター,18:今、20:まで]
となる。
【0083】
次に、ステップS331でノード「15:インターチェンジ」が“処理中ノードリスト”から取り出される。このノードの“未処理前ノードリスト”は空のため、“解析途中経過リスト”の内容の伝播が可能である。
【0084】
ここでまず、ノード「15:インターチェンジ」の“解析途中経過リスト”の各順番インデックスに“1”を加えたリスト
[(3,sp03‐g2,sp04‐g2、sp07‐g1,sp08‐g1,sp09‐g1、sp10‐g1、sp11‐g1,sp12‐g1])]
を生成する。そして、このリストと、後続するノード「20:まで」の対応する“品詞系列ハッシュ”の内容との積集合をとる。
【0085】
すなわち、「20:まで」に伝播する際、前出のリストの単語出現番号である“3”のハッシュ辞書の「まで」の品詞である「道程」の項目のリスト
[sp08‐g1,sp10‐g1,sp12‐g1]
との積集合がとられ、「20:まで」の解析途中経過リストの内容は
[(3,[sp08‐g1,sp10‐g1,sp12‐g1])]
となる。
【0086】
同様のサイクルが「14:インター」からの伝播でも行われる。この伝播の際、「14:インター」からは「18:今」に対しても接続可能ではあるが、「18:今」の対応するハッシュ辞書項目がないため、このノードの“解析途中経過リスト”の内容は空のままである。結果として、各ノードの“未処理前ノードリスト”と“解析途中経過リスト”の内容は
となる。
【0087】
次に、ステップS331でノード「20:まで」が“処理中ノードリスト”から取り出される。このノードの“未処理前ノードリスト”は空のため、“解析途中経過リスト”の内容の伝播が可能である。ここでまず、ノード「20:まで」の“解析途中経過リスト”の各順番インデックスに“1”を加えたリスト
[(4、[sp08‐g1,sp10‐g1,spl2‐g1])]
を生成し、後続のノード「24:どのくらい」と「終了」に伝播する。その結果、まず、“ノード「24:どのくらい」”ではこれまでと同様品詞系列ハッシュ辞書を参照することで“解析途中経過リスト”を更新することから、当該“解析途中経過リスト”の内容は
となる。次に、「終了」ノードへの伝播に際しては単語出現番号「end」のハッシュ辞書項目が参照される。この場合、品詞「道程」で終了する文型は登録されていないため辞書参照は失敗し、終了ノードの解析途中経過リストの内容は更新されない。すなわち、
となる。
【0088】
次にステップS331で、ノード「24:どのくらい」が“処理中ノードリスト”から取り出される。このノードの“未処理前ノードリスト”は空のため、 “解析途中経過リスト”の内容の伝播が可能である。しかし、このノードに接続可能なノードは「終了」ノードのみなので、終了ノードに伝播させる。
【0089】
この伝播において、単語出現番号 「end」のハッシュ辞書項目が参照される。品詞「HOW MUCH<どれくらい>」の項目が参照され、ノード「24:どのくらい」の“解析途中経過リスト”との積集合がとられ、
が最終的に得られる。また、処理中ノードリストが空になり、品詞系列候補リストの内容が
[sp08‐g1]
となって、ラティス解析処理S3は終了する。
【0090】
次に得られた“品詞系列候補リスト”から、受理可能な単語系列を生成する前記の[iv]単語系列候補リスト形成処理(図2のステップS4)に処理が移る。
<[iv]単語系列候補リスト形成処理>
この単語系列候補リスト形成処理処理は、入力ラティスの可能な系列の中から、得られた各品詞系列候補、この場合は“sp08‐g1”を見つけ出す処理に他ならない。
【0091】
ここで、ラティス解析処理の過程において各ノードが所属し得る品詞系列の集合が“解析途中経過リスト”として残っているため、求める“品詞系列ID”を“解析途中経過リスト”のメンバとして持つ系列を探索することで、求める“単語系列候補リスト”を得ることができる。
【0092】
このような単語系列候補リスト形成処理(図2のステップS4)の過程を経て、“単語系列候補リスト”
が得られる。
【0093】
かくして、このように構成された情報解析方法によれば、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、「与えられた受理可能構文規則を満足する尤もらしい入力要素カテゴリ系列」を高速、かつ、少ないメモリ容量で導くことが可能となる。
【0094】
さらに、本発明によれば、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、「与えられた受理可能構文規則を満足する尤もらしい入力要素系列」を高速、かつ、少ないメモリ容量で導くことが可能となる。
【0095】
尚、本発明の実施の形態としては上記の方式を実現したプログラムを収録した媒体として実現し、その媒体に納められたプログラムをコンピュータに読み込ませて実行させることで実施することも可能である。
【0096】
尚、上述の例において制御の単位を単語とし音声ワードスポッティングをアプリケーションとして記述しているが、本発明の実現形態はこれに限定されるものではなく、例えば、連続音声認識の音韻を単位としてで実現することも可能であり、また、文字認識処理における文字を単位として制御することも可能であり、そのような実現形態も本発明の趣旨の範囲内である。また、上述の例において文法辞書の要素の記述を“OR”付きの品詞系列用の形式で、品詞辞書を単語カテゴリの階層構造として記述しているが、本発明の実現形態はこれに限定される物ではなく、最終的には品詞系列パターン辞書が作成できる、すなわち入力ラティスの各ノードの要素の集合とそれらの要素が所属するカテゴリの集合をあわせた集合の要素の系列を要素として持つ高々有限個の集合として品詞系列パターン辞書が構成できるような実現形態であればどのような形式でも実現可能である。例えば、構文記述及び品詞記述を書き換え規則で記述したとしても、規則による構文展開回数に制限を加えるなどその書き換え規則から有限個の前終端記号列が生成されるような記述と制御が行われれば、本発明は実現可能である。一般に、計算機で処理可能な構文の数は有限であり、また、人間が話したり書いたりできる語棄や文型の展開は有限であることから、本来無限個の前終端記号列を生成できるような書き換え文法にそのような制約を加えたとしても枠組の現実性を損なう物ではない。以上のように、本発明の実現形態には上述の例に対して種々の変形が可能であり、それらも趣旨に反しない限り本発明の実施形態の範囲内である。
以上、第1の実施形態は、入力ラティスを展開することなく解析し、高速にその解析結果を得ることができる情報解析方法を提供するために、有向グラフ構造状のデータ構造として与えられる入力ラティスの各ノードの表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列として与えられた受理可能な受理パターン記号列の集合のうち、前記開始ノードもしくは終了ノードから前記グラフ構造の解析を開始する解析開始ノード決定ステップと、前記グラフ構造の各ノードの解析の途中経過においてそのノードが解経路候補の開始点または終了点からある順番で解経路候補に含まれる場合にとり得る受理パターン記号列を計算してノードに記録する受理パターン記号列計算・蓄積ステップと、前記グラフ構造の各ノードの解析の途中経過においてそのノードに対する解析の経路パターンを網羅したかどうかを判定するノード解析網羅判定ステップと、あるノードについてそのノードの解析経路パターンが網羅された場合に零回以上の受理パターン記号列計算・蓄積ステップの実行によって蓄積されたそのノードヘの受理パターン記号列を解析においてそのノードの次に接続されている一個以上のノードに伝播させる受理パターン記号列伝播ステップと、解析が終了したかどうかを判定する解析終了判定ステップと、解析が終了した際に前記開始ノードもしくは終了ノードに蓄積されている受理パターン記号列情報を用いて本方法の出力である零個以上の尤もらしい受理パターン記号列を収集する受理パターン記号列収集ステップと、前記収集された尤もらしい受理パターン記号列集合と前記各ノードに蓄積された各ノードの受理パターン記号列の情報を用いて前記グラフ構造を探索し、前記尤もらしい受理パターン記号列集合の各要素を生成し得る零個以上の解経路候補の集合を発見し、出力する解経路候補検索・出力ステップとを具備したことを特徴とする。
【0097】
本発明によれば、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、与えられた受理可能構文規則を満足する尤もらしい入力要素カテゴリ系列を高速かつ少ないメモリ要求量で導くことが可能となる、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、与えられた受理可能構文規則を満足する尤もらしい入力要素系列を高速かつ少ないメモリ要求量で導くことが可能となる、等の実用上多大な効果が奏せられる。
【0098】
(第2の実施形態)
ここで、第1の実施形態に示した発明を該当受理パターン記号列伝搬法と呼ぶことにする。
【0099】
自然言語解析や自然言語生成、あるいは音声認識や音声合成技術あるいは対話処理技術を利用し、自由発話による音声入力によって利用者とコンピュータシステムとが対話する音声対話装置においては、通常、音声認識処理を必要としているが、このような認識処理は、一般に一意に認識結果が得られないという問題がある。すなわち、一つの入力信号に対して複数の候補が現われるという状態が一般的である。このため、音声で利用者が文発声をする場合、候補となる単語や文字が格子状に組み合わされたラティス形式で表現できるような認識結果が得られる。
【0100】
利用者の入力を一般のアプリケーションプログラムで利用可能にするためには、このような認識結果から利用者の入力として尤もらしい文や文字列を高速かつ適切に決定するような認識の後処理技術が重要である。
【0101】
また、文章に対して単語のラティス形式で認識結果を与えることの可能な音声認識手法であるワードスポッティングでは、一般に多数の湧きだし誤りを生じ、ラティス形式から生じうる系列に展開し、それぞれについて解析を行う手法は、湧きだし誤りによる系列数の増加を考慮しておらず、現実的ではないといえる。そこで、ラティスを展開せずに、正解となりうる品詞系列の集合と、それから構成される各品詞の出現順序に基づくハッシュ辞書(その要素はその順序にある品詞が存在する品詞系列のIDの集合となる)とを利用し、生成されたラティスの各単語に、考えうるその単語の出現順序と対応する品詞から得られる、ハッシュ辞書の内容を、次に出現しうる単語に伝搬し、伝搬された「存在しうる系列集合」と「その単語が存在できる系列集合」とで、共通な系列を更に伝搬させることによって、最終的に利用者が入力したであろう品詞系列へと絞り込む手法である「該当受理パターン記号列伝搬法」は、ラティスを展開せずに解析を行うので、多くの曖味性を含むラティスに対しても高速に解析結果が得られるが次のような問題点を含んでいる。
【0102】
その問題点とは、「正解となりうるカテゴリ系列の集合が増大した場合に、記憶すべきハッシュ辞書の規模が大きくなり、膨大な量のメモリを必要とすること」と、「解析途中の伝搬処理に必要な集合演算の規模が大きくなるため、計算量においても大きなコストが必要となる」ことである。
【0103】
また、「正解となりうるカテゴリ系列を生成するための、受理パターン記号列の辞書にも配慮が必要となる」という点も無視できない。例えば、第1の実施形態における対話システムに適用する場合には、カテゴリは品詞に、受理パターン記号列は「文型」に相当する。
【0104】
また、そのような音声対話システムのタスクがカーナビゲーションシステムの場合であれば、「場所」に関する表現が多くなると考えられるが、システム管理者が文型を定義する際に、誤って、ある「場所」の表現を与える品詞系列を付与し損ねた場合に、文型によって受け付けられる「場所」の表現が異なることになり、どのような「場所」の表現が受け付け可能かが利用者にはわかりにくくなり、利用者が混乱すると考えられる。また、文型の数が多くなった場合には、「場所」の表現を追加あるいは削除する場合についても、管理者の処理が煩雑となり、また、その結果、上記のような文型によって受け付けられる「場所」の表現が異なるという状況も起こる可能性があり、それにより、利用者が混乱するということも考えられる。
【0105】
このように、該当受理パターン記号列伝搬法において、正解となりうるカテゴリ系列の集合が増大した場合に、記憶すベきハッシュ辞書の規模が大きくなり、膨大な量のメモリを必要とすること、また、解析途中の伝搬処理に必要な集合演算の規模が大きくなるため、計算量においても大きなコストを必要とする。また、正解となりうるカテゴリ系列を生成するための、受理パターン記号列の辞書にも配慮が必要である。
【0106】
次に説明する第2の実施形態は、このような問題に対処できるようにするもので、正解となりうるカテゴリ系列の集合が増大した場合においても、使用するメモリ量の増加を抑制し、解析時の伝搬処理の際の計算量の増加を抑制するラティス解析手法を提供する。また、該当受理パターン記号列伝搬法における品詞系列を生成するための受理パターン記号列の辞書についても、システム管理者が管理し易い形式を与えることができるようにする。
【0107】
以下、第2の実施形態を説明する。
【0108】
ここで説明する第2の実施形態としての本発明は、「該当受理パターン記号列伝搬法における受け付け可能なカテゴリ系列パターン辞書を管理/修正し易いようにした受理パターン記号列定義方法」について示すと共に、ハッシュ辞書の要素となるカテゴリ系列パターンの数が増大しても、処理に必要なコンピュータのメモリ容量の増大や、計算量におけるコストの増加を抑制できるようにする手法を提案するものであり、以下、図面を参照して本発明の詳細につき説明する。ここでは、音声指示方式のカーナビゲーションシステムをタスクとした場合での例を主体に説明する。
【0109】
図18は、音声指示方式のカーナビゲーションシステムをタスクとした場合での、該当受理パターン記号列伝搬法で利用する“文型辞書”の例を表している。この図において、“(”と、“)”とで囲まれた文字列が品詞を表し、“|”はその両側の品詞(列)のうちの1つを出力する記号であり、“‐”は1つの構文要素を複数行に分けて表示していることを表す。
【0110】
また、個々の構文要素は、空白あるいは改行で区切られている。例えば、文型“Where”は2つの構文要素からなり、第一構文要素が5個存在するので、そこから品詞系列パターンは5個生成されると、この図からわかる。
【0111】
この場合、“Where”と“HowMuch1”、そして、“HowMuch2”の合計3種類の文型が登録されている。
【0112】
しかし、これらの定義では、「場所」を表す部分(例えば、文型“Where”における品詞(WHERE)の前にある記号列)である
「(経由地名)(経由地)|(施設名)(施設)|(経由地)(順序相対)(順序絶対)(施設)|(経由地)(順序相対)(施設)|(経由地名)(経由地)(順序相対)(施設)」
という表現となっていて表現形式が複雑なものとなっており、「場所」を表す部分の修正、追加などの管理が複雑になる。特に“文型HowMuch2”においては、この「場所」を表す表現が、最初の位置と、品詞(起点)の直後と云うように2箇所も存在する。そのため、一方を修正しても他方の修正を見落すこともある。
【0113】
また、この図から、各文型において「場所」を表す共通の表現が存在することがわかる。
【0114】
図19は、このような該当受理パターン記号列伝搬法で利用する複雑な表現形式の図18の如き“文型辞書”を修正して得られた本発明システムで利用するための“文型辞書”の例を表している。
【0115】
ここでの修正とは、『「場所」を表す表現を「場所句」とした別の一つの句の文型辞書として定義する』というものである。この図において、「別の文法セットの文型辞書として定義すること」を表す識別子が「+Phrase」であり、その直後の文字列がその文型辞書の名前を表す。
【0116】
ここで、“文法セット”とは、「句」などの「部分的な構文からなる規則」と、「全体の構文からなる規則」のいずれかのことを指す。
【0117】
そして、別の文型を利用する場合に、「その文型を必要とすることを明示する識別子」が「−Needs」であり、その後の文字列が必要な文型辞書名(文法セット名)を表す。
【0118】
この図の例の場合では、入力文章を表す文型辞書「全系列」に必要な文型辞書が、「場所句」であることを表している。複数の文型辞書が必要な場合は、識別子「−Needs」の後に、複数の文型辞書名を表記する。
【0119】
これにより、「場所」を表す表現を追加する場合には、文型辞書「場所句」を修正すれば、文型辞書 「全系列」の全てにそれが反映されるので、管理者にとって管理/修正が容易な文型辞書定義が可能となる、ということがわかる。この方法は、特に、ある意味を表す集合を別辞書として管理するにとどまらず、主部、述部のような文法的な情報を持つ集合と一つの辞書としても構わない。
<ラティス解析方法の実施形態>
続いて、本発明におけるラティス解析方法の実施形態について説明する。
【0120】
本実施形態は、図19における文型辞書を展開せずに、各文法セットについて順にラテイスの解釈を行う方法である。
【0121】
これにより、該当受理パターン記号列伝搬法が持つ品詞系列パターン数の増大、特に、文法セットの品詞系列パターン数の増大によるコンピュータの使用メモリ、コンピュータの計算量といったリソースや運用コストが増大することを抑制することが可能となる。
【0122】
最初に、階層ハッシュ辞書(図21)を構築する。
【0123】
図20は、本実施形態で使用する“階層品詞系列パターン辞書”の例である。図20に示すように、各文法セットについて展開された階層品詞系列パターン辞書から、各文法セットについてのハッシュ辞書を構築しても良いし、予め構築しておいたハッシュ辞書を読み込む形式でも良い。
【0124】
この図では、図19に示した文型辞書の例から展開したものを示した。この図からわかるように、“階層品詞系列パターン辞書”とは、各文法セット別個に提案されている文型辞書から、それぞれの文法セットを別個に展開し、品詞(文法セット名も含む)系列パターンを生成したものを云う。尚、文法セットは厳密には品詞ではないが、仮想的に品詞と同じような扱いをするものとすれば、このように表記できる。
【0125】
この図から、この例では「場所句」については“P1#0”〜“P5#0”までの5パターン分、定義されており、最終的な品詞系列である「全系列」については「場所句」を利用する形式で
“Where#0”、
“HowMuch1#0”、
“HowMuch2#0”
の3パターン分、定義されていることがわかる。
【0126】
ここで、各品詞系列パターンに付与されているIDの中の“#0”について補足しておく。
【0127】
この“#0”というのは、1つの文型辞書のパターンから展開されたものにつけるIDである。そして、1つの文型辞書のパターンから複数の品詞系列パターンに展開される場合は“#1”、“#2”・・・と云う具合に別のIDが付与されるものとする。尚、IDは各品詞パターンに特有のものであれば、どのような形式でもよい。
【0128】
また、この図においても図19と同じように、別の文法セットとして定義することを表す識別子が「+Phrase」であり、その直後の文字列がその文法セットの名前を表す。そして、別の文法セットを利用する場合に、その文法セットを必要とすることを明示する識別子が「−Needs」であり、その後の文字列が必要な文法セットを表している。また、各品詞系列には固有のIDが付与されており、各系列の先頭に表記されている記号がそのIDとする。
【0129】
<階層ハッシュ辞書の例>
図21は、本実施形態で使用する一例としての階層ハッシュ辞書の例である。この図では、図20に示した階層品詞パターン辞書からハッシュ辞書を構築したものを示した。
この図から、例えば「場所句」では一番目に現われる品詞(文法セット名)としては“(経由地名)”、“(施設名)”、“(経由地)”の三種類が存在し、それぞれ該当する品詞パターンIDとしては、品詞「経由地名」が“P1#0”,“P5#0”、品詞「施設名」が“P2#0”、そして、品詞「経由地」が“P3#0”,“P4#0”であり、「全系列」では一番目に現われる品詞(文法セット名)としては「場所句」しか存在しないことがわかる。
【0130】
この図からわかるように、“階層ハッシュ辞書”とは、図20に示すように各文法セット別個に展開された階層品詞パターン辞書から、それぞれの文法セットを別個にしてハッシュ辞書を生成したものを指す。
【0131】
また、この図20においても図19と同じように、別の文法セットとして定義することを表す識別子が「+Phrase」であり、その直後の文字列がその文法セットの名前を表す。そして、別の文法セットを利用する場合に、その文法セットを必要とすることを明示する識別子が「−Needs」であり、その後の文字列が必要な文法セットを表している。
【0132】
<第2の実施形態におけるラティス解析手順>
図17は、本実施形態におけるラティス解析方法の処理手順を示すフローチャートである。
【0133】
例えば、図1に示す如きシステムの入力部3(例えば、音声認識装置や文字認識装置などの認識装置)からラティス状の認識結果を渡された場合に、図17の流れに基づいてCPU1はラティス解析処理を行う。以下は、この図を参照しながら詳細に本発明のラティス解析方法を説明する。
【0134】
[ステップS201] このステップでは、ラティス解釈処理の初期化を行う。初期化処理は、まず、“処理済み文法セット名”と“未処理文法セット名”を記録するリストを準備し、登録されている全ての文法セットを“未処理文法セット名のリスト”に登録する、と云ったことを行う。また、ノードを記録するリストを準備し、ラティス結果の各一単位(単語ラティスなら各単語)をそれぞれノードとして、“ノードリスト”に登録する。
【0135】
このノードには、各認識単位の他に、その単位の出現位置毎の品詞系列パターンIDの集合と、該当する品詞(文法セット名)に関する情報を持つことができ、ここでは、各認識単位の他に、該当する品詞情報もこのノードに登録する。そして、次のS202の処理に進む。
【0136】
[ステツプS202] このステップでは、ラティス解釈に適用する文法セットを選択する。適用する文法セットを選択するには、その文法セットを生成するために必要な他の文法セットが既に生成されているということを確認する必要がある。もし、ある文法セットに必要な文法セットが生成されていない状態で、その文法セットの解釈を行ったとすると、その文法セットに対応する系列が生成できない可能性があるからである。
【0137】
上記条件を確認するために、図21にある識別子「−Needs」以降の文法セット名を参照する。すなわち、「−Needs」以降の文法セット名からできる“必要文法セット名リスト”と、“処理済み文法セット名リスト”とを比較する。そして、“必要文法セット名リスト”の中身の全てが“処理済み文法セット名リスト”に含まれている場合は、その文法セットは適用可能ということになる。
【0138】
よって、最初に適用可能な文法セットは「−Needs」識別子以降の必要な文法セットが存在しないものとなる。また、全系列を表す文法セットを最後に適用するように、階層ハッシュ辞書の「−Needs」識別子には依存関係を明確に記しておく必要がある。
【0139】
[ステップS203] このステップでは、登録されたノードを適切に連結する。
【0140】
ノードの連結は、例えば、対応する単語(系列)の出現位置に基づいて連結する。例えば、音声ラティスの場合は単語の出現フレームの重なり、離れから単語同士がつながるかどうかの判定を行う。また、無駄な接続を少なくすることにより、より効率的に解釈を行うために接続可能品詞リスト(図22)などの他の情報を適用してもよい。但し、S202で最後の文法セット(全文系にあたる品詞系列パターン辞書)以外の文法セットを選択している場合は、その文法セットが文章の任意の位置に出現するので、“文頭/文末”に関する条件は適用しないようにする必要がある。
【0141】
図22は、“接続可能品詞リスト”の例を表す。“接続可能品詞リスト”は、品詞テンプレート辞書から連続する2つの品詞(文法セット名)のつながりを抽出したものである。また、二階層品詞テンプレート辞書”から生成する場合は、各文法セットからそれぞれ“接続可能品詞リスト”を作ることができる。
【0142】
この図では、図20から生成できる“接続可能品詞リスト”を示している。この図においても、図21と同じように別の文法セットとして定義することを表す識別子が 「+Phrase」であり、その直後の文字列がその文法セットの名前を表す。そして、別の文法セットを利用する場合に、その文法セットを必要とすることを明示する識別子が「−Needs」であり、その後の文字列が必要な文法セットを表している。
【0143】
この図から、例えば「場所句」を適用している場合に、品詞「経由地名」には品詞「経由地」が連結可能であることがわかり、「全系列」を適用している場合に、「場所句」には品詞「WHERE」「道程」が連結可能であることがわかる。
【0144】
また、S203で適用される“接続可能品詞リスト”はS202で選択された文法セット名と一致するものでなければならない。
【0145】
[ステツプS204] このステップでは、現在連結されているノードを現在適用されている文法セットについて、該当受理パターン記号列伝搬法を利用して解釈処理を行う。参照するハッシュ辞書は、階層ハッシュ辞書の中で、現在適用している文法セット名に該当するハッシュ辞書を適用する。
【0146】
また、既に他の文法セットに関するノードが生成されている場合があるので、初期設定されている品詞辞書の他に、“処理済み文法セット名リスト”に登録されている文法セット名も品詞と同様に参照する必要がある。あるいは、処理済みの文法セットを動的に品詞として登録することが可能ならば、処理済みの文法セット名を品詞名として品詞辞書に登録することによって、“処理済み文法セット名リスト”を参照する必要はなくなる。
【0147】
[ステツプS205] このステップでは、S204で処理された文法セット名を“未処理文法セット名リスト”から削除し、“処理済み文法セット名リスト”に登録する。“処理済みの文法セット”を動的に品詞として登録することが可能ならば、その文法セット名を品詞名として品詞辞書に登録してもよい。
【0148】
[ステツプS206] このステップでは、全ての文法セット(全系列を含む)が処理されたかどうかを判定する。すなわち、“未処理文法セット名リスト”が空かどうかを判定し、空ならば終了し、空でなければ、S207に進む。
【0149】
[ステップS207] このステップでは、S204によって生成された系列のそれぞれを、ノードとして登録する。その際に、次回のステップS204の処理実行時に参照できるように、生成されたノードがどの文法セットに属しているかを示す情報を各ノードに付与する。
【0150】
これは例えば、“処理済みの文法セット”を動的に品詞として登録することが可能ならば、その文法セット名を品詞としてそのノードに付与してもよい。あるいは、文法セット名をそのノードに持たせて、ステップS204の処理実行の際に、“処理済み文法セット名リスト”から文法セットに対応しているノードであることを認識させてもよい。また、最終的な解釈結果として、単語系列情報と、該当する品詞パターン辞書情報との組合せが必要な場合は、各ノードに該当する品詞パターンを持たせておく必要がある。
【0151】
以上が、第2の実施形態におけるラティス解析方法の概要である。
【0152】
<ラティス解析方法の詳細>
続いて、上述したラティス解析方法について、その具体例をあげて更に詳しく説明する。
【0153】
ここでは、ワードスポッティングを行い、単語ラティス形式で認識結果を出力する音声認識システムに、利用者が『西宮インターの前のサービスエリアまでどれくらい』と音声入力した場合での処理例について、説明する。
【0154】
本発明のラティス解析方法を適用した解析システム搭載のラティス解釈システムは、この音声認識システムと接続し、認識結果を受け取る。
【0155】
また、このラティス解釈システムは図19で定義された文型辞書を受け付けるように設定されいるものとする。
【0156】
この時、図19の文型辞書から図20の如きの“階層品詞系列パターン辞書”が生成され、この“階層品詞系列パターン辞書”から図21の如きの“階層ハッシュ辞書”が構築される。
【0157】
[ステップS201] ここで、図23に示した認識結果のラティスを受け取ったとする。図23において“<”と“>”とで囲まれた数値がその単語の出現位置を表している。ラティスを受け取った段階で、まず、スポッティングされた単語ラティスから、“ノードリスト”にノードを登録する。
【0158】
この実施例では、登録されたノードに対して該当する品詞をノードに登録しておく。また、“未処理文法セット名リスト”と“処理済み文法セット名リスト”を準備し、“階層ハッシュ辞書”から登録されている文法セットの名前を取り出し、“未処理文法セット名リスト”に登録する。
【0159】
その結果、“ノードリスト”内容は図24の如きとなり、“未処理文法セット名リスト”、“処理済み文法セット名リスト”はそれぞれ以下のようになる。
未処理文法セット名リスト 処理済み文法セット名リスト
場所句
全系列
[ステップS202] 次に、最初に適用する文法セットを選択する。
【0160】
階層ハッシュ辞書(図21)から、各文法セットの必要文法セット名リストを構築すると、以下のようになる。
このリストと、先ほどの処理済み文法セット名リストを比較し、“必要文法セット名リスト”が空である場所句を適用する文法セットとして選択する。
【0161】
[ステップS203] 次に、“ノードリスト”に登録されているノードを、出現位置を基準にして連結する。但し、現在処理している場所句の他に、全系列という文法セットが残っているので、最後に処理している文法セットとはみなさず、文頭、文末については、全てのノードが連結しているとみなす。
【0162】
その結果、ラティス構造として図25の如きの結果が得られたとする。
【0163】
この図において、“Start”は文頭を意味し、また、“End”は文末を意味し、丸囲みの文字がノードを示し、ノードに付与する形で添えられている文字列がその品詞を意味する。但し、この図において、文頭(Start)、文末(End)については、全てのノードが連結しているが、図の明瞭化のために、それらの連結は省略する。
【0164】
[ステップS204] 次に、図25で表されたラティスに対して、図21の中の場所句のハッシュ辞書を適用した該当受理パターン記号列伝搬法を行う。
その結果、生成された場所句は図26となる。
【0165】
この図において、“‐”でつながれている単語は、個々のノードを表し、“)”と“(”で囲まれた文字列は、該当した品詞を表している。
【0166】
[ステップS205] 以上で、場所句に対しての処理を終了したので、次に“処理済み文法セット名リスト”、“未処理文法セット名リスト”を更新する。場所句を未処理文法セット名リストから削除し、“処理済み文法セット名リスト”に登録する。
【0167】
その結果、各々のリストは以下のようになる。
[ステップS206] “未処理文法セット名リスト”に全系列が残っているので、S207の処理に進む。
【0168】
[ステップS207] S204で生成された系列を一つのノードとして、“ノードリスト”に追加する。その時に、新たにできた各ノードが場所句のノードであることも登録する。
その結果、“ノードリスト”は図27のようになる。そして、S202の処理に進む。
【0169】
[ステップS202] “未処理文法セット名リスト”に唯一残っている全系列について、実行可能性を調べる。全系列の生成に必要な文法セット名である場所句は、既に生成されているので全系列に関する解釈が可能である。よって、全系列を適用する文法セットとして選択する。
【0170】
[ステップS203] 次に、ノードリスト登録されているノードを出現位置を基準にして連結する。但し、今回は、二未処理文法セットリスト”に唯一残っている全系列についての処理であるので、文頭、文末に関する判定も行う。
【0171】
その結果、図28の如きの結果が得られたとする。この図においても、図25と同様に、“Start”は文頭を“End”は文末を意味し、丸囲みの文字がノードを示し、ノードに付与する形で添えられている文字列がその品詞を意味する。但し、今回は文頭、文末についての連結判定が行われているので、それらの連結も表示している。
【0172】
[ステップS204] 次に、図28で表されたラティスに対して、図21の中の全系列のハッシュ辞書を適用した該当受理パターン記号列伝搬法を行う。その結果、生成された全系列は図29となる。
【0173】
[ステップS205] 全系列に対しての処理を終了したので、“処理済み文法セット名リスト”、“未処理文法セット名リスト2を更新する。全系列を“未処理文法セット名リスト”から削除し、“処理済み文法セット名リスト”に登録する。
【0174】
そして、各々のリストは以下のようになる。
[ステップS206] “未処理文法セット名リスト”が空になったので、処理を終了する。
【0175】
この段階で生成されている系列(図29)が、ラティス解釈結果となる。
【0176】
以上で本発明によるラティスの解釈が終了し、最終的な解析結果として、
「西宮インター前サービスエリアまでどれくらい」
という階層化を行わない場合と同じ文字系列が得られる。
【0177】
ここで、階層化を行わなかった場合との計算量の比較を行ってみる。もし、階層化を行わなかった場合、“品詞系列パターン辞書”は図30のように展開される。そして、この“品詞系列パターン辞書”から構成されるハッシュ辞書の一番目の出現位置の部分は図31のようになる。
【0178】
尚、この場合のハッシュ辞書は出現位置が最大“10”となり、各出現位置においても品詞の数が最大“9”個と、ハッシュ辞書の規模が大きくなっている。また、該当受理パターン記号列伝搬法では、該当品詞系列パターンを絞り込むために、ハッシュ辞書の要素同士の“And/Or”論理の集合演算を行うが、集合演算の比較演算の回数は要素数の2乗のオーダーとなる。
【0179】
ここで、両者のハッシュ辞書の要素数を比較すると、図31(最大14個)と、図21(最大3個)であり、要素数が大きく異なることがわかる。
【0180】
ここで、階層化を行わなかった場合と、行った場合との比較演算回数のオーダーは次のようになる。
【0181】
非階層化 : A12×L
階層化 : A22×L×R
ここで、A1,A2はそれぞれの場合におけるハッシュ辞書の最大の要素数であり、LはS3において連結されたノード間連結数、Rは階層化によって行われる該当受理パターン記号列伝搬法の回数である。
【0182】
また、第2の実施形態での例における比較演算回数を計算すると、階層化を行っていない場合は、A1=14であるから、14×14×L=196Lとなり、階層化を行った場合は、A2=3であるから、3×3×L×2=18Lとなる。
これより、比較演算回数は階層化により、大きく減少していることがわかる。また、演算処理に際してのコンピュータのメモリ使用量についても、記憶すべき品詞系列パターンの数は、階層化を行っていない場合は35個であるのに対し、階層化を行った場合は“場所句”5個、“全系列”3個の計8個となって、大幅に削減出来、それに伴い前述したようにハッシュ辞書の規模も小さくなる。
【0183】
また、文法セット表現の数が増加した場合に、特に本発明の効果は大きくなる。例えば、先ほどの例において、場所句の品詞パターン辞書の数が100個になった場合、階層化を行わない場合は、品詞系列パターン辞書の数が10200個、階層化を行った場合は、“場所句”100個、“全系列”3個の計103個となり、その差は更に有意なものとなる。
【0184】
また、本実施例において、図22に示した階層接続可能品詞リストをS203に利用した場合に、残るリンクを示した図が図32(場所句を処理文法セットとして使用)、図33(場所句生成後、全系列を処理文法セットとして使用)である。
【0185】
これらの図からわかるように、接続可能品詞リストを使用しない場合と比較して、大きくりンクの数が減少し、該当受理パターン記号列伝搬法による計算量が減少していることがわかる。勿論、階層化を行わなくとも、リンク数は減少するが、階層化を行えば、もとの文法セットそのものが小さくなるために、出現する品詞の数がより少なくなり、接続できる種類も減少すると考えられ、接続可能品詞リストの効果も増すものと考えられる。
【0186】
以上から、本発明によって該当受理パターン記号列伝搬法から計算量、メモリのコストを大きく減少させていることがわかる。
【0187】
かくして、このように構成された本方式によれば、該当受理パターン記号列伝搬法において、正解となりうるカテゴリ系列の集合が増大した場合おいても、必要なメモリ量を抑制し、また、解析途中の伝搬処理に必要な集合演算の規模が大きくなるため、計算量においても必要なコストを抑制する解釈方法を構成できる。
【0188】
尚、上述の例において、文型辞書を「場所句‐全系列」の1階層としているが、依存関係を明記する限り、何階層に分割しても、場所句と同じ位置づけとして別の句を並列に定義しても構わない。また、最終的に部分系列を定義できる品詞系列パターン辞書を生成できる文型辞書であれば、どのような文型定義方法でも構わない。例えば、文型を書き換え規則で定義する場合は該当受理パターン記号列伝搬法の前提である有限展開個数の範囲内であれば、ある特定の非終端記号までを展開した品詞系列パターンを句として定義し、本方式を適用することが可能である。
【0189】
また、上述の例においては、制御の単位を単語とし、音声ワードスポッティングをアプリケーションとして記述しているが、本発明の実現形態はこれに限定されるものではなく、該当受理パターン記号列伝搬法が適用できる範囲であれば、そのような実現形態は本発明の趣旨の範囲内である。
【0190】
以上のように、本発明の実現形態には上述の例に対して種々の変形が可能であり、それらも趣旨に反しない限り本発明の実施形態の範囲内である。
【0191】
以上、第2の実施形態の例は、開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフであって、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つ形式のグラフ構造に変換可能な入力情報を、当該入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列で表される受理可能な受理パターン記号列の集合に基づいて解析することにより、零個以上の尤もらしい受理パターン記号列を出力する情報解析方法において、
前記受理可能な受理パターン記号列のうち、特定の部分系列である部分受理パターン記号列を構成し、また、その部分受理パターン記号列を一つのカテゴリ記号として利用し、受理パターン記号列を再帰的に構成し、階層受理パターン記号列集合を生成する階層受理パターン記号列生成ステップと、
前記階層受理パターン記号列集合の中から、全てのカテゴリ記号が既知である前記部分受理パターン記号列を選択する部分受理パターン記号列選択ステップと、
前記階層部分受理パターン記号列集合の中の、各部分受理パターン記号列が既に選択されたか否かを記憶する処理状態管理ステップと、
この処理状態管理ステップにて記憶した情報から、選択された部分受理パターン記号列が最終の記号列か否かを判定し、最後でない場合は無条件で前記開始ノードと終了ノードとに全てのデータノードを連結して、前記選択された部分受理パターン記号列を受理パターンとした前記解析を実施し、最後の場合は、前記選択された部分受理パターン記号列を受理パターンとした前記解析を実施することにより、尤もらしい部分受理パターン記号列を出力する解析ステップと、
前記収集された尤もらしい部分受理パターン記号列集合と前記各ノードに蓄積された各ノードの受理パターン記号列の情報を用いて前記グラフ構造を探索し、前記尤もらしい受理パターン記号列集合の各要素を生成し得る零個以上の解経路候補の集合を発見し、各経路に存在するノードをマージし、その所属カテゴリを該当する部分受理パターンとする新たなノードを作成する新規ノード生成ステップと、
前記処理状態管理ステップから、全ての部分受理パターン記号列について解析ステップを通過したか否かを判定し、全ての部分受理パターン記号列につて解析ステップを通過した場合に処理を終了する終了条件判定ステップとからなるもので、このような本発明によれば、膨大な数の品詞パターン系列の中に共有する部分品詞パターン系列を先に解釈し、その結果を利用して全体の品詞パターン系列を解釈するため、一回の該当文型伝搬法の対象となる品詞パターン系列の個数を大幅に削減し、計算量、メモリの両面において大幅にコストを削減することができる。
【0192】
実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピーディスク、ハードディスクなど)、光ディスク(CD‐ROM、DVDなど)、半導体メモリなどの記録媒体に格納して頒布することもできる。
【0193】
【発明の効果】
以上説明したように、第1の本発明によれば、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、与えられた受理可能構文規則を満足する尤もらしい入力要素カテゴリ系列を高速かつ少ないメモリ要求量で導くことが可能となる、展開すれば極めで多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、与えられた受理可能構文規則を満足する尤もらしい入力要素系列を高速かつ少ないメモリ要求量で導くことが可能となる、等の実用上多大な効果が奏せられる。
【0194】
また、第2の本発明によれば、膨大な数のカテゴリ系列の中に共有する部分品詞パターン系列を先に解釈し、その結果を利用して全体のカテゴリ系列を解釈するため、一回の該当文型伝搬法の対象となるカテゴリ系列の個数を大幅に削減し、計算量、メモリの両面において大幅にコストを削減することができる。
【図面の簡単な説明】
【図1】本発明を説明するための図であって、第1の実施形態における本発明システムの概略的構成を示すブロック図。
【図2】本発明を説明するための図であって、第1の実施形態における本発明システムの全体的な処理の流れを示すフローチャート。
【図3】本発明を説明するための図であって、第1の実施形態における本発明システムでのラティス解析処理(S3)の概要を説明するフローチャート。
【図4】本発明を説明するための図であって、本発明における第1の実施形態におけるラティス解析処理(S3)での処理の詳細を示すフローチャート。
【図5】図4のフローチャートの部分拡大図。
【図6】図4のフローチャートの部分拡大図。
【図7】図4のフローチャートの部分拡大図。
【図8】本発明を説明するための図であって、第1の実施形態において説明に用いる簡単化されたワードスポッティング結果の例を示す図。
【図9】ワードスポッティング結果から構築された単語ラティスの例を示す図。
【図10】単語ラティスの各ノードのデータ構造を示す図。
【図11】初期設定処理(S31)終了時の単語ラティスのノードの例を示す図。
【図12】本発明を説明するための図であって、第1の実施形態において用いる品詞辞書の例を示す図。
【図13】本発明を説明するための図であって、第1の実施形態において用いる文型辞書の例を示す図。
【図14】本発明を説明するための図であって、第1の実施形態において用いる品詞系列パターン辞書の例を示す図。
【図15】本発明を説明するための図であって、第1の実施形態において用いる品詞系列ハッシュ辞書の例を示す図。
【図16】ワードスポッティング結果の例を示す図。
【図17】本発明を説明するための図であって、第2の実施形態における本発明システムの全体的な処理の流れを示すフローチャート。
【図18】本発明を説明するための図であって、該当文型伝搬法における文型辞書例を示す図。
【図19】本発明を説明するための図であって、第2の実施形態において用いる文型辞書例を示す図。
【図20】本発明を説明するための図であって、第2の実施形態において用いる階層品詞系列パターン辞書例を示す図。
【図21】本発明を説明するための図であって、第2の実施形態において用いる階層ハッシュ辞書例を示す図。
【図22】 本発明を説明するための図であって、第2の実施形態において用いる階層接続可能品詞リスト例を示す図。
【図23】本発明を説明するための図であって、第2の実施形態において得られた入力認識結果の例を示す図。
【図24】本発明を説明するための図であって、第2の実施形態における初期ノードリスト例を示す図。
【図25】本発明を説明するための図であって、場所句を選択時に連結されたラティスの例を示す図。
【図26】本発明を説明するための図であって、第2の実施形態において生成された場所句の例を示す図。
【図27】本発明を説明するための図であって、第2の実施形態における場所句登録後のノードリストの例を示す図。
【図28】本発明を説明するための図であって、第2の実施形態において全系列を選択した時に連結されるラティスの例を示す図。
【図29】本発明を説明するための図であって、第2の実施形態において生成された全系列の例を示す図。
【図30】本発明を説明するための図であって、該当文型伝搬法における品詞系列パターン辞書例を示す図。
【図31】本発明を説明するための図であって、該当文型伝搬法におけるハッシュ辞書例を示す図。
【図32】本発明を説明するための図であって、場所句を選択時に接続可能品詞リストを適用して連結されたラティスの例を示す図。
【図33】本発明を説明するための図であって、全系列を選択時に接続可能品詞リストを適用して連結されるラティスの例を示す図。
【符号の説明】
1…CPU(プロセッサ)
2…メインメモリ
3…入力部
4…出力部
5…大容量外部記憶装置
6…ドライブ
7…通信部
【発明の属する技術分野】
本発明は、ワードスポッティングを含む音声認識や文字認識等において、認識結果の単語や文字といった複数の候補が得られるような一般にラティス形式で表現できるような認識処理結果を与えられ、それを解析して利用者の意図した入力系列候補を絞り込むための情報解析方法および情報解析プログラムを記憶した媒体に関する。
【0002】
【従来の技術】
近年、電子計算機技術(コンピュータ技術)の発展により、利用者にとってより自然な方法で種々の情報を計算機に入力することが可能になってきており、その利用を促進する技術が求められるようになってきている。
【0003】
例えば、コンピュータにマイクロフォンと安価なA/Dコンバータが装備されたことにより、利用者はコンピュータに対して、自分の要求を発声すると、コンピュータがそれを音声認識処理することにより、ユーザの要求を解釈するような技術の重要性が増している。
【0004】
また、ぺンタブレットやイメージスキャナ等の普及により、手書き文字や紙面に印刷された文字等を文字認識し、ディジタルデータ化するような要求が一般化してきている。
【0005】
音声認識や文字認識といった認識処理を伴う入力の処理において、従来から問題になっていた点として、一般に、これらの認識処理において利用者の意図する入力が一意に認識結果として得ることができないということがあった。
【0006】
すなわち、入力信号の認識処理においては、100%の認識率を期待することはできず、そのため、一つの発声単語や文字に対して複数の候補が発生することが一般的である。
【0007】
このため、音声で利用者が文発声をしたり、文章を文字認識したりするような場合、候補となる単語や文字が格子状に組み合わされた形式である“ラティス形式”で表現できるような認識結果が得られる。
【0008】
利用者の入力を、一般のアプリケーションプログラムで利用可能にするためには、このような認識結果から利用者の入力として尤もらしい文や文字列を、高速かつ適切に決定するような認識の後処理技術が重要である。
【0009】
そこで、そのための後処理技術を考えてみると、例えば、音声認識や文字認識結果のラティス構造から、利用者の入力した文を決定する後処理の技術がある。
このような後処理技術として、従来、このラティス構造を展開して文候補集合を生成し、各候補に自然言語の構文解釈技術を応用することが考えられる。例えば、特開平5‐197389号公報「音声認識装置」に開示されているような先行発明では、少数の認識対象単語から得られる認識結果のラティス(文章を文字認識したり、あるいは利用者が音声で文発声をしたりするような場合での認識結果であって、候補となる単語や文字が格子状に組み合わされた形式で表現されたもの)を展開しながら、極めて単純な文法からなる文の入力同定に成功している。
【0010】
しかしながら、一般に人対人の対話で想定されるような多数の語棄と複雑な文法からなる文の入力に対する認識結果として得られるラティス構造は、一般に数多くの候補を含んで複雑に接続されているのが一般的である。
【0011】
例えば、「西宮インターチェンジまでどのくらいですか」という発声に対して、ワードスポッティング処理を施した結果の例を、図16に示す。
【0012】
図16では、1行に一つの単語候補が、「入力要素ID:単語表象(認識スコア)信号フレームにおけるこの単語の区間」の形式で示されている。
【0013】
この“0フレーム目”から“40フレーム目”までの音声入力に対して、正しくスポッティングされた4単語を含む合計42単語が得られており、実に38単語が“湧き出し誤り”となっている。
【0014】
このようなワードスポッティング結果から構成されるラティス構造を展開すると、単語間の時間的な前後関係や離れ、重なりなどによる制約を加えたとしても、数百万の単語系列候補が生成されることとなる。このため、ラティスを候補に展開して解析するという手法は計算量、必要メモリ量の両面において現実的ではない。
【0015】
また、候補展開よりも高速な解析手法として、特開平9‐134369号公報「ラティスをキーとした検索を行う辞書検索装置及び方法」に開示されているようなものがある。
【0016】
これは、ラティスの先頭を根とするツリー上に入力ラティスを展開し、トライ辞書を用いてそのツリーを解析することで解析の高速化を図る手法である。そして、この発明では、ツリー上に入力ラティスを展開することで、単純に全候補を展開する方法に対して解析対象候補数をかなり抑えることに成功している。また、その解析に際してもトライ辞書を用いることで高速化が図られている。
【0017】
しかしながら、前記図16のような、より曖味性の大きな入力ラティスに対しては、解析処理回数が無視できないほど多くなると共に、解析途中の候補系列を残しながらトライ辞書を引くための手数が無視できないほど大きくなってしまうという問題があった。
【0018】
【発明が解決しようとする課題】
このように、従来は、利用者の入力の認識結果として得られるラティス構造 (以下、入力ラティスと記す)の解析において、何らかの形でラティスを展開して解析しようとすると、現実的な問題においては莫大な計算量とメモリ量を必要とし、事実上解析が不可能であるという問題があった。
【0019】
本発明の第1の目的は、入力ラティスを展開することなく解析し、高速にその解析結果を得ることができる情報解析方法を提供することにある。
【0020】
【課題を解決するための手段】
上記目的を達成するため、本発明は次のように構成する。
【0021】
第1には、開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフであって、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つようなグラフ構造に変換可能な入力情報を、当該入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列で表される受理可能な受理パターン記号列の集合に基づいて解析し、零個以上の尤もらしい受理パターン記号列を出力する情報解析方法において、
前記開始ノードもしくは終了ノードから前記グラフ構造の解析を開始する解析開始ノード決定ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードが解経路候補の開始点または終了点からある順番で解経路候補に含まれる場合にとり得る受理パターン記号列を計算してノードに記録する受理パターン記号列計算・蓄積ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードに対する解析の経路パターンを網羅したか否かを判定するノード解析網羅判定ステップと、
あるノードについてそのノードの解析経路パターンが網羅された場合に零回以上の受理パターン記号列計算・蓄積ステップの実行によって蓄積されたそのノードへの受理パターン記号列を解析においてそのノードの次に接続されている一個以上のノードに伝播させる受理パターン記号列伝播ステップと、
解析が終了したかどうかを判定する解析終了判定ステップと、
解析が終了した際に前記開始ノードもしくは終了ノードに蓄積されている受理パターン記号列情報を用いて前記解析結果の出力である零個以上の尤もらしい受理パターン記号列を収集し、出力する受理パターン記号列収集・出力ステップとを具備することを特徴とする。
【0022】
すなわち、本発明に係る情報解析方法の全体的な処理の流れを示す図2を参照して説明すると、処理開始により、まず初期化処理S1が行われる。その後終了が選択されるまで、入力に対する解析処理を行うループに入る。そして、入力の認識結果が伝達されると(S2)、それを入力ラティスに再構成し(S5)、入力ラティス上で解釈処理を行って受理可能な入力要素カテゴリ系列の集合を構成し(S3)、得られた入力要素カテゴリ系列集合を元に入力ラティスを再スキャンすることで、受理可能な入力要素系列集合を得る(S4)。ここで文発声に対する音声ワードスポッティングの場合、S3の出力である入力要素カテゴリ系列集合とは受理可能な品詞系列の集合であり、S4の出力である入力要素系列集合とは単語系列の集合となる。
【0023】
すなわち、本発明の第一の特徴は、入力ラティスの解析S3において、後述する品詞系列のハッシュ辞書を用意してそれを参照しながら解析することでラティスを展開することなくかつ高速に解析処理を行い、入力要素カテゴリ系列集合を得ることができるようになることである。更に本発明の第二の特徴は、解析結果として入力要素系列集合が必要な場合、上記の入力要素カテゴリ系列集合を得た後、その入力要素カテゴリ系列集合を元に入力ラティスを再スキャンして受理可能な入力要素系列集合を得ることで、一度のスキャンで入力要素系列集合を得るよりもメモリ効率良く入力要素系列集合が得られるようになることである。
【0024】
本発明によれば、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、与えられた受理可能構文規則を満足する尤もらしい入力要素カテゴリ系列を高速かつ少ないメモリ要求量で導くことが可能となる。
【0025】
さらに、本発明によれば、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、与えられた受理可能構文規則を満足する尤もらしい入力要素系列を高速かつ少ないメモリ要求量で導くことが可能となる。
【0026】
また、第2には本発明は、開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフであって、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つ形式のグラフ構造に変換可能な入力情報を、当該入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列で表される受理可能な受理パターン記号列の集合に基づいて解析することにより、零個以上の尤もらしい受理パターン記号列を出力する情報解析方法において、
前記受理可能な受理パターン記号列のうち、特定の部分系列である部分受理パターン記号列を構成し、また、その部分受理パターン記号列を一つのカテゴリ記号として利用し、受理パターン記号列を再帰的に構成し、階層受理パターン記号列集合を生成する階層受理パターン記号列生成ステップと、
前記階層受理パターン記号列集合の中から、全てのカテゴリ記号が既知である前記部分受理パターン記号列を選択する部分受理パターン記号列選択ステップと、
前記階層部分受理パターン記号列集合の中の、各部分受理パターン記号列が既に選択されたか否かを記憶する処理状態管理ステップと、
この処理状態管理ステップにて記憶した情報から、選択された部分受理パターン記号列が最終の記号列か否かを判定し、最後でない場合は無条件で前記開始ノードと終了ノードとに全てのデータノードを連結して、前記選択された部分受理パターン記号列を受理パターンとした前記解析を実施し、最後の場合は、前記選択された部分受理パターン記号列を受理パターンとした前記解析を実施することにより、尤もらしい部分受理パターン記号列を出力する解析ステップと、
前記収集された尤もらしい部分受理パターン記号列集合と前記各ノードに蓄積された各ノードの受理パターン記号列の情報を用いて前記グラフ構造を探索し、前記尤もらしい受理パターン記号列集合の各要素を生成し得る零個以上の解経路候補の集合を発見し、各経路に存在するノードをマージし、その所属カテゴリを該当する部分受理パターンとする新たなノードを作成する新規ノード生成ステップと、
前記処理状態管理ステップから、全ての部分受理パターン記号列について解析ステップを通過したか否かを判定し、全ての部分受理パターン記号列につて解析ステップを通過した場合に処理を終了する終了条件判定ステップとを具備することを特徴とする。
【0027】
このような本発明は、従来、該当受理パターン記号列伝搬法において、正解となりうる品詞系列の集合が増大した場合に、記憶すベきハッシュ辞書の規模が大きくなり、膨大な量のメモリを必要とすること、また、解析途中の伝搬処理に必要な集合演算の規模が大きくなるため、計算量においても大きなコストを必要とし、また、正解となりうる品詞系列を生成するための、文型辞書にも配慮が必要であったという問題を解決し、正解となりうる品詞系列の集合が増大した場合においても、使用するメモリ量の増加を抑制し、解析時の伝搬処理の際の計算量の増加を抑制するラティス解析手法を提供できるようになる。また、該当受理パターン記号列伝搬法における品詞系列を生成するための文型辞書についても、システム管理者が管理し易い形式を与えることができるようになる。
【0028】
【発明の実施の形態】
以下、本発明の具体例を、図面を参照して説明する。
【0029】
本発明においては、音声で利用者が文発声をしたり、文章を文字認識したりするような場合において、候補となる単語や文字が格子状に組み合わされた形式である“ラティス形式”で表現できるような認識結果を使用して情報解析するもので、以下、詳細を説明する。
【0030】
(第1の具体例)
<概略説明>
本発明は、品詞系列のハッシュ辞書を参照しながら入力ラティス、すなわち、“利用者の入力の認識結果として得られるラティス構造”を展開することなく、かつ、高速に解析処理を行い尤もらしい入力要素カテゴリ系列を導く機能を持ち、また、入力ラティスを展開することなくかつ高速に解析処理を行い、尤もらしい入力要素系列を導く機能を持つ情報解析方式を提供するものであり、以下、図面を参照して本発明の詳細につき説明する。
【0031】
図1は、本発明による情報解析システムの概略的な構成図であり、図中、1はCPU、2はメインメモリ、3は入力部、4は出力部である。メインメモリ2は、本発明システムの機能を実現するに必要なプログラム等を格納しておくメモリであり、CPU1は、このメモリ2に記憶されたプログラムを実行して各種処理や各種制御を実施する演算制御の中枢であり、入力部3は、利用者の音声を取り込み、音声認識してデータ化したり、あるいは入力文字を取り込んで文字認識し、データ化するなどしてその入力情報をCPU1に与えるものである。
【0032】
出力部4は、認識結果や最終出力を表示あるいはデータとして出力したりするためのものである。
【0033】
また、この他、各種辞書等を保持するハードディスや光ディスクなどによる大容量外部記憶装置5、また、光ディスクやCD‐ROM、CD‐R、CD‐RW、DVDなどの可搬型記憶媒体をアクセスする大容量記憶媒体ドライブ装置6、外部システムとの通信を行う通信部7などを有する。
【0034】
図2は、本発明に係る情報解析方法の全体的な処理の流れを示すフローチャートであり、ここで説明する如きの機能が図1の装置で実行されることで実現される。このフローチャートに従って本発明の処理の流れを説明すると、次の通りである。
【0035】
本発明システムにおける情報解析処理は、[i]初期化処理、[ii]ラティス構築処理、[iii]ラティス解析処理、[iv]単語系列候補リスト形成処理から なる。
【0036】
CPU1は、処理を開始すると、まず、初めに[i]の初期化処理(ステップS1)を行う。その後、終了が選択されるまで、入力に対する解析処理を行うループに入る。すなわち、[ii]のラティス構築処理、[iii]のラティス解析処 理、[iv]の単語系列候補リスト形成処理である。
【0037】
そして、[ii]ラティス構築処理においては、入力の認識結果が伝達されると(ステップS2)、それを入力ラティスに再構成する(ステップS5)。ついで、[iii]のラティス解析処理を行い、ここで入力ラティス上で解釈処理を行っ て受理可能な入力要素カテゴリ系列の集合を構成する(ステップS3)。ついで[iv]の単語系列候補リスト形成処理に入り、ステップS3で得られた入力要素カテゴリ系列集合を元に入力ラティスを再スキャンすることで、受理可能な入力要素系列集合を得る(ステップS4)。
【0038】
ここで文発声に対する音声ワードスポッティングの場合、ステップS3での処理結果に基づく出力である“入力要素カテゴリ系列集合”とは受理可能な品詞系列の集合であり、ステップS4での処理に基づく出力である入力要素系列集合とは単語系列の集合となる。
【0039】
以上が、本発明に係る報解析方式の概略構成である。以下、文発声された音声信号に対し、ワードスポッティングを行った結果から適切な単語系列を同定する場合を例にとり、本発明を詳しく説明する。
【0040】
<具体例>
ここで、本発明に係る情報解析方式の処理過程において利用される辞書及びデータの構成について説明する。本発明に係る情報解析システムは、その処理過程において“品詞辞書”、“品詞系列パターン辞書”、“品詞系列ハッシュ辞書”、“処理中ノードリスト”を参照し、また、“品飼系列パターン辞書”と“品詞系列ハッシュ辞書”の生成の際に、“文型辞書”を参照する。これらは大容量外部記憶装置5に構築されている。
【0041】
尚、“処理中ノードリスト”は、現在処理対象とし得る入力ラティス上のノードのリストである。
【0042】
図12に、本発明システムで用いる“品詞辞書”の例を示す。この図に示す “品詞辞書”は、“品詞”、すなわち、“入力要素カテゴリ”については角丸長方形枠で囲んで示し、“単語”、すなわち、“入力要素”については長方形枠で囲んで示す。例えば、“品飼「場所」”は“「現在地」,「施設」,「目的地」,「経由地」”といった“子品詞”から構成され、“品詞「経由地」”は子品詞「出口・入口」と共に単語「インター」及び「インターチェンジ」を要素として持つ。
【0043】
本実施例では、このような形で入力解釈の基盤となる単語とその品詞構造の辞書を持つこととする。
【0044】
<文型辞書の例>
図13に、本実施形態で受理可能な単語系列である「文」の形を定義し蓄積する“文型辞書”の例を示す。この例の場合、
「((場所)|(経由地名)(経由地)|(代名詞:代名詞場所<そこ>))‐[道程])‐((疑問詞:HOW_MUCH<どれくらい>)|(疑問詞:H OW_MUCH 時間)|(疑問詞:HOW_MUCH 距離))」
なる内容の“g1”と、
「((場所固有名詞:地名)|(経由地名)(経由地))‐(疑問詞:WHAT:WHAT 物)‐((目印)|(場所:施設<食べるところ>))‐(動作 :存在:存在通常)」
なる内容の“g2”の2つの文型が登録されている。
【0045】
これらの文型において、“(”と“)”とで括られた最も小さい固まり、例えば“(場所)”や“(経由地名)”等、が一つの単語に対応する品詞となる。そして、それらの系列の連接が “‐(ハイフン)”で表され、「AかBかCのうちの何れかの選択」は “(A|B|C|)” と記述される。また、 “[”と“[”とで囲まれた区間は高々一回、すなわち、0回または1回だけ “[”と“]”で囲まれた区間が現れることを意味する。例えば、“g1”からは
「そこ」「まで」「どれくらい」
「京都」「まで」「どれぐらい」
「吹田」「まで」「何分」
「入口」「まで」「どのくらい」
等といったような単語系列が生成・受理可能であり、“g2”からは
「倉敷」「何か」「食べるところ」「ある」
「京都駅ロータリー」「なにか」「目印」「ある」
といったような単語系列が生成・受理できる。
【0046】
このような文型に従って読み展開すると、“文型辞書”は図14に示すような“品詞系列パターン辞書”に展開することができる。この図において図13の文型“g1”は“sp01‐g1”から“sp18‐g1”までの18パターンの品詞系列に展開することができ、文型“g2”は“sp01‐g2”から“sp04‐g2”までの4パターンに展開できる。
【0047】
この“sp01‐g1”から“sp18‐g1”と“sp01‐g2”から “sp04‐g2”までの各品詞系列パターンに付与された記号を、“品詞系列ID”と呼ぶ。“品詞系列パターン辞書”の各パターンは、各々が一つの単語に当たる品詞の連接からなる。例えば、“sp11‐g1”に品詞辞書を適用すると、
(「魚崎」「インター」「何キロ」)
といったような受理可能な単語系列が生成できる。
【0048】
“品詞系列パターン辞書”の内容を元に、各品詞の各品詞系列パターンにおける出現箇所(出現順序)と、その品詞によって“ハッシュ辞書”を構成すると図15に示す如きの“品詞系列ハッシュ辞書”が生成できる。
【0049】
例えば、図15(a)に示す“単語出現番号1”の“ハッシュ表”を見れば、本実施形態の文型辞書において“品詞(地名)”が文頭に現れる単語系列のパターンとしては、“品詞系列ID”が“sp01‐g2”と“sp02‐g2”の 2種類しかないことがわかる。
【0050】
“品詞系列ハッシュ辞書”は、単語出現番号が“1”から、あり得る品詞系列パターンの最長のもの(本実施形態では“5”)までの各“出現順位の表”と、各単語系列パターンの末尾からの“ハッシュ表”とから構成される。
【0051】
ここで処理の説明を簡単化させるため、得られたワードスポッティング結果が図8に示す如きの簡単化されたワードスポッティング結果であるとして話を進める。
【0052】
この入力はラティス構築処理部において各単語候補の時間的関係、及び重なりや離れの制約を用いることで、図9のような入力ラティス構造(文章を文字認識したり、あるいは利用者が音声で文発声をしたりするような場合での認識結果であって、候補となる単語や文字が格子状に組み合わされた形式で表現された構造)が構築される。
【0053】
この入力ラティス構造の各ノードには、図10に示す如きのデータ要素が格納される。
【0054】
すなわち、図10に示すように、“ノードID”、“所属品詞”、“前ノードリスト”、“次ノードリスト”、“未処理前ノードリスト”、“解析途中経過リスト”、“入力要素id:単語表象”の7要素である。
【0055】
ここで、入力ラティスのノードの第1の要素は、ノードの識別子である“ノードID”であり、図9で各ノードに示されているように、「入力要素ID:単語表象」の形式で記述される。
【0056】
第2の要素は、その単語の“所属品詞”である。
【0057】
第3の要素は、そのノードの前に接続する可能性のあるノードの集合を表す “前ノードリスト”である。
【0058】
第4の要素は、そのノードの後ろに接続する可能性のあるノードの集合を表す“次ノードリスト”である。
【0059】
第5の要素は、前ノードリストの要素中解析処理が終了していないノードの集合を表す“未処理前ノードリスト”であり、このリストの内容が空にならない限りそのノードの解析を行ってはならないことを示す。
【0060】
第6の要素は、そのノードが表象する単語が受理される単語系列の要素であるならば、どの品詞系列パターンがその単語系列のテンプレートとしてあり得るかを要素として持つ“解析途中経過リスト”である。解析途中経過リストは、そのノードが受理可能単語系列の何番目に現れるかの数値と、その順序でそのノードが表象する単語が現れたときに考えられる品詞系列IDのリストとの組のリストで表現される。
【0061】
例えば、図9の入力ラティスを例にとると、当該入力ラティスのノード“「07:今」”については“(「今」…)”という具合に、単語系列の最初に現れる場合と、“(「道」、「今」、…)”という具合に、2番目に現れる場合とが考えられる。
【0062】
このような場合、“解析途中経過リスト2は“[(1、1…1)、 (2、 […]]”と云う具合に、この単語が1番目に現れた場合に取り得る品詞系列パターンのリストと2番目に現れた場合に取り得る品詞系列パターンのそれとを分けて管理する。
<[iii]ラティス解析処理S3での処理機能>
図3は、図2で説明した本発明の具体例に係る情報解析方法におけるラティス解析処理S3での処理内容の概略を示すフローチャートである。ラティス解析処理S3での処理の詳細を図4乃至図7に示す。但し、図4はラティス解析処理フローの全体図、図5乃至図7はその部分拡大図である。
【0063】
以下、図3および図4乃至図7を参照して、解析処理の流れを説明する。
【0064】
処理が開始されると、まず初期設定処理(図3のステップS31)において解析処理の準備を行う。この初期設定処理(S31)の詳細は、図4乃至図6のステップS311〜S318に示す。
【0065】
この処理において、具体的には、
(1)入力ラティスの全ノードについて、前ノードリストの内容を未処理前ノードリストにコピーする、
(2)入力ラティスの開始ノードに接続している、すなわち単語系列の先頭になりうる単語を表象するノードを処理中ノードリストに含める、
(3)処理中ノードリストに含めたノードの解析途中経過リストの初期値を設定する、
(4)処理中ノードリストに含めた各ノードの未処理前ノードリストから開始ノードを除去する、
の4つの処理を行う。この例では、処理中ノードリストの内容は
[07:今,01:道,03:西宮]
となり、それらの各ノードの“未処理前ノードリスト”と“解析途中経過リスト”の内容は
となる。初期設定処理(S31)が終わった段階での単語ラティスのノード例は例えば、図11に示す如きとなる。
【0066】
初期設定処理(S31)が終わると、本ラティス解析処理S3では“処理中ノードリスト”が空になるまで(図3のステップS32)伝播処理(S33)を繰り返す。
【0067】
伝播処理S33の詳細は、図4および図6および図7におけるステップS331〜S338にあるが、この処理を一言でいうと、「あるノードにおいて未処理前ノードリストが空になり解析途中経過が確定すると、そのノードの後続のノードに解析途中経過リストの内容を伝播する」ということになる。
【0068】
そして、“処理中ノードリスト”が空になると、ラティスの“終了ノードの解析途中経過リスト”に蓄積されている内容が、ラティスで受理可能な“品詞系列ID”の集合となっている。
【0069】
このため、終了ノードの“解析途中経過リスト”の全ての“品詞系列ID”を“品詞系列候補リスト”にコピーして、ラティス解析処理(S3)は終了する。次に、このようにして得られた“品詞系列候補リスト”を利用して、入力ラティスをもう一度スキャンする前述の[iv]単語系列候補リスト形成処理(S4)を実行する。この単語系列候補リスト形成処理を実行することにより、求める受理可能な単語系列のリストを得る。
【0070】
以上が本発明に係る情報解析方法の処理概要とその機能である。
【0071】
<伝播処理S33での処理の詳細>
ここでこれまでの例を用い、図4および図6および図7のステップS331〜S338を参照してラティス解析処理における伝播処理(S33)の内容を更に詳しく説明する。
【0072】
まず、図4および図6および図7のステップS331において、“処理中ノードリスト”からノードが一つ取り出される。この場合、ノード「07:今」が処理対象前ノードMとなる。
【0073】
しかしながら、このノードの“未処理前ノードリスト”は空でないため、ステップS332のチェックで処理は開始されず、ステップS32の処理に戻る。そして、再び、ステップS331で別のノード「01:道」が“処理中ノードリスト”から取り出される。
【0074】
このノードの“未処理前ノードリスト”は空のため、後ろに接続するノード 「07:今」と「15:インターチェンジ」にこのノードの“解析途中経過リスト”の内容が伝播される。ただし、上に示すように「01:道」の“解析途中経過リスト”は空であるため、「07:今」と「l5:インターチェンジ」の“解析途中経過リスト”の内容は変化せず、これらのノードの“未処理前ノードリスト”から「01:道」が除去される。
【0075】
すなわち、この操作により、それらの各ノードの“未処理前ノードリスト”と“解析途中経過リスト”の内容が
となる。
【0076】
次にS331で、再び、ノード「07:今」が“処理中ノードリスト”から取り出されるが、“未処理前ノードリスト”は空となったため、今回は伝播が可能となる。
【0077】
しかしながら、このノードの“解析途中経過リスト”も事実上、“空”、すなわち、このノードを経由して受理可能な品詞系列はないため、このノードの後ろに接続する
「14:インター、18:今、20:まで、15:インターチェンジ」
の“解析途中経過リスト”の内容は変化せず、これらのノードの“未処理前ノードリスト”から「07:今」が除去されるのみである。
【0078】
これらの操作の結果、それらの各ノードの“未処理前ノードリスト”と“解析途中経過リスト”の内容は
となり、“処理中ノードリスト”から「07:今」が除去され、
となる。
【0079】
次にステップS331において、“処理中ノードリスト”からノード「03:西宮」が取り出される。このノードの“未処理前ノードリスト”は空のため、 “解析途中経過リスト”の内容の伝播が可能である。
【0080】
ここで、まず、ノード「03:西宮」の“解析途中経過リスト”の各順番インデックスに“1”を加えたリスト
[(2,[sp03‐g2,sp04‐g2,sp07‐g1、sp08‐g1,sp09‐g1、sp10‐g1,sp11‐g1,sp12‐g1])]
を生成する。そして、このリストと、後続するノードの対応する“品詞系列ハッシュ”の内容との積集合をとる。
【0081】
例えば、[14:インター」に伝播する際、前出のリストの単語出現番号である“2”のハッシュ辞書の「インター」の品詞である「経由地」の項目のリスト
[sp08‐g1,sp09‐g1,sp10‐g1,sp11‐g1、sp12‐g1,sp07‐g1、sp03‐g2、Sp04‐g2]
との積集合がとられ、その結果、「14:インター」の“解析途中経過リスト”の内容は
[(2,[sp03‐g2、sp04‐g2、sp07‐g1、sp08‐g1,sp09‐g1,sp10‐g1,sp11‐g1,8pl2‐g1])]
となる。
【0082】
同様の処理が「03:西宮」に接続する各ノードに対して行われ、それらの各ノードの“未処理前ノードリスト”と“解析途中経過リスト”の内容は
となり、“処理中ノードリスト”は、
[15:インターチェンジ,14:インター,18:今、20:まで]
となる。
【0083】
次に、ステップS331でノード「15:インターチェンジ」が“処理中ノードリスト”から取り出される。このノードの“未処理前ノードリスト”は空のため、“解析途中経過リスト”の内容の伝播が可能である。
【0084】
ここでまず、ノード「15:インターチェンジ」の“解析途中経過リスト”の各順番インデックスに“1”を加えたリスト
[(3,sp03‐g2,sp04‐g2、sp07‐g1,sp08‐g1,sp09‐g1、sp10‐g1、sp11‐g1,sp12‐g1])]
を生成する。そして、このリストと、後続するノード「20:まで」の対応する“品詞系列ハッシュ”の内容との積集合をとる。
【0085】
すなわち、「20:まで」に伝播する際、前出のリストの単語出現番号である“3”のハッシュ辞書の「まで」の品詞である「道程」の項目のリスト
[sp08‐g1,sp10‐g1,sp12‐g1]
との積集合がとられ、「20:まで」の解析途中経過リストの内容は
[(3,[sp08‐g1,sp10‐g1,sp12‐g1])]
となる。
【0086】
同様のサイクルが「14:インター」からの伝播でも行われる。この伝播の際、「14:インター」からは「18:今」に対しても接続可能ではあるが、「18:今」の対応するハッシュ辞書項目がないため、このノードの“解析途中経過リスト”の内容は空のままである。結果として、各ノードの“未処理前ノードリスト”と“解析途中経過リスト”の内容は
となる。
【0087】
次に、ステップS331でノード「20:まで」が“処理中ノードリスト”から取り出される。このノードの“未処理前ノードリスト”は空のため、“解析途中経過リスト”の内容の伝播が可能である。ここでまず、ノード「20:まで」の“解析途中経過リスト”の各順番インデックスに“1”を加えたリスト
[(4、[sp08‐g1,sp10‐g1,spl2‐g1])]
を生成し、後続のノード「24:どのくらい」と「終了」に伝播する。その結果、まず、“ノード「24:どのくらい」”ではこれまでと同様品詞系列ハッシュ辞書を参照することで“解析途中経過リスト”を更新することから、当該“解析途中経過リスト”の内容は
となる。次に、「終了」ノードへの伝播に際しては単語出現番号「end」のハッシュ辞書項目が参照される。この場合、品詞「道程」で終了する文型は登録されていないため辞書参照は失敗し、終了ノードの解析途中経過リストの内容は更新されない。すなわち、
となる。
【0088】
次にステップS331で、ノード「24:どのくらい」が“処理中ノードリスト”から取り出される。このノードの“未処理前ノードリスト”は空のため、 “解析途中経過リスト”の内容の伝播が可能である。しかし、このノードに接続可能なノードは「終了」ノードのみなので、終了ノードに伝播させる。
【0089】
この伝播において、単語出現番号 「end」のハッシュ辞書項目が参照される。品詞「HOW MUCH<どれくらい>」の項目が参照され、ノード「24:どのくらい」の“解析途中経過リスト”との積集合がとられ、
が最終的に得られる。また、処理中ノードリストが空になり、品詞系列候補リストの内容が
[sp08‐g1]
となって、ラティス解析処理S3は終了する。
【0090】
次に得られた“品詞系列候補リスト”から、受理可能な単語系列を生成する前記の[iv]単語系列候補リスト形成処理(図2のステップS4)に処理が移る。
<[iv]単語系列候補リスト形成処理>
この単語系列候補リスト形成処理処理は、入力ラティスの可能な系列の中から、得られた各品詞系列候補、この場合は“sp08‐g1”を見つけ出す処理に他ならない。
【0091】
ここで、ラティス解析処理の過程において各ノードが所属し得る品詞系列の集合が“解析途中経過リスト”として残っているため、求める“品詞系列ID”を“解析途中経過リスト”のメンバとして持つ系列を探索することで、求める“単語系列候補リスト”を得ることができる。
【0092】
このような単語系列候補リスト形成処理(図2のステップS4)の過程を経て、“単語系列候補リスト”
が得られる。
【0093】
かくして、このように構成された情報解析方法によれば、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、「与えられた受理可能構文規則を満足する尤もらしい入力要素カテゴリ系列」を高速、かつ、少ないメモリ容量で導くことが可能となる。
【0094】
さらに、本発明によれば、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、「与えられた受理可能構文規則を満足する尤もらしい入力要素系列」を高速、かつ、少ないメモリ容量で導くことが可能となる。
【0095】
尚、本発明の実施の形態としては上記の方式を実現したプログラムを収録した媒体として実現し、その媒体に納められたプログラムをコンピュータに読み込ませて実行させることで実施することも可能である。
【0096】
尚、上述の例において制御の単位を単語とし音声ワードスポッティングをアプリケーションとして記述しているが、本発明の実現形態はこれに限定されるものではなく、例えば、連続音声認識の音韻を単位としてで実現することも可能であり、また、文字認識処理における文字を単位として制御することも可能であり、そのような実現形態も本発明の趣旨の範囲内である。また、上述の例において文法辞書の要素の記述を“OR”付きの品詞系列用の形式で、品詞辞書を単語カテゴリの階層構造として記述しているが、本発明の実現形態はこれに限定される物ではなく、最終的には品詞系列パターン辞書が作成できる、すなわち入力ラティスの各ノードの要素の集合とそれらの要素が所属するカテゴリの集合をあわせた集合の要素の系列を要素として持つ高々有限個の集合として品詞系列パターン辞書が構成できるような実現形態であればどのような形式でも実現可能である。例えば、構文記述及び品詞記述を書き換え規則で記述したとしても、規則による構文展開回数に制限を加えるなどその書き換え規則から有限個の前終端記号列が生成されるような記述と制御が行われれば、本発明は実現可能である。一般に、計算機で処理可能な構文の数は有限であり、また、人間が話したり書いたりできる語棄や文型の展開は有限であることから、本来無限個の前終端記号列を生成できるような書き換え文法にそのような制約を加えたとしても枠組の現実性を損なう物ではない。以上のように、本発明の実現形態には上述の例に対して種々の変形が可能であり、それらも趣旨に反しない限り本発明の実施形態の範囲内である。
以上、第1の実施形態は、入力ラティスを展開することなく解析し、高速にその解析結果を得ることができる情報解析方法を提供するために、有向グラフ構造状のデータ構造として与えられる入力ラティスの各ノードの表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列として与えられた受理可能な受理パターン記号列の集合のうち、前記開始ノードもしくは終了ノードから前記グラフ構造の解析を開始する解析開始ノード決定ステップと、前記グラフ構造の各ノードの解析の途中経過においてそのノードが解経路候補の開始点または終了点からある順番で解経路候補に含まれる場合にとり得る受理パターン記号列を計算してノードに記録する受理パターン記号列計算・蓄積ステップと、前記グラフ構造の各ノードの解析の途中経過においてそのノードに対する解析の経路パターンを網羅したかどうかを判定するノード解析網羅判定ステップと、あるノードについてそのノードの解析経路パターンが網羅された場合に零回以上の受理パターン記号列計算・蓄積ステップの実行によって蓄積されたそのノードヘの受理パターン記号列を解析においてそのノードの次に接続されている一個以上のノードに伝播させる受理パターン記号列伝播ステップと、解析が終了したかどうかを判定する解析終了判定ステップと、解析が終了した際に前記開始ノードもしくは終了ノードに蓄積されている受理パターン記号列情報を用いて本方法の出力である零個以上の尤もらしい受理パターン記号列を収集する受理パターン記号列収集ステップと、前記収集された尤もらしい受理パターン記号列集合と前記各ノードに蓄積された各ノードの受理パターン記号列の情報を用いて前記グラフ構造を探索し、前記尤もらしい受理パターン記号列集合の各要素を生成し得る零個以上の解経路候補の集合を発見し、出力する解経路候補検索・出力ステップとを具備したことを特徴とする。
【0097】
本発明によれば、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、与えられた受理可能構文規則を満足する尤もらしい入力要素カテゴリ系列を高速かつ少ないメモリ要求量で導くことが可能となる、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、与えられた受理可能構文規則を満足する尤もらしい入力要素系列を高速かつ少ないメモリ要求量で導くことが可能となる、等の実用上多大な効果が奏せられる。
【0098】
(第2の実施形態)
ここで、第1の実施形態に示した発明を該当受理パターン記号列伝搬法と呼ぶことにする。
【0099】
自然言語解析や自然言語生成、あるいは音声認識や音声合成技術あるいは対話処理技術を利用し、自由発話による音声入力によって利用者とコンピュータシステムとが対話する音声対話装置においては、通常、音声認識処理を必要としているが、このような認識処理は、一般に一意に認識結果が得られないという問題がある。すなわち、一つの入力信号に対して複数の候補が現われるという状態が一般的である。このため、音声で利用者が文発声をする場合、候補となる単語や文字が格子状に組み合わされたラティス形式で表現できるような認識結果が得られる。
【0100】
利用者の入力を一般のアプリケーションプログラムで利用可能にするためには、このような認識結果から利用者の入力として尤もらしい文や文字列を高速かつ適切に決定するような認識の後処理技術が重要である。
【0101】
また、文章に対して単語のラティス形式で認識結果を与えることの可能な音声認識手法であるワードスポッティングでは、一般に多数の湧きだし誤りを生じ、ラティス形式から生じうる系列に展開し、それぞれについて解析を行う手法は、湧きだし誤りによる系列数の増加を考慮しておらず、現実的ではないといえる。そこで、ラティスを展開せずに、正解となりうる品詞系列の集合と、それから構成される各品詞の出現順序に基づくハッシュ辞書(その要素はその順序にある品詞が存在する品詞系列のIDの集合となる)とを利用し、生成されたラティスの各単語に、考えうるその単語の出現順序と対応する品詞から得られる、ハッシュ辞書の内容を、次に出現しうる単語に伝搬し、伝搬された「存在しうる系列集合」と「その単語が存在できる系列集合」とで、共通な系列を更に伝搬させることによって、最終的に利用者が入力したであろう品詞系列へと絞り込む手法である「該当受理パターン記号列伝搬法」は、ラティスを展開せずに解析を行うので、多くの曖味性を含むラティスに対しても高速に解析結果が得られるが次のような問題点を含んでいる。
【0102】
その問題点とは、「正解となりうるカテゴリ系列の集合が増大した場合に、記憶すべきハッシュ辞書の規模が大きくなり、膨大な量のメモリを必要とすること」と、「解析途中の伝搬処理に必要な集合演算の規模が大きくなるため、計算量においても大きなコストが必要となる」ことである。
【0103】
また、「正解となりうるカテゴリ系列を生成するための、受理パターン記号列の辞書にも配慮が必要となる」という点も無視できない。例えば、第1の実施形態における対話システムに適用する場合には、カテゴリは品詞に、受理パターン記号列は「文型」に相当する。
【0104】
また、そのような音声対話システムのタスクがカーナビゲーションシステムの場合であれば、「場所」に関する表現が多くなると考えられるが、システム管理者が文型を定義する際に、誤って、ある「場所」の表現を与える品詞系列を付与し損ねた場合に、文型によって受け付けられる「場所」の表現が異なることになり、どのような「場所」の表現が受け付け可能かが利用者にはわかりにくくなり、利用者が混乱すると考えられる。また、文型の数が多くなった場合には、「場所」の表現を追加あるいは削除する場合についても、管理者の処理が煩雑となり、また、その結果、上記のような文型によって受け付けられる「場所」の表現が異なるという状況も起こる可能性があり、それにより、利用者が混乱するということも考えられる。
【0105】
このように、該当受理パターン記号列伝搬法において、正解となりうるカテゴリ系列の集合が増大した場合に、記憶すベきハッシュ辞書の規模が大きくなり、膨大な量のメモリを必要とすること、また、解析途中の伝搬処理に必要な集合演算の規模が大きくなるため、計算量においても大きなコストを必要とする。また、正解となりうるカテゴリ系列を生成するための、受理パターン記号列の辞書にも配慮が必要である。
【0106】
次に説明する第2の実施形態は、このような問題に対処できるようにするもので、正解となりうるカテゴリ系列の集合が増大した場合においても、使用するメモリ量の増加を抑制し、解析時の伝搬処理の際の計算量の増加を抑制するラティス解析手法を提供する。また、該当受理パターン記号列伝搬法における品詞系列を生成するための受理パターン記号列の辞書についても、システム管理者が管理し易い形式を与えることができるようにする。
【0107】
以下、第2の実施形態を説明する。
【0108】
ここで説明する第2の実施形態としての本発明は、「該当受理パターン記号列伝搬法における受け付け可能なカテゴリ系列パターン辞書を管理/修正し易いようにした受理パターン記号列定義方法」について示すと共に、ハッシュ辞書の要素となるカテゴリ系列パターンの数が増大しても、処理に必要なコンピュータのメモリ容量の増大や、計算量におけるコストの増加を抑制できるようにする手法を提案するものであり、以下、図面を参照して本発明の詳細につき説明する。ここでは、音声指示方式のカーナビゲーションシステムをタスクとした場合での例を主体に説明する。
【0109】
図18は、音声指示方式のカーナビゲーションシステムをタスクとした場合での、該当受理パターン記号列伝搬法で利用する“文型辞書”の例を表している。この図において、“(”と、“)”とで囲まれた文字列が品詞を表し、“|”はその両側の品詞(列)のうちの1つを出力する記号であり、“‐”は1つの構文要素を複数行に分けて表示していることを表す。
【0110】
また、個々の構文要素は、空白あるいは改行で区切られている。例えば、文型“Where”は2つの構文要素からなり、第一構文要素が5個存在するので、そこから品詞系列パターンは5個生成されると、この図からわかる。
【0111】
この場合、“Where”と“HowMuch1”、そして、“HowMuch2”の合計3種類の文型が登録されている。
【0112】
しかし、これらの定義では、「場所」を表す部分(例えば、文型“Where”における品詞(WHERE)の前にある記号列)である
「(経由地名)(経由地)|(施設名)(施設)|(経由地)(順序相対)(順序絶対)(施設)|(経由地)(順序相対)(施設)|(経由地名)(経由地)(順序相対)(施設)」
という表現となっていて表現形式が複雑なものとなっており、「場所」を表す部分の修正、追加などの管理が複雑になる。特に“文型HowMuch2”においては、この「場所」を表す表現が、最初の位置と、品詞(起点)の直後と云うように2箇所も存在する。そのため、一方を修正しても他方の修正を見落すこともある。
【0113】
また、この図から、各文型において「場所」を表す共通の表現が存在することがわかる。
【0114】
図19は、このような該当受理パターン記号列伝搬法で利用する複雑な表現形式の図18の如き“文型辞書”を修正して得られた本発明システムで利用するための“文型辞書”の例を表している。
【0115】
ここでの修正とは、『「場所」を表す表現を「場所句」とした別の一つの句の文型辞書として定義する』というものである。この図において、「別の文法セットの文型辞書として定義すること」を表す識別子が「+Phrase」であり、その直後の文字列がその文型辞書の名前を表す。
【0116】
ここで、“文法セット”とは、「句」などの「部分的な構文からなる規則」と、「全体の構文からなる規則」のいずれかのことを指す。
【0117】
そして、別の文型を利用する場合に、「その文型を必要とすることを明示する識別子」が「−Needs」であり、その後の文字列が必要な文型辞書名(文法セット名)を表す。
【0118】
この図の例の場合では、入力文章を表す文型辞書「全系列」に必要な文型辞書が、「場所句」であることを表している。複数の文型辞書が必要な場合は、識別子「−Needs」の後に、複数の文型辞書名を表記する。
【0119】
これにより、「場所」を表す表現を追加する場合には、文型辞書「場所句」を修正すれば、文型辞書 「全系列」の全てにそれが反映されるので、管理者にとって管理/修正が容易な文型辞書定義が可能となる、ということがわかる。この方法は、特に、ある意味を表す集合を別辞書として管理するにとどまらず、主部、述部のような文法的な情報を持つ集合と一つの辞書としても構わない。
<ラティス解析方法の実施形態>
続いて、本発明におけるラティス解析方法の実施形態について説明する。
【0120】
本実施形態は、図19における文型辞書を展開せずに、各文法セットについて順にラテイスの解釈を行う方法である。
【0121】
これにより、該当受理パターン記号列伝搬法が持つ品詞系列パターン数の増大、特に、文法セットの品詞系列パターン数の増大によるコンピュータの使用メモリ、コンピュータの計算量といったリソースや運用コストが増大することを抑制することが可能となる。
【0122】
最初に、階層ハッシュ辞書(図21)を構築する。
【0123】
図20は、本実施形態で使用する“階層品詞系列パターン辞書”の例である。図20に示すように、各文法セットについて展開された階層品詞系列パターン辞書から、各文法セットについてのハッシュ辞書を構築しても良いし、予め構築しておいたハッシュ辞書を読み込む形式でも良い。
【0124】
この図では、図19に示した文型辞書の例から展開したものを示した。この図からわかるように、“階層品詞系列パターン辞書”とは、各文法セット別個に提案されている文型辞書から、それぞれの文法セットを別個に展開し、品詞(文法セット名も含む)系列パターンを生成したものを云う。尚、文法セットは厳密には品詞ではないが、仮想的に品詞と同じような扱いをするものとすれば、このように表記できる。
【0125】
この図から、この例では「場所句」については“P1#0”〜“P5#0”までの5パターン分、定義されており、最終的な品詞系列である「全系列」については「場所句」を利用する形式で
“Where#0”、
“HowMuch1#0”、
“HowMuch2#0”
の3パターン分、定義されていることがわかる。
【0126】
ここで、各品詞系列パターンに付与されているIDの中の“#0”について補足しておく。
【0127】
この“#0”というのは、1つの文型辞書のパターンから展開されたものにつけるIDである。そして、1つの文型辞書のパターンから複数の品詞系列パターンに展開される場合は“#1”、“#2”・・・と云う具合に別のIDが付与されるものとする。尚、IDは各品詞パターンに特有のものであれば、どのような形式でもよい。
【0128】
また、この図においても図19と同じように、別の文法セットとして定義することを表す識別子が「+Phrase」であり、その直後の文字列がその文法セットの名前を表す。そして、別の文法セットを利用する場合に、その文法セットを必要とすることを明示する識別子が「−Needs」であり、その後の文字列が必要な文法セットを表している。また、各品詞系列には固有のIDが付与されており、各系列の先頭に表記されている記号がそのIDとする。
【0129】
<階層ハッシュ辞書の例>
図21は、本実施形態で使用する一例としての階層ハッシュ辞書の例である。この図では、図20に示した階層品詞パターン辞書からハッシュ辞書を構築したものを示した。
この図から、例えば「場所句」では一番目に現われる品詞(文法セット名)としては“(経由地名)”、“(施設名)”、“(経由地)”の三種類が存在し、それぞれ該当する品詞パターンIDとしては、品詞「経由地名」が“P1#0”,“P5#0”、品詞「施設名」が“P2#0”、そして、品詞「経由地」が“P3#0”,“P4#0”であり、「全系列」では一番目に現われる品詞(文法セット名)としては「場所句」しか存在しないことがわかる。
【0130】
この図からわかるように、“階層ハッシュ辞書”とは、図20に示すように各文法セット別個に展開された階層品詞パターン辞書から、それぞれの文法セットを別個にしてハッシュ辞書を生成したものを指す。
【0131】
また、この図20においても図19と同じように、別の文法セットとして定義することを表す識別子が「+Phrase」であり、その直後の文字列がその文法セットの名前を表す。そして、別の文法セットを利用する場合に、その文法セットを必要とすることを明示する識別子が「−Needs」であり、その後の文字列が必要な文法セットを表している。
【0132】
<第2の実施形態におけるラティス解析手順>
図17は、本実施形態におけるラティス解析方法の処理手順を示すフローチャートである。
【0133】
例えば、図1に示す如きシステムの入力部3(例えば、音声認識装置や文字認識装置などの認識装置)からラティス状の認識結果を渡された場合に、図17の流れに基づいてCPU1はラティス解析処理を行う。以下は、この図を参照しながら詳細に本発明のラティス解析方法を説明する。
【0134】
[ステップS201] このステップでは、ラティス解釈処理の初期化を行う。初期化処理は、まず、“処理済み文法セット名”と“未処理文法セット名”を記録するリストを準備し、登録されている全ての文法セットを“未処理文法セット名のリスト”に登録する、と云ったことを行う。また、ノードを記録するリストを準備し、ラティス結果の各一単位(単語ラティスなら各単語)をそれぞれノードとして、“ノードリスト”に登録する。
【0135】
このノードには、各認識単位の他に、その単位の出現位置毎の品詞系列パターンIDの集合と、該当する品詞(文法セット名)に関する情報を持つことができ、ここでは、各認識単位の他に、該当する品詞情報もこのノードに登録する。そして、次のS202の処理に進む。
【0136】
[ステツプS202] このステップでは、ラティス解釈に適用する文法セットを選択する。適用する文法セットを選択するには、その文法セットを生成するために必要な他の文法セットが既に生成されているということを確認する必要がある。もし、ある文法セットに必要な文法セットが生成されていない状態で、その文法セットの解釈を行ったとすると、その文法セットに対応する系列が生成できない可能性があるからである。
【0137】
上記条件を確認するために、図21にある識別子「−Needs」以降の文法セット名を参照する。すなわち、「−Needs」以降の文法セット名からできる“必要文法セット名リスト”と、“処理済み文法セット名リスト”とを比較する。そして、“必要文法セット名リスト”の中身の全てが“処理済み文法セット名リスト”に含まれている場合は、その文法セットは適用可能ということになる。
【0138】
よって、最初に適用可能な文法セットは「−Needs」識別子以降の必要な文法セットが存在しないものとなる。また、全系列を表す文法セットを最後に適用するように、階層ハッシュ辞書の「−Needs」識別子には依存関係を明確に記しておく必要がある。
【0139】
[ステップS203] このステップでは、登録されたノードを適切に連結する。
【0140】
ノードの連結は、例えば、対応する単語(系列)の出現位置に基づいて連結する。例えば、音声ラティスの場合は単語の出現フレームの重なり、離れから単語同士がつながるかどうかの判定を行う。また、無駄な接続を少なくすることにより、より効率的に解釈を行うために接続可能品詞リスト(図22)などの他の情報を適用してもよい。但し、S202で最後の文法セット(全文系にあたる品詞系列パターン辞書)以外の文法セットを選択している場合は、その文法セットが文章の任意の位置に出現するので、“文頭/文末”に関する条件は適用しないようにする必要がある。
【0141】
図22は、“接続可能品詞リスト”の例を表す。“接続可能品詞リスト”は、品詞テンプレート辞書から連続する2つの品詞(文法セット名)のつながりを抽出したものである。また、二階層品詞テンプレート辞書”から生成する場合は、各文法セットからそれぞれ“接続可能品詞リスト”を作ることができる。
【0142】
この図では、図20から生成できる“接続可能品詞リスト”を示している。この図においても、図21と同じように別の文法セットとして定義することを表す識別子が 「+Phrase」であり、その直後の文字列がその文法セットの名前を表す。そして、別の文法セットを利用する場合に、その文法セットを必要とすることを明示する識別子が「−Needs」であり、その後の文字列が必要な文法セットを表している。
【0143】
この図から、例えば「場所句」を適用している場合に、品詞「経由地名」には品詞「経由地」が連結可能であることがわかり、「全系列」を適用している場合に、「場所句」には品詞「WHERE」「道程」が連結可能であることがわかる。
【0144】
また、S203で適用される“接続可能品詞リスト”はS202で選択された文法セット名と一致するものでなければならない。
【0145】
[ステツプS204] このステップでは、現在連結されているノードを現在適用されている文法セットについて、該当受理パターン記号列伝搬法を利用して解釈処理を行う。参照するハッシュ辞書は、階層ハッシュ辞書の中で、現在適用している文法セット名に該当するハッシュ辞書を適用する。
【0146】
また、既に他の文法セットに関するノードが生成されている場合があるので、初期設定されている品詞辞書の他に、“処理済み文法セット名リスト”に登録されている文法セット名も品詞と同様に参照する必要がある。あるいは、処理済みの文法セットを動的に品詞として登録することが可能ならば、処理済みの文法セット名を品詞名として品詞辞書に登録することによって、“処理済み文法セット名リスト”を参照する必要はなくなる。
【0147】
[ステツプS205] このステップでは、S204で処理された文法セット名を“未処理文法セット名リスト”から削除し、“処理済み文法セット名リスト”に登録する。“処理済みの文法セット”を動的に品詞として登録することが可能ならば、その文法セット名を品詞名として品詞辞書に登録してもよい。
【0148】
[ステツプS206] このステップでは、全ての文法セット(全系列を含む)が処理されたかどうかを判定する。すなわち、“未処理文法セット名リスト”が空かどうかを判定し、空ならば終了し、空でなければ、S207に進む。
【0149】
[ステップS207] このステップでは、S204によって生成された系列のそれぞれを、ノードとして登録する。その際に、次回のステップS204の処理実行時に参照できるように、生成されたノードがどの文法セットに属しているかを示す情報を各ノードに付与する。
【0150】
これは例えば、“処理済みの文法セット”を動的に品詞として登録することが可能ならば、その文法セット名を品詞としてそのノードに付与してもよい。あるいは、文法セット名をそのノードに持たせて、ステップS204の処理実行の際に、“処理済み文法セット名リスト”から文法セットに対応しているノードであることを認識させてもよい。また、最終的な解釈結果として、単語系列情報と、該当する品詞パターン辞書情報との組合せが必要な場合は、各ノードに該当する品詞パターンを持たせておく必要がある。
【0151】
以上が、第2の実施形態におけるラティス解析方法の概要である。
【0152】
<ラティス解析方法の詳細>
続いて、上述したラティス解析方法について、その具体例をあげて更に詳しく説明する。
【0153】
ここでは、ワードスポッティングを行い、単語ラティス形式で認識結果を出力する音声認識システムに、利用者が『西宮インターの前のサービスエリアまでどれくらい』と音声入力した場合での処理例について、説明する。
【0154】
本発明のラティス解析方法を適用した解析システム搭載のラティス解釈システムは、この音声認識システムと接続し、認識結果を受け取る。
【0155】
また、このラティス解釈システムは図19で定義された文型辞書を受け付けるように設定されいるものとする。
【0156】
この時、図19の文型辞書から図20の如きの“階層品詞系列パターン辞書”が生成され、この“階層品詞系列パターン辞書”から図21の如きの“階層ハッシュ辞書”が構築される。
【0157】
[ステップS201] ここで、図23に示した認識結果のラティスを受け取ったとする。図23において“<”と“>”とで囲まれた数値がその単語の出現位置を表している。ラティスを受け取った段階で、まず、スポッティングされた単語ラティスから、“ノードリスト”にノードを登録する。
【0158】
この実施例では、登録されたノードに対して該当する品詞をノードに登録しておく。また、“未処理文法セット名リスト”と“処理済み文法セット名リスト”を準備し、“階層ハッシュ辞書”から登録されている文法セットの名前を取り出し、“未処理文法セット名リスト”に登録する。
【0159】
その結果、“ノードリスト”内容は図24の如きとなり、“未処理文法セット名リスト”、“処理済み文法セット名リスト”はそれぞれ以下のようになる。
未処理文法セット名リスト 処理済み文法セット名リスト
場所句
全系列
[ステップS202] 次に、最初に適用する文法セットを選択する。
【0160】
階層ハッシュ辞書(図21)から、各文法セットの必要文法セット名リストを構築すると、以下のようになる。
このリストと、先ほどの処理済み文法セット名リストを比較し、“必要文法セット名リスト”が空である場所句を適用する文法セットとして選択する。
【0161】
[ステップS203] 次に、“ノードリスト”に登録されているノードを、出現位置を基準にして連結する。但し、現在処理している場所句の他に、全系列という文法セットが残っているので、最後に処理している文法セットとはみなさず、文頭、文末については、全てのノードが連結しているとみなす。
【0162】
その結果、ラティス構造として図25の如きの結果が得られたとする。
【0163】
この図において、“Start”は文頭を意味し、また、“End”は文末を意味し、丸囲みの文字がノードを示し、ノードに付与する形で添えられている文字列がその品詞を意味する。但し、この図において、文頭(Start)、文末(End)については、全てのノードが連結しているが、図の明瞭化のために、それらの連結は省略する。
【0164】
[ステップS204] 次に、図25で表されたラティスに対して、図21の中の場所句のハッシュ辞書を適用した該当受理パターン記号列伝搬法を行う。
その結果、生成された場所句は図26となる。
【0165】
この図において、“‐”でつながれている単語は、個々のノードを表し、“)”と“(”で囲まれた文字列は、該当した品詞を表している。
【0166】
[ステップS205] 以上で、場所句に対しての処理を終了したので、次に“処理済み文法セット名リスト”、“未処理文法セット名リスト”を更新する。場所句を未処理文法セット名リストから削除し、“処理済み文法セット名リスト”に登録する。
【0167】
その結果、各々のリストは以下のようになる。
[ステップS206] “未処理文法セット名リスト”に全系列が残っているので、S207の処理に進む。
【0168】
[ステップS207] S204で生成された系列を一つのノードとして、“ノードリスト”に追加する。その時に、新たにできた各ノードが場所句のノードであることも登録する。
その結果、“ノードリスト”は図27のようになる。そして、S202の処理に進む。
【0169】
[ステップS202] “未処理文法セット名リスト”に唯一残っている全系列について、実行可能性を調べる。全系列の生成に必要な文法セット名である場所句は、既に生成されているので全系列に関する解釈が可能である。よって、全系列を適用する文法セットとして選択する。
【0170】
[ステップS203] 次に、ノードリスト登録されているノードを出現位置を基準にして連結する。但し、今回は、二未処理文法セットリスト”に唯一残っている全系列についての処理であるので、文頭、文末に関する判定も行う。
【0171】
その結果、図28の如きの結果が得られたとする。この図においても、図25と同様に、“Start”は文頭を“End”は文末を意味し、丸囲みの文字がノードを示し、ノードに付与する形で添えられている文字列がその品詞を意味する。但し、今回は文頭、文末についての連結判定が行われているので、それらの連結も表示している。
【0172】
[ステップS204] 次に、図28で表されたラティスに対して、図21の中の全系列のハッシュ辞書を適用した該当受理パターン記号列伝搬法を行う。その結果、生成された全系列は図29となる。
【0173】
[ステップS205] 全系列に対しての処理を終了したので、“処理済み文法セット名リスト”、“未処理文法セット名リスト2を更新する。全系列を“未処理文法セット名リスト”から削除し、“処理済み文法セット名リスト”に登録する。
【0174】
そして、各々のリストは以下のようになる。
[ステップS206] “未処理文法セット名リスト”が空になったので、処理を終了する。
【0175】
この段階で生成されている系列(図29)が、ラティス解釈結果となる。
【0176】
以上で本発明によるラティスの解釈が終了し、最終的な解析結果として、
「西宮インター前サービスエリアまでどれくらい」
という階層化を行わない場合と同じ文字系列が得られる。
【0177】
ここで、階層化を行わなかった場合との計算量の比較を行ってみる。もし、階層化を行わなかった場合、“品詞系列パターン辞書”は図30のように展開される。そして、この“品詞系列パターン辞書”から構成されるハッシュ辞書の一番目の出現位置の部分は図31のようになる。
【0178】
尚、この場合のハッシュ辞書は出現位置が最大“10”となり、各出現位置においても品詞の数が最大“9”個と、ハッシュ辞書の規模が大きくなっている。また、該当受理パターン記号列伝搬法では、該当品詞系列パターンを絞り込むために、ハッシュ辞書の要素同士の“And/Or”論理の集合演算を行うが、集合演算の比較演算の回数は要素数の2乗のオーダーとなる。
【0179】
ここで、両者のハッシュ辞書の要素数を比較すると、図31(最大14個)と、図21(最大3個)であり、要素数が大きく異なることがわかる。
【0180】
ここで、階層化を行わなかった場合と、行った場合との比較演算回数のオーダーは次のようになる。
【0181】
非階層化 : A12×L
階層化 : A22×L×R
ここで、A1,A2はそれぞれの場合におけるハッシュ辞書の最大の要素数であり、LはS3において連結されたノード間連結数、Rは階層化によって行われる該当受理パターン記号列伝搬法の回数である。
【0182】
また、第2の実施形態での例における比較演算回数を計算すると、階層化を行っていない場合は、A1=14であるから、14×14×L=196Lとなり、階層化を行った場合は、A2=3であるから、3×3×L×2=18Lとなる。
これより、比較演算回数は階層化により、大きく減少していることがわかる。また、演算処理に際してのコンピュータのメモリ使用量についても、記憶すべき品詞系列パターンの数は、階層化を行っていない場合は35個であるのに対し、階層化を行った場合は“場所句”5個、“全系列”3個の計8個となって、大幅に削減出来、それに伴い前述したようにハッシュ辞書の規模も小さくなる。
【0183】
また、文法セット表現の数が増加した場合に、特に本発明の効果は大きくなる。例えば、先ほどの例において、場所句の品詞パターン辞書の数が100個になった場合、階層化を行わない場合は、品詞系列パターン辞書の数が10200個、階層化を行った場合は、“場所句”100個、“全系列”3個の計103個となり、その差は更に有意なものとなる。
【0184】
また、本実施例において、図22に示した階層接続可能品詞リストをS203に利用した場合に、残るリンクを示した図が図32(場所句を処理文法セットとして使用)、図33(場所句生成後、全系列を処理文法セットとして使用)である。
【0185】
これらの図からわかるように、接続可能品詞リストを使用しない場合と比較して、大きくりンクの数が減少し、該当受理パターン記号列伝搬法による計算量が減少していることがわかる。勿論、階層化を行わなくとも、リンク数は減少するが、階層化を行えば、もとの文法セットそのものが小さくなるために、出現する品詞の数がより少なくなり、接続できる種類も減少すると考えられ、接続可能品詞リストの効果も増すものと考えられる。
【0186】
以上から、本発明によって該当受理パターン記号列伝搬法から計算量、メモリのコストを大きく減少させていることがわかる。
【0187】
かくして、このように構成された本方式によれば、該当受理パターン記号列伝搬法において、正解となりうるカテゴリ系列の集合が増大した場合おいても、必要なメモリ量を抑制し、また、解析途中の伝搬処理に必要な集合演算の規模が大きくなるため、計算量においても必要なコストを抑制する解釈方法を構成できる。
【0188】
尚、上述の例において、文型辞書を「場所句‐全系列」の1階層としているが、依存関係を明記する限り、何階層に分割しても、場所句と同じ位置づけとして別の句を並列に定義しても構わない。また、最終的に部分系列を定義できる品詞系列パターン辞書を生成できる文型辞書であれば、どのような文型定義方法でも構わない。例えば、文型を書き換え規則で定義する場合は該当受理パターン記号列伝搬法の前提である有限展開個数の範囲内であれば、ある特定の非終端記号までを展開した品詞系列パターンを句として定義し、本方式を適用することが可能である。
【0189】
また、上述の例においては、制御の単位を単語とし、音声ワードスポッティングをアプリケーションとして記述しているが、本発明の実現形態はこれに限定されるものではなく、該当受理パターン記号列伝搬法が適用できる範囲であれば、そのような実現形態は本発明の趣旨の範囲内である。
【0190】
以上のように、本発明の実現形態には上述の例に対して種々の変形が可能であり、それらも趣旨に反しない限り本発明の実施形態の範囲内である。
【0191】
以上、第2の実施形態の例は、開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフであって、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つ形式のグラフ構造に変換可能な入力情報を、当該入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列で表される受理可能な受理パターン記号列の集合に基づいて解析することにより、零個以上の尤もらしい受理パターン記号列を出力する情報解析方法において、
前記受理可能な受理パターン記号列のうち、特定の部分系列である部分受理パターン記号列を構成し、また、その部分受理パターン記号列を一つのカテゴリ記号として利用し、受理パターン記号列を再帰的に構成し、階層受理パターン記号列集合を生成する階層受理パターン記号列生成ステップと、
前記階層受理パターン記号列集合の中から、全てのカテゴリ記号が既知である前記部分受理パターン記号列を選択する部分受理パターン記号列選択ステップと、
前記階層部分受理パターン記号列集合の中の、各部分受理パターン記号列が既に選択されたか否かを記憶する処理状態管理ステップと、
この処理状態管理ステップにて記憶した情報から、選択された部分受理パターン記号列が最終の記号列か否かを判定し、最後でない場合は無条件で前記開始ノードと終了ノードとに全てのデータノードを連結して、前記選択された部分受理パターン記号列を受理パターンとした前記解析を実施し、最後の場合は、前記選択された部分受理パターン記号列を受理パターンとした前記解析を実施することにより、尤もらしい部分受理パターン記号列を出力する解析ステップと、
前記収集された尤もらしい部分受理パターン記号列集合と前記各ノードに蓄積された各ノードの受理パターン記号列の情報を用いて前記グラフ構造を探索し、前記尤もらしい受理パターン記号列集合の各要素を生成し得る零個以上の解経路候補の集合を発見し、各経路に存在するノードをマージし、その所属カテゴリを該当する部分受理パターンとする新たなノードを作成する新規ノード生成ステップと、
前記処理状態管理ステップから、全ての部分受理パターン記号列について解析ステップを通過したか否かを判定し、全ての部分受理パターン記号列につて解析ステップを通過した場合に処理を終了する終了条件判定ステップとからなるもので、このような本発明によれば、膨大な数の品詞パターン系列の中に共有する部分品詞パターン系列を先に解釈し、その結果を利用して全体の品詞パターン系列を解釈するため、一回の該当文型伝搬法の対象となる品詞パターン系列の個数を大幅に削減し、計算量、メモリの両面において大幅にコストを削減することができる。
【0192】
実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピーディスク、ハードディスクなど)、光ディスク(CD‐ROM、DVDなど)、半導体メモリなどの記録媒体に格納して頒布することもできる。
【0193】
【発明の効果】
以上説明したように、第1の本発明によれば、展開すれば極めて多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、与えられた受理可能構文規則を満足する尤もらしい入力要素カテゴリ系列を高速かつ少ないメモリ要求量で導くことが可能となる、展開すれば極めで多数の入力要素系列候補を導く入力ラティス様のデータを構築し得る入力認識結果の解析において、与えられた受理可能構文規則を満足する尤もらしい入力要素系列を高速かつ少ないメモリ要求量で導くことが可能となる、等の実用上多大な効果が奏せられる。
【0194】
また、第2の本発明によれば、膨大な数のカテゴリ系列の中に共有する部分品詞パターン系列を先に解釈し、その結果を利用して全体のカテゴリ系列を解釈するため、一回の該当文型伝搬法の対象となるカテゴリ系列の個数を大幅に削減し、計算量、メモリの両面において大幅にコストを削減することができる。
【図面の簡単な説明】
【図1】本発明を説明するための図であって、第1の実施形態における本発明システムの概略的構成を示すブロック図。
【図2】本発明を説明するための図であって、第1の実施形態における本発明システムの全体的な処理の流れを示すフローチャート。
【図3】本発明を説明するための図であって、第1の実施形態における本発明システムでのラティス解析処理(S3)の概要を説明するフローチャート。
【図4】本発明を説明するための図であって、本発明における第1の実施形態におけるラティス解析処理(S3)での処理の詳細を示すフローチャート。
【図5】図4のフローチャートの部分拡大図。
【図6】図4のフローチャートの部分拡大図。
【図7】図4のフローチャートの部分拡大図。
【図8】本発明を説明するための図であって、第1の実施形態において説明に用いる簡単化されたワードスポッティング結果の例を示す図。
【図9】ワードスポッティング結果から構築された単語ラティスの例を示す図。
【図10】単語ラティスの各ノードのデータ構造を示す図。
【図11】初期設定処理(S31)終了時の単語ラティスのノードの例を示す図。
【図12】本発明を説明するための図であって、第1の実施形態において用いる品詞辞書の例を示す図。
【図13】本発明を説明するための図であって、第1の実施形態において用いる文型辞書の例を示す図。
【図14】本発明を説明するための図であって、第1の実施形態において用いる品詞系列パターン辞書の例を示す図。
【図15】本発明を説明するための図であって、第1の実施形態において用いる品詞系列ハッシュ辞書の例を示す図。
【図16】ワードスポッティング結果の例を示す図。
【図17】本発明を説明するための図であって、第2の実施形態における本発明システムの全体的な処理の流れを示すフローチャート。
【図18】本発明を説明するための図であって、該当文型伝搬法における文型辞書例を示す図。
【図19】本発明を説明するための図であって、第2の実施形態において用いる文型辞書例を示す図。
【図20】本発明を説明するための図であって、第2の実施形態において用いる階層品詞系列パターン辞書例を示す図。
【図21】本発明を説明するための図であって、第2の実施形態において用いる階層ハッシュ辞書例を示す図。
【図22】 本発明を説明するための図であって、第2の実施形態において用いる階層接続可能品詞リスト例を示す図。
【図23】本発明を説明するための図であって、第2の実施形態において得られた入力認識結果の例を示す図。
【図24】本発明を説明するための図であって、第2の実施形態における初期ノードリスト例を示す図。
【図25】本発明を説明するための図であって、場所句を選択時に連結されたラティスの例を示す図。
【図26】本発明を説明するための図であって、第2の実施形態において生成された場所句の例を示す図。
【図27】本発明を説明するための図であって、第2の実施形態における場所句登録後のノードリストの例を示す図。
【図28】本発明を説明するための図であって、第2の実施形態において全系列を選択した時に連結されるラティスの例を示す図。
【図29】本発明を説明するための図であって、第2の実施形態において生成された全系列の例を示す図。
【図30】本発明を説明するための図であって、該当文型伝搬法における品詞系列パターン辞書例を示す図。
【図31】本発明を説明するための図であって、該当文型伝搬法におけるハッシュ辞書例を示す図。
【図32】本発明を説明するための図であって、場所句を選択時に接続可能品詞リストを適用して連結されたラティスの例を示す図。
【図33】本発明を説明するための図であって、全系列を選択時に接続可能品詞リストを適用して連結されるラティスの例を示す図。
【符号の説明】
1…CPU(プロセッサ)
2…メインメモリ
3…入力部
4…出力部
5…大容量外部記憶装置
6…ドライブ
7…通信部
Claims (18)
- 開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフであって、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つようなグラフ構造に変換可能な入力情報を、当該入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列で表される受理可能な受理パターン記号列の集合に基づいて解析し、零個以上の尤もらしい受理パターン記号列を出力する情報解析方法において、
前記開始ノードもしくは終了ノードから前記グラフ構造の解析を開始する解析開始ノード決定ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードが解経路候補の開始点または終了点からある順番で解経路候補に含まれる場合にとり得る受理パターン記号列を計算してノードに記録する受理パターン記号列計算・蓄積ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードに対する解析の経路パターンを網羅したか否かを判定するノード解析網羅判定ステップと、
あるノードについてそのノードの解析経路パターンが網羅された場合に零回以上の受理パターン記号列計算・蓄積ステップの実行によって蓄積されたそのノードへの受理パターン記号列を解析においてそのノードの次に接続されている一個以上のノードに伝播させる受理パターン記号列伝播ステップと、
解析が終了したかどうかを判定する解析終了判定ステップと、
解析が終了した際に前記開始ノードもしくは終了ノードに蓄積されている受理パターン記号列情報を用いて前記解析結果の出力である零個以上の尤もらしい受理パターン記号列を収集し、出力する受理パターン記号列収集・出力ステップと、
を具備したことを特徴とする情報解析方法。 - 開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフであって、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つようなグラフ構造に変換可能な入力情報を解析し、零個以上の尤もらしい解経路候補を出力する情報解析方法において、
前記入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列として与えられた受理可能な受理パターン記号列の集合のうち、前記開始ノードもしくは終了ノードから前記グラフ構造の解析を開始する解析開始ノード決定ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードが解経路候補の開始点または終了点からある順番で解経路候補に含まれる場合にとり得る受理パターン記号列を計算してノードに記録する受理パターン記号列計算・蓄積ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードに対する解析の経路パターンを網羅したかどうかを判定するノード解析網羅判定ステップと、
あるノードについてそのノードの解析経路パターンが網羅された場合に零回以上の受理パターン記号列計算・蓄積ステップの実行によって蓄積されたそのノードへの受理パターン記号列を解析においてそのノードの次に接続されている一個以上のノードに伝播させる受理パターン記号列伝播ステップと、
解析が終了したかどうかを判定する解析終了判定ステップと、解析が終了した際に前記開始ノードもしくは終了ノードに蓄積されている受理パターン記号列情報を用いて本方法の出力である零個以上の尤もらしい受理パターン記号列を収集する受理パターン記号列収集ステップと、
前記収集された尤もらしい受理パターン記号列集合と前記各ノードに蓄積された各ノードの受理パターン記号列の情報を用いて前記グラフ構造を探索し、前記尤もらしい受理パターン記号列集合の各要素を生成し得る零個以上の解経路候補の集合を発見し出力する解経路候補検索・出力ステップと、
を具備したことを特徴とする情報解析方法。 - 前記受理可能な受理パターン記号列の集合を元に生成され、前記各終端記号または前記各カテゴリ記号のうちのある記号であるインデックス記号が前記受理可能な受理パターン記号列の集合に含まれる各受理パターン記号列における出現箇所IDと、前記インデックス記号をキーにして、前記インデックス記号が前記出現箇所IDの箇所に出現する可能性のある受理パターン記号列の集合を参照できる受理パターン系列ハッシュ辞書を装備し、
前記受理パターン記号列計算・蓄積ステップの各ノードにおける受理パターン記号列の計算において、前記接続するノードから伝播された受理パターン記号列と、前記ノードのその解析における出現箇所IDと前記ノードの表象する終端記号または前記終端記号が所属するカテゴリ記号をキーに受理パターン系列ハッシュ辞書を参照することで得られるその解析のそのノードにおいて出現する可能性のある受理パターン記号列の集合との積集合を計算し前記そのノードにおける受理パターン記号列の計算することを特徴とする請求項1または2記載の情報解析方法。 - 前記各終端記号を自然言語の単語とし、前記各カテゴリ記号を各単語の所属する品詞とし、音声ワードスポッティング装置または音声認識装置から前記入力情報として音声認識結果単語候補を与えられ、音声認識結果の後処理として言語処理を施し、尤もらしい品詞系列の集合または尤もらしい単語系列の集合を出力することを特徴とする請求項1乃至請求項3いずれか1項記載の情報解析方法。
- コンピュータにて読み込み可能な記憶媒体に記憶され、コンピュータにて実行可能なプログラムであり、開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフであって、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つようなグラフ構造に変換可能な入力情報を、前記入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列で表される受理可能な受理パターン記号列の集合に基づいて解析し、零個以上の尤もらしい受理パターン記号列を出力するものとして機能させるプログラムにおいて、
前記開始ノードもしくは終了ノードから前記グラフ構造の解析を開始する解析開始ノード決定ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードが解経路候補の開始点または終了点からある順番で解経路候補に含まれる場合にとり得る受理パターン記号列を計算してノードに記録する受理パターン記号列計算・蓄積ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードに対する解析の経路パターンを網羅したか否かを判定するノード解析網羅判定ステップと、
あるノードについてそのノードの解析経路パターンが網羅された場合に零回以上の受理パターン記号列計算・蓄積ステップの実行によって蓄積されたそのノードへの受理パターン記号列を解析においてそのノードの次に接続されている一個以上のノードに伝播させる受理パターン記号列伝播ステップと、
解析が終了したか否かを判定する解析終了判定ステップと、
解析が終了した際に前記開始ノードもしくは終了ノードに蓄積されている受理パターン記号列情報を用いて本方法の出力である零個以上の尤もらしい受理パターン記号列を収集し出力する受理パターン記号列収集・出力ステップと、
を具備したことを特徴とするプログラムを記憶した媒体。 - コンピュータにて読み込み可能な記憶媒体に記憶され、コンピュータにて実行可能なプログラムであり、開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフであって、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つようなグラフ構造に変換可能な入力情報を解析し、零個以上の尤もらしい解経路候補を出力するものとして機能させるプログラムにおいて、
前記入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列として与えられた受理可能な受理パターン記号列の集合のうち、前記開始ノードもしくは終了ノードから、前記グラフ構造の解析を開始する解析開始ノード決定ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードが解経路候補の開始点または終了点からある順番で解経路候補に含まれる場合にとり得る受理パターン記号列を計算してノードに記録する受理パターン記号列計算・蓄積ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードに対する解析の経路パターンを網羅したかどうかを判定するノード解析網羅判定ステップと、
あるノードについてそのノードの解析経路パターンが網羅された場合に零回以上の受理パターン記号列計算・蓄積ステップの実行によって蓄積されたそのノードへの受理パターン記号列を解析においてそのノードの次に接続されている一個以上のノードに伝播させる受理パターン記号列伝播ステップと、
解析が終了したか否かを判定する解析終了判定ステップと、
解析が終了した際に前記開始ノードもしくは終了ノードに蓄積されている受理パターン記号列情報を用いて解析結果の出力である尤もらしい受理パターン記号列を収集する受理パターン記号列収集ステップと、
前記収集された尤もらしい受理パターン記号列集合と前記各ノードに蓄積された各ノードの受理パターン記号列の情報を用いて前記グラフ構造を探索し、前記尤もらしい受理パターン記号列集合の各要素を生成し得る解経路候補の集合を発見し出力する解経路候補検索・出力ステップと、
を具備したことを特徴とするプログラムを記憶した媒体。 - 前記受理可能な受理パターン記号列の集合を元に生成され、前記各終端記号または前記各カテゴリ記号のうちのある記号であるインデックス記号が前記受理可能な受理パターン記号列の集合に含まれる各受理パターン記号列における出現箇所IDと、前記インデックス記号をキーにして、前記インデックス記号が前記出現箇所IDの箇所に出現する可能性のある受理パターン記号列の集合を参照できる受理パターン系列ハッシュ辞書を装備し、前記受理パターン記号列計算・蓄積ステップの各ノードにおける受理パターン記号列の計算において、
前記接続するノードから伝播された受理パターン記号列と、前記ノードのその解析における出現箇所IDと前記ノードの表象する終端記号または前記終端記号が所属するカテゴリ記号をキーに受理パターン系列ハッシュ辞書を参照することで得られるその解析のそのノードにおいて出現する可能性のある受理パターン記号列の集合との積集合を計算し前記そのノードにおける受理パターン記号列の計算することを特徴とするプログラムを記憶した請求項5または6いずれか1項記載の媒体。 - 開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフであって、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つ形式のグラフ構造に変換可能な入力情報を、当該入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列で表される受理可能な受理パターン記号列の集合に基づいて解析することにより、尤もらしい受理パターン記号列を出力する情報解析方法において、
前記受理可能な受理パターン記号列のうち、特定の部分系列である部分受理パターン記号列を構成し、また、その部分受理パターン記号列を一つのカテゴリ記号として利用し、受理パターン記号列を再帰的に構成し、階層受理パターン記号列集合を生成する階層受理パターン記号列生成ステップと、
前記階層受理パターン記号列集合の中から、全てのカテゴリ記号が既知である前記部分受理パターン記号列を選択する部分受理パターン記号列選択ステップと、
前記階層部分受理パターン記号列集合の中の、各部分受理パターン記号列が既に選択されたか否かを記憶する処理状態管理ステップと、
この処理状態管理ステップにて記憶した情報から、選択された部分受理パターン記号列が最終の記号列か否かを判定し、最後でない場合は無条件で前記開始ノードと終了ノードとに全てのデータノードを連結して、前記選択された部分受理パターン記号列を受理パターンとした前記解析を実施し、最後の場合は、前記選択された部分受理パターン記号列を受理パターンとした前記解析を実施することにより、尤もらしい部分受理パターン記号列を出力する解析ステップと、
前記収集された尤もらしい部分受理パターン記号列集合と前記各ノードに蓄積された各ノードの受理パターン記号列の情報を用いて前記グラフ構造を探索し、前記尤もらしい受理パターン記号列集合の各要素を生成し得る解経路候補の集合を見つけ、各経路に存在するノードをマージし、その所属カテゴリを該当する部分受理パターンとする新たなノードを作成する新規ノード生成ステップと、
前記処理状態管理ステップでの記憶内容から、全ての部分受理パターン記号列について解析ステップを通過したか否かを判定し、全ての部分受理パターン記号列につて解析ステップを通過した場合に処理を終了する終了条件判定ステップと、
を具備することを特徴とする情報解析方法。 - 前記受理パターン記号列を出力する情報解析は、
前記開始ノードもしくは終了ノードから前記グラフ構造の解析を開始する解析開始ノード決定ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードが解経路候補の開始点または終了点からある順番で解経路候補に含まれる場合にとり得る受理パターン記号列を計算してノードに記録する受理パターン記号列計算・蓄積ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードに対する解析の経路パターンを網羅したかどうかを判定するノード解析網羅判定ステップと、
あるノードについてそのノードの解析経路パターンが網羅された場合に零回以上の受理パターン記号列計算・蓄積ステップの実行により蓄積されたそのノードへの受理パターン記号列を解析においてそのノードの次に接続されている一個以上のノードに伝播させる受理パターン記号列伝播ステップと、
解析が終了したかどうかを判定する解析終了判定ステップと、
解析が終了した際に前記開始ノードもしくは終了ノードに蓄積されている受理パターン記号列情報を用いて前記解析結果より見つけた前記尤もらしい受理パターン記号列を収集し出力する受理パターン記号列収集・出力ステップと、
を備えたことを特徴とする請求項8記載の情報解析方法。 - 開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフであって、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つようなグラフ構造に変換可能な入力情報を、当該入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列で表される受理可能な受理パターン記号列の集合に基づいて解析することにより、尤もらしい受理パターン記号列と、前記尤もらしい受理パターン記号列に対応する一つ以上の解経路候補を出力する情報解析方法において、
前記受理可能な受理パターン記号列のうち、特定の部分系列である部分受理パターン記号列を構成し、また、その部分受理パターン記号列を一つのカテゴリ記号として利用し、受理パターン記号列を再帰的に構成し、階層受理パターン記号列集合を生成する階層受理パターン記号列生成ステップと、
前記階層受理パターン記号列集合の中から、全てのカテゴリ記号が既知である部分受理パターン記号列を選択する部分受理パターン記号列選択ステップと、
前記階層部分受理パターン記号列集合の中の、各部分受理パターン記号列が既に選択されたか否かを記憶する処理状態管理ステップと、
前記処理状態管理ステップでの記憶内容から、選択された部分受理パターン記号列が最終の記号列か否かを判定し、最後でない場合は、無条件で前記開始ノードと終了ノードとに全てのデータノードを連結して、前記選択された部分受理パターン記号列を受理パターンとした前記情報解析手法を適用し、最後の場合は、前記選択された部分受理パターン記号列を受理パターンとした前記解析を実施して解経路候補の集合を出力する解析ステップと、
前記解析ステップの出力である解経路候補の集合の各経路に存在するノードをマージし、その所属カテゴリを該当する部分受理パターンとする新たなノードを作成する新規ノード生成ステップと、
前記処理状態管理ステップから、全ての部分受理パターン記号列について解析ステップを通過したか否かを判定し、全ての部分受理パターン記号列につて解析ステップを通過した場合に、処理を終了する終了条件判定ステップと、
を具備することを特徴とする情報解析方法。 - 前記受理パターン記号列と対応する解経路候補を出力する情報解析は、
前記開始ノードもしくは終了ノードから前記グラフ構造の解析を開始する解析開始ノード決定ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードが解経路候補の開始点または終了点からある順番で解経路候補に含まれる場合にとり得る受理パターン記号列を計算してノードに記録する受理パターン記号列計算・蓄積ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードに対する解析の経路パターンを網羅したかどうかを判定するノード解析網羅判定ステップと、
あるノードについてそのノードの解析経路パターンが網羅された場合に零回以上の受理パターン記号列計算・蓄積ステップの実行によって蓄積されたそのノードへの受理パターン記号列を解析においてそのノードの次に接続されている一個以上のノードに伝播させる受理パターン記号列伝播ステップと、
解析が終了したかどうかを判定する解析終了判定ステップと、
解析が終了した際に前記開始ノードもしくは終了ノードに蓄積されている受理パターン記号列情報を用いて前記解析結果としての出力である尤もらしい受理パターン記号列を収集し出力する受理パターン記号列収集・出力ステップと、
前記収集された尤もらしい受理パターン記号列集合と前記各ノードに蓄積された各ノードの受理パターン記号列の情報を用いて前記グラフ構造を探索し、前記尤もらしい受理パターン記号列集合の各要素を生成し得る解経路候補の集合を発見し出力する解経路候補検索出力ステップと、
を備えることを特徴とする請求項9に記載の情報解析方法。 - 請求項10または請求項11いずれか1項記載の情報解析方法において、
その解析ステップは、
前記受理可能な部分受理パターン記号列の集合を元に生成され、前記各終端記号または前記各カテゴリ記号のうちのある記号であるインデックス記号が前記受理可能な部分受理パターン記号列の集合に含まれる各部分受理パターン記号列における出現箇所IDと、前記インデックス記号をキーにして、前記インデックス記号が前記出現箇所IDの箇所に出現する可能性のある部分受理パターン記号列の集合を参照できる受理パターン系列ハッシュ辞書を装備し、前記受理パターン記号列計算・蓄積ステップの各ノードにおける受理パターン記号列の計算において、前記接続するノードから伝播された受理パターン記号列と、前記ノードのその解析における出現箇所IDと前記ノードの表象する終端記号または前記終端記号が所属するカテゴリ記号をキーに受理パターン系列ハッシュ辞書を参照することで得られるその解析のそのノードにおいて出現する可能性のある受理パターン記号列の集合との積集合を計算し前記そのノードにおける受理パターン記号列を計算することを特徴とする情報解析方法。 - 前記各終端記号を自然言語の単語とし、前記各カテゴリ記号を各単語の所属する品詞とし、音声ワードスポッティング装置または音声認識装置から前記入力情報として音声認識結果単語候補を与えられ、音声認識結果の後処理として言語処理を施し、尤もらしい品詞系列の集合または尤もらしい単語系列の集合を出力することを特徴とする請求項8または請求項9または請求項10または請求項11または請求項12いずれか1項記載の情報解析方法。
- コンピュータにて読み込み可能な記憶媒体に記憶され、コンピュータにて実行可能なプログラムであり、
開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフとすると共に、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つようなグラフ構造に変換可能な入力情報を、前記入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列で表される受理可能な受理パターン記号列の集合に基づいて解析し、尤もらしい受理パターン記号列を出力する情報解析プログラムにおいて、
前記受理可能な受理パターン記号列のうち、特定の部分系列である部分受理パターン記号列を構成し、また、その部分受理パターン記号列を一つのカテゴリ記号として利用し、受理パターン記号列を再帰的に構成し、階層受理パターン記号列集合を生成する階層受理パターン記号列生成ステップと、
前記階層受理パターン記号列集合の中から、全てのカテゴリ記号が既知である前記部分受理パターン記号列を選択する部分受理パターン記号列選択ステップと、
前記階層部分受理パターン記号列集合の中の、各部分受理パターン記号列が既に選択されたかどうかを記憶する処理状態管理ステップと、
前記処理状態管理ステップでの記憶内容から、選択された部分受理パターン記号列が最終の記号列か否かを判定し、最後でない場合は、無条件で前記開始ノードと終了ノードとに全てのデータノードを連結して、前記選択された部分受理パターン記号列を受理パターンとした前記情報解析手法を適用し、最後の場合は、前記選択された部分受理パターン記号列を受理パターンとして前記解析を実施することにより、尤もらしい部分受理パターン記号列を出力する解析ステップと、
前記収集された尤もらしい部分受理パターン記号列集合と前記各ノードに蓄積された各ノードの受理パターン記号列の情報を用いて前記グラフ構造を探索し、前記尤もらしい受理パターン記号列集合の各要素を生成し得る解経路候補の集合を発見し、各経路に存在するノードをマージし、その所属カテゴリを該当する部分受理パターンとする新たなノードを作成する新規ノード生成ステップと、
前記処理状態管理ステップでの記憶内容から、全ての部分受理パターン記号列について解析ステップを通過したか否かを判定し、全ての部分受理パターン記号列につて解析ステップを通過した場合に、処理を終了する終了条件判定ステップと、
を具備することを特徴とする情報解析プログラムを記憶した媒体。 - コンピュータにて読み込み可能な記憶媒体に記憶され、コンピュータにて実行可能なプログラムであり、
開始ノードと終了ノードと一つ以上のデータノードから構成される有向グラフとすると共に、各ノードが他の一つ以上のノードと順序関係を持つ有向枝で連結され、一つ以上の開始ノードから終了ノードに到達し得る経路である解経路候補を持つようなグラフ構造に変換可能な入力情報を、当該入力情報の各要素の表象となり得る終端記号の集合と前記各終端記号が所属するカテゴリであるカテゴリ記号の集合の和集合の要素の系列で表される受理可能な受理パターン記号列の集合に基づいて解析することにより、尤もらしい受理パターン記号列と、前記尤もらしい受理パターン記号列に対応する一つ以上の解経路候補を出力する情報解析プログラムにおいて、
前記受理可能な受理パターン記号列のうち、特定の部分系列である部分受理パターン記号列を構成し、また、その部分受理パターン記号列を一つのカテゴリ記号として利用し、受理パターン記号列を再帰的に構成し、階層受理パターン記号列集合を生成する階層受理パターン記号列生成ステップと、
前記階層受理パターン記号列集合の中から、全てのカテゴリ記号が既知である部分受理パターン記号列を選択する部分受理パターン記号列選択ステップと、
前記階層部分受理パターン記号列集合の中の、各部分受理パターン記号列が既に選択されたか否かを記憶する処理状態管理ステップと、
前記処理状態管理ステップでの記憶内容から、選択された部分受理パターン記号列が最終の記号列か否かを判定し、最後でない場合は、無条件で前記開始ノードと終了ノードとに全てのデータノードを連結して、前記選択された部分受理パターン記号列を受理パターンとした前記情報解析手法を適用し、最後の場合は、前記選択された部分受理パターン記号列を受理パターンとした前記情報解析を実施して解経路候補の集合を出力する解析ステップと、
前記解析ステップの出力である解経路候補の集合の各経路に存在するノードをマージし、その所属カテゴリを該当する部分受理パターンとする新たなノードを作成する新規ノード生成ステップと、
前記処理状態管理ステップでの記憶内容から、全ての部分受理パターン記号列について解析ステップを通過したか否かを判定し、全ての部分受理パターン記号列につて解析ステップを通過した場合に、処理を終了する終了条件判定ステップと、
を具備することを特徴とする情報解析プログラムを記憶した媒体。 - 前記受理パターン記号列と対応する解経路候補を出力する解析が、
前記開始ノードもしくは終了ノードから前記グラフ構造の解析を開始する解析開始ノード決定ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードが解経路候補の開始点または終了点からある順番で解経路候補に含まれる場合にとり得る受理パターン記号列を計算してノードに記録する受理パターン記号列計算・蓄積ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードに対する解析の経路パターンを網羅したかどうかを判定するノード解析網羅判定ステップと、
あるノードについてそのノードの解析経路パターンが網羅された場合に零回以上の受理パターン記号列計算・蓄積ステップの実行によって蓄積されたそのノードへの受理パターン記号列を解析においてそのノードの次に接続されている一個以上のノードに伝播させる受理パターン記号列伝播ステップと、
解析が終了したか否かを判定する解析終了判定ステップと、
解析が終了した際に前記開始ノードもしくは終了ノードに蓄積されている受理パターン記号列情報を用いて解析結果の出力である尤もらしい受理パターン記号列を収集し出力する受理パターン記号列収集・出力ステップと、
前記収集された尤もらしい受理パターン記号列集合と前記各ノードに蓄積された各ノードの受理パターン記号列の情報を用いて前記グラフ構造を探索し、前記尤もらしい受理パターン記号列集合の各要素を生成し得る解経路候補の集合を発見し出力する解経路候補検索出力ステップと、
を備えた情報解析方法であることを特徴とする請求項15に記載の情報解析方法として動作させるプログラムを記憶した媒体。 - 前記受理パターン記号列を出力する解析が、
前記開始ノードもしくは終了ノードから前記グラフ構造の解析を開始する解析開始ノード決定ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードが解経路候補の開始点または終了点からある順番で解経路候補に含まれる場合にとり得る受理パターン記号列を計算してノードに記録する受理パターン記号列計算・蓄積ステップと、
前記グラフ構造の各ノードの解析の途中経過においてそのノードに対する解析の経路パターンを網羅したか否かを判定するノード解析網羅判定ステップと、
あるノードについてそのノードの解析経路パターンが網羅された場合に零回以上の受理パターン記号列計算・蓄積ステップの実行によって蓄積されたそのノードへの受理パターン記号列を解析においてそのノードの次に接続されている一個以上のノードに伝播させる受理パターン記号列伝播ステップと、
解析が終了したか否かを判定する解析終了判定ステップと、
解析が終了した際に前記開始ノードもしくは終了ノードに蓄積されている受理パターン記号列情報を用いて解析結果の出力である尤もらしい受理パターン記号列を収集し出力する受理パターン記号列収集・出力ステップと、
を備えることを特徴とする請求項14に記載の情報解析プログラムを記憶した媒体。 - 前記解析ステップは、前記受理可能な部分受理パターン記号列の集合を元に生成され、前記各終端記号または前記各カテゴリ記号のうちのある記号であるインデックス記号が前記受理可能な部分受理パターン記号列の集合に含まれる各部分受理パターン記号列における出現箇所IDと、前記インデックス記号をキーにして、前記インデックス記号が前記出現箇所IDの箇所に出現する可能性のある部分受理パターン記号列の集合を参照できる受理パターン系列ハッシュ辞書を装備し、前記受理パターン記号列計算・蓄積ステップの各ノードにおける受理パターン記号列の計算において、前記接続するノードから伝播された受理パターン記号列と、前記ノードのその解析における出現箇所IDと前記ノードの表象する終端記号または前記終端記号が所属するカテゴリ記号をキーに受理パターン系列ハッシュ辞書を参照することで得られるその解析のそのノードにおいて出現する可能性のある受理パターン記号列の集合との積集合を計算し前記そのノードにおける受理パターン記号列を計算することを特徴とする請求項16または請求項17いずれか1項に記載の解析プログラムを記憶した媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06443298A JP3930138B2 (ja) | 1998-02-27 | 1998-02-27 | 情報解析方法および情報解析プログラムを記憶した媒体 |
US09/258,071 US6169972B1 (en) | 1998-02-27 | 1999-02-26 | Information analysis and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06443298A JP3930138B2 (ja) | 1998-02-27 | 1998-02-27 | 情報解析方法および情報解析プログラムを記憶した媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11249686A JPH11249686A (ja) | 1999-09-17 |
JP3930138B2 true JP3930138B2 (ja) | 2007-06-13 |
Family
ID=13258121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP06443298A Expired - Fee Related JP3930138B2 (ja) | 1998-02-27 | 1998-02-27 | 情報解析方法および情報解析プログラムを記憶した媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6169972B1 (ja) |
JP (1) | JP3930138B2 (ja) |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6486898B1 (en) * | 1999-03-31 | 2002-11-26 | Koninklijke Philips Electronics N.V. | Device and method for a lattice display |
US7392185B2 (en) * | 1999-11-12 | 2008-06-24 | Phoenix Solutions, Inc. | Speech based learning/training system using semantic decoding |
US6947885B2 (en) * | 2000-01-18 | 2005-09-20 | At&T Corp. | Probabilistic model for natural language generation |
JP4116233B2 (ja) * | 2000-09-05 | 2008-07-09 | パイオニア株式会社 | 音声認識装置ならびにその方法 |
WO2002030629A1 (fr) * | 2000-10-11 | 2002-04-18 | Sony Corporation | Appareil robot, systeme d"affichage d"information et procede d"affichage d"information |
US7003445B2 (en) * | 2001-07-20 | 2006-02-21 | Microsoft Corporation | Statistically driven sentence realizing method and apparatus |
US7685126B2 (en) * | 2001-08-03 | 2010-03-23 | Isilon Systems, Inc. | System and methods for providing a distributed file system utilizing metadata to track information about data stored throughout the system |
AU2003239962A1 (en) * | 2002-06-03 | 2003-12-19 | Arizona Board Of Regents Acting For And On Behalf Of Arizona State University | System and method of analyzing the temporal evolution of text using dynamic centering resonance analysis |
US20060036627A1 (en) * | 2004-08-06 | 2006-02-16 | Roger Deran | Method and apparatus for a restartable hash in a trie |
US8055711B2 (en) * | 2004-10-29 | 2011-11-08 | Emc Corporation | Non-blocking commit protocol systems and methods |
US8238350B2 (en) | 2004-10-29 | 2012-08-07 | Emc Corporation | Message batching with checkpoints systems and methods |
US7788303B2 (en) * | 2005-10-21 | 2010-08-31 | Isilon Systems, Inc. | Systems and methods for distributed system scanning |
US7797283B2 (en) * | 2005-10-21 | 2010-09-14 | Isilon Systems, Inc. | Systems and methods for maintaining distributed data |
US7917474B2 (en) * | 2005-10-21 | 2011-03-29 | Isilon Systems, Inc. | Systems and methods for accessing and updating distributed data |
US7809568B2 (en) * | 2005-11-08 | 2010-10-05 | Microsoft Corporation | Indexing and searching speech with text meta-data |
US7831428B2 (en) * | 2005-11-09 | 2010-11-09 | Microsoft Corporation | Speech index pruning |
US7831425B2 (en) * | 2005-12-15 | 2010-11-09 | Microsoft Corporation | Time-anchored posterior indexing of speech |
US7848261B2 (en) * | 2006-02-17 | 2010-12-07 | Isilon Systems, Inc. | Systems and methods for providing a quiescing protocol |
US20070260450A1 (en) * | 2006-05-05 | 2007-11-08 | Yudong Sun | Indexing parsed natural language texts for advanced search |
US7882071B2 (en) * | 2006-08-18 | 2011-02-01 | Isilon Systems, Inc. | Systems and methods for a snapshot of data |
US7590652B2 (en) * | 2006-08-18 | 2009-09-15 | Isilon Systems, Inc. | Systems and methods of reverse lookup |
US7822932B2 (en) * | 2006-08-18 | 2010-10-26 | Isilon Systems, Inc. | Systems and methods for providing nonlinear journaling |
US7899800B2 (en) * | 2006-08-18 | 2011-03-01 | Isilon Systems, Inc. | Systems and methods for providing nonlinear journaling |
US8286029B2 (en) * | 2006-12-21 | 2012-10-09 | Emc Corporation | Systems and methods for managing unavailable storage devices |
US7593938B2 (en) * | 2006-12-22 | 2009-09-22 | Isilon Systems, Inc. | Systems and methods of directory entry encodings |
US7509448B2 (en) * | 2007-01-05 | 2009-03-24 | Isilon Systems, Inc. | Systems and methods for managing semantic locks |
US7779048B2 (en) | 2007-04-13 | 2010-08-17 | Isilon Systems, Inc. | Systems and methods of providing possible value ranges |
US7900015B2 (en) * | 2007-04-13 | 2011-03-01 | Isilon Systems, Inc. | Systems and methods of quota accounting |
US8966080B2 (en) * | 2007-04-13 | 2015-02-24 | Emc Corporation | Systems and methods of managing resource utilization on a threaded computer system |
US7882068B2 (en) | 2007-08-21 | 2011-02-01 | Isilon Systems, Inc. | Systems and methods for adaptive copy on write |
JP5206296B2 (ja) * | 2008-10-03 | 2013-06-12 | 富士通株式会社 | 類似文章抽出プログラム、方法、装置 |
US8176080B2 (en) * | 2009-03-06 | 2012-05-08 | Hewlett-Packard Development Company, L.P. | Desensitizing character strings |
US9317595B2 (en) | 2010-12-06 | 2016-04-19 | Yahoo! Inc. | Fast title/summary extraction from long descriptions |
US8914288B2 (en) * | 2011-09-01 | 2014-12-16 | At&T Intellectual Property I, L.P. | System and method for advanced turn-taking for interactive spoken dialog systems |
JP5799733B2 (ja) * | 2011-10-12 | 2015-10-28 | 富士通株式会社 | 認識装置、認識プログラムおよび認識方法 |
CN103345922B (zh) * | 2013-07-05 | 2016-07-06 | 张巍 | 一种长篇幅语音全自动切分方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4829423A (en) * | 1983-01-28 | 1989-05-09 | Texas Instruments Incorporated | Menu-based natural language understanding system |
US4864502A (en) * | 1987-10-07 | 1989-09-05 | Houghton Mifflin Company | Sentence analyzer |
JPH05197389A (ja) | 1991-08-13 | 1993-08-06 | Toshiba Corp | 音声認識装置 |
US5805911A (en) * | 1995-02-01 | 1998-09-08 | Microsoft Corporation | Word prediction system |
US5828991A (en) * | 1995-06-30 | 1998-10-27 | The Research Foundation Of The State University Of New York | Sentence reconstruction using word ambiguity resolution |
JP3152871B2 (ja) | 1995-11-10 | 2001-04-03 | 富士通株式会社 | ラティスをキーとした検索を行う辞書検索装置および方法 |
US5983180A (en) * | 1997-10-23 | 1999-11-09 | Softsound Limited | Recognition of sequential data using finite state sequence models organized in a tree structure |
-
1998
- 1998-02-27 JP JP06443298A patent/JP3930138B2/ja not_active Expired - Fee Related
-
1999
- 1999-02-26 US US09/258,071 patent/US6169972B1/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US6169972B1 (en) | 2001-01-02 |
JPH11249686A (ja) | 1999-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3930138B2 (ja) | 情報解析方法および情報解析プログラムを記憶した媒体 | |
US5987404A (en) | Statistical natural language understanding using hidden clumpings | |
JP6493866B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
US6789231B1 (en) | Method and system for providing alternatives for text derived from stochastic input sources | |
JP3741156B2 (ja) | 音声認識装置および音声認識方法並びに音声翻訳装置 | |
JP4215418B2 (ja) | 単語予測方法、音声認識方法、その方法を用いた音声認識装置及びプログラム | |
CN102549652B (zh) | 信息检索装置 | |
US7035789B2 (en) | Supervised automatic text generation based on word classes for language modeling | |
KR101120798B1 (ko) | 텍스트로부터 세만틱 구조들을 식별하기 위한 방법 및장치 | |
US20070055493A1 (en) | String matching method and system and computer-readable recording medium storing the string matching method | |
JPH0869470A (ja) | 自然言語処理装置及びその方法 | |
JP2010044637A (ja) | データ処理装置、方法、及びプログラム | |
JP2008191833A (ja) | 論理構造認識処理プログラム、論理構造認識処理方法および論理構造認識処理装置 | |
CN111090727A (zh) | 语言转换处理方法、装置及方言语音交互系统 | |
US8209346B2 (en) | Named entity database or mining rule database update apparatus and method using named entity database and mining rule merged ontology schema | |
JP3372532B2 (ja) | 感情情報抽出方法および感情情報抽出プログラムの計算機読み取り可能な記録媒体 | |
CN114817465A (zh) | 一种用于多语言语义理解的实体纠错方法及智能设备 | |
JPH06266779A (ja) | 制御装置 | |
CN101470701A (zh) | 支持基于有限状态机的语义规则的文本分析器及其方法 | |
KR20060100646A (ko) | 영상물의 특정 위치를 검색하는 방법 및 영상 검색 시스템 | |
JP2020118929A (ja) | 要約生成装置、方法、プログラム、及び記憶媒体 | |
JP2006338261A (ja) | 翻訳装置、翻訳方法及び翻訳プログラム | |
JP2013134753A (ja) | 誤り文修正装置、誤り文修正方法およびプログラム | |
JP3581044B2 (ja) | 音声対話処理方法、音声対話処理システムおよびプログラムを記憶した記憶媒体 | |
Sproat et al. | Applications of lexicographic semirings to problems in speech and language processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050215 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070227 |
|
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: 20070306 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070308 |
|
LAPS | Cancellation because of no payment of annual fees |