【文献】
松本 光弘 外4名,WWW上の文書に含まれるイベント情報からの地名の同定,第88回 知識ベースシステム研究会資料 (SIG−KBS−A903),日本,社団法人人工知能学会,2010年 2月22日,p.33-38
(58)【調査した分野】(Int.Cl.,DB名)
【背景技術】
【0002】
音声合成技術の代表的な利用方法にテキスト音声変換がある。これは例えば日本語の場合、漢字仮名交じり文といったテキストを入力、合成した音声波形を出力とする処理だが、その処理自体は、入力されたテキストからその読み方を解析する処理と、解析の結果得られた読み方に関する情報から、音声波形を合成する処理の大きく2つに分けることができる。
【0003】
この読み方に関する情報を表現するために用いる記号を、以下、音声合成用記号と呼ぶ。音声合成用記号には様々な形式があり得るが、ここでは、一連の音声を構成する音韻的情報と、主としてポーズや声の高さとして表現される韻律的情報を同時に表記したものを考える。そのような音声合成用記号の例が、非特許文献1に記載されている。
【0004】
テキスト音声変換による正確な読み上げは、テキストから音声合成用記号を正確に作成することで実現される。その処理は、日本語漢字仮名交じり文を形態素と呼ばれる言語表現上意味を持つ最小の単位に区切り、まず形態素ごとの読みを、予め準備した読み情報辞書を参照して付与した上で、形態素列等を参照し形態素の情報を適切に変形、必要に応じ、ポーズ等の韻律的境界を挿入し、それらを接続することで実現できる。
【0005】
ところで、文字表現上は同一であっても、その読みが異なる形態素がある。例えば地名について、「三田」は、東京都港区三田の地名の読みとしては「みた」であるのに対し、兵庫県三田市における地名の読みは「さんだ」である。特に読みの誤りは、例えば視覚による文字情報提示が困難なカーナビゲーションシステム等、合成音声のみによる情報提示が不可欠なシステムで、非常に重要な問題となる。そこで、特許文献1では、予め形態素「三田」に対する読み「みた」と「さんだ」のそれぞれに座標情報を付与しておき、GPS等により取得した現在のシステムの現在地から、距離的に近い方の読みを形態素「三田」の読み情報とする方法が提案されている。
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、特許文献1記載の装置では、ナビゲーションシステムなどに適用して装置の位置に応じて個々の地名の読み分けを行なうことはできても、文章の全体について位置情報を評価し、複数の単語から総合的に最適な文章の読み方を決定できない。
【0009】
本発明は、このような事情に鑑みてなされたものであり、位置情報に応じた形態素解析で形態素列を評価し、複数の形態素から総合的に最適な形態素列を決定できる形態素解析装置、形態素解析方法および形態素解析プログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
(1)上記の目的を達成するため、本発明の形態素解析装置は、テキストデータを形態素の列に分解する形態素解析装置であって、形態素およびこれに対応付けられた位置の情報を蓄積する形態素辞書と、入力されたテキストデータを形態素に分解し、前記形態素辞書を参照して前記分解された形態素に対応する位置の情報を取得し、位置情報を用いたコスト関数により、前記分解の結果得られた形態素列の候補から最適な形態素列を決定する形態素解析処理部と、を備えることを特徴としている。
【0011】
このように、本発明の形態素解析装置は、位置情報を用いたコスト関数を用いるため、位置情報に応じた形態素解析が可能になる。また、形態素列で評価するため、複数の形態素から総合的に最適な形態素列を決定でき、形態素解析の精度を上げることができる。
【0012】
(2)また、本発明の形態素解析装置は、前記形態素辞書が、読みで区別された形態素およびこれに対応付けられた位置の情報を蓄積し、前記形態素解析処理部は、前記分解の結果得られた形態素列の候補から最適な読みを付与された形態素列を決定することを特徴としている。これにより、たとえば、地名等の読み情報の生成を目的とした形態素解析で、より適切な形態素を選択できる。
【0013】
(3)また、本発明の形態素解析装置は、前記入力されたテキストデータに対して話題対象位置を推定する話題対象位置推定部を更に備え、前記形態素解析処理部は、2つの位置情報から決まる距離が大きくなるほど、形態素の生成可能性を低くする項を含むコスト関数を用いて、前記分解された形態素に対応する位置と前記話題対象位置との距離から前記分解された形態素の生成可能性を評価することを特徴としている。
【0014】
このように、本発明の形態素解析装置は、分解された形態素に対応する位置と推定された話題対象位置との距離から分解された形態素の生成可能性を評価する。この結果、位置の観点から話題にしている可能性の高い形態素を選ぶことができる。
【0015】
(4)また、本発明の形態素解析装置は、前記話題対象位置推定部が、過去に最適な形態素列として決定された形態素列から得られる位置情報に基づいて前記話題対象位置を推定することを特徴としている。
【0016】
これにより、GPS等の位置情報取得のための装置がなくても位置情報を考慮した形態素解析が可能となる。また、現在地とは無関係に、位置を考慮した形態素解析を行なうことができる。さらに現在位置の推定結果を更新していくことで、文の変化に対応できる。そして、初期推定位置設定が不適切な場合であっても処理を進めていくことで形態素解析の精度を向上できる。
【0017】
(5)また、本発明の形態素解析装置は、前記話題対象位置推定部が、現在の解析対象である形態素に至るまでの形態素列の候補のうちコストが最小な候補において、前記現在の解析対象である形態素から直近複数個の形態素から得られた位置情報に基づいて話題対象位置を推定することを特徴としている。
【0018】
このように、探索処理内においても話題対象位置を更新することで、位置に関する対象の変化に素早く追従できる。また、動的計画法などを用いて複数の形態素列を仮説として同時に調べ、その中から最も良いものを選択することもできる。仮説毎に別々の話題対象推定位置を持つことになり、高い精度で処理することができる。
【0019】
(6)また、本発明の形態素解析装置は、前記形態素解析処理部が、2つの位置情報から決まる距離が大きくなるほど、形態素の連接可能性を低くする項を含む関数を用いて前記分解された形態素間の連接可能性を評価することを特徴としている。これにより、形態素間の連接可能性も位置情報を参照して評価し、最適な形態素列を決定することができる。
【0020】
(7)また、本発明の形態素解析方法は、テキストデータを形態素の列に分解する形態素解析方法であって、入力されたテキストデータを形態素に分解するステップと、蓄積された形態素およびこれに対応付けられた位置の情報から、前記分解された形態素に対応する位置の情報を取得するステップと、位置情報を用いたコスト関数により、前記分解の結果得られた形態素列の候補から最適な形態素列を決定するステップと、を含むことを特徴としている。これにより、位置情報に応じた形態素解析が可能になり、複数の形態素から総合的に最適な形態素列を決定でき、形態素解析の精度を上げることができる。
【0021】
(8)また、本発明の形態素解析プログラムは、テキストデータを形態素の列に分解する形態素解析プログラムであって、入力されたテキストデータを形態素に分解する処理と、蓄積された形態素およびこれに対応付けられた位置の情報から、前記分解された形態素に対応する位置の情報を取得する処理と、位置情報を用いたコスト関数により、前記分解の結果得られた形態素列の候補から最適な形態素列を決定する処理と、をコンピュータに実行させることを特徴としている。これにより、位置情報に応じた形態素解析が可能になり、複数の形態素から総合的に最適な形態素列を決定でき、形態素解析の精度を上げることができる。
【発明の効果】
【0022】
本発明によれば、位置情報に応じた形態素解析で形態素列を評価し、複数の形態素から総合的に最適な形態素列を決定できる。
【発明を実施するための形態】
【0024】
次に、本発明の実施の形態について、図面を参照しながら説明する。以下、読みの異なる形態素は、異なる形態素であると考える。実際の形態素辞書構成が、同じ形態素に複数の読みが存在する、という形で設計されている場合も、コスト最小の形態素列を探す際の処理においては、それぞれ別の形態素であるものとして取り扱う。
【0025】
(形態素解析の前提)
形態素解析処理は、文程度の単位のテキストを、形態素と呼ばれる言語表現上意味を持つ最小の単位に区切る処理である。一般的には、文の構成要素抽出等で用いられ、形態素は、構文解析といった処理を行なう際の最小処理単位として用いられる。特に、固有名詞に関しては、読みをあまり考慮しない処理に用いる場合、形態素を構成する文字列が同じであれば、それらの意味が全く違う場合であっても、それらの形態素を区別せず同じ形態素として扱うことも多い。これは音声合成のための読み情報生成といった、形態素の読み方に関する情報が必要な処理では問題となる。
【0026】
特に、システムの構成上の問題から、複数の異なる読み方のある1つの形態素として扱うことは多く、そのようなシステムでは、複数通りの読み方から最も妥当な読み方を決定する処理が別に必要となる。これに対し、表記が同じでも少なくとも読みが異なる形態素は互いに異なる形態素と考えることで、読み方の決定処理を形態素解析処理に含めることができる。以下、テキスト音声変換(Text-To-Speech)処理で行なわれる形態素解析処理を、読みを考慮した形態素解析処理の例として挙げる。また、ここで形態素は、言語学的な厳密な定義に従ったものに限らない。例えば、形態素の並びをより適切に処理するために、複数の形態素で構成される単語等も1つの形態素と見なして形態素辞書に登録することがある。以下において、形態素とは、その用途の観点から処理上の最小単位となるべく適当に設定された文字列をいう。
【0027】
また、形態素解析の方法として、以下では、最小コスト法に基づく方法を説明する。最小コスト法による形態素解析では、通常、各形態素の出現頻度を反映させた生起コスト関数と、連続する形態素の繋がりやすさを表す連接コスト関数を予め定義しておく。そして、形態素辞書に登録された形態素から、入力テキストに一致し、かつ文全体のコストが最小となるような形態素列を探すことで、適切な形態素列を得る。通常、生起コスト関数は出現頻度が高い形態素ほど、連接コスト関数は繋がりやすい形態素列ほど、その値が小さくなるよう定義される。
【0028】
すなわち形態素列をM=(m(1),…,m(n))、生起コスト関数をCt(m)、連接コスト関数をCc(m(i−k+1),…,m(i))とするときargmin (Σ Ct +Σ Cc)を求めることで形態素解析処理が行なわれる。ただし、ここで連接コスト関数はk個の形態素の並びで決定されるものとする。
【0029】
この処理は動的計画法により効率よく行なうことができる。この際、生起コストに関する情報は形態素辞書の内容として保持することができる。一方、連接コストについては連接表と呼ばれるテーブルを予め作成しておき、その表の値を使うことで求めることができる。
【0030】
ただし、全ての形態素列の組み合わせの表を作ることは難しいので、例えば形態素の品詞型だけに注目した表を用いることができる。なお、これらの関数は算出される値が大きいほど好ましい形に定義される場合もある。その場合は、文全体から算出される値が最も大きくなる形態素系列を探すことになる。
【0031】
(形態素解析装置の構成)
図1は、形態素解析装置を示すブロック図である。形態素解析装置100は、テキストデータを形態素の列に分解する装置である。
図1に示すように、形態素解析装置100は、形態素辞書110、形態素解析処理部120、話題対象位置推定部140、コスト関数修正部130および連接テーブル蓄積部150を備えている。
【0032】
形態素辞書110(形態素情報蓄積部)は、形態素およびこれに対応付けられた位置の情報を蓄積する。形態素辞書110は、読みで区別された形態素およびこれに対応付けられた位置の情報を蓄積することが好ましい。形態素辞書110に含まれる一部の形態素には、予め、緯度・経度といった位置情報が付与されている。これにより、たとえば、地名等の読み情報の生成を目的とした形態素解析で、より適切な形態素を選択できる。
【0033】
形態素解析処理部120は、形態素解析処理、その位置情報を考慮した生起コスト関数、連接コスト関数定義を用い、位置情報が考慮された形態素解析処理を行なう。例えば、形態素解析処理部120は、入力されたテキストデータを形態素に分解し、形態素辞書110を参照して分解された形態素に対応する位置の情報を取得し、位置情報を用いたコスト関数により、分解の結果得られた形態素列の候補から最適な形態素列を決定する。コスト関数は、生起コスト関数および連接コスト関数を含む。
【0034】
コスト関数修正部130は、生起コスト関数として2つの位置情報から決まる距離が大きくなるほど、形態素の生成可能性を低くする項により生起コスト関数を修正する。これを受けて、形態素解析処理部120は、分解された形態素に対応する位置と話題対象位置との距離から分解された形態素の生成可能性を評価する。この結果、位置の観点から話題にしている可能性の高い形態素を選ぶことができる。コスト関数の一例は後述する。
【0035】
上記のような構成をとることで、位置情報に応じた形態素解析が可能になる。また、形態素列で評価するため、複数の形態素から総合的に最適な形態素列を決定できる。なお、読みで区別された形態素を対象とするときは、形態素列の候補から最適な読みが付与された形態素列を決定することができる。
【0036】
話題対象位置推定部140は、入力されたテキストデータに対して話題対象位置を推定する。推定には、テキストデータ、処理の履歴、GPS情報、基地局により把握される位置情報等を用いることができる。
【0037】
例えば、話題対象位置推定部140は、これまでに最適な形態素列として決定された形態素列から得られる位置情報に基づいて話題対象位置を推定する。これにより、GPS等の位置情報取得のための装置がなくても位置情報を考慮した形態素解析が可能となる。また、現在地とは無関係に、話題対象の位置を考慮した形態素解析を行なうことができる。
【0038】
さらに現在位置の推定結果を更新していくことで、解析処理の実行に伴う文の変化に対応できる。そして、初期に推定される位置の設定が不適切な場合であっても処理を進めていくことで形態素解析の精度を向上できる。なお、形態素解析装置100が携帯電話機に搭載される場合には、基地局との通信で位置情報を取得でき、これを話題対象位置として利用できる。この場合には、GPS情報に比べてGPS機能をOFFにしていても位置情報を取得でき、電池の消費を防止できる。
【0039】
話題対象位置推定部140は、現在の解析対象である形態素に至るまでの形態素列の候補のうちコストが最小な候補において、現在の解析対象である形態素から直近複数個の形態素から得られた位置情報に基づいて話題対象位置を推定してもよい。このように、探索処理内においても話題対象位置を更新することで、位置に関する対象の変化に素早く追従できる。また、動的計画法などを用いて複数の形態素列を仮説として同時に調べ、その中から最も良いものを選択することもできる。仮説毎に別々の話題対象推定位置を持つことになり、高い精度で処理することができる。なお、推定の一例は後述する。
【0040】
連接テーブル蓄積部150は、形態素間で決まる連接コスト関数に用いられるパラメータをテーブルとして蓄積する。例えば、連接コスト関数として2つの位置情報から決まる距離が大きくなるほど、形態素の連接可能性を低くするようにパラメータを蓄積することが好ましい。これにより、形態素間の連接可能性も位置情報を参照して評価し、最適な形態素列を決定することができる。
【0041】
なお、形態素解析装置100を利用して、入力されたテキストデータを適切な読み方で読む音声合成装置を構成してもよい。形態素解析装置100は、特に携帯電話機等の携帯端末に利用されることが好ましい。携帯電話機は、固定の装置と異なり位置が変動するため、位置情報に応じた処理が重要になる。形態素解析装置100は、カーナビゲーション装置等に利用し、地名を読ませることもできるが、文章の形態素解析において有効であることから携帯電話機に保存されたメールを読ませる場面等で使いやすい。なお、形態素解析装置100は、上記のように端末装置に用いてもよいし、端末からの要求に応じてサーバとして形態素解析の処理を行ない、結果を返してもよい。
【0042】
(形態素解析装置の動作)
図2は、形態素解析装置の動作を示すフローチャートである。まず、入力されたテキストデータを形態素に分解する(ステップS1)。そして、現在の話題対象位置を推定する(ステップS2)。次に、形態素辞書110を参照し、蓄積された形態素およびこれに対応付けられた位置の情報から、分解された形態素に対応する位置の情報を取得する(ステップS3)位置情報を取得できたら、位置情報を用いたコスト関数により、分解の結果得られた形態素列の候補から最適な形態素列を決定する(ステップS4)。
【0043】
最後に、形態素解析を終了するか否かを判定し(ステップS5)、終了の場合はそのまま終了し、終了しない場合にはステップS1に戻る。これにより、位置情報に応じた形態素解析が可能になり、複数の形態素から総合的に最適な形態素列を決定できる。以上のような動作は、形態素解析装置100のコンピュータによりプログラムを実行することにより行なわれる。
【0044】
(生起コスト修正の例)
次に、生起コスト修正の例について説明する。コスト関数修正部130は、話題の対象位置がある程度決定でき、形態素に位置情報が付与されている場合、対象位置推定情報との距離が大きくなるほど生起コスト関数の値が大きくなるよう、位置を考慮しない従来のコスト関数の値を修正することが好ましい。例えば、生起コスト関数をCt’(m)=Ct(m)+D(m,p)と定義する。
【0045】
ここで、mは形態素、Ct’(m)は位置情報を考慮した生起コスト関数、Ct(m)は位置情報を考慮していない従来の生起コスト関数、D(m,p)は位置情報の影響を反映させる関数、pは話題の対象位置である。Dはmとpの位置的距離が長いほど、値が大きくなるように設定する。
【0046】
また、形態素mに位置情報が付与されていない場合はD(m,p)が0になるようDを定義すると、位置情報が無い場合は、従来の生起コスト関数と同じになる。Dの値の取る範囲を、Ctの値の取る範囲と比較し小さくするよう設定しておくのが好ましい。これにより、位置情報による形態素の選択は補助的に行なうことにすることができる。
【0047】
ここで話題の対象位置pは、GPS等の測位情報を用いても良いし、例えば都道府県といった大まかな単位で、ユーザにより初期設定させても良い。その場合も位置的な重心を位置情報として用いても良いし、県庁所在地情報で代用してもよい。何らかの方法で緯度経度による座標を特定し、形態素に付与される位置との距離を算出できればよい。
【0048】
位置情報が極端に高精度でなくてもよいのは、特にDの値の取る範囲が、Ctの値と比較し小さい設定であれば、位置情報に関しては補助的に考慮されるだけになるので、形態素解析処理全体に対し大きな破たんは生じないと考えられることによる。実際のDの値の取る範囲については、形態素解析精度が最大となるよう実験的に決定することが好ましい。
【0049】
次に、上記の処理を行なった例を説明する。ここで形態素「大阪」、「田町」(東京都港区)、「三田(みた)」(東京都港区)、「三田(さんだ)」(兵庫県三田市)に緯度・経度の情報が付与されているとする。また、簡単のため、位置情報を考慮しない場合の「三田(みた)」と「三田(さんだ)」の生起コストは同じであるとする。また、ある形態素と「三田(みた)」「三田(さんだ)」の間の連接コストもそれぞれ等しいとする(以下同様)。
【0050】
以下の(1)〜(3)は、例文である。
(1)大阪駅から三田駅までは40分です。
(2)田町駅まで1分です。三田駅までは2分です。
(3)田町三田口店まで3分です。
【0051】
図3〜
図6は、形態素解析処理時のグラフの例を示す図である。この中からコスト総和が最小となるパスを探し、その形態素列を最終的な形態素解析結果とする。例文(1)では現在の推定位置が兵庫県や大阪府であれば「三田(みた)」よりも「三田(さんだ)」を経由するパスのコストの方が小さくなるので「三田(さんだ)」が選ばれる。例文(2)や(3)は現在の推定位置が東京近郊であれば、「三田(みた)」が選ばれる。(1)を読ませる状況は関西で、(2)や(3)を読ませる状況は東京近郊が多いと考えられるため、地名を正確に選択できると考えられる。
【0052】
(処理された形態素列を利用した現在位置推定の例)
次に、処理された形態素列を利用した現在位置推定の例を説明する。話題対象位置の推定は、所定の個数の過去の形態素解析結果である形態素列から、位置情報が付加されている形態素の位置情報の重み付き平均に基づき行なうことができる。
【0053】
例えば、一つ前に処理をした文に含まれる位置情報から位置情報を推定することができる。重み係数は、より新しい処理結果であるほど大きくなるように設定する。現在位置の推定結果を更新していくことで、文の変化に対応できるとともに、初期推定位置設定が不適切な場合であっても処理を進めていくことで精度が改善される。更新は、一文ずつ行なっても良いし、それ以上それ以下としてもよい。
【0054】
再度、上記と同様の仮定の下、例文(2)を用いて説明する。
(2)田町駅まで1分です。三田駅までは2分です。
【0055】
図4〜
図5に示す形態素解析処理時のグラフの例の中からコスト総和が最小となるパスを探し、その形態素列を最終的な形態素解析結果とする。例文(2)で、「三田」が現れる文の前の文に「田町」があることで、「三田」を処理する時点での推定位置は兵庫よりも東京に近い位置へ更新される。これにより、「三田(みた)」の生起コストの方が「三田(さんだ)」の生起コストより小さくなり、最終的に「三田(みた)」が選ばれる。
【0056】
(形態素列内の情報を利用した現在位置推定の例)
次に、形態素列内の情報を利用した現在位置推定の例を説明する。対象位置推定は、探索処理時点においてコストが最小な形態素列の候補(仮説)から最近の所定の個数の、位置情報が付加されている形態素の位置情報の重み付き平均に基づき行なうことができる。重み係数は、より新しい処理結果であるほど大きく設定する。
【0057】
このように探索処理内においても、話題対象位置を更新することで、位置に関する対象の変化により速く追従できる。また、通常の形態素解析処理においては、動的計画法などを用いて複数の形態素列を仮説として同時に調べ、その中から最も良いものが選択されるが、仮説毎に別々の話題対象推定位置を持つことになり、より精度よく処理することができる。
【0058】
再度、上記と同様の仮定の下、例文(1)を用いて説明する。
(1)大阪駅から三田駅までは40分です。
【0059】
図3に示す形態素解析処理時のグラフの例の中からコスト総和が最小となるパスを探し、その形態素列を最終的な形態素解析結果とする。例文(1)で、それまでの推定位置が東京であったとしても、形態素候補「三田(みた)」、「三田(さんだ)」から見て前の単語である「大阪」により現在の推定位置は大阪付近となり、「三田(さんだ)」の生起コストが小さくなる。これにより、「三田(さんだ)」を通るパスが形態素解析結果となる。
【0060】
なお、処理負担を考慮すれば、最近の所定の個数は小さくしておくことが好ましい。事前に作られたテーブルを用いて形態素解析処理を行なうため、できるだけ所定の個数を小さく作成し、処理を軽くする。
【0061】
(連接コスト修正の例)
次に、連接コスト修正の例を説明する。話題の対象位置が急激に変化することは考えにくいことから、連接コスト関数の入力パラメータである形態素について、その位置情報が定義されているとき、形態素間の距離が大きくなるほど連接コスト関数の値が大きくなるよう、コスト関数修正部130でコスト関数を修正してもよい。例えば、連接コスト関数をCc’(m(i−k+1),…,m(i))=Cc(m(i−k+1),…,m(i))+Dc(m(i−k+1),…,m(i))と定義する。
【0062】
ここで、m(i−k+1),…,m(i)は隣接するk個の形態素列、Cc’(m(i−k+1),…,m(i))は位置情報を考慮した連接コスト関数、Cc(m(i−k+1),…,m(i))は位置情報を考慮していない従来の連接コスト関数、Dc(m(i−k+1),…,m(i))は形態素列の位置移動に考慮したコスト修正関数で、形態素列m(i−k+1),…,m(i)における移動距離が大きいほど値が大きくなるように定義する。
【0063】
あるいは、例えば文内ではより近隣の地名が出現する頻度が大きくなる等、話題が対象とする形態素の位置情報の分布は小さくなると予想されることから、Dcは形態素列の並びは考慮せずに、位置の分散が大きいほど、その値が大きくなるよう定義しても良い。
【0064】
再度、上記の同様の仮定の下、例文(3)を用いて説明する。
(3)田町三田口店まで3分です。
【0065】
図6に示す形態素解析処理時のグラフの例の中からコスト総和が最小となるパスを探し、その形態素列を最終的な形態素解析結果とする。例文(3)で、位置情報の分散は、田町と三田(みた)の方が、田町と三田(さんだ)より小さくなるので、「田町」と「三田(みた)」の連接コストの方が、「田町」と「三田(さんだ)」の連接コストより小さくなり、「三田(みた)」を通るパスが形態素解析結果となる。
【0066】
また、例(1)でも連接コスト計算において3個前以前の形態素まで考慮するのであれば、「大阪」と「三田(さんだ)」、「大阪」と「三田(みた)」の位置的関係が考慮される。この例の場合は、その前が形態素『「大阪」「駅」』の形態素「から」と、「三田(さんだ)」「三田(みた)」の間では、「三田(さんだ)」の方の連接コストが小さくなり、「三田(さんだ)」を通るパスが形態素解析結果として選ばれるようになる。
【0067】
なお、これらの方法は組み合わせても良い。また、本発明は地名の処理だけでなく、例えば地域によってアクセントが異なる語を異なる形態素と見なし、対象地域に応じたアクセント生成の手法として用いることもできる。また、特定地域で使われる方言等についても対応する形態素に位置情報を付与し、当該地区付近ではその形態素が選ばれやすく、それ以外では選ばれにくくすることで、形態素解析精度を改善できる。
【0068】
高い形態素解析精度を得るには、既存の大量のテキストを解析して生起コスト・連接コストを定める必要がある。しかし、読み情報の付与されたテキストは少なく、同一表記だが読みが異なる個々の単語ごとに異なる生起コスト・連接コストを付与することは難しい。そのために従来は同一表記の単語は同じ単語と見なし、それに対して複数の読み情報を付与していたが、その場合、形態素解析処理とは別に読みの選択処理が必要となる。
【0069】
これに対し本手法は形態素解析処理単独で従来の読みの選択までを行なえるので、従来必要だった読みに関する選択処理が不要となりシステムの規模を小さくできるので、携帯端末等の利用でも有利である。
【0070】
位置情報が付与された形態素については、付与された生起コスト・連接コストの精度が低くても、位置情報により形態素解析処理がコントロールされる。これにより、例えば全ての地名に対し同じ生起コスト、連接コストを設定してもある程度の形態素解析精度が得られると考えられる。その結果、生起コストテーブル、連接コストテーブルのサイズを小さくできる。
【0071】
その代わりに緯度・経度等の位置情報が必要となるが、特に地名の場合、その情報は他の用途にも有用な情報であり、例えばナビゲーションシステム等の他のアプリとデータベースを共用できる。これにより情報携帯端末システム全体の規模を抑えることができる。なお、上記では読みの違いが生じる地名に利用しているが、地域によって読みの違いが生じる人名(主に名字)についても同様に利用できる。