(57)【特許請求の範囲】
【請求項１】
入力されたユーザクエリが誤字・脱字クエリであるか否かを判断する誤字・脱字クエリ判断部と、
前記ユーザクエリについて、クエリ全体を単位として、誤字・脱字−正字クエリの対により構成される辞書データに誤字・脱字クエリとして格納されていれば、対となる正字クエリを前記クエリ全体と置き換えて校正する全体クエリ単位校正部と、
前記クエリ全体を単位として誤字・脱字−正字クエリの対により構成される辞書データに誤字・脱字クエリとして格納されていなければ、前記ユーザクエリを１つ以上の単語に分離し、前記分離した単語別に校正候補単語を生成し、前記生成された校正候補単語に基づいて前記ユーザクエリを構成する単語が含まれる前記校正候補単語を組み合わせて生成される候補クエリのうち、最も確率の高い候補クエリを校正クエリとして決定し、前記ユーザクエリに対する校正クエリを決定して、前記ユーザクエリを構成する単語単位で前記誤字・脱字クエリとして判断されたユーザクエリを校正する単語単位校正部と、
を含むことを特徴とするユーザクエリ校正システム。
【請求項２】
前記単語単位校正部は、前記ユーザクエリを構成する単語について、正字単語により構成される辞書データを探索し、前記ユーザクエリに対して単語単位で誤字・脱字クエリであるか否かを判断することを特徴とする請求項１に記載のユーザクエリ校正システム。
【請求項３】
前記全体クエリ単位校正部は、
前記ユーザクエリが前記誤字・脱字クエリとして登録されている場合、前記誤字・脱字−正字クエリの対により構成される辞書データに基づいて、正字クエリと前記ユーザクエリそれぞれに対して確率を算出する確率算出部と、
を含むことを特徴とする請求項１に記載のユーザクエリ校正システム。
【請求項４】
前記確率算出部は、前記ユーザクエリと前記正字クエリとの間の異なる音節に基づいて音節変換の確率を算出することを特徴とする請求項３に記載のユーザクエリ校正システム。
【請求項５】
前記全体クエリ単位校正部は、前記正字クエリの確率が前記ユーザクエリの確率よりも大きい場合、前記正字クエリを校正クエリとして決定し、
前記正字クエリの確率が前記ユーザクエリの確率よりも低い場合、全体クエリ単位のクエリ校正を終了することを特徴とする請求項３に記載のユーザクエリ校正システム。
【請求項６】
前記単語分離部は、前記ユーザクエリに含まれた単語の区切りにて、前記１つ以上の単語を、分離することを特徴とする請求項１に記載のユーザクエリ校正システム。
【請求項７】
前記候補単語生成部は、
正字単語により構成された辞書データを、前記分離した単語について探索する第１探索部と、
誤字・脱字−正字クエリの対により構成される辞書データを、前記分離した単語について探索する第２探索部と、
日英転換による候補単語または音節変換の規則による校正候補単語を抽出する候補単語抽出部と、
を含むことを特徴とする請求項１に記載のユーザクエリ校正システム。
【請求項８】
誤字・脱字−正字クエリの対により構成される辞書データを記憶するコンピュータにより、
入力されたユーザクエリが前記辞書データに誤字・脱字クエリとして格納されているかにより誤字・脱字クエリであるか否かを判断するステップと、
前記ユーザクエリが誤字・脱字クエリであると判断されれば、クエリ全体を対となる正字クエリと置き換えて校正するステップと、
前記ユーザクエリが誤字・脱字クエリであると判断されなければ、前記ユーザクエリを１つ以上の単語に分離し、前記分離した単語別に校正候補単語を生成し、前記ユーザクエリを構成する単語が含まれる前記校正候補単語を組み合わせて生成される候補クエリのうち、最も確率の高い候補クエリを校正クエリとして決定し、前記生成された校正候補単語に基づいて前記ユーザクエリに対する校正クエリを決定して、前記ユーザクエリを構成する単語単位で前記誤字・脱字クエリとして判断されたユーザクエリを校正するステップと、
の実行を含むことを特徴とするユーザクエリ校正方法。
【請求項９】
前記ユーザクエリに対してクエリ全体を単位として誤字・脱字クエリであるか否かを判断するステップは、前記ユーザクエリが２つ以上の単語で構成された場合、前記単語の間の区切りを単位として前記単語ごとに辞書データを探索することを特徴とする請求項８に記載のユーザクエリ校正方法。
【請求項１０】
前記ユーザクエリに対して単語単位で誤字・脱字クエリであるか否かを判断するステップは、前記ユーザクエリを構成する単語について正字単語により構成される辞書データを探索し、前記ユーザクエリに対して単語単位で誤字・脱字クエリであるか否かを判断することを特徴とする請求項８に記載のユーザクエリ校正方法。
【請求項１１】
前記ユーザクエリの全体クエリ単位で前記誤字・脱字クエリとして判断されたユーザクエリを校正するステップは、
前記ユーザクエリが誤字・脱字−正字クエリの対により構成される辞書データの誤字・脱字クエリに登録されているか否かを判断するステップと、
前記誤字・脱字クエリに登録された場合、前記誤字・脱字−正字クエリの対により構成される辞書データに基づく正字クエリと前記ユーザクエリそれぞれに対して確率を算出するステップと、
を含むことを特徴とする請求項８に記載のユーザクエリ校正方法。
【請求項１２】
前記誤字・脱字−正字クエリの対により構成される辞書データに基づく正字クエリと前記ユーザクエリそれぞれに対して確率を算出するステップは、前記ユーザクエリと前記正字クエリとの間の異なる音節に基づいて音節変換の確率を算出することを特徴とする請求項１１に記載のユーザクエリ校正方法。
【請求項１３】
前記ユーザクエリの全体クエリ単位で前記誤字・脱字クエリとして判断されたユーザクエリを校正するステップは、
前記正字クエリの確率が前記ユーザクエリの確率よりも大きい場合、前記正字クエリを校正クエリとして決定するステップと、
前記正字クエリの確率が前記ユーザクエリの確率よりも低い場合、全体クエリ単位のクエリ校正を終了するステップと、
を含むことを特徴とする請求項１１に記載のユーザクエリ校正方法。
【請求項１４】
前記ユーザクエリを１つ以上の単語に分離するステップは、前記ユーザクエリに含まれる単語の区切りにて、前記１つ以上の単語を、分離することを特徴とする請求項８に記載のユーザクエリ校正方法。
【請求項１５】
前記分離した単語別に校正候補単語を生成するステップは、
正字単語により構成された辞書データから前記分離した単語を探索するステップと、
誤字・脱字−正字クエリの対により構成される辞書データを前記分離した単語について探索するステップと、
日英転換による候補単語または音節変換の規則による校正候補単語を抽出するステップと、
を含むことを特徴とする請求項８に記載のユーザクエリ校正方法。
【請求項１６】
請求項８〜請求項１５のいずれか一項の方法を行うためのプログラムが記録されたコンピュータで読み出し可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は統計データに基づくユーザクエリ校正システムおよび方法に関し、より詳しくは、誤字・脱字クエリとして判断されるユーザクエリに対し、クエリ全体を単位として、または単語を単位として校正するシステムおよび方法に関する。
【背景技術】
【０００２】
ユーザは、所望する情報を得るために検索を行う場合を考える。この場合、ユーザは検索ページのクエリ入力ウィンドウにクエリ（単語、キーワードや問い合わせ式）を入力することによって検索を行うことができる。このとき、ユーザは、ハングル−英語の変換キーや日本語−英語の変換キーを適切に切り替えることができず、誤ったクエリを入力する場合がある。また、キーボードに存在する他のキーを誤って押すか、あるいは重複して押すなどして、意図しないクエリが入力されるときがある。
【０００３】
このようにユーザにとって意図されない誤字・脱字クエリの入力に対してして検索を行なうと、本来意図した検索結果と全く関係のない検索結果が導き出されることになり、検索の品質が悪化する虞がある。
【０００４】
したがって、ユーザが無意識的に誤字・脱字クエリを入力することがあることに対応するためには、誤字・脱字クエリが入力されたときに、リアルタイムに誤字・脱字クエリをユーザが本来意図する正字クエリに変更する方法が必要である。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、ユーザが本来に入力しようとした正字クエリを検索エンジンなどのシステムが把握することには難しい問題があり、かえってシステムが提案した正字クエリが意図しない結果をもたらす虞がある。
【０００６】
したがって、ユーザが誤字・脱字クエリを入力してしまった場合、ユーザの意図を反映して正確度の高い正字クエリを提供する方法が要求される。
【課題を解決するための手段】
【０００７】
本発明は、クエリ全体を単位として（全体クエリ単位に）、または、単語を単位として（単語単位に）、ユーザクエリが誤字・脱字クエリであるか否かを判断することによって、誤字・脱字クエリを判断する正確度を向上させるユーザクエリ校正システムおよび方法を提供する。
【０００８】
本発明は、クエリ全体を単位として、または、単語を単位として誤字・脱字として判断されたユーザクエリを校正することによって、誤字・脱字クエリをより正確に校正することのできるユーザクエリ校正システムおよび方法を提供する。
【０００９】
本発明は、クエリ全体を単位として誤字・脱字クエリを校正する場合、ユーザクエリがクエリ全体を単位として校正された校正クエリよりも確率が高い場合、クエリ校正を行わないことによって、ユーザの意図を充実に反映させたユーザクエリ校正システムおよび方法を提供する。
【００１０】
本発明は、単語を単位として誤字・脱字クエリを校正する場合、それぞれの単語に対する候補単語を生成し、候補単語を組み合わせて発生する候補クエリの中から最も確率の高い候補クエリに校正することによって、誤字・脱字クエリを校正するにあたって正確度を向上させるユーザクエリ校正システムおよび方法を提供する。
【００１１】
本発明の一実施形態に係るユーザクエリ校正システムは、入力されたユーザクエリが誤字・脱字クエリであるか否かを判断する誤字・脱字クエリ判断部と、前記ユーザクエリについてクエリ全体を単位として前記誤字・脱字クエリとして判断されたユーザクエリを校正する全体クエリ単位校正部と、前記ユーザクエリを構成する単語単位で前記誤字・脱字クエリとして判断されたユーザクエリを校正する単語単位校正部と、を含んでもよい。
【００１２】
本発明の一側面による誤字・脱字クエリ判断部は、前記ユーザクエリに対してクエリ全体を単位として誤字・脱字クエリであるか否かを判断する第１判断部と、前記ユーザクエリに対して単語を単位として誤字・脱字クエリであるか否かを判断する第２判断部と、を含んでもよい。
【００１３】
本発明の一側面による全体クエリ単位校正部は、前記ユーザクエリが誤字・脱字−正字クエリの対により構成される辞書データの誤字・脱字クエリに登録されているか否かを判断する登録判断部と、前記誤字・脱字クエリに登録された場合、前記誤字・脱字−正字クエリの対により構成される辞書データに基づく正字クエリと前記ユーザクエリそれぞれに対して確率を算出する確率算出部と、を含んでもよい。
【００１４】
本発明の一側面による単語単位校正部は、前記ユーザクエリを１つ以上の単語に分離する単語分離部と、前記分離した単語別に校正候補単語を生成する候補単語生成部と、前記生成された校正候補単語に基づいて前記ユーザクエリに対する校正クエリを決定する校正クエリ決定部と、を含んでもよい。
【００１５】
本発明の一側面によるユーザクエリ校正方法は、入力されたユーザクエリが誤字・脱字クエリであるか否かを判断するステップと、前記ユーザクエリについて、クエリ全体を単位として前記誤字・脱字クエリとして判断されたユーザクエリを校正するステップと、前記ユーザクエリを構成する単語単位で前記誤字・脱字クエリとして判断されたユーザクエリを校正するステップと、を含んでもよい。
【発明の効果】
【００１６】
本発明の一実施形態によれば、クエリ全体を単位として、または、単語を単位としてユーザクエリが誤字・脱字クエリであるか否かを判断することによって、誤字・脱字クエリの判断についての正確度を向上させるユーザクエリ校正システムおよび方法が提供される。
【００１７】
本発明の一実施形態によれば、クエリ全体を単位として、または、単語を単位として誤字・脱字として判断されたユーザクエリを校正することによって、誤字・脱字クエリをより正確に校正することのできるユーザクエリ校正システムおよび方法が提供される。
【００１８】
本発明の一実施形態によれば、クエリ全体を単位として誤字・脱字クエリを校正する場合、ユーザクエリがクエリ全体を単位として校正された校正クエリよりも確率の高い場合にクエリ校正を行わないことによって、ユーザの意図を忠実に反映したユーザクエリ校正システムおよび方法が提供される。
【００１９】
本発明の一実施形態によれば、単語を単位として誤字・脱字クエリを校正する場合、各単語に対する候補単語を生成し、候補単語を組み合わせて発生する候補クエリのうち、最も確率の高い候補クエリに校正することによって、誤字・脱字クエリを校正することにおいて正確度を向上させるユーザクエリ校正システムおよび方法が提供される。
【図面の簡単な説明】
【００２０】
【図１】本発明の一実施形態に係るユーザクエリ校正システムの動作を説明するための図である。
【図２】本発明の一実施形態に係るユーザクエリ校正システムの全体的な構成を示すブロックダイアグラムである。
【図３】本発明の一実施形態に係る誤字・脱字クエリ判断部の動作を説明するためのフローチャートである。
【図４】本発明の一実施形態に係る全体クエリ単位校正部の動作を説明するためのフローチャートである。
【図５】本発明の一実施形態に係る単語単位校正部において全体動作を説明するためのフローチャートである。
【図６】本発明の一実施形態に係る単語別の校正候補を生成する過程を示すフローチャートである。
【図７】本発明の一実施形態に係るユーザクエリから単語単位の校正によって校正クエリを生成する一例を示す図である。
【図８】本発明の一実施形態に係るユーザクエリ校正方法を示すフローチャートである。
【発明を実施するための形態】
【００２１】
以下、添付された図面に記載された内容を参照して本発明に係る実施形態を詳細に説明する。ただし、本発明が実施形態によって制限されたり限定されたりすることはない。各図面に提示された同一の参照符号は同一の部材を示す。
【００２２】
図１は、本発明の一実施形態に係るユーザクエリ校正システムの動作を説明するための図である。
【００２３】
図１に示すように、ユーザは検索のためのユーザクエリを入力することができる。このとき、ユーザクエリは、１つまたは２つ以上の単語で構成されていてもよい。入力されたユーザクエリはユーザクエリ校正システム１００に送信されてもよい。そして、ユーザクエリ校正システム１００は、入力されたユーザクエリが誤字・脱字クエリであるか否かを判断してもよい。
【００２４】
もし、ユーザクエリが誤字・脱字クエリであると判断された場合、ユーザクエリ校正システム１００は、誤字・脱字クエリを校正した校正クエリを提供してもよい。一例として、ユーザクエリ校正システム１００は、クエリ全体を単位として誤字・脱字クエリを校正してもよい。また、クエリ全体を単位として校正が失敗すれば、ユーザクエリ校正システム１００は単語単位に応じて誤字・脱字クエリを校正してもよい。
【００２５】
このとき、ユーザクエリ校正システム１００が、誤字・脱字クエリを校正した校正クエリを生成するとしても、ユーザにとっては、校正クエリよりも、最初に入力したユーザクエリが好ましい場合がある。この場合には、ユーザクエリ校正システム１００は、校正クエリでない、そのままのユーザクエリを結果として導き出してもよい。
【００２６】
図２は、本発明の一実施形態に係るユーザクエリ校正システムの全体的な構成を示すブロックダイアグラムである。
【００２７】
図２に示すように、ユーザクエリ校正システム１００は、誤字・脱字クエリ判断部２０１、全体クエリ単位校正部２０２、および単語単位校正部２０３を含んでもよい。
【００２８】
本明細書において用いられる用語を定義すれば次のとおりである。
【００２９】
ユーザクエリはユーザが入力したクエリを意味する。例えば、ユーザクエリは、ユーザが検索するとき、あるいは、文書の作成のときなどに入力される単語または単語の集合で構成されてもよい。
【００３０】
誤字・脱字クエリは、ユーザが入力したユーザクエリのうち、日英キー（日本語−英語の変換キー）などの変換キーが誤って押下された場合や押下されなかった場合、または他のキーの押下が誤ったなどの理由により発生するクエリを意味する。誤字・脱字クエリが発生する理由は他にも様々に存在し得る。
【００３１】
誤字・脱字−正字クエリが対で構成される辞書データは、誤字・脱字クエリそれぞれに対応する正字クエリを含むデータを意味してもよい。誤字・脱字クエリは空白を含んでもよく、正字クエリも空白を含んでもよい。誤字・脱字−正字クエリの対により構成される辞書データの一例は次のとおりである。
【００３２】
【表１】
0005647451.tif 000002
【００３３】
正字単語で構成される辞書データは、正字単語が含まれるデータを意味する。一例として、正字単語は、国語辞書、百科辞書などの正確度が極めて高いデータから抽出してもよい。誤字・脱字−正字クエリが対で構成される辞書データは、誤字・脱字クエリ全てに対する正字クエリを提供するものである。一方、正字単語で構成される辞書データは、誤字・脱字クエリを構成する各単語に対応する正字単語を提供してもよい。
【００３４】
誤字・脱字クエリ判断部２０１は、入力されたユーザクエリが誤字・脱字クエリであるか否かを判断してもよい。一例として、誤字・脱字クエリ判断部２０１は、第１判断部および第２判断部を含んでもよい。
【００３５】
本発明の一実施形態によれば、第１判断部はユーザクエリについてクエリ全体を単位として誤字・脱字クエリであるか否かを判断してもよい。このとき、第１判断部は、ユーザクエリを誤字・脱字−正字クエリが対で構成される辞書データから探索し、ユーザクエリに対してクエリ全体を単位として誤字・脱字クエリであるか否かを判断してもよい。
【００３６】
すなわち、第１判断部は、誤字・脱字−正字クエリが対で構成される辞書データにユーザクエリの全体が存在するか否かを探索し、ユーザクエリが誤字・脱字クエリであるか否かを判断してもよい。もし、ユーザクエリが２つ以上の単語で構成された場合、第１判断部は単語の間の区切り（例えば、空白やその他の区切り文字）を維持して辞書データを検索してもよい。言い換えると、ユーザクエリを、単語の間の区切りで区切って１つ以上の単語を切り出し、切り出された単語のそれぞれについて、誤字・脱字の単語であるかを判断してもよい。もし、誤字・脱字の単語であると判断されれば、正字の単語に校正して、ユーザクエリを再構成してもよい。ユーザクエリを再構成するには、切り出され、必要であれば正字の単語に校正した後、単語の区切りを維持して単語を連接する。
【００３７】
本発明の一実施形態によれば、第２判断部は、ユーザクエリに対して単語単位で誤字・脱字クエリであるか否かを判断してもよい。このとき、第２判断部は、ユーザクエリを構成する単語について、正字単語により構成される辞書データを探索し、ユーザクエリに対して単語単位で誤字・脱字クエリであるか否かを判断してもよい。すなわち、第２判断部は、ユーザクエリを構成する各構成要素を正字単語と比べ、ユーザクエリが誤字・脱字クエリであるか否かを判断してもよい。
【００３８】
誤字・脱字クエリ判断部２０１に対しては図３において更に具体的に説明する。
【００３９】
全体クエリ単位校正部２０２は、ユーザクエリのクエリ全体を単位として、誤字・脱字クエリとして判断されたユーザクエリを校正してもよい。すなわち、全体クエリ単位校正部２０２は、入力されたユーザクエリの全体に対応して校正クエリを生成してもよい。一例として、全体クエリ単位校正部２０２は、登録判断部および確率算出部を含んでもよい。
【００４０】
本発明の一実施形態によれば、登録判断部は、ユーザクエリが誤字・脱字−正字クエリの対により構成される辞書データの誤字・脱字クエリに登録されているか否かを判断してもよい。このとき、ユーザクエリが辞書データに誤字・脱字クエリとして登録されていない場合、クエリ全体を単位とする校正は失敗した（あるいは、クエリ全体は構成する必要がなかった）ものと処理される。
【００４１】
一方、ユーザクエリが辞書データに誤字・脱字クエリとして登録されている場合、確率算出部は、誤字・脱字−正字クエリの対により構成される辞書データに基づく正字クエリとユーザクエリそれぞれに対して確率を算出してもよい。このとき、算出される確率は、辞書データに基づく正字クエリが検索に更に適切であるか、またはユーザが最初に入力したユーザクエリが検索において更に適切であるか否かを表してもよい。このとき、確率算出部は、ユーザクエリと正字クエリとの間の異なる音節に基づいて音節変換の確率を算出してもよい。
【００４２】
ユーザクエリの確率が正字クエリの確率よりも大きい場合、クエリ全体を単位とするクエリ校正を終了してもよい（校正を行なわない、あるいはユーザクエリを校正クエリとする）。反対に、正字クエリの確率がユーザクエリの確率よりも大きい場合、正字クエリを校正クエリとして決定してもよい。全体クエリ単位校正部２０２については、図４を参照して具体的に説明する。
【００４３】
単語単位校正部２０３は、ユーザクエリを構成する単語単位で誤字・脱字クエリとして判断されたユーザクエリを校正してもよい。本発明の一実施形態によれば、単語単位校正部２０３は、単語分離部、候補単語生成部、および校正クエリ決定部を含んでもよい。
【００４４】
単語分離部は、ユーザクエリを、１つ以上の単語に分離してもよい。このとき、単語分離部は、ユーザクエリに含まれた空白などの単語区切りを単位として分離を行ない、１つ以上の単語にユーザクエリを分離してもよい。例えば、ユーザクエリが「Ａ  Ｂ  Ｃ」として構成されている場合、単語分離部は、空白を単位として、ユーザクエリを「Ａ」、「Ｂ」、「Ｃ」に分離してもよい。また、ユーザクエリを1つ以上の単語に分離する場合には、空白を単位とする以外に、句読点などの区切り文字を単位として分離してもよいし、形態素解析などの手法を用いて個々の単語に分離（切り出）してもよい。
【００４５】
候補単位生成部は、分離した単語ごとに校正候補単語を生成してもよい。本発明の一実施形態によれば、候補単語生成部は、第１探索部、第２探索部、および候補単語抽出部を含んでもよい。
【００４６】
第１探索部は、正字単語で構成された辞書データを、分離された個々の単語について探索をしてもよい。すなわち、分離された個々の単語についてその単語が辞書データに含まれているかどうかを検出するために辞書データを検索してもよい。また、第１探索部において単語の探索が失敗すれば、第２探索部は、誤字・脱字−正字クエリの対により構成される辞書データを、分離された個々の単語について探索をしてもよい。第２探索部において単語の探索が失敗すれば、候補単語抽出部は、日英変換による候補単語または音節変換の規則による校正候補単語を抽出してもよい。第１探索部および第２探索部において単語の探索が成功すれば、探索された単語を校正候補単語としてもよい。
【００４７】
校正クエリ決定部は、候補単語生成部によって生成された校正候補単語に基づいてユーザクエリに対する校正クエリを決定してもよい。一例として、校正クエリ決定部は、ユーザクエリを構成する単語が含まれた校正候補単語を組み合わせて最適な校正クエリを決定してもよい。このとき、校正クエリ決定部は、ユーザクエリを構成する単語と校正候補単語とを組み合わせて生成される候補クエリの中から最も確率の高い候補クエリを校正クエリとして決定してもよい。
【００４８】
単語単位校正部２０３については、図５〜図７を参照して具体的に説明する。
【００４９】
図３は、本発明の一実施形態に係る誤字・脱字クエリ判断部の動作を説明するためのフローチャートである。
【００５０】
誤字・脱字クエリ判断部２０１は、入力されたユーザクエリが誤字・脱字クエリであるか否かを判断してもよい。具体的に、誤字・脱字クエリ判断部２０１は、クエリ全体を単位として誤字・脱字−正字クエリの対により構成される辞書データを検索してもよい（Ｓ３０１）。例えば、ユーザクエリが「スマップ  政界に一つだけの花」と入力され、誤字・脱字−正字クエリが対で構成される辞書データに「スマップ  政界に一つだけの花−スマップ  世界に一つだけの花」が含まれている場合、誤字・脱字クエリ判断部２０１は、ユーザクエリを誤字・脱字クエリとして判断してもよい。
【００５１】
このとき、ユーザクエリが２つ以上の単語で構成される場合、誤字・脱字クエリ判断部２０１は、単語の区切りや単語の間の空白、句読点などの区切り文字を維持しながら誤字・脱字−正字クエリが対で構成される辞書データからユーザクエリを検索してもよい。
【００５２】
また、ステップＳ３０１において探索が失敗した場合、誤字・脱字クエリ判断部２０１は、単語単位に正字単語で構成された辞書データを検索してもよい（Ｓ３０２）。このとき、誤字・脱字クエリ判断部２０１は、ユーザクエリを構成する単語すべてについて辞書データを探索してもよい。
【００５３】
もし、ユーザクエリを構成する単語すべてが辞書データから探索されれば、誤字・脱字クエリ判断部２０１はユーザクエリを正字クエリとして判断してもよい。反対に、ユーザクエリを構成する単語のうち、辞書データの探索が失敗した単語が存在する場合、誤字・脱字クエリ判断部２０１はユーザクエリを誤字・脱字クエリとして判断してもよい。
【００５４】
例えば、ユーザクエリが「Ａ＋Ｂ」であり、ユーザクエリを構成する単語ＡとＢが正字辞書に存在すれば、誤字・脱字クエリ判断部２０１はユーザクエリを正字クエリとして判断してもよい。また、ユーザクエリが「Ｃ＋Ｄ」であり、「Ｃ」が辞書データに登録されているが、単語「Ｄ」が辞書データに登録されていない場合、誤字・脱字クエリ判断部２０１は「Ｃ＋Ｄ」を誤字・脱字クエリとして判断してもよい。
【００５５】
図４は、本発明の一実施形態に係る全体クエリ単位校正部の動作を説明するためのフローチャートである。
【００５６】
全体クエリ単位校正部２０２は、ユーザクエリのクエリ全体を単位として誤字・脱字クエリとして判断されたユーザクエリを校正してもよい。
【００５７】
全体クエリ単位校正部２０２は、誤字・脱字−正字クエリの対により構成される辞書データをユーザクエリについて検索して、ユーザクエリが誤字・脱字クエリとして登録されているか否かを判断してもよい（Ｓ４０１）。
【００５８】
もし、ユーザクエリが誤字・脱字クエリに登録されていない場合、全体クエリ単位校正部２０２はクエリ全体を単位とする校正に失敗した（あるいは校正する必要がない）として処理する。また、ユーザクエリが誤字・脱字クエリに登録されている場合、全体クエリ単位校正部２０２は、誤字・脱字−正字クエリの対により構成される辞書データに基づく正字クエリとユーザクエリそれぞれに対して確率を算出してもよい（Ｓ４０２）。すなわち、全体クエリ単位校正部２０２は、ユーザクエリの全体が辞書データに登録されている場合、クエリ全体を単位として校正を行ってもよい。
【００５９】
このとき、正字クエリの確率が大きい場合、全体クエリ単位校正部２０２は、正字クエリを、ユーザクエリに対するクエリ全体を単位とする校正クエリとして、決定してもよい。また、ユーザクエリの確率が大きい場合、全体クエリ単位校正部２０２はクエリ校正を終了してもよい。このとき、確率はユーザクエリと正字クエリのうち、いずれのものが最も適するかを表示してもよい。
【００６０】
例えば、ユーザが「Ｐ＋Ｑ」をユーザクエリとして入力した場合、誤字・脱字−正字クエリの対により構成される辞書データに「Ｐ＋Ｑ−Ｐ’＋Ｑ」が含まれている（登録されている）と仮定する。このとき、実際に「Ｐ＋Ｑ」が単語や句として実際に使用されている場合、むしろ「Ｐ＋Ｑ」が「Ｐ’＋Ｑ」よりもさらに適したクエリと言える。この場合、正字クエリである「Ｐ’＋Ｑ」が「Ｐ＋Ｑ」よりも低い確率を示す場合がある。
【００６１】
本発明の一実施形態によれば、全体クエリ単位校正部２０２は、ユーザクエリと正字クエリとの間の異なる音節に基づいて音節変換の確率を算出してもよい。一例として、正字クエリとユーザクエリの確率は下記の数式１によって決定してもよい。
【００６２】
−正字クエリの確率：
【数１】
0005647451.tif 000003
−ユーザクエリの確率：
【数２】
0005647451.tif 000004
このとき、
【数３】
0005647451.tif 000005
【数４】
0005647451.tif 000006
【００６３】
Ｑはユーザクエリを意味し、Ｑ’は誤字・脱字−正字クエリの対により構成される辞書データの探索によって校正された正字クエリを意味する。このとき、
0005647451.tif 000007
に対して音節単位の音節変換の確率を用いてもよい。ここで、
0005647451.tif 000008
は、ユーザが誤字・脱字を正字として間違っていることを知っており、ユーザが入力を誤っていることを認知し、正字に校正する確率を意味する。または
0005647451.tif 000009
は、ユーザが誤字・脱字クエリを入力した後、クエリが間違って入力されたことを認知し、正字クエリを入力する確率と解釈してもよい。
【００６４】
0005647451.tif 000010
は、
0005647451.tif 000011
に置き換えてもよい。このとき、
0005647451.tif 000012
は、ユーザがユーザクエリを正字クエリであると思っていたが、タイピングの過程において誤字・脱字を生成する確率と解釈してもよい。
【００６５】
ユーザクエリを構成する単語全てに対して変換確率を求める場合、辞書に登録されているデータ（資料）が不足していることによる問題が生じ得る。また、単語の数が増加すると計算量が急激に増加する場合もある。したがって、本発明の一実施形態によれば、全体クエリ単位校正部２０２は、ユーザクエリと正字クエリのうち、異なる音節列の部分に対して音節単位での音節変換に関する確率を算出してもよい。
【００６６】
一例として、数式４において
0005647451.tif 000013
を、次の数式５によって定義してもよい。
【００６７】
【数５】
0005647451.tif 000014
【００６８】
このとき、数式５において、
0005647451.tif 000015
は音節間での変換確率を表す。全体クエリ単位校正部２０２は、単語を、ｑｉｊとｑ’ｉｊに対応するように異なる音節列を基準として分割を行う。数式５においては、ｋ個の分割が行われると仮定する。すると、全体クエリ単位校正部２０２は、分割された結果のうち、互いに異なる音節列に対して確率を算出してもよい。例えば、ユーザクエリがａｂｃｄであり、正字クエリがａｂｅｄである場合、音節間の変換確率
0005647451.tif 000016
は、
0005647451.tif 000017
となる。
【００６９】
一例として、音節間の変換確率は、誤字・脱字−正字クエリの対により構成される辞書データと、ＱＣ（ユーザクエリに対する入力頻度）と、ＱＱ（ユーザクエリが対で入力される頻度）とを用いて次の過程によって算出してもよい。
【００７０】
（１）辞書データに含まれた誤字・脱字−正字クエリの対それぞれにＱＣ、ＱＱを付与する。例えば、ａｂｃｄ（ｑｃ：１０）−ａｂｅｄ（ｑｃ：１００）、ｑｑ：５
【００７１】
（２）誤字・脱字−正字クエリの対において、互いに異なる部分文字列（ｃ−ｅ）を決定する。
【００７２】
（３）部分文字列の頻度を算出する。具体的に、辞書データからｃ−ｅの対を含む全ての誤字・脱字−正字クエリの対（誤字・脱字−正字クエリの対のうち、誤字・脱字にｃを含み、正字の対応する音節位置にｅを含むもの）についてのｑｃ、ｑｑの和を算出する。例えば、ｃ（ｑｃ：５０）−ｅ（ｑｃ：１０００）、ｑｑ：２０
【００７３】
（４）算出された頻度を用いて音節変換の確率を算出する。
【数６】
0005647451.tif 000018
＝２０／５０
【００７４】
図５は、本発明の一実施形態に係る単語単位校正部で全体動作を説明するためのフローチャートである。
【００７５】
単語単位校正部２０３は、ユーザクエリを１つ以上の単語に分離（ｔｏｋｅｎｉｚｅｒ）してもよい（Ｓ５０１）。このとき、単語単位校正部２０３は、ユーザクエリに含まれた空白単位に少なくとも１つの単語を分離してもよい。例えば、ユーザクエリが「ＡＢＣ」として構成されている場合、単語単位校正部２０３はユーザクエリを「Ａ」、「Ｂ」、「Ｃ」にそれぞれ分離してもよい。
【００７６】
単語単位校正部２０３は、分離した単語別に校正候補単語を生成してもよい（Ｓ５０２）。一例として、単語単位校正部２０３は、正字単語により構成された辞書データを、分離した単語について探索してもよい。また、探索に失敗した場合、単語単位校正部２０３は、誤字・脱字−クエリの対により構成される辞書データを、分離した単語について探索してもよい。この場合にも探索に失敗した場合、単語単位校正部２０３は、日英転換による候補単語または音節変換の規則による校正候補単語を抽出してもよい。ステップＳ５０２に対しては図６および図７を用いてより具体的に説明する。
【００７７】
単語単位校正部２０３は、生成された校正候補単語に基づいてユーザクエリに対する校正クエリを決定してもよい（Ｓ５０３）。すなわち、単語単位校正部２０３は、ユーザクエリに対して単語単位の最適な校正クエリを生成してもよい。
【００７８】
図６は、本発明の一実施形態に係る単語別の校正候補を生成する過程を示すフローチャートである。
【００７９】
単語単位校正部２０３は、分離した単語について、正字単語で構成された辞書データを探索してもよい（Ｓ６０１）。もし、探索が成功すれば、単語単位校正部２０３は、別に校正候補単語を生成せず、探索された正字単語を校正候補単語に決定してもよい。
【００８０】
また、探索が失敗すれば、単語単位校正部２０３は、誤字・脱字−正字クエリの対により構成される辞書データを、分離した単語について、探索してもよい（Ｓ６０２）。このとき、探索が成功すれば、単語単位校正部２０３は、探索された正字クエリを校正候補単語に決定してもよい。
【００８１】
反対に、探索が失敗すれば、単語単位校正部２０３は、日英変換による校正候補単語または音節変換の規則による校正候補単語を抽出してもよい（Ｓ６０３）。
【００８２】
一例として、日英変換による校正候補単語は、ユーザが日英変換キーの誤った押下などによって誤った単語を入力したとき（本来は、かな入力となるべきなのに、英字入力となってしまった場合）、これを校正するための候補単語を意味する。例えば、ユーザが「ｋｌｊｇ」を入力した場合、単語単位校正部２０３は、校正候補単語として「のりまき」を抽出してもよい。また、ユーザが「ｆｇｍｋ」を入力した場合、単語単位校正部２０３は、校正候補単語として「はきもの」を抽出してもよい。
【００８３】
反対に、ユーザが「まなみい」を入力した場合、単語単位校正部２０３は「ｊｕｎｅ」を校正候補単語として抽出してもよい。また、ユーザが「せちすにと」を入力する場合、単語単位校正部２０３は「ｐａｒｉｓ」を校正候補単語として抽出してもよい。
【００８４】
一例として、音節変換の規則による校正候補単語は、ユーザがユーザクエリを入力するとき音節変換時に重複して入力するか、あるいは誤ったキーを入力する場合、これを校正するための候補単語を意味する。音節変換の規則は、ユーザのエラーパターンを分析し、ユーザがよく間違う音節を変換して候補単語を生成することを意味する。このとき、単語単位校正部２０３は、周辺音節を考慮して候補単語を生成してもよい。
【００８５】
図７は、本発明の一実施形態に係るユーザクエリから単語単位の校正によって校正クエリを生成する一例を示す図である。
【００８６】
単語単位校正部２０３は、ユーザクエリを構成する単語が含まれた校正候補単語を組み合わせて最適な校正クエリを決定してもよい。このとき、単語単位校正部２０３は、ユーザクエリを構成する単語と校正候補単語とを組み合わせて生成される候補クエリのうち、最も確率の高い候補クエリを校正クエリとして決定してもよい。一例として、候補クエリ確率は、ビタビ（ｖｉｔｅｒｂｉ）関数によってさらに速かに算出することができる。
【００８７】
図７に示すように、ユーザクエリ７０１として「Ｘ＋Ｙ＋Ｚ」が入力されたと仮定する。すると、単語単位校正部２０３は、ユーザクエリ７０１を分離した（単語を切り出した）後、分離した単語に対して校正候補単語７０２を抽出してもよい。図７に示すように「Ｘ」に対する校正候補単語７０２を「Ｘ１、Ｘ２」と決定してもよい。また、「Ｚ」に対する校正候補単語７０２を「Ｚ１」と決定してもよい。
【００８８】
すると、単語単位校正部２０３は、ユーザクエリを構成する単語と校正候補単語７０２とを組み合わせて候補クエリ７０３を生成してもよい。図７に示すように、ユーザクエリ７０１に対する候補クエリ７０３は、計６種が生成されてもよい。単語単位校正部２０３は、６種の候補クエリ７０３のうち、確率が最も高い「Ｘ１＋Ｙ＋Ｚ１」を校正クエリとして決定してもよい。
【００８９】
一例として、各候補クエリ７０３に対する確率は、数式１および数式５によって決定してもよい。図７の例を数式１および数式２に適用すれば次のとおりである。
【数７】
0005647451.tif 000019
【数８】
0005647451.tif 000020
【数９】
0005647451.tif 000021
【００９０】
図８は、本発明の一実施形態に係るユーザクエリ校正方法を示すフローチャートである。
【００９１】
ユーザクエリ校正システムは、入力されたユーザクエリが誤字・脱字クエリであるか否かを判断してもよい（Ｓ８０１）。
【００９２】
一例として、ユーザクエリ校正システムは、ユーザクエリに対してクエリ全体を単位として誤字・脱字クエリであるか否かを判断してもよい。このとき、ユーザクエリ校正システムは、ユーザクエリについて、誤字・脱字−正字クエリの対により構成される辞書データを探索して、ユーザクエリに対してクエリ全体を単位として誤字・脱字クエリであるか否かを判断してもよい。もし、ユーザクエリが２つ以上の単語で構成された場合、ユーザクエリ校正システムは、単語の間の空白などの区切りを維持して辞書データを探索してもよい。
【００９３】
もし、探索が失敗した場合、ユーザクエリ校正システムは、ユーザクエリを構成する単語について、正字単語により構成される辞書データを探索し、ユーザクエリに対して単語単位で誤字・脱字クエリであるか否かを判断してもよい。
【００９４】
ユーザクエリ校正システムは、ユーザクエリのクエリ全体を単位として誤字・脱字クエリとして判断されたユーザクエリを校正してもよい（Ｓ８０２）。
【００９５】
一例として、ユーザクエリ校正システムは、ユーザクエリが誤字・脱字−正字クエリの対により構成される辞書データの誤字・脱字クエリに登録されているか否かを判断してもよい。
【００９６】
もし、ユーザクエリが誤字・脱字クエリに登録されている場合、ユーザクエリ校正システムは、誤字・脱字−正字クエリの対により構成される辞書データに基づく正字クエリと、各ユーザクエリに対して確率を算出してもよい。このとき、ユーザクエリ校正システムは、ユーザクエリと正字クエリとの間の異なる音節に基づいて音節変換の確率を算出してもよい。
【００９７】
一例として、正字クエリの確率がユーザクエリの確率よりも大きい場合、ユーザクエリ校正システムは、正字クエリを校正クエリとして決定してもよい。また、正字クエリの確率がユーザクエリの確率よりも低い場合、ユーザクエリ校正システムは、クエリ全体を単位とするクエリ校正を終了してもよい。すなわち、ユーザが正字クエリよりもユーザクエリを好むため、クエリ校正を行わない場合もある。
【００９８】
クエリ全体を単位とする校正が失敗すれば、ユーザクエリ校正システムは、ユーザクエリを構成する単語単位で誤字・脱字クエリとして判断されたユーザクエリを校正してもよい（Ｓ８０３）。
【００９９】
一例として、ユーザクエリ校正システムは、ユーザクエリを少なくとも１つの単語に分離してもよい。このとき、ユーザクエリ校正システムは、ユーザクエリに含まれた空白、区切り文字の単位で１つ以上の単語を分離してもよい。
【０１００】
また、ユーザクエリ校正システムは、分離した単語別に校正候補単語を生成してもよい。このとき、ユーザクエリ校正システムは、正字単語で構成された辞書データから分離した単語を探索してもよい。探索が成功すれば、正字単語を校正クエリとしてもよい。
【０１０１】
探索が失敗すれば、ユーザクエリ校正システムは、誤字・脱字−正字クエリの対により構成される辞書データを、分離した単語について、探索してもよい。探索が成功すれば、正字クエリを校正クエリとしてもよい。
【０１０２】
探索が失敗すれば、ユーザクエリ校正システムは、日英変換による候補単語または音節変換の規則による校正候補単語を抽出してもよい。その後、ユーザクエリ校正システムは、生成された校正候補単語に基づいてユーザクエリに対する校正クエリを決定してもよい。このとき、ユーザクエリ校正システムは、ユーザクエリを構成する単語が含まれた校正候補単語を組み合わせて最適な校正クエリを決定してもよい。一例として、ユーザクエリ校正システムは、ユーザクエリを構成する単語と校正候補単語とを組み合わせて生成される候補クエリのうち、最も確率の高い候補クエリを校正クエリとして決定してもよい。
【０１０３】
図８において説明されない部分は図１〜図７の説明を参考してもよい。
【０１０４】
また本発明の一実施形態に係るユーザクエリ校正方法は、コンピュータにより実現される多様な動作を実行するためのプログラム命令を含むコンピュータ読取可能な記録媒体により実現可能である。当該記録媒体は、プログラム命令、データファイル、データ構造などを単独または組み合わせて含むこともでき、記録媒体およびプログラム命令は、本発明の目的のために特別に設計されて構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知であり使用可能なものであってもよい。コンピュータ読取可能な記録媒体の例としては、ハードディスク、フロッピー（登録商標）ディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、フロプティカルディスクのような磁気−光媒体、およびＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例としては、コンパイラによって生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コードを含む。
【０１０５】
上述したように、本発明の好ましい実施形態を参照して説明したが、該当技術分野において熟練した当業者にとっては、特許請求の範囲に記載された本発明の思想および領域から逸脱しない範囲内で、本発明を多様に修正および変更させることができることを理解することができるであろう。すなわち、本発明の技術的範囲は、特許請求の範囲に基づいて定められ、発明を実施するための最良の形態により制限されるものではない。
【符号の説明】
【０１０６】
１００：ユーザクエリ校正システム
２０１：誤字・脱字クエリ判断部
２０２：全体クエリ単位校正部
２０３：単語単位校正部
【図１】
0005647451.tif 000022
【図２】
0005647451.tif 000023
【図３】
0005647451.tif 000024
【図４】
0005647451.tif 000025
【図５】
0005647451.tif 000026
【図６】
0005647451.tif 000027
【図７】
0005647451.tif 000028
【図８】
0005647451.tif 000029