(57)【特許請求の範囲】
【請求項１】
地名を表す単語と地理的な位置情報とが関連付けて構造化された地図情報を記憶する地図情報記憶部と、
入力された単語の予測確率を出力する言語モデルを記憶する言語モデル記憶部と、
上記地図情報を用いて、入力された二つの単語が表す地名間の地理的な距離を出力する地図情報言語モデルを生成する地図情報言語モデル生成部と、
上記言語モデルと上記地図情報言語モデルとを統合した統合言語モデルを生成する言語モデル統合部と、
を含み、
上記言語モデルは、直前のN-1単語wi-N+1,…,wi-1から現在の単語wiの予測確率P(wi|wi-N+1,…,wi-1)を求めるN-gram言語モデルであり、
上記地図情報言語モデルは、地名を表す単語waと地名を表す単語wbとの地理的な距離d(wa, wb)を求める言語モデルであり、
上記統合言語モデルは、hiをM-1個の単語wi-M+1,…,wi-1を含むコンテキスト制約とし、d(wi|hi)を現在の単語wiとコンテキスト制約hiに含まれる各単語wi-M+1,…,wi-1との地理的な距離の総和とし、αをあらかじめ定めた統合重みとし、次式で表されるものである、
【数３】
0006443843.tif 000004
言語モデル作成装置。
【請求項２】
地図情報記憶部に、地名を表す単語と地理的な位置情報とが関連付けて構造化された地図情報が記憶されており、
言語モデル記憶部に、入力された単語の予測確率を出力する言語モデルが記憶されており、
地図情報言語モデル生成部が、上記地図情報を用いて、入力された二つの単語が表す地名間の地理的な距離を出力する地図情報言語モデルを生成する地図情報言語モデル生成ステップと、
言語モデル統合部が、上記言語モデルと上記地図情報言語モデルとを統合した統合言語モデルを生成する言語モデル統合ステップと、
を含み、
上記言語モデルは、直前のN-1単語wi-N+1,…,wi-1から現在の単語wiの予測確率P(wi|wi-N+1,…,wi-1)を求めるN-gram言語モデルであり、
上記地図情報言語モデルは、地名を表す単語waと地名を表す単語wbとの地理的な距離d(wa, wb)を求める言語モデルであり、
上記統合言語モデルは、hiをM-1個の単語wi-M+1,…,wi-1を含むコンテキスト制約とし、d(wi|hi)を現在の単語wiとコンテキスト制約hiに含まれる各単語wi-M+1,…,wi-1との地理的な距離の総和とし、αをあらかじめ定めた統合重みとし、次式で表されるものである、
【数４】
0006443843.tif 000005
言語モデル作成方法。
【請求項３】
請求項１に記載の言語モデル作成装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、自然言語処理などで用いられる言語モデルを作成する技術に関する。
【背景技術】
【０００２】
例えば、音声認識や機械翻訳では、言語的な予測のために言語モデルが必要である。言語モデルは、言語的なつながりの良さを計測するために利用されるものであり、その性能が音声認識や機械翻訳の性能を左右する。これまで、様々な種類の言語モデルが提案されている。
【０００３】
言語モデルは基本的にテキストから言語的なつながりを獲得する。テキストから言語的なつながりを獲得する手段は、大きく２つある。
【０００４】
１つめは単語連鎖情報から言語的なつながりを獲得する枠組みである。代表的な言語モデルであるN-gram言語モデルであれば、単語N個組の頻度がテキスト上に何回出現するかを調べて、直前のN-1単語wi-N+1,…,wi-1から現在の単語wiの予測確率P(wi|wi-N+1,…,wi-1)を構成することで言語的なつながりを定義する。N-gram言語モデルの学習方法は公知の技術であり、例えば、非特許文献１などに記載されている。
【０００５】
２つめは単語共起情報から言語的なつながりを獲得する枠組みである。例えばトリガーモデルでは、ある単語がドキュメントという単位の中でどんな単語と共起するかを調べ、ある単語waが出たときにある単語wbが出現する確率P(wb|wa)をモデル化する。単語共起情報に関するモデルは、単語連鎖とは異なり、長距離の情報を反映できる。
【０００６】
高精度な言語モデルを構築するためには、これらの枠組みを代表として、テキストから得られる様々な情報を組み合わせて、短距離の単語連鎖情報と長距離の単語共起情報とを利用して言語的なつながりの良さを計測する。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】北研二著、「言語と計算(4) 確率的言語モデル」、東京大学出版会、1999年11月、pp. 57-62
【発明の概要】
【発明が解決しようとする課題】
【０００８】
既存の単語共起情報を獲得する枠組みの課題は、共起情報を獲得するためには大規模なドキュメント集合を必要とする点である。そして、ドキュメントは対象とするタスク（例えば、コンタクトセンタ音声認識用、特許翻訳用など）に適合したドキュメントである必要がある。タスクに適合したドキュメントは大量に集めることができない場合が多く、獲得できる共起情報が少なくなってしまうと、言語制約のロバストネスに欠けた言語モデルになってしまう。この問題は、一般的に言語モデルにおけるデータスパースネス問題と呼ばれる。
【０００９】
この発明の目的は、このような点に鑑みて、言語共起情報を高精度化することができる言語モデル作成技術を提供することである。
【課題を解決するための手段】
【００１０】
上記の課題を解決するために、この発明の言語モデル作成装置は、地名を表す単語と地理的な位置情報とが関連付けて構造化された地図情報を記憶する地図情報記憶部と、入力された単語の予測確率を出力する言語モデルを記憶する言語モデル記憶部と、地図情報を用いて、入力された二つの単語が表す地名間の地理的な距離を出力する地図情報言語モデルを生成する地図情報言語モデル生成部と、言語モデルと地図情報言語モデルとを統合した統合言語モデルを生成する言語モデル統合部と、を含む。
【発明の効果】
【００１１】
この発明の言語モデル作成技術によれば、地名を表す単語に対して地理的な距離を考慮して予測確率を算出するため、言語共起情報を高精度化することができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、言語モデル作成装置の機能構成を例示する図である。
【図２】図２は、言語モデル作成方法の処理手続きを例示する図である。
【発明を実施するための形態】
【００１３】
この発明は、地図上の地名間の距離情報を利用することで、言語的な予測を促す言語モデルを構築するための技術である。上述した共起情報をモデル化する際のデータスパースネスの課題に対して、例えばカーナビ等の検索システムや地域情報検索システムなど、地名が重要となるタスクに対象を絞り解決手段を提示することができる。具体的には、地図という構造化された情報を言語モデルの言語予測に導入する。地図情報からは地名間の距離情報を取得することができる。そして、これらの情報が日本全国、そして世界中について構造化されたデータがすでに整っている。例えばカーナビ内部に含まれるシステムでは、これらの地図情報が構造化されており、簡単に取り出すことができる。
【００１４】
地名間の距離情報が言語モデルにどのように役立つかを説明する。距離が近い地名は同じ会話の中で比較的出現し易いといった制約を与えることができると考えられる。例えば、いま“新宿”に関連することが話題にあがっていた場合、例えば“渋谷”や“池袋”といった距離的に近い地名を表す単語が話題に上がりやすく、例えば“稚内”や“那覇”といった距離的に遠い地名を表す単語が話題に上がりにくい。このような言語制約を様々な地名間について導入することで、言語モデルのデータスパースネスを解決できると考えられる。
【００１５】
以下、この発明の実施の形態について詳細に説明する。なお、図面中において同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
【００１６】
実施形態の言語モデル作成装置は、図１に示すように、地図情報記憶部１、言語モデル記憶部２、地図情報言語モデル生成部３、地図情報言語モデル記憶部４、言語モデル統合部５、および統合言語モデル記憶部６を含む。この言語モデル作成装置が後述する各ステップの処理を行うことにより実施形態の言語モデル作成方法が実現される。
【００１７】
言語モデル作成装置は、例えば、中央演算処理装置（CPU: Central Processing Unit）、主記憶装置（RAM: Random Access Memory）などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。言語モデル作成装置は、例えば、中央演算処理装置の制御のもとで各処理を実行する。言語モデル作成装置に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて読み出されて他の処理に利用される。また、言語モデル作成装置の各処理部の少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。言語モデル作成装置の各記憶部は、例えば、RAM（Random Access Memory）などの主記憶装置、ハードディスクや光ディスクもしくはフラッシュメモリ（Flash Memory）のような半導体メモリ素子により構成される補助記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。
【００１８】
地図情報記憶部１には、構造化された地図情報が記憶されている。構造化された地図情報は各地名などが電子化されたデータであり、地名間の距離関係や地名の住所を取得可能なデータである。具体的には、地名を表す単語とその地名の地理的な位置情報とが関連付けられた情報であり、指定された地名の座標もしくは住所を得ることが可能となっている。例えば、カーナビゲーションシステムでは、この条件を満たす構造化された地図情報が用いられている。その他の例では、Web上で利用可能な“Google（登録商標）マップ”のような地図情報は、構造化された地図情報に該当する。
【００１９】
言語モデル記憶部２には、通常の言語モデルが記憶されている。通常の言語モデルは、従来から用いられてきた言語モデルであり、入力された単語の予測確率を出力するモデルである。この実施形態では、N-gram言語モデルを例として説明する。
【００２０】
図２を参照して、実施形態の言語モデル作成方法の処理手続きを説明する。
【００２１】
ステップＳ１において、地図情報言語モデル生成部３は、地図情報記憶部１に記憶された地図情報を用いて、二つの地名を表す単語を入力とし、その地名間の地理的な距離を出力する地図情報言語モデルを生成する。生成した地図情報言語モデルは、地図情報言語モデル記憶部４へ記憶される。
【００２２】
以下、地図情報言語モデルの作成方法を詳細に説明する。最初に、構造化された地図情報において位置情報を獲得可能なすべての場所の地名を列挙する。これは例えば、“東京タワー”、“フジテレビ”などの地名である。なお、あらかじめ音声認識や機械翻訳のタスクを絞ることができる場合は、“東京都の範囲内”や“新潟市の範囲内”など、地名を取得する地理的な範囲を限定してもよい。ここでは、列挙した地名がM個であったものとする。次に、列挙したM個の地名に対して、すべての二つ組について、構造化された地図情報から距離を計算する。具体的には、選択した二地点の座標情報に基づいて、その二地点間の距離を計算する。二地点の緯度および経度から距離を算出する方法は公知であるため、ここでは詳細な説明は省略する。すべての二地点間の距離を算出すると、最終的にM*(M-1)*1/2個の距離が得られることとなる。この距離に関する情報が地図情報言語モデルとなる。つまり、ある地点の名前waとある地点の名前wbとの地理的近さd(wa, wb)が地図情報言語モデルである。
【００２３】
ステップＳ２において、言語モデル統合部５は、言語モデル記憶部２に記憶された通常の言語モデルと、地図情報言語モデル記憶部４に記憶された地図情報言語モデルとを統合して、統合言語モデルを生成する。生成した統合言語モデルは、統合言語モデル記憶部６に記憶される。
【００２４】
以下、統合言語モデルの作成方法を詳細に説明する。N-gram言語モデルでは、直前のN-1単語wi-N+1,…,wi-1から現在の単語wiの予測確率P(wi|wi-N+1,…,wi-1)を構成している。これに、地図情報言語モデルを統合するためには、コンテキスト制約が必要となる。コンテキスト制約とは、N-gram言語モデルであれば、直前のN-1単語となる。地図情報言語モデルのコンテキスト制約は様々に与えることができる。ここでは簡単のために、wiのコンテキストをhiとする。例えば地図情報言語モデルのコンテキスト制約を直前の20単語とすると、hiはwi-21,…,wi-1と与えられる。このときの地図情報言語モデルから得られるスコアをd(wi|hi)とおくと、統合言語モデルS(wi|hi)は次式の形で与えられる。
【００２５】
【数１】
0006443843.tif 000002
【００２６】
ここで、αは統合重みである。統合重みは人手で与える。統合重みは音声認識や機械翻訳の性能が高くなるように設定すればよいが、例えば0.0001などと設定できる。
【００２７】
実際のd(wi|hi)の求め方について説明する。前述の例と同様に、地図情報言語モデルのコンテキスト制約を直前の20単語とする。このとき、d(wi|hi)は次式で与えられる。
【００２８】
【数２】
0006443843.tif 000003
【００２９】
つまり、コンテキスト制約中のすべての単語に対して地図情報言語モデルでモデル化した値を求め、その値を総和する。なお、wiが地図情報言語モデルの中のM単語に含まれない場合は、d(wi│hi)は0になる。また、wkが地図情報言語モデルの中のM単語に含まれない場合は、d(wi, wk)は無限大になる。このように構成することで、地図情報言語モデルの中のM単語については、頑健なスコアを付与できる。その結果、この言語モデルを音声認識や機械翻訳で用いることにより性能向上が期待できる。
【００３０】
上述のように構成することにより、この発明の言語モデル作成技術は、地図上の地名間の距離情報を利用した言語制約を導入した言語モデルを構築することができる。これにより、単語共起に関する言語制約のロバストネスを高めることができ、データスパースネスの問題を回避できる。その結果として、この言語モデルをカーナビ等の検索システムや地域情報検索システムなどの地名が重要となるタスクにおいて利用することで、音声認識においてはこれまでよりも高い認識性能が得られ、機械翻訳においてはこれまでよりも高い翻訳性能が得られる。
【００３１】
この発明は上述の実施形態に限定されるものではなく、この発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。上記実施形態において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
【００３２】
［プログラム、記録媒体］
上記実施形態で説明した各装置における各種の処理機能をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
【００３３】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【００３４】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００３５】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００３６】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【符号の説明】
【００３７】
１  地図情報記憶部
２  言語モデル記憶部
３  地図情報言語モデル生成部
４  地図情報言語モデル記憶部
５  言語モデル統合部
６  統合言語モデル記憶部
【図１】
0006443843.tif 000006
【図２】
0006443843.tif 000007