(57)【特許請求の範囲】
【請求項１】
テキストデータを形態素の列に分解する形態素解析装置であって、
形態素およびこれに対応付けられた位置の情報を蓄積する形態素辞書と、
入力されたテキストデータを形態素に分解し、前記形態素辞書を参照して前記分解された形態素に対応する位置の情報を取得し、位置情報を用いたコスト関数により、前記分解の結果得られた形態素列の候補から最適な形態素列を決定する形態素解析処理部と、
前記入力されたテキストデータに対して話題対象位置を推定する話題対象位置推定部と、を備え、
前記形態素解析処理部は、２つの位置情報から決まる距離が大きくなるほど、形態素の生成可能性を低くする項を含むコスト関数を用いて、前記分解された形態素に対応する位置と前記話題対象位置との距離から前記分解された形態素の生成可能性を評価することを特徴とする形態素解析装置。
【請求項２】
前記話題対象位置推定部は、現在の解析対象である形態素に至るまでの形態素列の候補のうちコストが最小な候補において、前記現在の解析対象である形態素から直近複数個の形態素から得られた位置情報に基づいて話題対象位置を推定することを特徴とする請求項１記載の形態素解析装置。
【請求項３】
前記形態素解析処理部は、２つの位置情報から決まる距離が大きくなるほど、形態素の連接可能性を低くする項を含む関数を用いて前記分解された形態素間の連接可能性を評価することを特徴とする請求項１記載の形態素解析装置。
【請求項４】
形態素解析処理部および話題対象位置推定部を有する形態素解析装置において、コンピュータが実行する一連のステップによりテキストデータを形態素の列に分解する形態素解析方法であって、
前記形態素解析処理部が、入力されたテキストデータを形態素に分解するステップと、
前記形態素解析処理部が、蓄積された形態素およびこれに対応付けられた位置の情報から、前記分解された形態素に対応する位置の情報を取得するステップと、
前記形態素解析処理部が、位置情報を用いたコスト関数により、前記分解の結果得られた形態素列の候補から最適な形態素列を決定するステップと、
前記話題対象位置推定部が、前記入力されたテキストデータに対して話題対象位置を推定するステップと、
前記形態素解析処理部が、２つの位置情報から決まる距離が大きくなるほど、形態素の生成可能性を低くする項を含むコスト関数を用いて、前記分解された形態素に対応する位置と前記話題対象位置との距離から前記分解された形態素の生成可能性を評価するステップと、を含むことを特徴とする形態素解析方法。
【請求項５】
形態素解析処理部および話題対象位置推定部を有する形態素解析装置において、コンピュータに実行させてテキストデータを形態素の列に分解する形態素解析プログラムであって、
前記形態素解析処理部が、入力されたテキストデータを形態素に分解する処理と、
前記形態素解析処理部が、蓄積された形態素およびこれに対応付けられた位置の情報から、前記分解された形態素に対応する位置の情報を取得する処理と、
前記形態素解析処理部が、位置情報を用いたコスト関数により、前記分解の結果得られた形態素列の候補から最適な形態素列を決定する処理と、
前記話題対象位置推定部が、前記入力されたテキストデータに対して話題対象位置を推定する処理と、
前記形態素解析処理部が、２つの位置情報から決まる距離が大きくなるほど、形態素の生成可能性を低くする項を含むコスト関数を用いて、前記分解された形態素に対応する位置と前記話題対象位置との距離から前記分解された形態素の生成可能性を評価する処理と、を含む一連の処理をコンピュータに実行させることを特徴とする形態素解析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テキストデータを形態素の列に分解する形態素解析装置、形態素解析方法および形態素解析プログラムに関する。
【背景技術】
【０００２】
音声合成技術の代表的な利用方法にテキスト音声変換がある。これは例えば日本語の場合、漢字仮名交じり文といったテキストを入力、合成した音声波形を出力とする処理だが、その処理自体は、入力されたテキストからその読み方を解析する処理と、解析の結果得られた読み方に関する情報から、音声波形を合成する処理の大きく２つに分けることができる。
【０００３】
この読み方に関する情報を表現するために用いる記号を、以下、音声合成用記号と呼ぶ。音声合成用記号には様々な形式があり得るが、ここでは、一連の音声を構成する音韻的情報と、主としてポーズや声の高さとして表現される韻律的情報を同時に表記したものを考える。そのような音声合成用記号の例が、非特許文献１に記載されている。
【０００４】
テキスト音声変換による正確な読み上げは、テキストから音声合成用記号を正確に作成することで実現される。その処理は、日本語漢字仮名交じり文を形態素と呼ばれる言語表現上意味を持つ最小の単位に区切り、まず形態素ごとの読みを、予め準備した読み情報辞書を参照して付与した上で、形態素列等を参照し形態素の情報を適切に変形、必要に応じ、ポーズ等の韻律的境界を挿入し、それらを接続することで実現できる。
【０００５】
ところで、文字表現上は同一であっても、その読みが異なる形態素がある。例えば地名について、「三田」は、東京都港区三田の地名の読みとしては「みた」であるのに対し、兵庫県三田市における地名の読みは「さんだ」である。特に読みの誤りは、例えば視覚による文字情報提示が困難なカーナビゲーションシステム等、合成音声のみによる情報提示が不可欠なシステムで、非常に重要な問題となる。そこで、特許文献１では、予め形態素「三田」に対する読み「みた」と「さんだ」のそれぞれに座標情報を付与しておき、ＧＰＳ等により取得した現在のシステムの現在地から、距離的に近い方の読みを形態素「三田」の読み情報とする方法が提案されている。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】「日本語テキスト音声合成用記号」ＪＥＩＴＡ規格 ＩＴ−４００２、２００５年３月
【特許文献】
【０００７】
【特許文献１】特許公開平１０−２５３３８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１記載の装置では、ナビゲーションシステムなどに適用して装置の位置に応じて個々の地名の読み分けを行なうことはできても、文章の全体について位置情報を評価し、複数の単語から総合的に最適な文章の読み方を決定できない。
【０００９】
本発明は、このような事情に鑑みてなされたものであり、位置情報に応じた形態素解析で形態素列を評価し、複数の形態素から総合的に最適な形態素列を決定できる形態素解析装置、形態素解析方法および形態素解析プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
（１）上記の目的を達成するため、本発明の形態素解析装置は、テキストデータを形態素の列に分解する形態素解析装置であって、形態素およびこれに対応付けられた位置の情報を蓄積する形態素辞書と、入力されたテキストデータを形態素に分解し、前記形態素辞書を参照して前記分解された形態素に対応する位置の情報を取得し、位置情報を用いたコスト関数により、前記分解の結果得られた形態素列の候補から最適な形態素列を決定する形態素解析処理部と、を備えることを特徴としている。
【００１１】
このように、本発明の形態素解析装置は、位置情報を用いたコスト関数を用いるため、位置情報に応じた形態素解析が可能になる。また、形態素列で評価するため、複数の形態素から総合的に最適な形態素列を決定でき、形態素解析の精度を上げることができる。
【００１２】
（２）また、本発明の形態素解析装置は、前記形態素辞書が、読みで区別された形態素およびこれに対応付けられた位置の情報を蓄積し、前記形態素解析処理部は、前記分解の結果得られた形態素列の候補から最適な読みを付与された形態素列を決定することを特徴としている。これにより、たとえば、地名等の読み情報の生成を目的とした形態素解析で、より適切な形態素を選択できる。
【００１３】
（３）また、本発明の形態素解析装置は、前記入力されたテキストデータに対して話題対象位置を推定する話題対象位置推定部を更に備え、前記形態素解析処理部は、２つの位置情報から決まる距離が大きくなるほど、形態素の生成可能性を低くする項を含むコスト関数を用いて、前記分解された形態素に対応する位置と前記話題対象位置との距離から前記分解された形態素の生成可能性を評価することを特徴としている。
【００１４】
このように、本発明の形態素解析装置は、分解された形態素に対応する位置と推定された話題対象位置との距離から分解された形態素の生成可能性を評価する。この結果、位置の観点から話題にしている可能性の高い形態素を選ぶことができる。
【００１５】
（４）また、本発明の形態素解析装置は、前記話題対象位置推定部が、過去に最適な形態素列として決定された形態素列から得られる位置情報に基づいて前記話題対象位置を推定することを特徴としている。
【００１６】
これにより、ＧＰＳ等の位置情報取得のための装置がなくても位置情報を考慮した形態素解析が可能となる。また、現在地とは無関係に、位置を考慮した形態素解析を行なうことができる。さらに現在位置の推定結果を更新していくことで、文の変化に対応できる。そして、初期推定位置設定が不適切な場合であっても処理を進めていくことで形態素解析の精度を向上できる。
【００１７】
（５）また、本発明の形態素解析装置は、前記話題対象位置推定部が、現在の解析対象である形態素に至るまでの形態素列の候補のうちコストが最小な候補において、前記現在の解析対象である形態素から直近複数個の形態素から得られた位置情報に基づいて話題対象位置を推定することを特徴としている。
【００１８】
このように、探索処理内においても話題対象位置を更新することで、位置に関する対象の変化に素早く追従できる。また、動的計画法などを用いて複数の形態素列を仮説として同時に調べ、その中から最も良いものを選択することもできる。仮説毎に別々の話題対象推定位置を持つことになり、高い精度で処理することができる。
【００１９】
（６）また、本発明の形態素解析装置は、前記形態素解析処理部が、２つの位置情報から決まる距離が大きくなるほど、形態素の連接可能性を低くする項を含む関数を用いて前記分解された形態素間の連接可能性を評価することを特徴としている。これにより、形態素間の連接可能性も位置情報を参照して評価し、最適な形態素列を決定することができる。
【００２０】
（７）また、本発明の形態素解析方法は、テキストデータを形態素の列に分解する形態素解析方法であって、入力されたテキストデータを形態素に分解するステップと、蓄積された形態素およびこれに対応付けられた位置の情報から、前記分解された形態素に対応する位置の情報を取得するステップと、位置情報を用いたコスト関数により、前記分解の結果得られた形態素列の候補から最適な形態素列を決定するステップと、を含むことを特徴としている。これにより、位置情報に応じた形態素解析が可能になり、複数の形態素から総合的に最適な形態素列を決定でき、形態素解析の精度を上げることができる。
【００２１】
（８）また、本発明の形態素解析プログラムは、テキストデータを形態素の列に分解する形態素解析プログラムであって、入力されたテキストデータを形態素に分解する処理と、蓄積された形態素およびこれに対応付けられた位置の情報から、前記分解された形態素に対応する位置の情報を取得する処理と、位置情報を用いたコスト関数により、前記分解の結果得られた形態素列の候補から最適な形態素列を決定する処理と、をコンピュータに実行させることを特徴としている。これにより、位置情報に応じた形態素解析が可能になり、複数の形態素から総合的に最適な形態素列を決定でき、形態素解析の精度を上げることができる。
【発明の効果】
【００２２】
本発明によれば、位置情報に応じた形態素解析で形態素列を評価し、複数の形態素から総合的に最適な形態素列を決定できる。
【図面の簡単な説明】
【００２３】
【図１】本発明の形態素解析装置を示すブロック図である。
【図２】本発明の形態素解析装置の動作を示すフローチャートである。
【図３】本発明の形態素解析処理時のグラフの例を示す図である。
【図４】本発明の形態素解析処理時のグラフの例を示す図である。
【図５】本発明の形態素解析処理時のグラフの例を示す図である。
【図６】本発明の形態素解析処理時のグラフの例を示す図である。
【発明を実施するための形態】
【００２４】
次に、本発明の実施の形態について、図面を参照しながら説明する。以下、読みの異なる形態素は、異なる形態素であると考える。実際の形態素辞書構成が、同じ形態素に複数の読みが存在する、という形で設計されている場合も、コスト最小の形態素列を探す際の処理においては、それぞれ別の形態素であるものとして取り扱う。
【００２５】
（形態素解析の前提）
形態素解析処理は、文程度の単位のテキストを、形態素と呼ばれる言語表現上意味を持つ最小の単位に区切る処理である。一般的には、文の構成要素抽出等で用いられ、形態素は、構文解析といった処理を行なう際の最小処理単位として用いられる。特に、固有名詞に関しては、読みをあまり考慮しない処理に用いる場合、形態素を構成する文字列が同じであれば、それらの意味が全く違う場合であっても、それらの形態素を区別せず同じ形態素として扱うことも多い。これは音声合成のための読み情報生成といった、形態素の読み方に関する情報が必要な処理では問題となる。
【００２６】
特に、システムの構成上の問題から、複数の異なる読み方のある１つの形態素として扱うことは多く、そのようなシステムでは、複数通りの読み方から最も妥当な読み方を決定する処理が別に必要となる。これに対し、表記が同じでも少なくとも読みが異なる形態素は互いに異なる形態素と考えることで、読み方の決定処理を形態素解析処理に含めることができる。以下、テキスト音声変換（Text-To-Speech）処理で行なわれる形態素解析処理を、読みを考慮した形態素解析処理の例として挙げる。また、ここで形態素は、言語学的な厳密な定義に従ったものに限らない。例えば、形態素の並びをより適切に処理するために、複数の形態素で構成される単語等も１つの形態素と見なして形態素辞書に登録することがある。以下において、形態素とは、その用途の観点から処理上の最小単位となるべく適当に設定された文字列をいう。
【００２７】
また、形態素解析の方法として、以下では、最小コスト法に基づく方法を説明する。最小コスト法による形態素解析では、通常、各形態素の出現頻度を反映させた生起コスト関数と、連続する形態素の繋がりやすさを表す連接コスト関数を予め定義しておく。そして、形態素辞書に登録された形態素から、入力テキストに一致し、かつ文全体のコストが最小となるような形態素列を探すことで、適切な形態素列を得る。通常、生起コスト関数は出現頻度が高い形態素ほど、連接コスト関数は繋がりやすい形態素列ほど、その値が小さくなるよう定義される。
【００２８】
すなわち形態素列をＭ＝（ｍ（１），…，ｍ（ｎ））、生起コスト関数をＣｔ（ｍ）、連接コスト関数をＣｃ（ｍ（ｉ−ｋ＋１），…，ｍ（ｉ））とするときａｒｇｍｉｎ （Σ Ｃｔ ＋Σ Ｃｃ）を求めることで形態素解析処理が行なわれる。ただし、ここで連接コスト関数はｋ個の形態素の並びで決定されるものとする。
【００２９】
この処理は動的計画法により効率よく行なうことができる。この際、生起コストに関する情報は形態素辞書の内容として保持することができる。一方、連接コストについては連接表と呼ばれるテーブルを予め作成しておき、その表の値を使うことで求めることができる。
【００３０】
ただし、全ての形態素列の組み合わせの表を作ることは難しいので、例えば形態素の品詞型だけに注目した表を用いることができる。なお、これらの関数は算出される値が大きいほど好ましい形に定義される場合もある。その場合は、文全体から算出される値が最も大きくなる形態素系列を探すことになる。
【００３１】
（形態素解析装置の構成）
図１は、形態素解析装置を示すブロック図である。形態素解析装置１００は、テキストデータを形態素の列に分解する装置である。図１に示すように、形態素解析装置１００は、形態素辞書１１０、形態素解析処理部１２０、話題対象位置推定部１４０、コスト関数修正部１３０および連接テーブル蓄積部１５０を備えている。
【００３２】
形態素辞書１１０（形態素情報蓄積部）は、形態素およびこれに対応付けられた位置の情報を蓄積する。形態素辞書１１０は、読みで区別された形態素およびこれに対応付けられた位置の情報を蓄積することが好ましい。形態素辞書１１０に含まれる一部の形態素には、予め、緯度・経度といった位置情報が付与されている。これにより、たとえば、地名等の読み情報の生成を目的とした形態素解析で、より適切な形態素を選択できる。
【００３３】
形態素解析処理部１２０は、形態素解析処理、その位置情報を考慮した生起コスト関数、連接コスト関数定義を用い、位置情報が考慮された形態素解析処理を行なう。例えば、形態素解析処理部１２０は、入力されたテキストデータを形態素に分解し、形態素辞書１１０を参照して分解された形態素に対応する位置の情報を取得し、位置情報を用いたコスト関数により、分解の結果得られた形態素列の候補から最適な形態素列を決定する。コスト関数は、生起コスト関数および連接コスト関数を含む。
【００３４】
コスト関数修正部１３０は、生起コスト関数として２つの位置情報から決まる距離が大きくなるほど、形態素の生成可能性を低くする項により生起コスト関数を修正する。これを受けて、形態素解析処理部１２０は、分解された形態素に対応する位置と話題対象位置との距離から分解された形態素の生成可能性を評価する。この結果、位置の観点から話題にしている可能性の高い形態素を選ぶことができる。コスト関数の一例は後述する。
【００３５】
上記のような構成をとることで、位置情報に応じた形態素解析が可能になる。また、形態素列で評価するため、複数の形態素から総合的に最適な形態素列を決定できる。なお、読みで区別された形態素を対象とするときは、形態素列の候補から最適な読みが付与された形態素列を決定することができる。
【００３６】
話題対象位置推定部１４０は、入力されたテキストデータに対して話題対象位置を推定する。推定には、テキストデータ、処理の履歴、ＧＰＳ情報、基地局により把握される位置情報等を用いることができる。
【００３７】
例えば、話題対象位置推定部１４０は、これまでに最適な形態素列として決定された形態素列から得られる位置情報に基づいて話題対象位置を推定する。これにより、ＧＰＳ等の位置情報取得のための装置がなくても位置情報を考慮した形態素解析が可能となる。また、現在地とは無関係に、話題対象の位置を考慮した形態素解析を行なうことができる。
【００３８】
さらに現在位置の推定結果を更新していくことで、解析処理の実行に伴う文の変化に対応できる。そして、初期に推定される位置の設定が不適切な場合であっても処理を進めていくことで形態素解析の精度を向上できる。なお、形態素解析装置１００が携帯電話機に搭載される場合には、基地局との通信で位置情報を取得でき、これを話題対象位置として利用できる。この場合には、ＧＰＳ情報に比べてＧＰＳ機能をＯＦＦにしていても位置情報を取得でき、電池の消費を防止できる。
【００３９】
話題対象位置推定部１４０は、現在の解析対象である形態素に至るまでの形態素列の候補のうちコストが最小な候補において、現在の解析対象である形態素から直近複数個の形態素から得られた位置情報に基づいて話題対象位置を推定してもよい。このように、探索処理内においても話題対象位置を更新することで、位置に関する対象の変化に素早く追従できる。また、動的計画法などを用いて複数の形態素列を仮説として同時に調べ、その中から最も良いものを選択することもできる。仮説毎に別々の話題対象推定位置を持つことになり、高い精度で処理することができる。なお、推定の一例は後述する。
【００４０】
連接テーブル蓄積部１５０は、形態素間で決まる連接コスト関数に用いられるパラメータをテーブルとして蓄積する。例えば、連接コスト関数として２つの位置情報から決まる距離が大きくなるほど、形態素の連接可能性を低くするようにパラメータを蓄積することが好ましい。これにより、形態素間の連接可能性も位置情報を参照して評価し、最適な形態素列を決定することができる。
【００４１】
なお、形態素解析装置１００を利用して、入力されたテキストデータを適切な読み方で読む音声合成装置を構成してもよい。形態素解析装置１００は、特に携帯電話機等の携帯端末に利用されることが好ましい。携帯電話機は、固定の装置と異なり位置が変動するため、位置情報に応じた処理が重要になる。形態素解析装置１００は、カーナビゲーション装置等に利用し、地名を読ませることもできるが、文章の形態素解析において有効であることから携帯電話機に保存されたメールを読ませる場面等で使いやすい。なお、形態素解析装置１００は、上記のように端末装置に用いてもよいし、端末からの要求に応じてサーバとして形態素解析の処理を行ない、結果を返してもよい。
【００４２】
（形態素解析装置の動作）
図２は、形態素解析装置の動作を示すフローチャートである。まず、入力されたテキストデータを形態素に分解する（ステップＳ１）。そして、現在の話題対象位置を推定する（ステップＳ２）。次に、形態素辞書１１０を参照し、蓄積された形態素およびこれに対応付けられた位置の情報から、分解された形態素に対応する位置の情報を取得する（ステップＳ３）位置情報を取得できたら、位置情報を用いたコスト関数により、分解の結果得られた形態素列の候補から最適な形態素列を決定する（ステップＳ４）。
【００４３】
最後に、形態素解析を終了するか否かを判定し（ステップＳ５）、終了の場合はそのまま終了し、終了しない場合にはステップＳ１に戻る。これにより、位置情報に応じた形態素解析が可能になり、複数の形態素から総合的に最適な形態素列を決定できる。以上のような動作は、形態素解析装置１００のコンピュータによりプログラムを実行することにより行なわれる。
【００４４】
（生起コスト修正の例）
次に、生起コスト修正の例について説明する。コスト関数修正部１３０は、話題の対象位置がある程度決定でき、形態素に位置情報が付与されている場合、対象位置推定情報との距離が大きくなるほど生起コスト関数の値が大きくなるよう、位置を考慮しない従来のコスト関数の値を修正することが好ましい。例えば、生起コスト関数をＣｔ’（ｍ）＝Ｃｔ（ｍ）＋Ｄ（ｍ，ｐ）と定義する。
【００４５】
ここで、ｍは形態素、Ｃｔ’（ｍ）は位置情報を考慮した生起コスト関数、Ｃｔ（ｍ）は位置情報を考慮していない従来の生起コスト関数、Ｄ（ｍ，ｐ）は位置情報の影響を反映させる関数、ｐは話題の対象位置である。Ｄはｍとｐの位置的距離が長いほど、値が大きくなるように設定する。
【００４６】
また、形態素ｍに位置情報が付与されていない場合はＤ（ｍ，ｐ）が０になるようＤを定義すると、位置情報が無い場合は、従来の生起コスト関数と同じになる。Ｄの値の取る範囲を、Ｃｔの値の取る範囲と比較し小さくするよう設定しておくのが好ましい。これにより、位置情報による形態素の選択は補助的に行なうことにすることができる。
【００４７】
ここで話題の対象位置ｐは、ＧＰＳ等の測位情報を用いても良いし、例えば都道府県といった大まかな単位で、ユーザにより初期設定させても良い。その場合も位置的な重心を位置情報として用いても良いし、県庁所在地情報で代用してもよい。何らかの方法で緯度経度による座標を特定し、形態素に付与される位置との距離を算出できればよい。
【００４８】
位置情報が極端に高精度でなくてもよいのは、特にＤの値の取る範囲が、Ｃｔの値と比較し小さい設定であれば、位置情報に関しては補助的に考慮されるだけになるので、形態素解析処理全体に対し大きな破たんは生じないと考えられることによる。実際のＤの値の取る範囲については、形態素解析精度が最大となるよう実験的に決定することが好ましい。
【００４９】
次に、上記の処理を行なった例を説明する。ここで形態素「大阪」、「田町」(東京都港区)、「三田（みた）」(東京都港区)、「三田（さんだ）」(兵庫県三田市)に緯度・経度の情報が付与されているとする。また、簡単のため、位置情報を考慮しない場合の「三田（みた）」と「三田（さんだ）」の生起コストは同じであるとする。また、ある形態素と「三田（みた）」「三田（さんだ）」の間の連接コストもそれぞれ等しいとする（以下同様）。
【００５０】
以下の（１）〜（３）は、例文である。
（１）大阪駅から三田駅までは４０分です。
（２）田町駅まで１分です。三田駅までは２分です。
（３）田町三田口店まで３分です。
【００５１】
図３〜図６は、形態素解析処理時のグラフの例を示す図である。この中からコスト総和が最小となるパスを探し、その形態素列を最終的な形態素解析結果とする。例文（１）では現在の推定位置が兵庫県や大阪府であれば「三田(みた)」よりも「三田(さんだ)」を経由するパスのコストの方が小さくなるので「三田(さんだ)」が選ばれる。例文（２）や（３）は現在の推定位置が東京近郊であれば、「三田(みた)」が選ばれる。（１）を読ませる状況は関西で、（２）や（３）を読ませる状況は東京近郊が多いと考えられるため、地名を正確に選択できると考えられる。
【００５２】
（処理された形態素列を利用した現在位置推定の例）
次に、処理された形態素列を利用した現在位置推定の例を説明する。話題対象位置の推定は、所定の個数の過去の形態素解析結果である形態素列から、位置情報が付加されている形態素の位置情報の重み付き平均に基づき行なうことができる。
【００５３】
例えば、一つ前に処理をした文に含まれる位置情報から位置情報を推定することができる。重み係数は、より新しい処理結果であるほど大きくなるように設定する。現在位置の推定結果を更新していくことで、文の変化に対応できるとともに、初期推定位置設定が不適切な場合であっても処理を進めていくことで精度が改善される。更新は、一文ずつ行なっても良いし、それ以上それ以下としてもよい。
【００５４】
再度、上記と同様の仮定の下、例文（２）を用いて説明する。
（２）田町駅まで１分です。三田駅までは２分です。
【００５５】
図４〜図５に示す形態素解析処理時のグラフの例の中からコスト総和が最小となるパスを探し、その形態素列を最終的な形態素解析結果とする。例文（２）で、「三田」が現れる文の前の文に「田町」があることで、「三田」を処理する時点での推定位置は兵庫よりも東京に近い位置へ更新される。これにより、「三田（みた）」の生起コストの方が「三田(さんだ)」の生起コストより小さくなり、最終的に「三田（みた）」が選ばれる。
【００５６】
（形態素列内の情報を利用した現在位置推定の例）
次に、形態素列内の情報を利用した現在位置推定の例を説明する。対象位置推定は、探索処理時点においてコストが最小な形態素列の候補（仮説）から最近の所定の個数の、位置情報が付加されている形態素の位置情報の重み付き平均に基づき行なうことができる。重み係数は、より新しい処理結果であるほど大きく設定する。
【００５７】
このように探索処理内においても、話題対象位置を更新することで、位置に関する対象の変化により速く追従できる。また、通常の形態素解析処理においては、動的計画法などを用いて複数の形態素列を仮説として同時に調べ、その中から最も良いものが選択されるが、仮説毎に別々の話題対象推定位置を持つことになり、より精度よく処理することができる。
【００５８】
再度、上記と同様の仮定の下、例文（１）を用いて説明する。
（１）大阪駅から三田駅までは４０分です。
【００５９】
図３に示す形態素解析処理時のグラフの例の中からコスト総和が最小となるパスを探し、その形態素列を最終的な形態素解析結果とする。例文（１）で、それまでの推定位置が東京であったとしても、形態素候補「三田(みた)」、「三田(さんだ)」から見て前の単語である「大阪」により現在の推定位置は大阪付近となり、「三田(さんだ)」の生起コストが小さくなる。これにより、「三田（さんだ）」を通るパスが形態素解析結果となる。
【００６０】
なお、処理負担を考慮すれば、最近の所定の個数は小さくしておくことが好ましい。事前に作られたテーブルを用いて形態素解析処理を行なうため、できるだけ所定の個数を小さく作成し、処理を軽くする。
【００６１】
（連接コスト修正の例）
次に、連接コスト修正の例を説明する。話題の対象位置が急激に変化することは考えにくいことから、連接コスト関数の入力パラメータである形態素について、その位置情報が定義されているとき、形態素間の距離が大きくなるほど連接コスト関数の値が大きくなるよう、コスト関数修正部１３０でコスト関数を修正してもよい。例えば、連接コスト関数をＣｃ’（ｍ（ｉ−ｋ＋１），…，ｍ（ｉ））＝Ｃｃ（ｍ（ｉ−ｋ＋１），…，ｍ（ｉ））＋Ｄｃ（ｍ（ｉ−ｋ＋１），…，ｍ（ｉ））と定義する。
【００６２】
ここで、ｍ（ｉ−ｋ＋１），…，ｍ（ｉ）は隣接するｋ個の形態素列、Ｃｃ’（ｍ（ｉ−ｋ＋１），…，ｍ（ｉ））は位置情報を考慮した連接コスト関数、Ｃｃ（ｍ（ｉ−ｋ＋１），…，ｍ（ｉ））は位置情報を考慮していない従来の連接コスト関数、Ｄｃ（ｍ（ｉ−ｋ＋１），…，ｍ（ｉ））は形態素列の位置移動に考慮したコスト修正関数で、形態素列ｍ（ｉ−ｋ＋１），…，ｍ（ｉ）における移動距離が大きいほど値が大きくなるように定義する。
【００６３】
あるいは、例えば文内ではより近隣の地名が出現する頻度が大きくなる等、話題が対象とする形態素の位置情報の分布は小さくなると予想されることから、Ｄｃは形態素列の並びは考慮せずに、位置の分散が大きいほど、その値が大きくなるよう定義しても良い。
【００６４】
再度、上記の同様の仮定の下、例文（３）を用いて説明する。
（３）田町三田口店まで３分です。
【００６５】
図６に示す形態素解析処理時のグラフの例の中からコスト総和が最小となるパスを探し、その形態素列を最終的な形態素解析結果とする。例文（３）で、位置情報の分散は、田町と三田（みた）の方が、田町と三田（さんだ）より小さくなるので、「田町」と「三田（みた）」の連接コストの方が、「田町」と「三田（さんだ）」の連接コストより小さくなり、「三田（みた）」を通るパスが形態素解析結果となる。
【００６６】
また、例（１）でも連接コスト計算において３個前以前の形態素まで考慮するのであれば、「大阪」と「三田（さんだ）」、「大阪」と「三田（みた）」の位置的関係が考慮される。この例の場合は、その前が形態素『「大阪」「駅」』の形態素「から」と、「三田（さんだ）」「三田（みた）」の間では、「三田（さんだ）」の方の連接コストが小さくなり、「三田（さんだ）」を通るパスが形態素解析結果として選ばれるようになる。
【００６７】
なお、これらの方法は組み合わせても良い。また、本発明は地名の処理だけでなく、例えば地域によってアクセントが異なる語を異なる形態素と見なし、対象地域に応じたアクセント生成の手法として用いることもできる。また、特定地域で使われる方言等についても対応する形態素に位置情報を付与し、当該地区付近ではその形態素が選ばれやすく、それ以外では選ばれにくくすることで、形態素解析精度を改善できる。
【００６８】
高い形態素解析精度を得るには、既存の大量のテキストを解析して生起コスト・連接コストを定める必要がある。しかし、読み情報の付与されたテキストは少なく、同一表記だが読みが異なる個々の単語ごとに異なる生起コスト・連接コストを付与することは難しい。そのために従来は同一表記の単語は同じ単語と見なし、それに対して複数の読み情報を付与していたが、その場合、形態素解析処理とは別に読みの選択処理が必要となる。
【００６９】
これに対し本手法は形態素解析処理単独で従来の読みの選択までを行なえるので、従来必要だった読みに関する選択処理が不要となりシステムの規模を小さくできるので、携帯端末等の利用でも有利である。
【００７０】
位置情報が付与された形態素については、付与された生起コスト・連接コストの精度が低くても、位置情報により形態素解析処理がコントロールされる。これにより、例えば全ての地名に対し同じ生起コスト、連接コストを設定してもある程度の形態素解析精度が得られると考えられる。その結果、生起コストテーブル、連接コストテーブルのサイズを小さくできる。
【００７１】
その代わりに緯度・経度等の位置情報が必要となるが、特に地名の場合、その情報は他の用途にも有用な情報であり、例えばナビゲーションシステム等の他のアプリとデータベースを共用できる。これにより情報携帯端末システム全体の規模を抑えることができる。なお、上記では読みの違いが生じる地名に利用しているが、地域によって読みの違いが生じる人名（主に名字）についても同様に利用できる。
【符号の説明】
【００７２】
１００  形態素解析装置
１１０  形態素辞書（形態素情報蓄積部）
１２０  形態素解析処理部
１３０  コスト関数修正部
１４０  話題対象位置推定部
１５０  連接テーブル蓄積部
【図１】
0005795985.tif 000002
【図２】
0005795985.tif 000003
【図３】
0005795985.tif 000004
【図４】
0005795985.tif 000005
【図５】
0005795985.tif 000006
【図６】
0005795985.tif 000007