(57)【要約】【課題】有用な検索クエリを収集することを課題とする。【解決手段】バーティカルサーバは、検索クエリを記憶する記憶部を有する。そして、バーティカルサーバは、ユーザ端末から検索クエリを受け付けた場合に、受け付けた検索クエリを記憶部に格納する。また、バーティカルサーバは、他のバーティカルサーバや上位サーバがユーザ端末から受け付けた検索クエリを、受付先の他のサーバから受信した場合に、受信した検索クエリを記憶部に格納する。【選択図】図２
2015005066.tif 000002
【特許請求の範囲】
【請求項１】
検索クエリを記憶するクエリ記憶手段と、
ユーザ端末から前記検索クエリを受け付けた場合に、受け付けた前記検索クエリを前記クエリ記憶手段に格納する第１格納制御手段と、
他の情報処理装置が前記ユーザ端末から受け付けた前記検索クエリを、前記他の情報処理装置から受信した場合に、受信した前記検索クエリを前記クエリ記憶手段に格納する第２格納制御手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記第１格納制御手段は、前記ユーザ端末から受け付けた検索クエリに、第１の重み情報を対応付けて前記クエリ記憶手段に格納し、
前記第２格納制御手段は、前記他の情報処理装置から受信した検索クエリに、前記第１の重み情報とは異なる第２の重み情報を対応付けて前記クエリ記憶手段に格納することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１格納制御手段は、前記ユーザ端末から受け付けた検索クエリに、当該検索クエリを入力したユーザの属性を対応付けて前記クエリ記憶手段に格納し、
前記第２格納制御手段は、前記他の情報処理装置から前記検索クエリとともに、当該検索クエリを入力したユーザの属性を受信し、前記検索クエリと前記ユーザの属性とを対応付けて前記クエリ記憶手段に格納することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記他の情報処理装置から受信した前記検索クエリに対する検索結果を、前記他の情報処理装置に応答する応答手段をさらに有し、
前記第２格納制御手段は、前記応答手段によって応答された検索結果が前記ユーザ端末によって選択されたか否かの選択情報を前記他の情報処理装置から受信し、受信した選択情報に基づいて重みを決定して、前記検索クエリと重みとを対応付けて前記クエリ記憶手段に格納することを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記ユーザ端末から複数の文字列から構成される前記検索クエリの入力を受け付けた場合に、当該文字列を含む検索クエリを前記クエリ記憶手段から特定し、前記ユーザ端末に表示させるクエリ表示手段をさらに有することを特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記クエリ表示手段は、前記クエリ記憶手段から特定した前記文字列を含む検索クエリを前記ユーザ端末に表示させる際に、特定した検索クエリに対応付けられる重みが大きい検索クエリを上位に表示させることを特徴とする請求項５に記載の情報処理装置。
【請求項７】
情報処理装置が実行するクエリ制御方法であって、
ユーザ端末から、または、前記ユーザ端末から受け付けた他の情報処理装置から、前記検索クエリを受信する受信工程と、
前記受信工程によって受信された検索クエリを、前記検索クエリを記憶するクエリ記憶手段に格納する格納制御工程と
を含んだことを特徴とするクエリ制御方法。
【請求項８】
情報処理装置に、
ユーザ端末から、または、前記ユーザ端末から受け付けた他の情報処理装置から、前記検索クエリを受信する受信手順と、
前記受信手順によって受信された検索クエリを、前記検索クエリを記憶するクエリ記憶手段に格納する格納制御手順と
を実行させることを特徴とするクエリ制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、クエリ制御方法およびクエリ制御プログラムに関する。
【背景技術】
【０００２】
近年、検索クエリごとにＷｅｂサイトやドキュメントなどの関連サービスを付与したデータベースを構築し、ユーザから入力された検索クエリに対応する関連サービスを検索して応答する技術が知られている。また、検索クエリごとにスコアを付与して、関連性の高さを識別することで、関連性の高い検索結果を得る技術が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１２−５０１４９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記技術では、検索対象のサーバがユーザ端末から受け付けた検索クエリを学習するので、検索クエリの学習効率が必ずしも高くなく、有用な検索クエリを収集することが難しい。
【０００５】
開示の技術は、上記に鑑みてなされたものであって、有用な検索クエリを収集することができる情報処理装置、クエリ制御方法およびクエリ制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本願の開示する情報処理装置、クエリ制御方法およびクエリ制御プログラムは、一つの態様において、検索クエリを記憶するクエリ記憶手段と、ユーザ端末から前記検索クエリを受け付けた場合に、受け付けた前記検索クエリを前記クエリ記憶手段に格納する第１格納制御手段と、他の情報処理装置が前記ユーザ端末から受け付けた前記検索クエリを、前記他の情報処理装置から受信した場合に、受信した前記検索クエリを前記クエリ記憶手段に格納する第２格納制御手段と、を有する。
【発明の効果】
【０００７】
本願の開示する情報処理装置、クエリ制御方法およびクエリ制御プログラムの一つの態様によれば、有用な検索クエリを収集することができるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、第１の実施形態に係るシステムの全体構成例を示す図である。
【図２】図２は、バーティカルサーバの機能構成を示す機能ブロック図である。
【図３】図３は、辞書ＤＢに記憶される情報の例を示す図である。
【図４】図４は、サジェストＤＢに記憶される情報の例を示す図である。
【図５】図５は、検索クエリの解析例を説明する図である。
【図６】図６は、サジェストＤＢの更新例を説明する図である。
【図７】図７は、サジェストＤＢの更新に伴ってアシスト内容が更新される例を説明する図である。
【図８】図８は、第１の実施形態に係る処理シーケンスを示す図である。
【図９】図９は、入力形態によって重みが変わる例を説明する図である。
【図１０】図１０は、検索クエリにユーザ属性を付加する場合を説明する図である。
【図１１】図１１は、ＴＯＰサーバが検索クエリを割り振る順位によって重みが変わる例を説明する図である。
【図１２】図１２は、クリック結果によって重みが変わる例を説明する図である。
【図１３】図１３は、サーバの機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【０００９】
以下に、本願の開示する情報処理装置、クエリ制御方法およびクエリ制御プログラムの実施形態を図面に基づいて詳細に説明する。なお、この実施形態によりこの発明が限定されるものではない。なお、各実施形態は、矛盾のない範囲内で適宜組み合わせることができる。
【００１０】
［第１の実施形態］
（全体構成）
図１は、第１の実施形態に係るシステムの全体構成例を示す図である。図１に示すように、このシステムは、ＴＯＰサーバ１、オークションサーバ２、グルメサーバ３が互いに通信可能に接続されて構成される。なお、ここで示したサーバの数や種別は、あくまで一例であり、図示したものに限定されない。
【００１１】
各サーバは、Ｗｅｂサイト等を検索する検索サーバ装置である。具体的には、各サーバは、図示しないユーザ端末から検索クエリを受け付けて、検索クエリに基づいてＷｅｂサイトや各情報を検索し、その結果をユーザ端末に応答する。例えば、各サーバは、検索クエリに含まれる文字列を抽出し、当該文字列に対応付けられるＷｅｂサイトやドキュメント情報を検索して、要求元に応答する。
【００１２】
また、各サーバは、ユーザ端末からの入力を補助するアシスト機能を有する。例えば、各サーバは、複数の文字列を対応付けて記憶するサジェストＤＢ（DataBase）を有し、検索クエリとして文字列Ａを受け付けた場合に、当該文字列Ａに対応付けられる各文字列を画面に表示して、ユーザ入力を補助する。
【００１３】
ＴＯＰサーバ１は、ユーザ端末が当該システムにアクセスした場合に、ＴＯＰ画面に表示される上位サーバである。このＴＯＰサーバ１は、ユーザ端末から検索クエリを直接受け付けると、検索クエリに対して自サーバ内を検索するとともに、検索クエリを下位サーバであるオークションサーバ２およびグルメサーバ３に送信する。そして、ＴＯＰサーバ１は、自サーバ内の検索結果と各下位サーバの検索結果とをユーザ端末に応答する。
【００１４】
オークションサーバ２およびグルメサーバ３は、ＴＯＰサーバ１から検索クエリを受信する下位サーバ装置である。これらの下位サーバへは、ＴＯＰサーバ１がユーザ端末に表示させるＴＯＰ画面から画面遷移させることができる。下位サーバは、ＴＯＰサーバ１から検索クエリを受信すると、検索クエリを実行してＴＯＰサーバ１に検索結果を応答する。同様に、下位サーバは、ユーザ端末から検索クエリを直接受け付けると、検索クエリを実行してユーザ端末に検索結果を応答する。
【００１５】
このような状態において、各下位サーバは、検索クエリを記憶するサジェストＤＢを有する。そして、各下位サーバは、ユーザ端末から検索クエリを受け付けた場合に、受け付けた検索クエリをサジェストＤＢに格納する。また、各下位サーバは、他のサーバがユーザ端末から受け付けた検索クエリを、当該他のサーバから受信した場合に、受信した検索クエリをサジェストＤＢに格納する。
【００１６】
例えば、グルメサーバ３は、「六本木」と「交差点、ビル、ワイン」を対応付けた情報をサジェストＤＢに保持する。そして、グルメサーバ３は、ユーザ端末から検索クエリ「六本木」の入力を受け付けた場合に、受け付けた「六本木」に対応付けられる「交差点、ビル、ワイン」をサジェストＤＢにおいて特定して、検索クエリの入力画面に表示させることで、ユーザの入力を補助する（Ｓ１）。
【００１７】
同様に、オークションサーバ２は、「六本木」と「高級家具、ワイン」を対応付けた情報をサジェストＤＢに保持する。そして、オークションサーバ２は、ユーザ端末から検索クエリ「六本木」の入力を受け付けた場合に、受け付けた「六本木」に対応付けられる「高級家具、ワイン」をサジェストＤＢにおいて特定して、検索クエリの入力画面に表示させることで、ユーザの入力を補助する（Ｓ２）。
【００１８】
このような状態で、ＴＯＰサーバ１は、ユーザ端末から検索クエリ「六本木、居酒屋」を受け付けると、所定のルールに基づいて検索クエリの振分先を決定する（Ｓ３）。一例を挙げると、ＴＯＰサーバ１は、過去の検索結果、振分状況、ユーザ端末の行動履歴、ユーザ端末のアクセス状況等に基づいて、検索クエリ「六本木、居酒屋」の振分先をグルメサーバ３と特定する。
【００１９】
続いて、ＴＯＰサーバ１は、検索クエリ「六本木、居酒屋」を用いて自サーバ内で検索処理を実行するとともに、検索クエリ「六本木、居酒屋」をグルメサーバ３に送信する（Ｓ４）。
【００２０】
グルメサーバ３は、ＴＯＰサーバ１から検索クエリ「六本木、居酒屋」を受信すると、当該検索クエリを用いて検索処理を実行し、その検索結果をＴＯＰサーバ１に応答する（Ｓ５）。
【００２１】
ＴＯＰサーバ１は、検索クエリ「六本木、居酒屋」に対して、自サーバ内の検索結果とグルメサーバ３から受信した検索結果とをユーザ端末に表示させる（Ｓ６）。具体的には、ＴＯＰサーバ１は、図１に示すように、グルメサーバ３から受信した検索結果については「六本木周辺の居酒屋  グルメ」として表示し、自サーバ内の検索結果について「六本木  居酒屋の検索結果」として表示する。
【００２２】
また、グルメサーバ３は、ＴＯＰサーバ１から受信した検索クエリ「六本木、居酒屋」に含まれる「六本木」と「居酒屋」とを対応付けた情報を、新たなエントリとしてサジェストＤＢに追加する（Ｓ７）。
【００２３】
その後、グルメサーバ３は、ユーザ端末から検索クエリ「六本木」の入力を受け付けた場合、受け付けた「六本木」に対応付けられる「交差点、ビル、ワイン」に加えて「居酒屋」をサジェストＤＢか特定して、検索クエリの入力画面に表示させて、ユーザの入力を補助する（Ｓ８）。
【００２４】
このように、下位サーバは、自サーバが直接受け付けた検索クエリに加えて、ユーザ端末からの入力を受け付けた上位サーバから受信した検索クエリを、サジェストＤＢに追加することができる。この結果、下位サーバは、サジェストＤＢの内容を充実させることができ、有用な検索クエリを収集することができる。また、下位サーバは、ユーザの意図を反映させたアシスト機能を提供することができる。
【００２５】
（下位サーバの機能構成）
次に下位サーバの構成を説明する。各下位サーバは、同様の機能構成を有するので、ここでは、バーティカルサーバ１０として説明する。図２は、バーティカルサーバの機能構成を示す機能ブロック図である。図２に示すように、バーティカルサーバ１０は、通信制御部１１、記憶部１２、制御部１５を有する。
【００２６】
通信制御部１１は、他のサーバとの通信を制御する処理部であり、例えばネットワークインタフェースカードなどである。例えば、通信制御部１１は、ＴＯＰサーバ１から検索クエリを受信し、ＴＯＰサーバ１に検索結果を送信する。
【００２７】
記憶部１２は、辞書ＤＢ１３とサジェストＤＢ１４を有する記憶装置であり、例えばメモリやハードディスクなどの記憶装置である。また、記憶部１２は、制御部１５が実行するプログラム等を記憶する。
【００２８】
また、記憶部１２は、ユーザに提供する検索対象の各種情報を記憶する。具体的には、記憶部１２は、Ｗｅｂサイト、ドキュメント情報、画像、動画、様々なユーザがリアルタイムに投稿する投稿情報、地図情報などの提供情報を記憶する。例えば、記憶部１２は、検索クエリにヒットさせるために、各提供情報に少なくとも１つの文字列を対応付けて記憶する。
【００２９】
辞書ＤＢ１３は、ユーザが入力した文字列を検索クエリとして特定するための情報を記憶する。この辞書ＤＢ１３は、管理者等によって適宜更新される。図３は、辞書ＤＢに記憶される情報の例を示す図である。
【００３０】
図３に示すように、辞書ＤＢ１３は、「大分類、小分類、登録例」で構成される。なお、ここで示した分類方法や分類数は、例示であり、これに限定されるものではない。ここでは、分析対象の文字列を大分類で区別し、さらに大分類内で小分類に区別し、各小分類の登録例を示す。
【００３１】
図３の一例では、大分類「ブランド名」は、「製造者」、「モデル名」、「製品ファミリー」等に分類されることを示す。「製造者」の一例には「Ａ社、Ｂ社」があり、「モデル名」の一例には「ＡＹ１００、ＢＢ２３Ｙ」があることを示す。同様に、大分類「人名」は、「一般人」、「俳優」、「監督」等に分類されることを示す。「一般人」の一例には「佐藤、田中、鈴木」があり、「俳優」の一例には「ＸＸＸＸ」があり、「監督」の一例には「ＹＹＹＹ」があることを示す。
【００３２】
サジェストＤＢ１４は、入力アシストに用いる文字列の対応付けを記憶する。図４は、サジェストＤＢに記憶される情報の例を示す図である。図４に示すように、サジェストＤＢ１４は、文字列を階層構造で記憶する。ここで示した大分類、中分類、小分類などの階層例は、例示であり、これに限定されるものではない。
【００３３】
図４の例では、「六本木」には、「交差点、ビル、ワイン、駅前、二次会」が対応付けられている。また、「六本木、駅前」には、「ラーメン」と「カラオケ」が対応付けられている。「六本木、二次会、お酒」には、「ラーメン、クラブ」が対応付けられている。
【００３４】
制御部１５は、入力受付部１６、アシスト部１７、クエリ受信部１８、クエリ実行部１９、クエリ追加部２０を有し、バーティカルサーバ１０全体の処理を司る処理部である。例えば、制御部１５は、プロセッサなどの電子回路であり、各処理部は、プロセッサが実行するプロセスなどである。
【００３５】
入力受付部１６は、ユーザ端末から検索クエリの入力を受け付ける処理部である。具体的には、入力受付部１６は、ユーザ端末からアクセスを受け付けると、検索バーなどの入力画面を表示して、検索クエリを受け付ける。また、入力受付部１６は、入力された検索クエリや入力中の検索クエリを、アシスト部１７やクエリ実行部１９等に出力する。
【００３６】
アシスト部１７は、ユーザの検索クエリの入力を補助する処理部である。具体的には、アシスト部１７は、入力受付部１６へのユーザ入力を監視し、受け付けられた入力文字列に対応付けられる文字列をサジェストＤＢ１４から特定し、ユーザ端末に表示する。
【００３７】
例えば、アシスト部１７は、「六本木」が受け付けられると、「六本木」に対応付けられる「交差点、ビル、ワイン、駅前、二次会」をサジェストＤＢ１４から特定する。そして、アシスト部１７は、「六本木、交差点」、「六本木、ビル」、「六本木、ワイン」、「六本木、駅前」、「六本木、二次会」を、入力受付部１６が入力を受け付ける検索バーにリスト表示する。そして、アシスト部１７は、表示させたリストのうち「六本木、駅前」が選択されると、「六本木、駅前」を検索バーに入力する。
【００３８】
クエリ受信部１８は、ＴＯＰサーバ１から検索クエリを受信する処理部である。具体的には、クエリ受信部１８は、ＴＯＰサーバ１がユーザから受け付けた検索クエリを受信し、クエリ実行部１９に出力する。
【００３９】
クエリ実行部１９は、入力受付部１６によって受け付けられた検索クエリやクエリ受信部によって受信された検索クエリを実行する処理部である。具体的には、クエリ実行部１９は、検索クエリに対して文字解析を実行して、検索クエリに含まれる文字列を抽出する。そして、クエリ実行部１９は、抽出した文字列に対応付けられるＷｅｂサイト等を特定して、検索結果として応答する。
【００４０】
図５は、検索クエリの解析例を説明する図である。図５に示すように、バーティカルサーバ１０は、検索クエリとして「Ａ社、ＡＹ１００、価格」を受け付けたとする。この場合、クエリ実行部１９は、辞書ＤＢ１３の登録例を参照し、「Ａ社」の種別についてはブランド名（製造者）と特定する。同様に、クエリ実行部１９は、「ＡＹ１００」の種別についてはブランド名（製品ファミリー）と特定し、「価格」についてはディレクティブ（購入）と特定する。さらに、クエリ実行部１９は、ブランド名（製造者）とブランド名（製品ファミリー）の組合せからショッピング（ジャンル）を特定し、「価格」については、ユーザ意図を示す手掛かり語として特定する。
【００４１】
この結果、クエリ実行部１９は、「Ａ社」の製品「ＡＹ１００」をページ内やタブ内に含むＷｅｂサイトを検索し、「ＡＹ１００」の「価格」を含む情報を応答する。つまり、クエリ実行部１９は、「Ａ社」の製品「ＡＹ１００」の「価格」を確認できるＷｅｂサイト等を、ユーザ端末に応答する。
【００４２】
クエリ追加部２０は、入力受付部１６によって受け付けられた検索クエリやクエリ受信部によって受信された検索クエリを、サジェストＤＢ１４に追加する処理部である。具体的には、クエリ追加部２０は、入力された文字列の順に、大分類、中分類・・・として、サジェストＤＢ１４に追加する。
【００４３】
図６は、サジェストＤＢの更新例を説明する図である。図６に示すように、クエリ追加部２０は、ＴＯＰサーバ１から「六本木、居酒屋」が受け付けられると、「六本木」を大分類、「居酒屋」を中分類とする新たなレコードを生成する。そして、クエリ追加部２０は、生成したレコード「大分類（六本木）、中分類（居酒屋）」をサジェストＤＢ１４に追加する。
【００４４】
（サジェスト更新例）
図７は、サジェストＤＢの更新に伴ってアシスト内容が更新される例を説明する図である。図７の上図に示すように、グルメサーバ３は、「六本木」に対応付けて「交差点、ビル、ワイン」をサジェストＤＢ１４に記憶する。
【００４５】
このような状態で、グルメサーバ３は、検索バーに対して「六本木」の入力をユーザ端末５から受け付けたとする。すると、グルメサーバ３は、受け付けた「六本木」に対応する「交差点、ビル、ワイン」をサジェストＤＢ１４から特定する。そして、グルメサーバ３は、「六本木、交差点」、「六本木、ビル」、「六本木、ワイン」それぞれを検索バーにリスト表示させて、ユーザの入力をアシストする。
【００４６】
一方で、図７の下図に示すように、グルメサーバ３は、「六本木」に対応付けて「交差点、ビル、ワイン」に加えて「居酒屋」をサジェストＤＢ１４に記憶する。
【００４７】
このような状態で、グルメサーバ３は、検索バーに対して「六本木」の入力をユーザ端末５から受け付けたとする。すると、グルメサーバ３は、受け付けた「六本木」に対応する「交差点、ビル、ワイン、居酒屋」をサジェストＤＢ１４から特定する。そして、グルメサーバ３は、「六本木、交差点」、「六本木、ビル」、「六本木、ワイン」、「六本木、居酒屋」それぞれを検索バーにリスト表示させて、ユーザの入力をアシストする。
【００４８】
（処理シーケンス）
図８は、第１の実施形態に係る処理シーケンスを示す図である。ここでは、一例として、バーティカルサーバ１０が、ＴＯＰサーバ１から検索クエリを受信した後に、ユーザ端末５から直接検索クエリを受け付ける例を説明するが、この順番に限定されるものではない。
【００４９】
図８に示すように、ＴＯＰサーバ１は、ユーザ端末５から検索クエリを受け付けると、辞書ＤＢ１３等を用いて、受け付けた検索クエリを解析する（Ｓ１０１−Ｓ１０３）。このとき、ＴＯＰサーバ１は、アシスト機能を用いて、ユーザの入力を補助する。続いて、ＴＯＰサーバ１は、受け付けた検索クエリをサジェストＤＢ１４に追加する（Ｓ１０４）。
【００５０】
その後、ＴＯＰサーバ１は、検索クエリの振分先を特定し（Ｓ１０５）、振分先に特定されたオークションサーバ２およびグルメサーバ３に、検索クエリを振分ける（Ｓ１０６−Ｓ１０８）。
【００５１】
オークションサーバ２は、辞書ＤＢ１３等を用いて、ＴＯＰサーバ１から受信した検索クエリを解析し（Ｓ１０９）、解析した結果を用いて、検索処理を開始する（Ｓ１１０）。その後、オークションサーバ２は、検索結果をＴＯＰサーバ１に応答する（Ｓ１１１とＳ１１２）。続いて、オークションサーバ２は、受信した検索クエリをサジェストＤＢ１４に追加する（Ｓ１１３）。
【００５２】
同様に、グルメサーバ３は、辞書ＤＢ１３等を用いて、ＴＯＰサーバ１から受信した検索クエリを解析し（Ｓ１１４）、解析した結果を用いて、検索処理を開始する（Ｓ１１５）。その後、グルメサーバ３は、検索結果をＴＯＰサーバ１に応答する（Ｓ１１６とＳ１１７）。続いて、グルメサーバ３は、受信した検索クエリをサジェストＤＢ１４に追加する（Ｓ１１８）。
【００５３】
その後、グルメサーバ３は、ユーザ端末５から検索クエリを受け付けると（Ｓ１１９とＳ１２０）、サジェストＤＢ１４を参照してユーザの入力をアシストし（Ｓ１２１）、検索クエリを受け付ける（Ｓ１２２）。
【００５４】
続いて、グルメサーバ３は、辞書ＤＢ１３等を用いて、受け付けた検索クエリを解析し（Ｓ１２３）、解析した結果を用いて、検索処理を開始する（Ｓ１２４）。その後、グルメサーバ３は、検索結果をユーザ端末５に応答する（Ｓ１２５とＳ１２６）。続いて、グルメサーバ３は、受信した検索クエリをサジェストＤＢ１４に追加する（Ｓ１２７）。
【００５５】
（効果）
第１の実施形態によれば、各バーティカルサーバ１０は、自サーバに入力された検索クエリ以外にも、ＴＯＰサーバ１から受信した検索クエリをサジェストＤＢ１４に追加することができる。このため、各バーティカルサーバ１０は、自サーバの入力だけをサジェストＤＢ１４に追加する場合に比べて、サジェストＤＢ１４の内容を充実化させることができる。
【００５６】
また、各バーティカルサーバ１０は、サジェストＤＢ１４の内容を充実化に伴って、ユーザアシストを充実化させることができる。このため、各バーティカルサーバ１０は、ユーザの集客率を向上させることも期待できる。また、各バーティカルサーバ１０は、サジェストＤＢ１４を学習し、ユーザの入力を補助することができるので、ユーザの利便性を向上させることができ、システムの利用効率も向上させることができる。
【００５７】
［第２の実施形態］
第２の実施形態では、各バーティカルサーバ１０が検索メモリをサジェストＤＢ１４に追加する例を説明したが、これに限定されるものではなく、各検索クエリに重みを付けてサジェストＤＢ１４に追加することもできる。
【００５８】
そこで、第２の実施形態では、様々な条件によって検索クエリに付加する重みが変更され、各検索クエリに重みを付けてサジェストＤＢ１４に追加する例を説明する。
【００５９】
（入力形態による変更）
各バーティカルサーバ１０は、ＴＯＰサーバ１から受信した検索クエリか、ユーザ端末５から直接受け付けた検索クエリかによって、重みを変更することができる。図９は、入力形態によって重みが変わる例を説明する図である。
【００６０】
図９に示すように、グルメサーバ３は、ユーザがユーザ端末５を用いてＴＯＰサーバ１に入力した検索クエリ（六本木、居酒屋）を、ＴＯＰサーバ１から受信する。そして、グルメサーバ３は、ＴＯＰサーバ１を介して受信した検索クエリ（六本木、居酒屋）に、重み「２」を付加してサジェストＤＢ１４に格納する。
【００６１】
一方、グルメサーバ３は、ユーザ端末５から検索クエリ（六本木、ラーメン）を直接受け付けた場合、直接受け付けた検索クエリ（六本木、ラーメン）に、重み「１」を付加してサジェストＤＢ１４に格納する。
【００６２】
このように、グルメサーバ３は、ＴＯＰサーバ１から受信した検索クエリの重みを、ユーザ端末５から直接受け付けた検索クエリに比べて大きくする。この結果、グルメサーバ３は、その後にユーザ端末５から「六本木」の入力を直接受け付けた場合の入力アシストとして、重みが大きい「六本木、居酒屋」を他の組合せより上位に表示させる。
【００６３】
また、グルメサーバ３は、入力形態によって重みを区別することで、サジェストＤＢ１４に保持される検索クエリの入力形態を区別することができる。このため、グルメサーバ３は、ユーザ端末５の入力傾向等を考察することができ、サービスの向上が期待できる。
【００６４】
なお、ここでは、ＴＯＰサーバから受け付けた検索クエリの方が、重みが大きい例を説明したが、これに限定されるものではなく、ユーザ端末５から直接受け付けた方が、重みが大きくてもよく、任意に設定変更することができる。
【００６５】
（ユーザ属性）
図１０は、検索クエリにユーザ属性を付加する場合を説明する図である。図１０に示すように、ＴＯＰサーバ１は、登録ユーザのログインＩＤやパスワードを保持するユーザＤＢ１ａを記憶する。
【００６６】
そして、ＴＯＰサーバ１は、ユーザ端末５からログイン情報を受信してログインを許可した後に、検索クエリ（六本木、エステ）の入力を受け付ける。その後、ＴＯＰサーバ１は、検索クエリ（六本木、エステ）を入力したユーザの属性（女性、３０代）をユーザＤＢ１ａから特定する。そして、ＴＯＰサーバ１は、検索クエリ（六本木、エステ）にユーザ属性（女性、３０代）を付加して、ショッピングサーバ４に送信する。
【００６７】
ショッピングサーバ４は、ＴＯＰサーバ１から受信した検索クエリ（六本木、エステ）を実行して検索結果をＴＯＰサーバ１に応答する一方で、受信した検索クエリ（六本木、エステ）＋ユーザ属性（女性、３０代）をサジェストＤＢ１４に追加する。
【００６８】
この結果、ショッピングサーバ４は、ユーザ端末５から直接検索クエリの入力を受け付けた場合に、当該ユーザ端末５のユーザ属性と一致する組合せが上位に表示されるように、入力アシストを行うことができる。
【００６９】
したがって、ショッピングサーバ４は、ユーザ属性に応じて入力アシストを動的に変更することができるので、ユーザの利便性を向上させることができる。なお、ここでは、ショッピングサーバ４が、ＴＯＰサーバ１から検索クエリとともにユーザ属性を受信する例を説明したが、これに限定されるものではない。例えば、ショッピングサーバ４は、ユーザ端末５から直接検索クエリの入力を受け付ける場合であっても、ログイン情報等からユーザ属性を特定し、検索クエリに付加してサジェストＤＢ１４に追加することもできる。
【００７０】
（割り振り順位）
図１１は、ＴＯＰサーバが検索クエリを割り振る順位によって重みが変わる例を説明する図である。図１１に示すように、ＴＯＰサーバ１は、ユーザ端末５から検索クエリ（六本木、居酒屋）の入力を受け付ける。
【００７１】
そして、ＴＯＰサーバ１は、所定のルールに基づいて、検索クエリ（六本木、居酒屋）の振分先を決定する。このとき、ＴＯＰサーバ１は、グルメサーバ３を振分先第１位と決定し、ショッピングサーバ４を振分先第２位と決定する。
【００７２】
その後、ＴＯＰサーバ１は、グルメサーバ３に対して、検索クエリ（六本木、居酒屋）と第１位の情報とを送信し、ショッピングサーバ４に対して、検索クエリ（六本木、居酒屋）と第２位の情報とを送信する。
【００７３】
そして、グルメサーバ３は、ＴＯＰサーバ１から受信した検索クエリ（六本木、居酒屋）を実行して検索結果をＴＯＰサーバ１に応答する。その一方で、グルメサーバ３は、受信した検索クエリ（六本木、居酒屋）に、振分先第１位の情報が付加されていることから、検索クエリ（六本木、居酒屋）に重み「２」を付加してサジェストＤＢ１４に格納する。
【００７４】
一方、ショッピングサーバ４は、ＴＯＰサーバ１から受信した検索クエリ（六本木、居酒屋）を実行して検索結果をＴＯＰサーバ１に応答する。その一方で、ショッピングサーバ４は、受信した検索クエリ（六本木、居酒屋）に、振分先第２位の情報が付加されていることから、検索クエリ（六本木、居酒屋）に重み「１」を付加してサジェストＤＢ１４に格納する。
【００７５】
このようすることで、各バーティカルサーバ１０は、自サーバにとって有用な検索クエリの重みを大きくすることができる。したがって、各バーティカルサーバ１０は、検索クエリの受付時に、有用な重みが大きい組合せを他の組合せより上位に表示させることができ、効率的な入力アシストを提供することができる。
【００７６】
（クリック結果）
図１２は、クリック結果によって重みが変わる例を説明する図である。図１２に示すように、ＴＯＰサーバ１は、ユーザ端末５から検索クエリ（六本木、居酒屋）の入力を受け付ける。すると、ＴＯＰサーバ１は、グルメサーバ３とショッピングサーバ４とに、検索クエリ（六本木、居酒屋）を送信する。
【００７７】
グルメサーバ３とショッピングサーバ４は、受信した検索クエリ（六本木、居酒屋）を用いて検索処理を実行し、その検索結果をＴＯＰサーバ１に応答する。そして、ＴＯＰサーバ１は、自サーバ内の検索結果、グルメサーバ３の検索結果、ショッピングサーバ４の検索結果をユーザ端末５に応答する。
【００７８】
その後、ＴＯＰサーバ１は、ユーザ端末５によってグルメサーバ３の検索結果（グルメサイト）がクリックされると、グルメサーバ３が提供するグルメサイトをユーザ端末５に表示させる。
【００７９】
そして、ＴＯＰサーバ１は、グルメサーバ３に対して、検索クエリ（六本木、居酒屋）に対するグルメサーバ３の検索結果が選択されたことを通知する。同様に、ＴＯＰサーバ１は、ショッピングサーバ４に対して、検索クエリ（六本木、居酒屋）に対するショッピングサーバ４の検索結果が選択されなかったことを通知する。
【００８０】
この結果、グルメサーバ３は、検索クエリ（六本木、居酒屋）に、重み「２」を付加してサジェストＤＢ１４に格納し、ショッピングサーバ４は、検索クエリ（六本木、居酒屋）に、重み「０」を付加してサジェストＤＢ１４に格納する。
【００８１】
このように、各バーティカルサーバ１０は、検索結果が実際に選択されたかによって、検索クエリの重みを区別することで、実際に選択されたことがある組合せがリストの上位に来るように入力アシストを提供することができる。したがって、各バーティカルサーバ１０は、ユーザが実際に選択する可能性が高い組合せを上位に表示させることができ、ユーザの利便性が向上し、集客率の向上にも繋がる。
【００８２】
［第３の実施形態］
さて、これまで第１から第２の実施形態を説明したが、説明した実施形態以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下に異なる実施形態を説明する。
【００８３】
例えば、グルメサーバ３などのバーティカルサーバ１０が、ＴＯＰサーバ１から受信した検索クエリをサジェストＤＢ１４に追加する例を説明したが、これに限定されるものではない。例えば、バーティカルサーバ１０内で検索クエリを送受信し、他のバーティカルサーバ１０から受信した検索クエリについても、サジェストＤＢ１４に追加することもできる。
【００８４】
また、各バーティカルサーバ１０は、ＴＯＰサーバ１から受信した検索クエリと、他のバーティカルサーバ１０から受信した検索クエリとについて、重みを区別してサジェストＤＢ１４に追加することもできる。また、各バーティカルサーバ１０は、ＴＯＰサーバ１におけるユーザのアクセス履歴などを取得して、検索クエリと対応付けて格納してもよい。
【００８５】
また、各バーティカルサーバ１０が追加格納する検索クエリは、入力アシスト以外にも様々な用途に用いることができる。例えば、検索クエリごとに入力回数や選択回数を計数し、検索クエリのランキング等に用いることもできる。
【００８６】
上記第１または第２の実施形態における各サーバは、例えば図１３に示すような構成のコンピュータ５０によって実現される。図１３は、サーバの機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ５０は、ＣＰＵ（Central  Processing  Unit）５１、ＲＡＭ（Random  Access  Memory）５２、ＲＯＭ（Read  Only  Memory）５３、ＨＤＤ（Hard  Disk  Drive）５４、通信インターフェイス（Ｉ／Ｆ）５５、入出力インターフェイス（Ｉ／Ｆ）５６、およびメディアインターフェイス（Ｉ／Ｆ）５７を備える。
【００８７】
ＣＰＵ５１は、ＲＯＭ５３またはＨＤＤ５４に格納されたプログラムに基づいて動作し、各部の制御を行う。ＲＯＭ５３は、コンピュータ５０の起動時にＣＰＵ５１によって実行されるブートプログラムや、コンピュータ５０のハードウェアに依存するプログラム等を格納する。
【００８８】
ＨＤＤ５４は、ＣＰＵ５１によって実行されるプログラムおよび当該プログラムによって使用されるデータ等を格納する。通信インターフェイス５５は、通信回線１３を介して他の機器からデータを受信してＣＰＵ５１へ送り、ＣＰＵ５１が生成したデータを、通信回線１３を介して他の機器へ送信する。
【００８９】
ＣＰＵ５１は、入出力インターフェイス５６を介して、ディスプレイやプリンタ等の出力装置、および、キーボードやマウス等の入力装置を制御する。ＣＰＵ５１は、入出力インターフェイス５６を介して、入力装置からデータを取得する。また、ＣＰＵ５１は、生成したデータを、入出力インターフェイス５６を介して出力装置へ出力する。
【００９０】
メディアインターフェイス５７は、記録媒体５８に格納されたプログラムまたはデータを読み取り、ＲＡＭ５２を介してＣＰＵ５１に提供する。ＣＰＵ５１は、当該プログラムを、メディアインターフェイス５７を介して記録媒体５８からＲＡＭ５２上にロードし、ロードしたプログラムを実行する。記録媒体５８は、例えばＤＶＤ（Digital  Versatile  Disc）、ＰＤ（Phase  change  rewritable  Disk）等の光学記録媒体、ＭＯ（Magneto-Optical  disk）等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【００９１】
例えば、コンピュータ５０が第１の実施形態におけるバーティカルサーバ１０として機能する場合、コンピュータ５０のＣＰＵ５１は、ＲＡＭ５２上にロードされたプログラムを実行することにより、入力受付部１６、アシスト部１７、クエリ受信部１８、クエリ実行部１９、クエリ追加部２０の各機能を実現する。また、ＨＤＤ５４には、辞書ＤＢ１３やサジェストＤＢ１４内のデータが格納される。
【００９２】
コンピュータ５０のＣＰＵ５１は、これらのプログラムを、記録媒体５８から読み取って実行するが、他の例として、他の装置から、通信回線１３を介してこれらのプログラムを取得してもよい。
【００９３】
また、実施形態に記載した「部」は、「手段」や「section、module、unit」や「回路」などに読み替えることができる。例えば、クエリ受信部は、クエリ受信手段やクエリ受信回路に読み替えることができる。また、本実施形態について説明したが、上記実施形態は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物も含まれ、各実施形態を組み合わせることもできる。
【００９４】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に多様な変更または改良を加えることが可能であることが当業者には明らかである。また、そのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【符号の説明】
【００９５】
１  ＴＯＰサーバ
２  オークションサーバ
３  グルメサーバ
４  ショッピングサーバ
５  ユーザ端末
１０  バーティカルサーバ
１１  通信制御部
１２  記憶部
１３  辞書ＤＢ
１４  サジェストＤＢ
１５  制御部
１６  入力受付部
１７  アシスト部
１８  クエリ受信部
１９  クエリ実行部
２０  クエリ追加部
【図１】
2015005066.tif 000003
【図２】
2015005066.tif 000004
【図３】
2015005066.tif 000005
【図４】
2015005066.tif 000006
【図５】
2015005066.tif 000007
【図６】
2015005066.tif 000008
【図７】
2015005066.tif 000009
【図８】
2015005066.tif 000010
【図９】
2015005066.tif 000011
【図１０】
2015005066.tif 000012
【図１１】
2015005066.tif 000013
【図１２】
2015005066.tif 000014
【図１３】
2015005066.tif 000015