(57)【要約】【課題】ローマ字変換を用いる日本語自動推薦システムおよび方法が開示される。【解決手段】本発明の日本語自動推薦システムは、日本語のひらがな形態またはカタカナ形態で表現される単語の発音をローマ字に変換するローマ字変換部、および前記変換されたローマ字に基づいて前記単語に対する類似語を検索する類似語検索部を含む。【選択図】図１
2011008784.tif 000002
【特許請求の範囲】
【請求項１】
日本語のひらがな形態またはカタカナ形態で表現される単語の発音をローマ字に変換するローマ字変換部と、
前記変換されたローマ字に基づいて前記単語に対する類似語を検索する類似語検索部と、
を含むことを特徴とする日本語自動推薦システム。
【請求項２】
前記類似語検索部は、前記ローマ字に変換された単語の類似度点数に基づいて前記単語に対する類似語を検索し、
前記類似度点数は、前記単語の長さに応じる入力頻度、前記単語が長音、中点、促音、または濁音を含むか否かによる編集距離、または前記単語の原型状態の比較程度のうちの少なくとも１つに基づいて決定されることを特徴とする請求項１に記載の日本語自動推薦システム。
【請求項３】
前記類似語検索部は、前記単語が漢字である場合、ローマ字に変換された形態の比較結果、ひらがなに変換された形態の比較結果および漢字本来の形態の比較結果に基づいて類似度点数を決めることを特徴とする請求項２に記載の日本語自動推薦システム。
【請求項４】
前記検索された類似語を前記ひらがな、カタカナ、または漢字のうちのいずれか１つの日本語形態に変換して推薦する類似語推薦部をさらに含むことを特徴とする請求項１に記載の日本語自動推薦システム。
【請求項５】
前記類似語推薦部は、（１）ローマ字に変換された状態の類似度とローマ字に変換されない状態の類似度との差が予め設定した基準を超える場合、または（２）前記単語が前記推薦される類似語よりもさらに多く用いられる場合に、前記類似語を推薦しないことを特徴とする請求項４に記載の日本語自動推薦システム。
【請求項６】
前記類似語推薦部は、前記検索された類似語を前記単語の日本語形態と異なる形態に変換して推薦することを特徴とする請求項４に記載の日本語自動推薦システム。
【請求項７】
入力された単語を分析して前記単語が誤字であるか否かを判断する誤字判断部をさらに含み、
前記ローマ字変換部は、前記入力された単語が誤字である場合、前記単語をローマ字に変換することを特徴とする請求項１に記載の日本語自動推薦システム。
【請求項８】
前記誤字判断部は、前記単語が予め設定された誤字データに含まれるか否か、前記単語の入力頻度または文書出現の頻度が予め設定された基準頻度よりも低いか否か、または前記単語が形態素に分離するか否かに基づいて、前記単語が誤字であるか否かを判断することを特徴とする請求項７に記載の日本語自動推薦システム。
【請求項９】
前記単語が誤字である場合、類似度点数または単語の入力頻度による編集距離に基づいて、前記検索された類似語のうちの前記単語に対する正解単語を選択する正解単語選択部をさらに含むことを特徴とする請求項７に記載の日本語自動推薦システム。
【請求項１０】
入力された単語が漢字である場合、トークン分割学習データを用いて前記単語をトークン別に分割し、漢字−ひらがな変換学習データを用いて前記分割されたトークンに対応するひらがなに変換する漢字−ひらがな変換部をさらに含むことを特徴とする請求項１に記載の日本語自動推薦システム。
【請求項１１】
前記トークン分割学習データは、前記漢字の形態素トークン別に分離するコーパスを用いて隠れマルコフモデル基盤の分かち書き学習によって決められることを特徴とする請求項１０に記載の日本語自動推薦システム。
【請求項１２】
前記漢字−ひらがな変換学習データは、漢字の形態素トークン別に分離するコーパスに基づく学習によって決められるバイグラム辞書およびユニグラム辞書を含み、
前記バイグラム辞書は、トークンとの間の頻度数で構築され、
前記ユニグラム辞書は、トークンとひらがなとの間の頻度数で構築されることを特徴とする請求項１０に記載の日本語自動推薦システム。
【請求項１３】
前記漢字−ひらがな変換部は、前記分割されたトークンに対してバイグラム辞書を検索して最大の確率を示すトークンを選択し、前記選択されたトークンに対してユニグラム辞書に対応するひらがなに変換することを特徴とする請求項１２に記載の日本語自動推薦システム。
【請求項１４】
コンピュータにより実行されるステップが、
日本語のひらがな形態またはカタカナ形態で表現される単語の発音をローマ字に変換するステップと、
前記変換されたローマ字に基づいて前記単語に対する類似語を検索するステップと、
を含むことを特徴とする日本語自動推薦方法。
【請求項１５】
前記単語に対する類似語を検索するステップは、前記ローマ字に変換された単語の類似度点数に基づいて前記単語に対する類似語を検索し、
前記類似度点数は、前記単語の長さに応じる入力頻度、前記単語が長音、促音、または濁音を含むか否かによる編集距離、または前記単語の原型状態の比較程度のうちの少なくとも１つに基づいて決定されることを特徴とする請求項１４に記載の日本語自動推薦方法。
【請求項１６】
前記単語に対する類似語を検索するステップは、前記単語が漢字である場合、ローマ字に変換された形態の比較結果、ひらがなに変換された形態の比較結果および漢字本来の形態の比較結果に基づいて類似度点数を決めることを特徴とする請求項１５に記載の日本語自動推薦方法。
【請求項１７】
前記検索された類似語を前記ひらがな、カタカナ、または漢字のうちのいずれか１つの日本語形態に変換して推薦するステップをさらに含むことを特徴とする請求項１４に記載の日本語自動推薦方法。
【請求項１８】
前記検索された類似語を前記ひらがな、カタカナ、または漢字のうちのいずれか１つの日本語形態に変換して推薦するステップは、（１）ローマ字に変換された状態の類似度とローマ字に変換されない状態の類似度との差が予め設定した基準を超える場合、または（２）前記単語が前記推薦される類似語よりもさらに多く用いられる場合に、前記類似語を推薦しないことを特徴とする請求項１７に記載の日本語自動推薦方法。
【請求項１９】
前記検索された類似語を前記ひらがな、カタカナ、または漢字のうちのいずれか１つの日本語形態に変換して推薦するステップは、前記検索された類似語を前記単語の日本語形態と異なる形態に変換して推薦することを特徴とする請求項１７に記載の日本語自動推薦方法。
【請求項２０】
入力された単語を分析して前記単語が誤字であるか否かを判断するステップをさらに含み、
前記単語の発音をローマ字に変換するステップは、前記入力された単語が誤字である場合、前記単語をローマ字に変換することを特徴とする請求項１４に記載の日本語自動推薦方法。
【請求項２１】
前記単語が誤字であるか否かを判断するステップは、前記単語が予め設定された誤字データに含まれるか否か、前記単語の入力頻度または文書出現の頻度が予め設定された基準頻度よりも低いか否か、または前記単語が形態素に分離するか否かに基づいて、前記単語が誤字であるか否かを判断することを特徴とする請求項２０に記載の日本語自動推薦方法。
【請求項２２】
前記単語が誤字である場合、類似度点数または単語の入力頻度による編集距離に基づいて、前記検索された類似語のうちの前記単語に対する正解単語を選択するステップをさらに含むことを特徴とする請求項２０に記載の日本語自動推薦方法。
【請求項２３】
入力された単語が漢字である場合、トークン分割学習データを用いて前記単語をトークン別に分割し、漢字−ひらがな変換学習データを用いて前記分割されたトークンに対応するひらがなに変換するステップをさらに含むことを特徴とする請求項１４に記載の日本語自動推薦方法。
【請求項２４】
前記トークン分割学習データは、前記漢字の形態素トークン別に分離するコーパスを用いて、隠れマルコフモデル基盤の分かち書き学習によって決められることを特徴とする請求項２３に記載の日本語自動推薦方法。
【請求項２５】
前記漢字−ひらがな変換学習データは、漢字の形態素トークン別に分離するコーパスに基づく学習によって決定されたバイグラム辞書およびユニグラム辞書を含み、
前記バイグラム辞書は、トークンとの間の頻度数で構築され、
前記ユニグラム辞書は、トークンとひらがなとの間の頻度数で構築されることを特徴とする請求項２３に記載の日本語自動推薦方法。
【請求項２６】
前記分割されたトークンに対応するひらがなに変換するステップは、
前記分割されたトークンに対し、バイグラム辞書を検索して最大の確率を表すトークンを選択するステップと、
前記選択されたトークンに対し、ユニグラム辞書に対応するひらがなに変換するステップと、
を含むことを特徴とする請求項２３に記載の日本語自動推薦方法。
【請求項２７】
コンピュータに、請求項１４〜２６のいずれか一項の方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力された日本語に対する類似語を推薦するシステムおよび方法に関し、より詳しくは、入力された日本語の発音をローマ字に変換して類似語を推薦するシステムおよび方法に関する。
【背景技術】
【０００２】
ユーザは、所望する情報を得るために検索エンジンの検索ウィンドウに単語を入力して検索を行う。このとき、ユーザが単語を誤って入力して誤字が発生する場合、誤字によって検索される文書（検索結果）の品質が落ちたり、検索される文書の数がほとんどないという問題が発生していた。かかる問題を解決するために従来の検索エンジンでは、このような単語を誤字として判断し、ユーザが実際に入力しようとした誤字に対応する単語（検索語）を推薦する機能を備えている。
【０００３】
一方、ユーザが単語を入力して検索を行ったとしても、ユーザの所望する検索結果を得るための最適な単語をユーザが入力しているケースは、少数に過ぎない。このため、検索エンジンが、ユーザが入力したその単語に対する検索結果を提供したとしても、ユーザはその検索結果に対して不満を持つことになる。そこで、このような問題を解決するために従来の検索エンジンは、ユーザが入力した単語に対する関連語または類似語を提供することによって検索の正確度の向上を図っている。
【０００４】
しかしながら、上述した各状況は、特に日本語を用いて検索する場合に以下のような問題があった。すなわち、ユーザが入力した検索語としての日本語を誤字と判断して正しい単語を提示したり、あるいはユーザが入力した日本語に対する類似語を提供する場合、従来はその正確度を保証することができなかった。何よりも、日本語は、漢字、ひらがな、及びカタカナの形態で表現され、また、１つの単語がこれら３つの形態を含んでいるため、ユーザが入力した単語に対して適切な単語を推薦することが難しいという問題があった。したがって、漢字、ひらがな、及びカタカナの各形態の日本語が入力されても適切な単語を推薦する方法が切に求められる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、入力された日本語単語の発音をローマ字に変換し、変換されたローマ字に基づいて単語に対する類似語を検索することによって、日本語に対する類似語検索の正確度を向上させるシステムおよび方法を提供することを目的とする。
【０００６】
また、本発明の他の目的は、入力された日本語単語が誤字であるかを判別し、誤字である場合に類似語を検索して正解単語を提供することによって、ユーザが検索語（質疑語）を誤って入力しても適切な正解単語を推薦して検索の正確度を向上させるシステムおよび方法を提供することにある。
【０００７】
また、本発明の他の目的は、入力された日本語単語が漢字である場合、機械学習によって生成した学習データを介してトークンに分割し、分割されたトークンに対してひらがなに変換することで、迅速で正確な漢字−ひらがな変換を行うことができるシステムおよび方法を提供することにある。
【０００８】
また、本発明の他の目的は、ユーザが入力した日本語単語の形態と異なる形態の類似語を検索して推薦することによって、ユーザがより正確な検索を行うことができるようにしたシステムおよび方法を提供することにある。
【課題を解決するための手段】
【０００９】
本発明の一実施形態に係る日本語自動推薦システムは、日本語のひらがな形態またはカタカナ形態で表現される単語の発音をローマ字に変換するローマ字変換部と、前記変換されたローマ字に基づいて前記単語に対する類似語を検索する類似語検索部と、を含むことを特徴とする。
【００１０】
また、本発明の一実施形態に係る日本語自動推薦システムは、前記検索された類似語を前記ひらがな、カタカナ、または漢字のうちのいずれか１つの日本語形態に変換して推薦する類似語推薦部をさらに含むことができる。
【００１１】
本発明の一実施形態に係る日本語自動推薦システムは、入力された単語を分析して前記単語が誤字であるか否かを判断する誤字判断部をさらに含むことができる。
【００１２】
本発明の一実施形態に係る日本語自動推薦システムは、入力された単語が誤字である場合、類似度点数または単語の入力頻度による編集距離に基づいて、前記検索された類似語のうちの前記単語に対する正解単語を選択する正解単語選択部をさらに含むことができる。
【００１３】
本発明の一実施形態に係る日本語自動推薦システムは、入力された単語が漢字である場合、トークン分割学習データを用いて前記単語をトークン別に分割し、漢字−ひらがな変換学習データを用いて前記分割されたトークンに対応するひらがなに変換する漢字−ひらがな変換部をさらに含むことができる。
【００１４】
本発明の一実施形態に係る日本語自動推薦方法は、日本語のひらがな形態またはカタカナ形態で表現される単語の発音をローマ字に変換するステップと、前記変換されたローマ字に基づいて前記単語に対する類似語を検索するステップと、を含むことができる。
【発明の効果】
【００１５】
本発明の一実施形態によれば、入力された日本語単語の発音をローマ字に変換し、変換されたローマ字に基づいて単語に対する類似語を検索することによって、日本語に対する類似語検索の正確度を向上させることができる。
【００１６】
本発明の一実施形態によれば、入力された日本語単語が誤字であるかを判別し、誤字である場合、類似語を検索して正解単語を提供することによって、ユーザが検索質疑を誤って入力しても適切な正解単語を推薦して検索の正確度を向上させることができる。
【００１７】
本発明の一実施形態によれば、入力された日本語単語が漢字である場合、機械学習を介して生成した学習データによってトークンに分割し、分割されたトークンに対してひらがなに変換することによって迅速で正確な漢字−ひらがな変換を行うことができる。
【００１８】
本発明の一実施形態によれば、ユーザが入力した日本語単語の形態と異なる形態の類似語を検索して推薦することによって、ユーザにさらに正確な検索を行うことができるようにすることができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の一実施形態に係る日本語自動推薦システムの全体構成を示すブロックダイアグラムである。
【図２】本発明の一実施形態によって入力された単語に対してローマ字変換を介して日本語を自動的に推薦する過程を示す図である。
【図３】本発明の一実施形態によって漢字からひらがなに変換する過程を示す図である。
【図４】本発明の一実施形態によってローマ字に変換する一例を示す図である。
【図５】本発明の一実施形態に係る日本語自動推薦方法の全体の過程を示すフローチャートである。
【発明を実施するための形態】
【００２０】
以下、添付された図面に記載の内容を参照して本発明に係る実施形態を詳細に説明する。ただし、本発明が以下に説明する実施形態によって制限又は限定されることはない。また、各図面に提示された同じ参照符号は同じ部材を示す。
【００２１】
図１は、本発明の一実施形態に係る日本語自動推薦システムの全体構成を示すブロックダイアグラムである。
【００２２】
本実施形態の日本語自動推薦システム１００は、コンピュータにより構成され、コンピュータが備える制御部（ＣＰＵ）が、所定のプログラムを読み込むことにより後述する各部１０１〜１０６が実現される。また、本実施形態の日本語自動推薦システム１００の１つの態様としては、検索サービスを提供するウェブサーバ又は検索語（質疑語）を用いた検索処理を遂行する検索サーバ（検索エンジン）の一部に組み込まれたり、ウェブサーバ又は検索サーバに対して別構成で接続されるコンピュータ装置として構成される。
【００２３】
この場合、本実施形態の日本語自動推薦システム１００は、ユーザ端末から所定の検索窓に入力された日本語単語の検索語（質疑語）に対し、後述する１つ又は複数の類似語を自動的に抽出し、抽出された類似語（検索語が誤字であると判断された場合に、類似語の中から抽出された正解語を含む）は、検索語に対する検索結果ページに露出される。日本語自動推薦システム１００は、検索サーバが行う検索語に対する所定の検索結果の生成処理とは個別に、検索窓に入力された日本語単語を用いた類似語の抽出処理を遂行することができ、ウェブサーバや検索サーバの一部として組み込まれる場合は、ウェブサーバ又は検索サーバが、検索窓に対する検索語の入力をトリガーに、入力された日本語単語の検索語（質疑語）に対し、１つ又は複数の類似語を自動的に抽出し、抽出された類似語を含む検索結果ページを生成して検索要請をしたユーザのユーザ端末に伝送する。また、ウェブサーバ又は検索サーバに対して別構成で接続される場合は、ウェブサーバ又は検索サーバから検索窓に入力された検索語をネットワークを通じて受信し、受信した日本語単語の検索語（質疑語）に対して１つ又は複数の類似語を自動的に抽出し、抽出した類似語をウェブサーバ又は検索サーバに伝送する。
【００２４】
図１に示すように、本実施形態の日本語自動推薦システム１００は、誤字判断部１０１、漢字−ひらがな変換部１０２、ローマ字変換部１０３、類似語検索部１０４、類似語推薦部１０５、および正解単語選択部１０６を含んで構成される。
【００２５】
日本語検索において、ユーザは所望する情報検索のために日本語を入力するが、このとき、ユーザは漢字、ひらがな、またはカタカナの各形態の日本語の単語Ａ１０７を入力することができる。日本語自動推薦システム１００は、ユーザが入力した各形態の単語１０７の発音をローマ字に変換することによって、より正確な日本語単語Ｂ１０８を推薦する。
【００２６】
本発明の一実施形態として、誤字判断部１０１により所定の画面からユーザにより入力された日本語単語が誤字であるか否かを判断し、ユーザが誤字を入力した場合には、日本語自動推薦システム１００は、漢字−ひらがな変換部１０２、ローマ字変換部１０３、類似語検索部１０４、及び類似語推薦部１０５により類似語を抽出し、正解単語選択部１０６が誤字に対する正しい単語（正解単語）を当該誤字に対して抽出された複数の類似語の中から選択して提供する。また、本発明の他の一実施形態として、誤字判断部１０１によって入力された日本語単語が誤字でないと判断された場合、または、誤字判断部１０１の判断処理とは無関係に、ユーザが誤字でない正確な単語を入力した場合、日本語自動推薦システム１００は、漢字−ひらがな変換部１０２、ローマ字変換部１０３、類似語検索部１０４、及び類似語推薦部１０５を介して類似語を提供することができる。以下の説明では、ユーザが誤字を入力する場合を中心に説明する。
【００２７】
誤字判断部１０１は、ユーザ端末を通じてユーザから入力された単語１０７を分析して単語１０７が誤字であるか否かを判断する。この場合、ローマ字変換部１０３は、ユーザが入力した単語１０７が誤字であると判断された場合、単語１０７をローマ字に変換する。
【００２８】
一例として、誤字判断部１０１は、ユーザが入力した単語１０７が予め設定した誤字データに含まれるか否かに基づいて単語１０７が誤字であるか否かを判断することができる。具体的に、誤字判断部１０１は、予め登載された単語や検索エンジンで構築されたコンテンツＤＢ目録、手動レビュー等によって決められ、所定の記憶領域に記憶される誤字データを用いて、ユーザが入力した単語１０７が誤字データに含まれる場合に誤字として判断する。
【００２９】
また、他の一例として、誤字判断部１０１は、ユーザが入力した単語１０７の入力頻度または文書出現の頻度が、予め設定された基準頻度よりも低いか否かに基づいて単語１０７が誤字であるか否かを判断するようにしてもよい。
【００３０】
このとき、単語１０７の入力頻度は、ユーザが入力した単語１０７の入力回数を意味する。すなわち、誤字判断部１０１は、入力頻度の低い単語１０７を誤字として判断することができる。また、文書出現の頻度は、入力された単語１０７を用いて文書を検索した際に、検索結果として抽出される文書の個数（回数）、言い換えれば、文書内に単語１０７を含む文書数を意味する。誤字判断部１０１は、単語１０７を文書内に含む文書数が所定の基準数よりも少ない場合に、文書出現の頻度が低い単語であると判断し、当該単語１０７を誤字として判断する。なお、この場合、日本語自動推薦システム１００は、ユーザの単語入力に対して入力された単語別に入力回数を集計する機能やユーザが入力した単語を文書内に含む文書数を取得する機能を備えることができ、単語別の入力回数、文書数及びこれらの各々に対して予め設定される基準頻度（基準入力回数、基準文書数）等の情報を所定の記憶領域に記憶する。
【００３１】
また、誤字判断部１０１は、単語１０７に対して文書出現の頻度が質疑頻度（単語１０７による質疑が入力された回数、例えば、単語１０７の入力頻度）よりも低い場合、該当の単語１０７を誤字として判断することもできる。また、誤字判断部１０１は、文書出現の頻度が低いながら連続した単語１０７（文書出現の頻度が低い、単語と単語が繋がっている連続した単語１０７）を誤字として判断するように構成してもよい。
【００３２】
また、他の一例として、誤字判断部１０１は、ユーザが入力した単語１０７が形態素に分離されるか否かに基づいて単語１０７が誤字であるか否かを判断することができる。このとき、誤字判断部１０１は、入力された単語が形態素分析器や品詞タッガー（part of speech tagger）によって各形態素に分離される場合、該当単語１０７が誤字でないと判断することができる。言い換えれば、単語が誤字である場合、形態素（例えば、それ以上分解したら言語意味をなさなくなるまで分割して抽出された意味を持つ言語の最小の単位）に分離することができないため、誤字判断部１０１は、単語が形態素に分離される場合、ユーザが入力した単語１０７を正字（誤字でない単語）として判断することができる。
【００３３】
漢字−ひらがな変換部１０２は、入力された単語１０７が漢字である場合、トークン分割学習データを用いて単語をトークン別に分割する。また、漢字−ひらがな変換部１０２は、漢字−ひらがな変換学習データを用いて分割されたトークンに対応する単語又は文字をひらがなに変換する。なお、日本語は、同じ漢字であっても使い方によって読み方が異なるため、漢字に対応する正確なひらがなに変換することが重要であるが、漢字−ひらがな変換部１０２の詳細な処理については、図３を参照して具体的に後述する。
【００３４】
ローマ字変換部１０３は、日本語のひらがな形態またはカタカナ形態に表現された単語１０７を、その発音に基づいてローマ字（ｒｏｍａｊｉ）に変換する。、単語１０７が漢字である場合には、漢字−ひらがな変換部１０２によって単語１０７がひらがなに変換された後、ひらがなに変換された単語１０７を各ひらがな文字の発音に対応するローマ字に基づいて、ローマ字変換部１０３がローマ字に変換する。例えば、入力された単語が漢字の「映画」である場合、漢字−ひらがな変換部１０２によって「えいが」に変換され、ローマ字変換部１０３は、ひらがなに変換された単語の発音に基づいてローマ字（ｅｉｇａ）に変換する。ローマ字変換部１０３がローマ字に変換する例について図４を参照して具体的に後述する。
【００３５】
類似語検索部１０４は、ローマ字変換部１０３によって変換されたローマ字に基づいて単語１０７に対する類似語を所定の類似語群から検索（抽出）する。一例として、類似語検索部１０４は、ローマ字に変換された単語の類似度(類似度点数)に基づいて当該単語に対する類似語を抽出することができる。ひらがな／カタカナまたは漢字の文字形態で、入力された単語と類似語として抽出される単語との間の類似度を測定することは編集距離の解像度が極めて低く、かつ正確度が落ちるため、本発明によれば、双方の単語を発音に基づいてローマ字に変換して類似度を測定する。例えば、「オリゴン」と「オリコン」を直接に比較することよりも、これをローマ字に変換し、「ｏｒｉｇｏｎ」と「ｏｒｉｋｏｎ」とを比較することによって、より正確に類似度を比較することができる。
【００３６】
このとき、類似度点数は、単語の長さに応じた入力頻度、単語が長音、中点、促音または濁音を含むか否かによる編集距離、または単語の原型状態の比較程度のうちの少なくとも１つに基づいて決定（算出）される。一例として、単語が漢字である場合、類似語検索部１０４は、漢字がローマ字に変換された形態の比較結果（ローマ字に変換された後の単語間の類似度）、漢字がひらがなに変換された形態の比較結果（ひらがなに変換された後の単語間の類似度）、および漢字の形態の比較結果（漢字形態での単語間の類似度）に基づいて、類似度点数を決めることができる。類似語検索については図２を参照して具体的に後述する。
【００３７】
類似語推薦部１０５は、検索された類似語をひらがな、カタカナ、または漢字のうちのいずれか１つの日本語形態の単語１０８に変換して推薦する。ユーザは推薦される単語１０８を入力して検索を行うことができる。この場合、類似語推薦部１０５は、所定のページや画面等に抽出された入力された単語１０７に対する類似語である単語１０８を露出させる処理を遂行する。また、検索サーバの検索結果が露出される検索結果ページに類似語である単語１０８を露出させたり、検索結果ページを生成するウェブサーバや検索サーバに、単語１０８を送信する。
【００３８】
なお、一例として、類似語推薦部１０５は、検索された類似語をユーザが入力した単語１０７の日本語形態と異なる形態の単語１０８に変換して推薦するようにしてもよい。例えば、ユーザがひらがな形態の単語１０７を入力した場合、類似語推薦部１０５は、入力された単語１０７に対する類似語を漢字形態の単語１０８に変換してユーザに推薦するようにしてもよい。
【００３９】
正解単語選択部１０６は、ユーザから入力された単語１０７が誤字である場合、類似度点数または単語の入力頻度に基づく編集距離に基づいて、検索された類似語のうちの単語１０７に対する正解単語１０８を選択する。すなわち、誤字である入力された単語１０７に対して複数の類似語が検索される場合、正解単語選択部１０６は、類似度点数が最も高い又は所定の基準値よりも高い類似語、または当該単語の入力頻度が所定の基準値よりも高い類似語を正解単語１０８として選択して提供することができる。なお、編集距離は、単語間の類似度を判断するための直接的な根拠（基準）であり、編集距離が低ければ類似度が高くなる。すなわち、単語の入力頻度に基づく編集距離とは、例えば、入力頻度の高ければ高いほど単語の編集距離が低く付与されることを意味し、入力頻度に応じた編集距離、言い換えれば、単語の入力頻度に基づいて類似語を正解単語として選択することができる。
【００４０】
図２は、本発明の一実施形態に係る入力される単語に対してローマ字変換によって日本語を自動的に推薦する過程を示す図である。
【００４１】
ユーザ端末を介してユーザから日本語からなる単語が入力されると、誤字判断部１０１は、入力された単語が誤字であるかを判断する。上述したように、誤字判断部１０１は、単語が予め設定された誤字データに含まれるか否か、単語の入力頻度または文書出現の頻度が予め設定された基準頻度よりも低いか否か、または単語が形態素に分離されるか否かに基づいて、単語が誤字であるか否かを判断する。
【００４２】
ユーザから入力された単語が誤字であると判断された場合、正解単語選択部１０６は、入力された単語に対して検索された類似語の中から所定の基準を満たす類似語を正解単語として選択して提供する。なお、入力された単語が誤字でないと判断された場合、すなわち、正字であると判断された場合には、正解単語選択部１０６は、動作しない。
【００４３】
図２に示すように、入力された日本語単語は、ひらがな形態、カタカナ形態、または漢字形態のうちのいずれか１つであり、入力された単語がひらがな形態またはカタカナ形態である場合、ローマ字変換部１０３は、日本語のひらがな形態またはカタカナ形態に表現された単語の発音に基づいてローマ字（ｒｏｍａｊｉ）に変換する。
【００４４】
一方、入力された単語が漢字形態である場合、漢字を直接ローマ字に変換することが難しいため、漢字−ひらがな変換部１０２によってひらがな形態に正規化する過程を経てることができる。具体的に、漢字−ひらがな変換部１０２は、トークン分割学習データを用いて漢字をトークン別に分割し、漢字−ひらがな変換学習データを用いて分割されたトークンに対応する単語又は文字をひらがなに変換することができる。そして、ローマ字変換部１０３は、漢字−ひらがな変換部１０２によって変換されたひらがなをその発音に対応するローマ字に変換する。
【００４５】
類似語検索部１０４は、変換されたローマ字に基づいて単語に対する類似語を所定の類似語群から検索する。具体的に、類似語検索部１０４は、ローマ字に変換された単語の類似度点数に基づいて単語に対する類似語を検索する。
【００４６】
一例として、類似度点数は、単語の長さに応じた入力頻度、単語が長音、中点、促音、または濁音が含まれるか否かに基づく編集距離、または単語の原型状態の比較程度のうちの少なくとも１つに基づいて決定される。
【００４７】
単語の長さ、ｉｎｆｏｒｍａｔｉｏｎ−ｉｎｆｏｒｍａｔｉｏｎ  ［編集距離、類似度］
長音：ハロワーク（誤字）、ハロ-ワ-ク（誤字）、ハローワーク（正解）
中点：ピートローズ（誤字）、ピート・ローズ（正解）
半濁音：オリゴン（誤字）、オリコン（正解）
促音：ビクカメラ（誤字）ビックカメラ（正解）
原型：花よりだんごファイナル（誤字）花より男子ファイナル（正解）
【００４８】
単語の長さが短いほど単語の入力頻度（入力回数）が増加するため、類似度検索部１０４は、単語の長さが短いほど類似度点数を増加させることができる（高い類似度点数を付与することができる）。言い換えれば、単語の長さに応じた入力頻度に基づく類似度点数とは、単語の長さとその単語の入力頻度との関係に基づいて、単語の長さが短いほど入力頻度が増加することに起因する単語の長さに応じて付与される類似度点である。
【００４９】
日本語の長音（ー）は、他の文字に比べて容易に挿入され、または削除されるため、類似語検索部１０４は、単語に長音が含まれる場合、編集距離を小さく加重して類似度点数を増加させることができる。具体的には、単語に長音が含まれる場合、長音分編集距離が大きくなるが、長音は、他の文字に比べて容易に挿入され、または削除されるため、長音を含む編集距離に対して小さい加重値（例えば、０以上１未満の数字）を適用（乗算）し、長音を含む単語の編集距離を小さく調整し、類似度点数を増加させることができる。また、同様に、日本語の中点（・）は他の文字に比べて容易に挿入され、または削除されるため、類似語検索部１０４は、単語に中点が含まれる場合、編集距離を小さく加重して類似度点数を増加させてもよい。さらには、日本語の促音（っ）は、容易に省略されたり、類似発音として誤って用いられる場合が多いため、類似語検索部１０４は、入力された単語に促音が含まれる場合に編集距離を小さく加重して類似度点数を増加させることもできる。
【００５０】
また、ローマ字に変換された形態だけでなく、類似語検索部１０４は、単語の原型状態の比較結果を類似度点数に反映することができる。原型状態を比較することによって、ローマ字に正規化した状態で類似語を検索する結果のエラーを補完することができる。例えば、入力された単語が「うとん」である場合、類似語検索部１０４は「うろん」よりも原型状態が類似する「うどん」の類似度点数を高く付与することによって、ローマ字変換によって類似度を判断するときのエラーを補完することができる。
【００５１】
また、一例として、単語が漢字である場合、類似語検索部１０４は、ローマ字に変換された形態の比較結果、ひらがなに変換された形態の比較結果、および漢字本来の形態の比較結果に基づいて類似度点数を決定することもできる。具体的に、単語が漢字である場合、類似語検索部１０４は、下記の数式１によって類似度点数を決定することができる。
【００５２】
【数１】
2011008784.tif 000003
【００５３】
ここで、ｑはユーザが入力した日本語（質疑語）、ｔは類似語を意味する。また、ａ、ｂ、ｃは定数を意味する。このとき、ａ、ｂ、ｃは、機械学習機能等によって導き出すことができる。
【００５４】
このような過程を通じて類似語が検索（抽出）されると、図２に示すように、類似語推薦部１０５は、検索された類似語をひらがな、カタカナ、または漢字のうちのいずれか１つの日本語形態に変換して推薦する。例えば、入力された単語がひらがな形態である場合、類似語推薦部１０５は、検索された類似語をひらがな形態、カタカナ形態、または漢字状態のうちのいずれか１つの日本語形態に変換して推薦することができる。すなわち、類似語推薦部１０５は、検索された類似語を入力された単語の日本語形態と異なる形態に変換して推薦することができる。
【００５５】
また、一例として、類似語推薦部１０５は、ローマ字に変換された状態の類似度とローマ字に変換されない状態の類似度との差が、予め設定した基準を超える場合、ローマ字に変換された状態の類似度が高い場合であっても該当の類似語を推薦しないようにすることができる。さらに他の一例としては、類似語推薦部１０５は、入力された単語が推薦される類似語よりもさらに多く用いられる場合に類似語を推薦しなくてもよい（ユーザに推薦される類似語の質疑頻度と、ユーザによって入力された単語１０７による質疑頻度（入力頻度）とを比較し、ユーザに推薦される類似語の質疑頻度がユーザによって入力された単語１０７による質疑頻度よりも低い場合、言い換えれば、ユーザが入力した単語１０７が推薦される類似語よりもその頻度が高い場合、あえて使用頻度の低い類似語を推薦しない）。
【００５６】
また、入力された単語が誤字である場合、正解単語選択部１０６は、類似度点数または単語の入力頻度による編集距離に基づいて、検索された類似語のうちの単語に対する正解単語を選択してもよい。具体的に、正解単語選択部１０６は、類似度点数が最も高いか、または単語の入力頻度が高くて編集距離が低い類似語を単語に対する正解単語を選択することができる。
【００５７】
図３は、本発明の一実施形態に係る漢字からひらがなに変換する過程を示す図である。
【００５８】
本発明の一実施形態に係る漢字−ひらがな変換部１０２は、入力された漢字をひらがなに変換する。ローマ字変換部１０３は、漢字−ひらがな変換部１０２によって変換されたひらがな及び入力されたひらがな及びカタカナをローマ字に変換してもよい。
【００５９】
一例として、漢字−ひらがな変換部１０２は、トークン分割学習データ３０２を用いてトークン分割処理３０５を遂行し、入力された漢字３０４をトークン別に分割する。そして、漢字−ひらがな変換学習データ３０３を用いて漢字−ひらがな変換処理３０６を遂行し、トークン分割処理によって分割されたトークン３０５を対応するひらがな３０７に変換する。
【００６０】
例えば、入力された単語が「僕と彼女の生きる道」である場合、トークン分割学習データ３０２を用いて、「僕、と、彼女、の、生き、る、道」のようにトークン分割処理を行い、各トークンバイグラムから最大の確率値を有するひらがな状態列を選択する。具体的には、「僕−ぼく  と  彼女−かのじょ  の  生きる−いきる  道−みち」と変換し、最終的に「ぼくとかのじょのいきるみち」のひらがな形態に変換する。
【００６１】
このとき、学習データは、日本語ニュースまたは日本語ブログに掲示された文書のような日本語文書３０１において漢字３０４に対応するひらがな学習文書を作り、学習文書に基づいて、所定の機械学習アルゴリズムによって入力形態に従うひらがなを選択して組み合わせることで決定することができる。
【００６２】
一例として、トークン分割学習データ３０２は、漢字の形態素トークン別に分離するコーパス（ｃｏｒｐｕｓ）を用いて、隠れマルコフモデル（Ｈｉｄｄｅｎ  Ｍａｒｋｏｖ  Ｍｏｄｅｌ：ＨＭＭ）基盤の分かち書き学習アルゴリズムに基づいて決定することができる。このとき、音節トライグラム（ｔｒｉｇａｍ）ＨＭＭ基盤の分かち書き学習アルゴリズムに基づいてトークン分割学習データ３０２が決定することもできる。
【００６３】
また、一例として、漢字−ひらがな変換学習データ３０３は、漢字３０４の形態素トークン別に分離するコーパスに基づく学習アルゴリズムに基づいて決定されたユニグラム（ｕｎｉｇｒａｍ）辞書３０３−１およびバイグラム（ｂｉｇｒａｍ）辞書３０３−２を含むことができる。この場合、ユニグラム辞書３０３−１は、トークンとひらがなとの間の頻度数（トークン−ひらがな）で構築することができる。バイグラム辞書３０３−２は、トークン間の頻度数（トークン１−トークン２）で構築することができる。すなわち、漢字−ひらがな変換部１０２は、日本語文書３０１から所定の学習処理に基づいて決定されたトークン分割学習データ３０２および漢字−ひらがな変換学習データ３０３を用いて漢字３０４をひらがな３０７に変換することができる。
【００６４】
また、他の一例としては、漢字−ひらがな変換部１０２は、トークン分割学習データ３０１に基づいて漢字３０４から分割されたトークンに対し、２つのトークン毎にバイグラム辞書３０３−２を検索して、最大の確率を有するトークンを選択することができる。また、漢字−ひらがな変換部１０２は、最終的に選択されたトークンに対してユニグラム辞書３０３−１に対応するひらがな３０７に変換する。なお、バイグラム辞書３０３−２の情報量が足りない場合、漢字−ひらがな変換部１０２は、ユニグラム辞書３０３−１を用いて最大の確率を有するトークンを選択することができる。
【００６５】
図４は、本発明の一実施形態におけるひらがな又はカタカナをローマ字に変換する一例を示す図である。
【００６６】
同図に示すように、「あ」行と「か」行に対してローマ字に変換する一例を示している。ローマ字変換部１０３は、日本語のひらがな形態またはカタカナ形態で表現される単語の発音をローマ字（ｒｏｍａｊｉ）に変換する。このとき、入力された単語が漢字である場合、漢字−ひらがな変換部１０２によって漢字をひらがなに変換する。
【００６７】
同図に示すように、「あ」行に対してローマ字変換部１０３は、ひらがな「あ」をローマ字「ａ」に変換する。また、ローマ字変換部１０３は、ひらがな「い」をローマ字「ｉ」に変換する。同様に、ローマ字変換部１０３は各ひらがな「う」を「ｕ」に、「え」を「ｅ」に、「お」を「ｏ」に変換する。このような変換過程を通じて日本語自動推薦システム１００は、ひらがなまたはカタカナをローマ字に変換し変換されたローマ字を用いることでより精密に入力された単語の類似語を検索することができる。
【００６８】
また、上述したように、ひらがなとカタカナをそのまま用いて類似語を検索する場合は、編集距離の解像度が低いため、人間ではないサーバのような機械の場合、「オリゴン」と「オリコン」を区別することが難しい。この場合、「オリゴン」と「オリコン」をローマ字の「ｏｒｉｇｏｎ」と「ｏｒｉｋｏｎ」で比較することによって、より精密な類似度点数を算定して類似語推薦の正確度を向上させることができる。
【００６９】
図５は、本発明の一実施形態に係る日本語自動推薦方法の全体の処理遷移を示すフローチャートである。
【００７０】
同図を参照すると、日本語自動推薦システム１００は、ユーザ端末に表示された所定のページ又は画面を介してユーザから入力された単語が誤字であるかを判断する（Ｓ５０１）。このとき、入力された単語が誤字である場合、日本語自動推薦システム１００は、単語に対する類似語の中から正解単語を選択して提供する（Ｓ５０７）。
【００７１】
日本語自動推薦システム１００は、入力された単語が誤字でなく正字である場合であっても、入力された単語に対する類似語を自動的に推薦することができる。日本語自動推薦システム１００は、入力された単語が漢字であるかを判断する（Ｓ５０２）。なお単語が漢字であると判断された場合、日本語自動推薦システム１００は、漢字をひらがなに変換し（Ｓ５０３）、その後、ステップＳ５０４を遂行する。入力された単語が漢字でない場合は、ステップＳ５０４における変換過程を経ない。
【００７２】
具体的に、日本語自動推薦システム１００は、単語が漢字であると判断された場合又は入力された単語に漢字が含まれると判別された場合、トークン分割学習データを用いて単語をトークン別に分割し、さらに漢字−ひらがな変換学習データを用いて分割されたトークンに対応するひらがなに変換する。
【００７３】
このとき、トークン分割学習データは、漢字の形態素トークン別に分離するコーパスを用いて隠れマルコフモデル基盤の分かち書き学習アルゴリズムに基づいて決定することができる。また、漢字−ひらがな変換学習データは、漢字の形態素トークン別に分離されるコーパスに基づく学習アルゴリズムによって決定されたバイグラム辞書およびユニグラム辞書を含むことができる。ここで、バイグラム辞書は、トークンとの間の頻度数で構築され、ユニグラム辞書は、トークンとひらがなとの間の頻度数で構築される。
【００７４】
この場合、日本語自動推薦システム１００は、分割されたトークンに対してバイグラム辞書を検索して最大の確率を示すトークンを選択し、選択されたトークンに対してユニグラム辞書に対応するひらがなに変換する。
【００７５】
日本語自動推薦システム１００は、日本語のひらがな形態またはカタカナ形態で表現される単語の発音をローマ字に変換する（Ｓ５０４）。日本語自動推薦システム１００は、変換されたローマ字に基づいて入力された単語に対する類似語を検索する（Ｓ５０５）。
【００７６】
なお、一例として、日本語自動推薦システム１００は、ローマ字に変換された単語の類似度点数に基づいて入力された単語に対する類似語を検索することができる。このとき、類似度点数は、単語の長さに応じた入力頻度、単語が長音、中点、促音、または濁音が含まれるか否かによる編集距離または単語の原型状態の比較程度のうちの少なくとも１つに基づいて、またはこれらを組み合わせて決定することができる。
【００７７】
また、日本語自動推薦システム１００は、検索された類似語をひらがな、カタカナ、または漢字のうちのいずれか１つの日本語形態に変換してユーザに推薦することもできる（Ｓ５０６）。このとき、類似語推薦部１０５は、検索された類似語を入力された単語の日本語形態と異なる形態に変換して推薦することができる。
【００７８】
また他の一例として、ローマ字に変換された状態の類似度とローマ字に変換されない状態の類似度との差が予め設定した基準を超える場合、日本語自動推薦システム１００は、類似語を推薦しないように構成することもできる。また、他の一例としては、入力された単語が推薦される類似語よりもさらに多く用いられる場合、日本語自動推薦システムは類似語を推薦しなくてもよい。
【００７９】
日本語自動推薦システム１００は、ステップＳ５０１において、入力された単語が誤字であると判断される場合、類似度点数または単語出現頻度（例えば、単語の入力頻度）による編集距離に基づいて、検索された類似語の中から単語に対する正解単語を選択して提供する（Ｓ５０７）。
【００８０】
図５において具体的に説明していない部分は、図１〜図４の説明を参考することができる。
【００８１】
また、本発明の一実施形態に係る日本語自動推薦方法は、コンピュータにより実現される多様な動作を実行するためのプログラム命令を含むコンピュータ読取可能な記録媒体を含む。当該記録媒体は、プログラム命令、データファイル、データ構造などを単独または組み合わせて含むこともでき、記録媒体およびプログラム命令は、本発明の目的のために特別に設計されて構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知であり使用可能なものであってもよい。コンピュータ読取可能な記録媒体の例としては、ハードディスク、フロッピー（登録商標）ディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、フロプティカルディスクのような磁気−光媒体、およびＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置が含まれる。また、記録媒体は、プログラム命令、データ構造などを保存する信号を送信する搬送波を含む光または金属線、導波管などの送信媒体でもある。プログラム命令の例としては、コンパイラによって生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コードを含む。上述したハードウェア装置は、本発明の動作を行うため１つ以上のソフトウェアモジュールとして作動するよう構成され、その逆も同様である。
【００８２】
上述したように、本発明の好ましい実施形態を参照して説明したが、該当の技術分野において熟練した当業者にとっては、特許請求の範囲に記載された本発明の技術的思想および領域から逸脱しない範囲内で、本発明を多様に修正および変更させることができることを理解することができるであろう。すなわち、本発明の技術的範囲は、特許請求の範囲に基づいて定められ、発明を実施するための最良の形態により制限されるものではない。
【符号の説明】
【００８３】
１００：日本語自動推薦システム
１０１：誤字判断部
１０２：漢字−ひらがな変換部
１０３：ローマ字変換部
１０４：類似語検索部
１０５：類似語推薦部
１０６：正解単語選択部
【図１】
2011008784.tif 000004
【図２】
2011008784.tif 000005
【図３】
2011008784.tif 000006
【図４】
2011008784.tif 000007
【図５】
2011008784.tif 000008