(57)【要約】【課題】ユーザが誤入力した地名に対して正解地名を適正に案内可能な情報処理装置、情報処理方法、及び情報処理プログラムを提供する。【解決手段】サーバ装置１０（情報処理装置）は、ユーザが所持するユーザ端末において所定期間内に連続して入力された複数の入力情報の入力ログを取得する情報取得部１３１と、複数の入力情報から、誤入力された地名を誤入力地名として検出する誤入力検出部１３２と、誤入力地名に対する正しい地名である正解地名を取得する正解取得部１３３と、誤入力地名と正解地名とを関連付けた正誤地名情報を生成する正誤地名情報生成部１３４と、を備える。【選択図】図２
2020194494.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが所持するユーザ端末で入力された入力情報を取得する情報取得部と、
所定期間内に連続して入力された複数の前記入力情報から、誤入力された地名を誤入力地名として検出する誤入力検出部と、
前記誤入力地名に対する正しい地名である正解地名を取得する正解取得部と、
前記正解地名に対して前記誤入力地名を関連付けた正誤地名情報を生成する正誤地名情報生成部と、
を備えることを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記正解取得部は、前記所定期間内に連続して入力された複数の前記入力情報のうち、最後に入力された前記入力情報から前記正解地名を取得する
ことを特徴とする情報処理装置。
【請求項３】
請求項２に記載の情報処理装置において、
前記正解取得部は、地名と、当該地名の読みと、当該地名を示す文字列とを関連付けた地名情報が複数記録された地名データベースから、前記最後に入力された前記入力情報に含まれる地名を前記正解地名として取得する
ことを特徴とする情報処理装置。
【請求項４】
請求項１から請求項３のいずれか１項に記載の情報処理装置において、
前記誤入力検出部は、前記正解地名に含まれる文字と、複数の前記入力情報に含まれる文字との形状類似度に基づいて、前記誤入力地名を検出する
ことを特徴とする情報処理装置。
【請求項５】
請求項４に記載の情報処理装置において、
前記ユーザ端末の機種に関する機種情報を取得する機種取得部をさらに備え、
前記誤入力検出部は、前記正解地名及び前記入力情報に含まれる文字を、前記ユーザ端末の機種で用いられるフォントで表示させた際の前記形状類似度に基づいて、前記誤入力地名を検出する
ことを特徴とする情報処理装置。
【請求項６】
請求項５に記載の情報処理装置において、
前記正誤地名情報生成部は、前記正解地名に対して、前記誤入力地名及び前記機種情報の組み合わせを関連付けた前記正誤地名情報を生成する
ことを特徴とする情報処理装置。
【請求項７】
請求項１から請求項６のいずれか１項に記載の情報処理装置において、
複数の前記入力情報は、音声情報であり、
前記誤入力検出部は、前記正解地名の文字列に含まれる文字の読み方と、前記音声情報に基づいて、前記誤入力地名を検出する
ことを特徴とする情報処理装置。
【請求項８】
請求項１から請求項７のいずれか１項に記載の情報処理装置において、
前記正誤地名情報生成部は、前記正解地名に対して、前記誤入力地名と、前記誤入力地名が含まれる前記入力情報を入力した前記ユーザのユーザ属性との組み合わせを関連付けた前記正誤地名情報を生成する
ことを特徴とする情報処理装置。
【請求項９】
請求項１から請求項８のいずれか１項に記載の情報処理装置において、
複数の前記正誤地名情報に基づいて、前記入力情報に対して前記正解地名を出力する地名レコメンドモデルを生成するモデル生成部を備える
ことを特徴とする情報処理装置。
【請求項１０】
コンピューターにより、誤入力された地名と、正しい地名とを関連付けた正誤地名情報を生成する情報処理方法であって、
前記コンピューターは、情報取得部、誤入力検出部、正解取得部、及び正誤地名情報生成部を備え、
前記情報取得部が、ユーザが所持するユーザ端末において入力された入力情報を取得するステップと、
前記誤入力検出部が、所定期間内に連続して入力された複数の前記入力情報から、誤入力された地名を誤入力地名として検出するステップと、
前記正解取得部が、前記誤入力地名に対する正しい地名である正解地名を取得するステップと、
前記正誤地名情報生成部が、前記正解地名に対して前記誤入力地名を関連付けた前記正誤地名情報を生成するステップと、を実施する
ことを特徴とする情報処理方法。
【請求項１１】
コンピューターにより読み取り実行可能な情報処理プログラムであって、
前記コンピューターを請求項１から請求項９のいずれか１項に記載の情報処理装置として機能させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【０００２】
従来、ユーザ操作によって入力された地名に基づいて各種処理を実施するサービスが知られている。例えば、出発地から目的地までの経路を探索する経路探索サービスや、所望地点の地図や当該地点の各種情報を案内させる地理案内サービス等がある。
しかしながら、ユーザが地名を入力する際に、誤った読み方で地名を入力したり、誤った漢字で地名を入力したりする場合がある。これに対して、近年、ユーザ操作によって入力された地名が誤っている場合でも、その誤りを正し、地名を正しく認識する装置が知られている（例えば、特許文献１参照）。
特許文献１に記載の装置は、ユーザが発した音声に含まれる単語を認識する発話解析装置であり、ユーザの読み間違い等により、不明瞭な単語が発話内に含まれている場合でも、ユーザの発話を解析する装置である。具体的には、地名等を記録した単語リストに記録されている単語を形態素解析や文字解析により単漢字に分解し、各単漢字の読みの各々の組み合わせを読み間違い単語として生成し、入力された単語を正解単語として対応付けて読み間違い単語リストに登録している。また、単語リストに登録された単語との表記の類似性や発音の類似性から、正解単語を類推するためのスコアを算出し、閾値以上のスコアの正解単語を候補単語としている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−１４５８４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、上記特許文献１に記載のような装置を用い、ユーザが入力した地名の誤りを訂正したり、正しい地名を案内したりする場合、誤りである地名と、正しい地名とを対応付けたデータベースを構築する必要がある。ここで、特許文献１では、予め用意された単語リストに含まれる単語を単漢字または要素に分解して、読み間違い単語リストを生成している。しかしながら、地名の誤りは、ユーザによってそれぞれ異なる場合もあり、ユーザが、地名に含まれる単漢字を誤った別漢字に認識して、当該別漢字に基づいた読みで地名を読んでいる場合もある。この場合、特許文献１では、ユーザの読み間違いを判定することができない。
【０００５】
本発明は、ユーザが誤入力した地名に対して正解地名を適正に案内可能な情報処理装置、情報処理方法、及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の情報処理装置は、ユーザが所持するユーザ端末で入力された入力情報を取得する情報取得部と、所定期間内に連続して入力された複数の前記入力情報から、誤入力された地名を誤入力地名として検出する誤入力検出部と、前記誤入力地名に対する正しい地名である正解地名を取得する正解取得部と、前記正解地名に対して前記誤入力地名を関連付けた正誤地名情報を生成する正誤地名情報生成部と、を備えることを特徴とする。
【発明の効果】
【０００７】
本発明では、誤入力検出部は、ユーザ端末から入力される入力情報から誤入力地名を検出し、正解取得部が、誤入力地名に対する正解地名を取得する。そして、正誤地名情報生成部は、正解取得部により取得される正解地名と、誤入力検出部によって検出された誤入力地名とを関連付けた正誤地名情報を生成する。
このように、ユーザ端末から受信した入力情報の履歴に基づいて、正誤地名情報を生成することで、実際にユーザによって入力された地名の間違いと、その地名に対する正解地名とを関連付けることができる。例えば、ユーザが、地名に含まれる文字に対して、辞書にない読み方で誤った入力をした場合でも、その読みの誤入力地名と正解地名とを対応付けることができる。よって、従来よりも、誤入力地名の誤りを高い精度で正解地名に訂正可能な正誤地名情報を生成することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明に係る一実施形態の情報処理システムの概略構成を示す模式図。
【図２】本実施形態のサーバ装置の概略構成を示すブロック図。
【図３】本実施形態の情報処理方法を示すフローチャート。
【図４】本実施形態の情報処理方法を示すフローチャート。
【発明を実施するための形態】
【０００９】
以下、本発明に係る一実施形態について説明する。
図１は、本実施形態の情報処理システム１００の概略構成を示す模式図である。
この情報処理システム１００は、本発明の情報処理装置であるサーバ装置１０と、ユーザ端末２０とを備え、これらのサーバ装置１０と、ユーザ端末２０とが、インターネットを介して通信可能に接続されている。
そして、本実施形態の情報処理システム１００では、サーバ装置１０は、ユーザ端末２０において入力された入力情報を受信し、入力情報に地名に対する誤記が含まれているか否かを判定する。そして、入力情報に地名の誤記が含まれている場合、誤記を含む地名（誤入力地名）と、その地名に対する正しい地名（正解地名）とを関連付けた正誤地名情報を生成する。このような正誤地名情報は、地点に基づいた各種処理を実施する際に、地名の正誤判定に用いることができ、例えば、ユーザが入力した地名に誤りがある場合に、誤入力地名を正解地名に訂正したり、正解地名をユーザに案内したりすることができる。また、各種処理としては、例えば、インターネットを介した各種検索処理や、所定地点の地図を表示させる地図表示処理、出発地から目的地までの経路を案内する経路案内処理等を例示できる。
【００１０】
［サーバ装置１０の構成］
図２は、本実施形態のサーバ装置１０の概略構成を示すブロック図である。
サーバ装置１０は、図２に示すように、通信部１１、メモリ１２、プロセッサ１３等の、コンピューターを構築する一般的なハードウェア構成を備えている。
通信部１１は、インターネットに接続され、インターネットを介してユーザ端末２０等の外部機器と通信する。
【００１１】
メモリ１２は、サーバ装置１０を制御するための各種情報や情報処理プログラムを記録する。
このメモリ１２は、地名情報を記録する地名データベース（地名ＤＢ１２１）、正誤地名情報を蓄積する正誤地名データベース（正誤地名ＤＢ１２２）、文字を記録する文字データベース（文字ＤＢ１２３）、及びユーザ情報を記録するユーザデータベース（ユーザＤＢ１２４）などを備えている。なお、本実施形態では、サーバ装置１０のメモリ１２に各種データベースが設けられる例を示すが、これに限定されない。各種データベースが、それぞれ、サーバ装置１０とネットワークを介して通信可能に接続された他のデータサーバやクラウドストレージに設けられる構成としてもよい。
【００１２】
地名ＤＢ１２１は、複数の地名情報が記録されている。この地名情報は、地名ＩＤ、名称情報、位置情報、及び、地点属性等を含む。
地名ＩＤは、地点を識別する識別情報である。
名称情報は、地点の名称（地名）に関する情報であり、地名の文字列（例えば漢字等）、文字列の各文字の画像、及び、地名の読み方等を含む。
位置情報は、地点の位置を示す情報であり、経緯度が記録されていてもよく、地点が属するエリア名（例えば、都道府県名や市町村名等）が記録されていてもよい。
地点属性は、その地点に関する情報であり、例えば、その地点に存在する施設名や観光スポット、その地点の特産品等が例示できる。
【００１３】
正誤地名ＤＢ１２２は、複数の正誤地名情報が記録されている。正誤地名情報は、正解地名に対して、誤入力地名、ユーザ属性、機種情報、及び誤入力が行われた入力位置が関連付けられた情報であり、１つの正解地名に対して、誤入力地名、ユーザ属性、機種情報、及び入力位置の組み合わせが複数関連付けられていてもよい。
正解地名は、地名に対する正しい文字列や読み方に関する情報である。正解地名としては、地名の文字列や読み方が記録されていてもよく、地点に対する地名ＩＤが記録されていてもよい。
誤入力地名は、正解地名を示す文字列や読み方に対して、誤入力されやすい文字列や読み方が記録されている。例えば、正解地名「放出（ハナテン）」に対して、「ホウシュツ」との誤った読みが記録されていてもよく、正解地名「青海」に対して、「青梅」との誤った文字列が記録されていてもよい。
ユーザ属性は、正解地名に対して、誤入力地名を入力したユーザのユーザ属性である。
機種情報は、誤入力地名を入力したユーザ端末２０の機種に関する情報である。
入力位置は、ユーザが誤入力地名を入力した位置を示す情報である。入力位置としては、厳密な位置情報（経緯度）でなくてもよく、例えば「関東地方」等の入力位置を含むエリアが記録されていればよい。
また、正誤地名情報には、誤入力地名、ユーザ属性、機種情報、及び入力位置の組み合わせに対して、誤入力が行われた回数（誤入力数）が記録されている。
【００１４】
文字ＤＢ１２３は、文字情報を記録するデータベースであり、この文字情報には、文字と、その文字の形状を示す文字画像情報とが記録されている。文字画像情報には、端末装置の機種毎の画像情報がそれぞれ記録されている。
【００１５】
ユーザＤＢ１２４は、ユーザ端末２０を操作する各ユーザに関するユーザ情報を記録する。ユーザ情報は、ユーザを識別するユーザＩＤ、そのユーザの属性を示すユーザ属性、及びそのユーザの入力操作の履歴情報が少なくとも記録されている。
ユーザ属性は、例えば、ユーザの性別、年齢、趣味、居所、出身地等を示す情報である。
履歴情報は、ユーザがユーザ端末２０を操作した際の操作の履歴であり、例えば、ユーザが入力した検索キーワード等の入力操作履歴や、ユーザが地図上の所定地点を指定した場合の地点指定履歴等が記録されている。また、入力操作履歴としては、ユーザが手入力によって入力した文字列であるテキスト情報の他、ユーザが音声入力を行った際の音声情報をも含むものとする。
これらの操作履歴は、ユーザの入力操作を行った日時、ユーザ（ユーザ端末２０）の現在位置、ユーザ端末２０の機種を示す機種情報等が関連付けられて記録される。
【００１６】
プロセッサ１３は、ＣＰＵ等の演算回路、ＲＡＭ等の記録回路により構成される。プロセッサ１３は、メモリ１２に記録されている情報処理プログラムをＲＡＭに展開し、ＲＡＭに展開されたプログラムとの協働で、各種処理を実行する。
そして、プロセッサ１３は、情報処理プログラムを読み込み実行することで、図２に示すように、情報取得部１３１、誤入力検出部１３２、正解取得部１３３、正誤地名情報生成部１３４、モデル生成部１３５等として機能する。
【００１７】
情報取得部１３１は、本発明の機種取得部としても機能する。この情報取得部１３１は、ユーザ端末２０から送信される送信情報を取得（受信）する。送信情報には、ユーザ端末２０を操作するユーザを特定するユーザＩＤや、ユーザ端末２０で入力された入力情報、入力操作された日時、ユーザ端末２０の機種を示す機種情報、ユーザ端末２０の位置情報（入力位置）等が含まれる。
情報取得部１３１は、受信した送信情報を操作ログとしてユーザ情報に記録する。
【００１８】
誤入力検出部１３２は、ユーザ端末２０から送信された送信情報に含まれる地名の誤入力を検出する。誤入力検出部１３２による誤入力の検出に関する詳細については、後述する。
正解取得部１３３は、誤入力検出部１３２により検出された誤入力された地名（誤入力地名）に対する、正しい地名（正解地名）を取得する。正解取得部１３３による正解地名の取得方法については後述する。
正誤地名情報生成部１３４は、正誤地名情報を生成する。
モデル生成部１３５は、正誤地名情報を元に、誤入力地名に対する正解地名を出力する地名レコメンドモデルを生成する。この地名レコメンドモデルは、多数の正誤地名情報を教師データとして、機械学習により生成されるモデルであり、入力情報、ユーザ属性、及び入力位置を入力として、入力情報に含まれる誤入力地名と、その誤入力地名に対する正解地名とを出力するモデルである。
【００１９】
［ユーザ端末２０の構成］
ユーザ端末２０は、ユーザが保有するコンピューターであり、例えばスマートフォンやタブレット端末、パーソナルコンピューター等により構成される。つまり、ユーザ端末２０は、各種情報を表示させる表示ディスプレイ、各種情報を入力操作するための入力操作部、音声情報を入力するためのマイク、ユーザ端末２０の現在位置を計測するＧＰＳ装置等の位置検出センサー、インターネットを介してサーバ装置１０等を通信する通信部、各種情報を記憶する記憶部、及びユーザ端末２０を制御する制御部等を含んで構成される。
【００２０】
［情報処理方法］
次に、本実施形態の情報処理システム１００を用いた情報処理方法、特に、正解地名と誤入力地名とを関連付けた正誤地名情報の生成方法について説明する。
図３及び図４は、本実施形態の正誤地名情報の生成方法を示すフローチャートである。
図３において、サーバ装置１０の情報取得部１３１は、ユーザ端末２０から送信される送信情報を受信する（ステップＳ１）。
この送信情報は、ユーザがユーザ端末２０を操作した際に、ユーザ端末２０からサーバ装置１０に送信される情報である。例えば、ユーザ端末２０において、検索キーワードに基づいた検索処理が実施された場合に、検索キーワードを入力情報とした送信情報がサーバ装置１０に送信される。この送信情報には、入力情報の他、ユーザ端末２０を操作するユーザを識別するためのユーザＩＤ、ユーザ端末２０の機種情報、入力情報の入力日時（検索処理を実施した日時）、ユーザ端末２０の現在位置（入力位置）が含まれる。
また、情報取得部１３１は、受信した入力情報、入力日時、機種情報、入力位置を関連付け、ユーザＩＤに対応するユーザ情報の履歴情報に蓄積する。
【００２１】
次に、誤入力検出部１３２は、ステップＳ１で受信される送信情報が、所定期間で連続受信したか否かを判定する（ステップＳ２）。つまり、誤入力検出部１３２は、ユーザ情報に蓄積された履歴情報に基づいて、所定期間で連続した複数の入力情報が送信されたか否かを判定する。
ユーザ端末２０において検索キーワードに基づいた検索処理が実施される際、当該検索キーワードに目的の地名（正解地名）が含まれていない場合では、検索処理でユーザの所望する検索結果を返すことができない。この場合、ユーザは、検索処理で抽出された複数の検索結果を選択することなく、検索キーワードを変更して、再度検索処理を実施する可能性が高く、所望の検索結果が得られた際に、検索結果のいずれかが選択される。したがって、所定期間において、連続して複数回の検索キーワードが入力されることになり、最後の検索キーワードに正解地名が含まれている可能性が高い。誤入力検出部１３２は、所定期間に連続して複数の送信情報が送信された場合、ステップＳ２でＹｅｓと判定し、これらの送信情報に含まれる入力情報のうち、最後の入力情報以外に誤入力地名が含まれるものと判定する。
【００２２】
なお、連続して入力される入力情報としては、予め設定された所定時間内に入力される入力情報である。連続して入力される入力情報は、情報の種別が変更されてもよい。例えば、ユーザが音声情報として入力情報を入力した際に、所望の検索結果が得られないため、テキスト情報の検索キーワードを入力情報として入力する場合があり、さらに、地図上の所定地点を示す入力情報を入力する場合もある。この場合、所定期間内に連続して入力される入力情報は、テキスト情報、音声情報、地点の位置情報と推移する。このように、入力情報の種別が変更される場合、連続して入力される入力情報であるかを判定するための前記所定時間が変更（延長）されてもよい。例えば、テキスト情報の入力情報の後に、テキスト情報の入力情報が入力される場合、これらの入力情報が、連続して入力された入力情報であるか否かを判定するための時間は３０秒とする。一方、テキスト情報の入力情報の後に、地図の位置情報の入力情報が入力される場合、これらの入力情報が、連続して入力された入力情報であるか否かを判定するための時間は６０秒とする。
【００２３】
そして、ステップＳ２でＮｏと判定される場合は、送信情報に含まれる検索キーワードに誤入力地名が含まれないとして、処理を終了し、その送信情報に基づいた正誤地名情報の生成は実施しない。
【００２４】
一方、ステップＳ２でＹｅｓと判定される場合、正解取得部１３３は、連続して入力された複数の入力情報のうち、最後の入力情報に、正解地名が含まれるか否かを判定する（ステップＳ３）。
つまり、正解取得部１３３は、最後の入力情報に、地名ＤＢ１２１に記録された地名データに対応する正解地名が含まれているか否かを判定する。このステップＳ３では、正解取得部１３３は、地名ＤＢ１２１を参照し、入力情報に、地名ＤＢ１２１記録された地名が含まれるか否かを判定する。
例えば、入力情報が文字列により構成されたテキスト情報である場合、その文字列に対応する文字列又は読み方が記録された地名情報を検索する。
入力情報が音声情報である場合、正解取得部１３３は、音声情報を解析してテキスト情報とし、対応する読み方の地名情報を検索する。音声情報の解析としては、従来の音声認識技術を用いることができ、例えば、音響モデルを用いた音響認識技術や、隠れマルコフモデルを用いた音声認識技術を用いることができる。
また、入力情報が地図上の所定地点の位置情報である場合、その位置に対応した地名を地図情報から取得すればよい。
【００２５】
ステップＳ３でＹｅｓと判定される場合、正解取得部１３３は、その正解地名を取得し、メモリ１２に記録する（ステップＳ４）。
一方、ステップＳ３でＮｏと判定される場合では、ユーザは複数回の検索によって、所望の地名を探すことができず、地名の入力を諦めた可能性があり、この場合、処理を終了し、送信情報に基づいた正誤地名情報の生成は実施しない。
【００２６】
ステップＳ４で正解地名が取得されると、誤入力検出部１３２は、連続して入力された複数の入力情報のうち、最後の入力情報を除く他の入力情報（誤入力情報）から、誤入力地名を検出する。
具体的には、誤入力検出部１３２は、誤入力情報が地名の読み方を示す入力情報であるか否かを判定する（ステップＳ５）。このステップＳ５では、誤入力検出部１３２は、入力情報が、ひらがなやカタカナ、またはローマ字により入力されたテキスト情報、あるいは音声情報である場合に、Ｙｅｓと判定する。音声情報の場合、誤入力検出部１３２は、音声情報を解析してテキスト情報に変換する。
ステップＳ５でＹｅｓと判定すると、誤入力検出部１３２は、正解地名の読み方を、他の読み方に変換し（ステップＳ６）、その読み方が誤入力情報に含まれる読み方になるか否かを判定する（ステップＳ７）。例えば、「放出（ハナテン）」との地名に関し、「ホウシュツ」「ホウスイ」「ホウデ」「ホウダ」「ホウイズル」「ホウテン」「ハナシュツ」「ハナスイ」「ハナデ」「ハナダ」「ハナイズル」等の読み方が抽出され、入力情報にこれらの読み方が含まれる場合、ユーザが誤入力地名を入力したと判定することができる。
ステップＳ７でＹｅｓと判定される場合、誤入力検出部１３２は、誤入力情報に含まれる読み方を誤入力地名として判定する（ステップＳ８）。
【００２７】
ステップＳ７でＮｏと判定される場合、誤入力検出部１３２は、正解地名の文字列の各文字を類似する文字に変更した場合の文字列の読み方を抽出し（ステップＳ９）、抽出された読み方が、誤入力情報の読み方になるか否かを判定する（ステップＳ１０）。
例えば、「青梅（オウメ）」との地名に関し、「梅」を「海」「侮」「悔」等に入れ替えた文字列、「青」を「肯」「胃」等に入れ替えた文字列の組み合わせを生成し、これらの組み合わせの読み方を抽出する。この場合、ユーザが正解地名の文字（漢字）を間違え、その読み方を誤入力地名として入力したと判定することができる。
なお、地名の文字を入れ替える際には、ユーザ端末２０の機種情報を参照し、文字列の各文字をユーザ端末２０の機種の標準フォントに置き換えた際に、正解地名の各文字との形状類似度が所定値以上となる文字を入れ替える。これにより、機種のフォントによるユーザの読み間違いをも検出することが可能となる。
ステップＳ１０でＹｅｓと判定される場合、誤入力検出部１３２は、ステップＳ８と同様に、誤入力情報に含まれる読み方を誤入力地名として判定する。
【００２８】
ステップＳ１０でＮｏと判定される場合、連続して入力された入力情報は、誤入力地名を含む誤入力情報ではないものとして、処理を終了し、その送信情報に基づいた正誤地名情報の生成は実施しない。
【００２９】
一方、ステップＳ５でＮｏと判定される場合、誤入力情報に地名の文字列（漢字や英単語等）が含まれる。この場合、図４に示すように、誤入力検出部１３２は、誤入力情報に含まれる文字列と、正解地名の文字列とで、一致する文字（一致文字）があり、かつ、複数の入力情報で一致文字が共通するか否かを判定する（ステップＳ１１）。
例えば、「下北沢」との正解地名に対して、「下来沢」「下比沢」「下此沢」等が入力された場合、ユーザが誤入力地名を入力したと判定することができる。
ステップＳ１１でＹｅｓと判定される場合、誤入力検出部１３２は、共通する一致文字が含まれる各誤入力情報の文字列を、誤入力地名として検出する（ステップＳ１２）。
【００３０】
ステップＳ１１でＮｏと判定される場合、誤入力検出部１３２は、誤入力情報に含まれる文字列の各文字と、正解地名の文字列の各文字との形状類似度を算出する（ステップＳ１３）。具体的には、誤入力検出部１３２は、各文字の形状を示す文字画像情報を文字ＤＢ１２３から読み出し、正解地名の文字と、誤入力情報の文字との形状類似度を算出する。この際、ユーザ端末２０から送信される送信情報に含まれる機種情報を参照し、ユーザ端末２０の機種に対応した文字画像情報を読み出すことが好ましい。つまり、ユーザが使用するユーザ端末２０は、その機種によって標準で使用するフォントが異なることがあり、フォントによって、文字の見え方が大きく相違する場合がある。これに対して、機種に応じたフォントの文字画像情報を読み出すことで、フォントの違いによる類似度の変化を算出することが可能となる。
例えば、「青梅」との正解地名に対して、「青海」「肯梅」「肯海」等が入力された場合、ユーザが誤入力地名を入力したと判定することができる。
そして、誤入力検出部１３２は、算出された形状類似度が所定値以上であるか否かを判定し（ステップＳ１４）、Ｙｅｓと判定される場合に、ステップＳ１２と同様、誤入力情報に含まれる文字列を誤入力地名として検出する。
【００３１】
ステップＳ１４において、Ｎｏと判定される場合、さらに、誤入力検出部１３２は、誤入力地名の文字列に含まれる各文字から、文字列の読み方を抽出し、正解地名の読み方に一致するか否かを判定する（ステップＳ１５）。
例えば、「放出（ハナテン）」との正解地名に対して、「花点」「華天」等が入力された場合、ユーザが誤入力地名を入力したと判定することができる。
ステップＳ１５でＹｅｓと判定される場合、ステップＳ１２と同様、誤入力検出部１３２は、誤入力情報の文字列を、誤入力地名として検出する。
【００３２】
ステップＳ１５でＮｏと判定される場合は、連続して入力された入力情報は、誤入力地名を含む誤入力情報ではないものとして、処理を終了し、その送信情報に基づいた正誤地名情報の生成は実施しない。
【００３３】
図３に戻り、ステップＳ８及びステップＳ１２によって誤入力検出部１３２により誤入力地名が検出された後、正誤地名情報生成部１３４は、正誤地名ＤＢ１２２を更新する（ステップＳ１６）。
このステップＳ１６では、正誤地名情報生成部１３４は、誤入力情報を送信したユーザＩＤに対応するユーザ情報のユーザ属性を読み込む。
そして、正誤地名情報生成部１３４は、正解地名に対応する正誤地名情報を正誤地名ＤＢ１２２から検索する。
正解地名に対応する正誤地名情報がない場合、正誤地名情報生成部１３４は、正解地名に対して、誤入力地名、ユーザ属性、及び入力位置を関連付けた正誤地名情報を生成し、正誤地名ＤＢ１２２に記録する。
正誤地名ＤＢ１２２に、正解地名に対する正誤地名情報が既に記録されている場合、正誤地名情報生成部１３４は、既に記録されている正誤地名情報に、誤入力地名、ユーザ属性、機種情報、及び入力位置の組み合わせを新たに追加して更新する。正誤地名情報に、誤入力地名、ユーザ属性、機種情報、及び入力位置の組み合わせが既に記録されている場合、その組み合わせに対して誤入力数を「１」追加する。
【００３４】
この後、モデル生成部１３５は、正誤地名ＤＢ１２２に記録された正誤地名情報を教師データとして機械学習を行い、入力情報（地名の文字列や読み方）、ユーザ属性、ユーザ端末２０の機種、及び現在位置を入力とし、正解地名を出力とした地名レコメンドモデルを生成する（ステップＳ１７）。
このような地名レコメンドモデルでは、地名の文字列や読み方に加え、ユーザ属性や現在位置を入力として、正解地名を出力する。よって、ユーザ属性や、ユーザの現在位置に応じて、レコメンドすべき正解地名を精度よく出力することが可能となる。
例えば、大阪の日本橋（ニッポンバシ）と、東京の日本橋（ニホンバシ）とにおいて、大阪の居住の多数のユーザが、東京において、「ニッポンバシ」とした誤入力地名で、東京の「日本橋」を検索処理が多数行われたとする。この場合、本実施形態の地名レコメンドモデルは、大阪に居住のユーザが、現在位置「大阪」においてユーザ端末２０で「ニッポンバシ」と入力した場合、地名レコメンドモデルは、大阪の「日本橋（ニッポンバシ）」を出力する。一方、大阪に居住のユーザが、現在位置「東京」において、ユーザ端末２０で「ニッポンバシ」と入力した場合、地名レコメンドモデルは、入力された地名は誤入力地名であるとし、正解地名として東京の「日本橋（ニホンバシ）」を出力することが可能となる。
【００３５】
このような地名レコメンドモデルを用いることで、ユーザに対して正確な地名に基づいた各種処理を提供することができる。例えば、サーバ装置１０や、サーバ装置１０から地名レコメンドモデルが提供されたコンピューターは、ユーザ端末２０から入力情報を受信した際に、地名レコメンドモデルに各種情報を入力し、誤入力地名に対する正解地名をユーザ端末２０に返してもよい。例えば、「放出（ハナテン）」を「ホウシュツ」と入力したユーザに対して、サーバ装置１０が「もしかして、ハナテン？」といった情報を返す例が挙げられる。
あるいは、サーバ装置１０や、サーバ装置１０から地名レコメンドモデルが提供されたコンピューターは、ユーザ端末２０から入力情報を受信した際に、地名レコメンドモデルに各種情報を入力し、誤入力地名に対する正解地名を特定し、その正解地名により各種処理を実施してもよい。例えば、「放出（ハナテン）」の地図表示を要求するユーザが、「ホウシュツ」の地図表示を要求する入力を行った場合、サーバ装置１０は、地名レコメンドモデルを用いて、「ホウシュツ」を正解地名である「ハナテン」に変換した上で、ハナテンに対する地図をユーザ端末２０に返す。
また、サーバ装置１０や、サーバ装置１０から地名レコメンドモデルが提供されたコンピューターは、ユーザ端末２０における入力支援を行うこともできる。例えば、ユーザ端末２０の所定の入力欄に、ユーザが「青梅」と入力した際に、「青海」を含む地名を候補として表示させてもよい。
【００３６】
［本実施形態の作用効果］
本実施形態のサーバ装置１０は、プロセッサ１３がメモリ１２に記憶された情報処理プログラムを読み込み実行することで、情報取得部１３１、誤入力検出部１３２、正解取得部１３３、及び正誤地名情報生成部１３４として機能する。そして、情報取得部１３１が、ユーザが所持するユーザ端末２０で入力された入力情報を取得すると、誤入力検出部１３２は、所定期間内に連続して入力された複数の入力情報から、誤入力地名を検出し、正解取得部１３３は、誤入力地名に対する正解地名を取得する。そして、正誤地名情報生成部１３４は、正解地名に対して誤入力地名を関連付けた正誤地名情報を生成する。
このような本実施形態では、サーバ装置１０は、ユーザの実際の地名の間違いに基づいて、誤入力地名と正解地名とを関連付けた正誤地名情報を生成することができる。このため、例えば、ユーザが、ある地名に対して、辞書にないような読み方や文字列で誤入力をしている場合でも、誤入力地名と正解地名とを対応付けた正誤地名情報を生成することができる。
【００３７】
本実施形態では、正解取得部１３３は、所定期間内に連続して入力された複数の入力情報のうち、最後に入力された入力情報から正解地名を取得する。
検索処理等の各種処理で所定期間に連続して入力された入力情報は、最後に入力した入力情報に含まれる地名が正解であり、その正解地名に基づいて、ユーザが所望する正解地名に対する処理が行われた可能性が高い。したがって、本実施形態では、最後に入力した入力情報に基づいて正解地名を適正に取得することができる。
【００３８】
また、本実施形態では、地名ＤＢ１２１に、所定地点を識別する地名ＩＤ、地名の読み方、地名を表記するための文字列等を含む名称情報、地点の位置を示す位置情報、地点の属性を示す地名属性等を含む地名情報が記録されている。そして、正解取得部１３３は、最後に入力された入力情報に地名ＤＢ１２１に記録された地名情報に対応する地名を抽出して、正解地名として取得する。
よって、地名情報に記録されている地名は、いずれも、正式な地名に関するものであり、正解取得部１３３は、地名情報に基づいて正しい読み方や文字列の地名を正解地名として取得することができる。
【００３９】
本実施形態では、誤入力検出部１３２は、正解地名に含まれる文字と、複数の入力情報に含まれる文字と、の形状類似度に基づいて、誤入力地名を検出する。
これにより、誤入力検出部１３２は、ユーザが誤って入力した文字を、文字の形状特徴から検出することができる。例えば、「青海」との表記を「青梅」としている場合、「海」と「梅」との文字が一致せず、かつ、類似度が高い。この場合、「海」と「梅」とを誤入力している可能性が高く、誤入力検出部１３２は、「青梅」を誤入力地名と検出することができる。一方、「青梅」との表記を、「赤羽」としている場合では文字列の形状類似度は低い。この場合、誤入力検出部１３２は、ユーザの誤った認識による誤入力とは判断しない。これにより、ユーザがよく間違う誤入力地名を適正に検出することができる。
【００４０】
本実施形態では、情報取得部１３１は、送信情報として、入力情報に加えてユーザ端末２０の機種に関する機種情報を取得する。そして、誤入力検出部１３２は、正解地名及び入力情報に含まれる文字を、ユーザ端末２０の機種で用いられるフォントで表示させた際の形状類似度に基づいて、誤入力地名を検出する。
これにより、機種によって文字の形状類似度が高くなる文字を好適に判断することができる。つまり、機種で用いられるフォントによっては、正解地名で用いられる文字と、ユーザが入力した文字とが類似し、両者を識別しにくい場合がある。このような場合、ユーザは誤入力地名を入力しやすい。本実施形態では、ユーザ端末２０の機種に基づいて、その機種のフォントに文字を変換した後、正解地名の文字と、入力情報に含まれる文字との形状類似度を算出する。これにより、機種の違いによるユーザの誤入力を精度よく判定することができる。
【００４１】
さらに、本実施形態では、正誤地名情報生成部１３４は、正解地名に対して、誤入力地名及び機種情報の組み合わせを関連付けた正誤地名情報を生成する。
この場合、所定の機種のユーザ端末２０を用いた多数のユーザが、同じ誤入力を行っている場合、正誤地名情報に登録される、当該誤入力地名と当該機種情報との組み合わせに対する総数が増大する。これにより、特定の機種のユーザ端末２０を用いた場合に、よく誤入力される地名であるか否かを容易に判定することができる。
例えば、機種に関係なく、誤入力地名に対する誤入力数が増大するが、一部の機種のみ誤入力数が増大している場合は、機種によって表示されるフォントの違いにより、誤入力される可能性が高いことを意味する。よって、このような正誤地名情報を用いることで、ユーザが入力した地名が誤入力地名であるか、正解地名であるかを容易に判断することができる。具体的には、本実施形態では、モデル生成部１３５は、上記のような正誤地名情報に基づいて、入力された入力情報の文字列及び機種情報に基づいて、誤入力地名と正解地名とを精度よく出力可能な地名レコメンドモデルを生成することができる。
【００４２】
本実施形態では、情報取得部１３１は、入力情報として、音声情報を取得してもよい。
音声情報を取得した場合、誤入力検出部１３２は、正解地名の文字列に含まれる文字の読み方と、音声情報に基づいて、誤入力地名を検出する。
地名の読み方を誤って記憶しているユーザも多く、この場合、音声入力時に正しい地名を入力することができない。例えば、「放出（ハナテン）」を「ホウシュツ」と入力した場合、従来の装置では正しく地名を判別することができない。
これに対して、本実施形態では、このような音声情報に対しても、ユーザの実際の地名の読み誤りと、正解地名とに基づいて正誤地名情報を生成することができる。これにより、地名の読み間違いを適正に判定可能な地名レコメンドモデルを生成できる。
【００４３】
本実施形態では、正誤地名情報生成部１３４は、正解地名に対して、誤入力地名、機種情報、ユーザ属性、及び入力位置の組み合わせを関連付けた正誤地名情報を生成する。
このため、ユーザ属性に応じた正誤地名情報を生成できる。例えば、関西地方のユーザがよく誤入力する地名、１０代から２０代の年齢層のユーザがよく誤入力する地名などを判定可能な正誤地名情報を生成することができる。
また、誤入力情報を送信した際の入力位置をも関連付けることで、特定のユーザ属性が、特定の位置でよく間違う地名などを判定可能な正誤地名情報を生成することができる。
例えば、本実施形態の正誤地名情報を用いることで、大阪のユーザが、東京において「ニッポンバシ」と入力した際、「ニッポンバシ」は誤入力であり、「ニホンバシ」が正解地名であるといった出力が可能な地名レコメンドモデルを生成することができる。
また、個々のユーザが誤りやすい地名をレコメンドすることも可能となる。つまり、ユーザ属性として、個々のユーザに特有の情報（例えばユーザＩＤ）を含めることで、地名レコメンドモデルは、個々のユーザの固有の誤入力を検出し、正解地名を返すことができる。
【００４４】
プロセッサ１３は、モデル生成部１３５として機能し、複数の正誤地名情報に基づいて、入力情報に対して正解地名を出力する地名レコメンドモデルを生成する。
つまり、本実施形態では、多数のユーザから送信された送信情報に基づいて生成される正誤地名情報から、機種情報、ユーザ属性、及び入力位置に基づいた精度の高い誤入力地名の判断が可能な地名レコメンドモデルを生成できる。これにより、ユーザ端末２０で入力された入力情報に誤入力地名が含まれる場合に、高い精度で正しい地名を返すことができる。
【００４５】
［変形例］
本発明は、上述した実施形態に限定されるものではなく、本発明の目的を達成できる範囲で、以下に示される変形をも含むものである。
【００４６】
（変形例１）
上記実施形態では、正解取得部１３３は、連続して入力される複数の入力情報の最後の入力情報に含まれる地名を、正解地名であると判定し、正解地名に対する地名が含まれない場合、正誤地名情報の生成を行わない例を示した。しかしながら、ユーザが最後まで正解地名に辿り着けなかった場合、入力情報から正解地名を取得するのは困難である。
これに対して、正解取得部１３３は、最後に入力された入力情報に含まれる各キーワードに基づいて正解地名を取得してもよい。例えば、入力情報に、地名の他に、その地名にある施設や観光スポット、特産品等に関する付加情報が含まれているか否かを判定してもよい。この場合、地名ＤＢ１２１の地名情報に記録されている地名属性に基づいて、正解地名を特定することができる。
例えば、連続して入力された入力情報の全てに「青梅」とのキーワードが含まれ、最後に入力された入力情報が、「青梅、ゼップ（登録商標）」とのキーワードが含まれる場合、正解取得部１３３は、「ゼップ東京」との施設が地名属性として記録された地名情報を抽出することで、「青海」との正解地名を取得してもよい。
【００４７】
（変形例２）
上記実施形態では、モデル生成部１３５により地名レコメンドモデルを生成する例を示したが、これに限定されない。
例えば、サーバ装置１０又は、サーバ装置１０から正誤地名情報を提供されたコンピューターは、正誤地名情報に基づいて、ユーザの誤入力地名から正解地名をレコメンドしたり、誤入力地名を正解地名に変換したりする処理を実施してもよい。例えば、サーバ装置１０は、プロセッサ１３が情報処理プログラムを読み込み実行することで、誤入力変換部として機能してもよい。この誤入力変換部は、ユーザ端末２０から送信される送信情報に基づいて、ユーザに対応する機種情報、ユーザ属性、及び入力位置を特定する。そして、正誤地名情報から入力情報に含まれる誤入力地名を検索する。そして、当該誤入力地名と組み合わせを構成する機種情報、ユーザ属性、及び入力位置が、ユーザに対応する機種情報、ユーザ属性、及び入力位置が含まれる場合、入力情報に誤入力地名が含まれると判定し正解地名を返す。このような処理によっても、ユーザの誤入力地名に対して正解地名をレコメンドしたり、誤入力地名を正解地名に変換したりすることができる。
【００４８】
（変形例３）
上記実施形態では、正誤地名情報は、正解地名に対して、誤入力地名、機種情報、ユーザ属性、及び入力位置の組み合わせと、その組み合わせに対する誤入力数とを記録する例を示したが、これに限定されない。例えば、正誤地名情報は、少なくとも正解地名に対して、誤入力地名と誤入力数とが関連付けられていればよい。
【００４９】
（変形例４）
上記実施形態では、誤入力検出部１３２は、正解地名の読み方を他の読み方に変換した場合、又は、正解地名の文字列の各文字を類似する文字に変更した場合に誤入力情報の読み方になるか否かを判定することで、誤入力地名を検出した。また、誤入力検出部１３２は、誤入力情報と正解地名との文字列で一致文字があるか、誤入力情報に含まれる文字列の各文字と、正解地名の文字列の各文字との形状類似度が所定値以上かを判定することで誤入力地名を検出した。
これに対して、誤入力検出部１３２は、連続して入力された入力情報のうち、最後の入力情報以外の全てを誤入力地名として検出してもよい。この場合、ユーザが、正解地名に対して誤って入力した誤入力地名ではない可能性もある。しかしながら、多数のユーザから、正解地名に対する誤入力地名を収集し、多数の教師データに基づいて、モデル生成部１３５が地名レコメンドモデルを生成することで、正解地名に対して、多くのユーザが誤って入力する誤入力地名を適正に判断することができる。例えば、ユーザが正解地名である「青梅」を、「おおさか」として誤入力した場合、上記実施形態では、誤入力検出部１３２は、「おおさか」を誤入力地名として検出しない。しかしながら、本変形例４のように、最後の入力情報以外の全てを誤入力地名として検出する場合、「おおさか」が「青梅」の誤入力地名として検出されることになる。
そして、多数のユーザから上記誤入力に関する情報が集まれば、モデル生成部１３５によって、「おおさか」が「青梅」の間違いであるとの地名レコメンドモデルが生成されることになる。つまり、正解地名に含まれる各文字の読み方とは全く異なる読み方で誤入力地名を入力している場合や、正解地名の各文字とは全く類似しない文字で誤入力地名を入力している場合であっても、正解地名と誤入力地名とを対応付けることが可能となる。
【００５０】
（変形例５）
上記実施形態において、サーバ装置１０がコンピューターにより構成されて、情報取得部１３１、誤入力検出部１３２、正解取得部１３３、正誤地名情報生成部１３４、モデル生成部１３５等として機能する例を示した。ここで、サーバ装置１０を構成するコンピューターの数は特に限定されない。例えば、１台のコンピューターによってサーバ装置１０が構成されてもよく、複数のコンピューターをネットワークで接続して構築されるクラウドサーバをサーバ装置１０としてもよい。
【符号の説明】
【００５１】
１０…サーバ装置（情報処理装置）、１１…通信部、１２…メモリ、１３…プロセッサ、２０…ユーザ端末、１３１…情報取得部、１３２…誤入力検出部、１３３…正解取得部、１３４…正誤地名情報生成部、１３５…モデル生成部、１２１…地名ＤＢ、１２２…正誤地名ＤＢ、１２３…文字ＤＢ、１２４…ユーザＤＢ。
【図１】
2020194494.tif 000003
【図２】
2020194494.tif 000004
【図３】
2020194494.tif 000005
【図４】
2020194494.tif 000006