"キーワードの意味的な類似性に基づいてキーワード間の距離を計算し、キーワードからキーワード間距離を探索可能な距離行列データを生成して記憶手段に記憶しておく距離行列計算手段と、前記距離行列データを用いて前記キーワードを階層的クラスタリングし、前記階層的クラスタリングによって構築されたデンドログラムを下層から上層に探索可能なボトムアップインデックスとして記憶手段に記憶しておくクラスタリング手段と、を有することを特徴とするクエリ提供装置。前記記憶手段からボトムアップインデックスを読み出して、所定のクラスタ数になるまで下層を併合してクラスタリングすることをボトムアップに繰り返すクラスタリング手段と、前記クラスタリングによって生じた各クラスタから所定のキーワードを代表クエリとしてそれぞれ選択する代表クエリ選択手段と、を更に有することを特徴とする請求項1記載のクエリ提供装置。前記代表クエリ選択手段は、前記クラスタリングによって生じたクラスタ内のキーワードが他のキーワードに対して有するキーワード間距離を前記距離行列データから探索して平均値を計算し、前記平均値が最も小さいキーワードを前記代表クエリとして選択することを特徴とする請求項2記載のクエリ提供装置。コンピュータにより行うクエリ選択方法において、キーワードの意味的な類似性に基づいてキーワード間の距離を計算し、キーワードからキーワード間距離を探索可能な距離行列データを生成して記憶手段に記憶しておく距離行列計算ステップと、前記距離行列データを用いて前記キーワードを階層的クラスタリングし、前記階層的クラスタリングによって構築されたデンドログラムを下層から上層に探索可能なボトムアップインデックスとして記憶手段に記憶しておくクラスタリングステップと、を有することを特徴とするクエリ提供方法。前記記憶手段からボトムアップインデックスを読み出して、所定のクラスタ数になるまで下層を併合してクラスタリングすることをボトムアップに繰り返すクラスタリングステップと、前記クラスタリングによって生じた各クラスタから所定のキーワードを代表クエリとしてそれぞれ選択する代表クエリ選択ステップと、を更に有することを特徴とする請求項4記載のクエリ提供方法。前記代表クエリ選択ステップは、前記クラスタリングによって生じたクラスタ内のキーワードが他のキーワードに対して有するキーワード間距離を前記距離行列データから探索して平均値を計算し、前記平均値が最も小さいキーワードを前記代表クエリとして選択することを特徴とする請求項5記載のクエリ提供方法。請求項4乃至6のいずれかの各ステップをコンピュータに実行させることを特徴とするクエリ提供プログラム。しかしながら、携帯電話やスマートフォン等のモバイル端末はパソコンに比べて画面サイズが小さいため、パソコンを対象に開発された従来のクエリ支援技術をモバイル端末上で効果的に利用することは難しい。例えば、前述のクエリサジェストの場合には、画面サイズの制約から多数の関連クエリを推薦するとクエリ選択が難しくなり、一方で少なくするとユーザの情報要求に答えられない可能性がある。画面サイズは端末に応じて異なるにもかかわらず、推薦される関連クエリの数をサービス提供側で事前に固定してしまうことが問題であり、端末によっては従来のクエリサジェストは使用し難いと言える。すなわち、従来のクエリ支援技術は、関連クエリが表示される端末の画面サイズが考慮されていないため、画面サイズに適切に対応した数の関連クエリを推薦できず、特にモバイル端末上において検索エンジンの利便性を低下させていたという問題があった。また、従来のクエリ多様化技術は、推薦される関連クエリを選択後にオンデマンドでクラスタリングするPostProcessingため、関連クエリを端末に表示するまでに時間がかかるという問題があった。本発明は、上記を鑑みてなされたものであり、推薦されるクエリを高速に選択することを第1の課題とし、端末の画面サイズ等に適した数に多様化されたクエリを選択することを第2の課題とする。請求項1記載のクエリ提供装置は、キーワードの意味的な類似性に基づいてキーワード間の距離を計算し、キーワードからキーワード間距離を探索可能な距離行列データを生成して記憶手段に記憶しておく距離行列計算手段と、前記距離行列データを用いて前記キーワードを階層的クラスタリングし、前記階層的クラスタリングによって構築されたデンドログラムを下層から上層に探索可能なボトムアップインデックスとして記憶手段に記憶しておくクラスタリング手段と、を有することを特徴とする。本発明によれば、キーワードからキーワード間距離を探索可能な距離行列データと、階層的クラスタリングされたキーワードのボトムアップインデックスとを予め生成し記憶しておくため、情報検索時に代表クエリを高速に選択できる。請求項2記載のクエリ提供装置は、請求項1記載のクエリ提供装置において、前記記憶手段からボトムアップインデックスを読み出して、所定のクラスタ数になるまで下層を併合してクラスタリングすることをボトムアップに繰り返すクラスタリング手段と、前記クラスタリングによって生じた各クラスタから所定のキーワードを代表クエリとしてそれぞれ選択する代表クエリ選択手段と、を更に有することを特徴とする。本発明によれば、所定のクラスタ数になるまでクラスタリングすることを繰り返し、各クラスタからキーワードを代表クエリとしてそれぞれ選択するため、端末の画面サイズや検索アプリケーションのデザイン等に応じて推薦されるクエリ数を動的に変えたいとするユーザの要望を満たすことができる。本発明によれば、階層的クラスタリングによって構築されたボトムアップインデックスを下層から併合してクラスタリングするため、多様化された代表クエリを選択できる。請求項3記載のクエリ提供装置は、請求項2記載のクエリ提供装置において、前記代表クエリ選択手段は、前記クラスタリングによって生じたクラスタ内のキーワードが他のキーワードに対して有するキーワード間距離を前記距離行列データから探索して平均値を計算し、前記平均値が最も小さいキーワードを前記代表クエリとして選択することを特徴とする。本発明によれば、クラスタ内のキーワードが他のキーワードに対して有するキーワード間距離を距離行列データから探索するため、キーワード間距離の探索を定数時間で実行可能となり、代表クエリを高速に選択できる。本発明によれば、クラスタリングによって生じたクラスタ内のキーワードが他のキーワードに対して有するキーワード間距離を距離行列データから探索して平均値を計算し、その平均値が最も小さいキーワードを代表クエリとして選択するため、より適切に多様化された代表クエリを選択できる。請求項4記載のクエリ提供方法は、コンピュータにより行うクエリ選択方法において、キーワードの意味的な類似性に基づいてキーワード間の距離を計算し、キーワードからキーワード間距離を探索可能な距離行列データを生成して記憶手段に記憶しておく距離行列計算ステップと、前記距離行列データを用いて前記キーワードを階層的クラスタリングし、前記階層的クラスタリングによって構築されたデンドログラムを下層から上層に探索可能なボトムアップインデックスとして記憶手段に記憶しておくクラスタリングステップと、を有することを特徴とする。本発明によれば、キーワードからキーワード間距離を探索可能な距離行列データと、階層的クラスタリングされたキーワードのボトムアップインデックスとを予め生成し記憶しておくため、情報検索時に代表クエリを高速に選択できる。請求項5記載のクエリ提供方法は、請求項4記載のクエリ提供方法において、前記記憶手段からボトムアップインデックスを読み出して、所定のクラスタ数になるまで下層を併合してクラスタリングすることをボトムアップに繰り返すクラスタリングステップと、前記クラスタリングによって生じた各クラスタから所定のキーワードを代表クエリとしてそれぞれ選択する代表クエリ選択ステップと、を更に有することを特徴とする。本発明によれば、所定のクラスタ数になるまでクラスタリングすることを繰り返し、各クラスタからキーワードを代表クエリとしてそれぞれ選択するため、端末の画面サイズや検索アプリケーションのデザイン等に応じて推薦されるクエリ数を動的に変えたいとするユーザの要望を満たすことができる。本発明によれば、階層的クラスタリングによって構築されたボトムアップインデックスを下層から併合してクラスタリングするため、多様化された代表クエリを選択できる。請求項6記載のクエリ提供方法は、請求項5記載のクエリ提供方法において、前記代表クエリ選択ステップは、前記クラスタリングによって生じたクラスタ内のキーワードが他のキーワードに対して有するキーワード間距離を前記距離行列データから探索して平均値を計算し、前記平均値が最も小さいキーワードを前記代表クエリとして選択することを特徴とする。本発明によれば、クラスタ内のキーワードが他のキーワードに対して有するキーワード間距離を距離行列データから探索するため、キーワード間距離の探索を定数時間で実行可能となり、代表クエリを高速に選択できる。本発明によれば、クラスタリングによって生じたクラスタ内のキーワードが他のキーワードに対して有するキーワード間距離を距離行列データから探索して平均値を計算し、その平均値が最も小さいキーワードを代表クエリとして選択するため、より適切に多様化された代表クエリを選択できる。請求項7記載のクエリ提供プログラムは、請求項4乃至6のいずれかの各ステップをコンピュータに実行させることを特徴とする。本発明によれば、適切に多様化されたクエリを高速に選択できる。本発明の具体的特徴について先ず説明する。本発明は、クライアント端末を用いて情報検索が実行される前に、複数のキーワード入力されたクエリに関連性のある関連クエリとして検索後に推薦される候補となる複数のキーワードを用いて階層的クラスタリングを事前に完了しておき、ボトムアップなインデックスとして保持しておくことを特徴とする。同時に、キーワード間の距離を検索可能な距離行列データを生成し保持しておくことを特徴とする。そのように生成されたボトムアップインデックス及び距離行列データを予め保持しておくPreProcessingことにより、従来よりも高速にクエリを選択可能となる。なお、階層的クラスタリングには分割最適化手法と階層的手法が存在するが、本発明では最終的に推薦されるクエリが単に高精度というだけではなく多様であることがユーザの情報検索要求を満たすことに繋がるという仮説に基づいているため、階層的手法を用いる。階層的クラスタリングに関する技術については、データマイニング分野のクラスタリング手法1、神嶌敏弘、人口知能学会誌、18巻1号、2003年1月以下、関連文献3に記載されている。そのような仮説は、AssessingtheScenicRouteMeasuringtheValueofSearchTrailsinWebLogs、RyenWhite、外1名、SIGIR2010関連文献4にて間接的に証明されていることを付言しておく。また、非特許文献4によれば、検索行動の途中状態時において、ユーザは妥当性だけでなく多様性も加味しながら多様なクエリを選択していることが証明されている。なお、推薦される関連クエリが多様であるとは、互いに意味が似通っていないということを意味している図1参照。階層的クラスタリングによって生じたデンドログラムを全てのキーワード集合上に構築すると、任意の部分キーワード集合をキーワード数以下の任意の個数にクラスタリング可能となる。この性質により、端末の画面サイズ等を考慮してアプリケーション側ユーザ側によって指定された任意の組合せのキーワード集合を任意の個数にクラスタリング可能となり、多様化されたクエリを選択可能となる。また、本発明では、階層的クラスタリングを行う際に用いた距離行列データを各クラスタから代表クエリをそれぞれ選択する際に再利用することを特徴とする。距離行列データを用いることにより、定数時間で代表クエリを選択可能となる。以下、本発明を実施する一実施の形態について図面を用いて説明する。但し、本発明は多くの異なる様態で実施することが可能であり、本実施の形態の記載内容に限定して解釈すべきではない。図2は、本実施の形態に係る情報検索システムの全体構成を示す図である。本情報検索システムは、ネットワークサービスとして利用可能であり、キーワードをキーワード入力欄に入力して所期情報を検索するユーザは、ウェブアプリケーションやクライアントアプリケーションを通じて当該サービスを利用できる。本情報検索システムは、情報検索時にキーワードが入力されるクライアント端末5と、通信ネットワーク3を介してクライアント端末5に通信可能に接続され、入力されたキーワードをクエリとして受信し、そのクエリに対して推薦される関連クエリをデータベースサーバ20から選択して、クライアント端末5に提供するアプリケーションサーバ10を備えたクエリ提供装置1とで構成されている。なお、このようなクライアント端末5としては、例えば、ウェブブラウザやクライアントアプリケーションがインストールされた携帯電話,スマートフォン,汎用パソコン等により実現される。また、クエリ提供装置1としては、例えば、汎用パソコンやサーバ等により実現される。次に、クライアント端末5とクエリ提供装置1を構成する各機能部について詳述する。図3は、クライアント端末及びクエリ提供装置の各機能ブロックを示している。クライアント端末5は、情報検索時に入力されたキーワードをクエリとして受け付けると共に、そのクエリでヒットした情報検索結果や当該クエリに対して当該情報検索後に推薦される関連クエリを表示するユーザインタフェース部51と、入力されたキーワードや情報検索結果等の各種データを記憶する記憶部52と、通信ネットワーク3に対して各種データの入出力を行う通信部53と、各種データを処理するデータ処理部54とで構成されている。クエリ提供装置1は、アプリケーションサーバ10を構成する距離行列計算部11とクラスタリング部12と関連クエリ取得部13と代表クエリ選択部14と代表クエリ出力部15と、データベースサーバ20を構成するデータ記憶部21と、通信ネットワーク3を介してクライアント端末5に対して各種データの入出力を行う通信部30とで構成されている。以下、それら各機能部の有する具体的特徴について詳述する。距離行列計算部11は、データ記憶部21から読み出したキーワードの意味的な類似性に基づいてそれら全てのキーワード間の距離を計算し、一のキーワードから他のキーワードへの距離以下、キーワード間距離を探索可能な距離行列データを生成してデータ記憶部21に記憶しておく機能を有している。クラスタリング部12は、その距離行列データを用いて複数のキーワードを階層的クラスタリングし、その階層的クラスタリングによって構築されたデンドログラムを下層から上層に探索可能なボトムアップインデックスとしてデータ記憶部21に記憶しておく機能を有している。また、クラスタリング部12は、情報検索時において、データ記憶部21からボトムアップインデックスを読み出して、関連クエリ取得部13によって取得された関連クエリについて、指定されたクラスタ数になるまで下層を併合してクラスタリングすることをボトムアップに繰り返す機能を有している。関連クエリ取得部13は、情報検索時に入力されたキーワードに関連する複数のキーワードを関連クエリとしてデータ記憶部21から取得する機能を有している。代表クエリ選択部14は、クラスタリングによって生じた各クラスタ内の関連クエリが当該クラスタ内の他の関連クエリに対して有するキーワード間距離を上記距離行列データから探索して平均値を計算し、その平均値が最も小さい関連クエリを各クラスタから代表クエリとしてそれぞれ選択する機能を有している。代表クエリ出力部15は、選択された複数の代表クエリを入力されたキーワードに関連付けてクライアント端末5に出力する機能を有している。データ記憶部21は、情報検索後に推薦される候補となる様々な複数のキーワード、予め生成された距離行列データ及びボトムアップインデックスを読み出し可能に保持しておく機能を有している。なお、距離行列計算部11とクラスタリング部12と関連クエリ取得部13と代表クエリ選択部14と代表クエリ出力部15とは、CPU等の処理手段により実現される。また、データ記憶部21は、ROM、RAM、HDD等の記憶手段により実現される。これらの各処理部は単一装置内で実現されるだけでなく、複数台で分散構成により実現することも可能である。続いて、クエリ提供装置1の処理動作を2段階に分けて説明する。最初に、図4を参照しながら、情報検索時前の事前処理について説明する。まず、距離行列計算部11が、データ記憶部21から全てのキーワードを読み出してキーワード間距離を計算し、キーワードからキーワード間距離を探索可能な距離行列データを生成して、データ記憶部21に保持するS101。なお、キーワードはTFIDFやPageRank等を用いて計算される特徴量を表したベクトルとして表現されている場合が一般的であるが、必ずしもベクトル表現されている必要はなく、意味的な類似性に基づいてキーワード間距離が計算できればどのような特徴量であっても良い。例えば、キーワード間距離として検索エンジンの結果数を利用したJaccard係数の逆数を用いる場合には、キーワードki,kjの距離distanceを以下の式1を用いて計算してもよい。但し、kは、キーワードkの結果数であり、∩,∪は、それぞれ、AND,ORの演算子である。なお、ここで生成保持された距離行列データは、後段のクラスタリング処理と代表クエリ選択処理にて利用される。次に、クラスタリング部12が、距離行列データを用いてデータ記憶部21に記憶されている全キーワード集合に対して階層的クラスタリングを行い、その階層的クラスタリングによって構築されたデンドログラムをボトムアップインデックスとしてデータ記憶部21に保持するS102。ここで、階層的クラスタリング技術について説明する。階層的クラスタリングとは、キーワード間,クラスタ間,キーワードとクラスタとの間の距離を求めて最も近いものを新たなクラスタとし、新しく形成されたクラスタと他のキーワードや他のクラスタとの距離を求めて最も近い2つを結合して新たなクラスタを生成していくことをクラスタ数が1つ本発明では指定数になるまで繰り返す処理をいう。より具体的には、前述した関連文献3に記載されている。そして、その階層的クラスタリングによって、例えば、図5に示すようなデンドログラム樹状図が構築される。なお、図5の中間ノードに付与されている数字は、全体集合を上層ノードから下層ノードに向けて順番に分割する順番を表している。例えば、上層の根ノードからたどり、2番の中間ノードでデンドログラムをクラスタリングすると、全体集合は2分割される。引き続き、3番の中間ノードでクラスタリングすると、全体集合は3分割される。さらに4番の中間ノードでクラスタリングすると4分割A~Dされ、結果として中間ノードの数字で全体集合をクラスタリングしたことになる。この性質により、前述したように、デンドログラムをキーワード集合上に一度構築すると、キーワードの総数以下の任意の個数にクラスタリングできる。その後、図6bに示すように、階層的クラスタリングによって構築されたデンドログラムが、下層から上層に探索可能なボトムアップインデックスとしてデータ記憶部21に保持されるため、後段のクラスタリング処理の高速化が可能となる。ボトムアップなインデックスとは、デンドログラム中の下層ノードをキーとした索引であり、ある下層ノードから上層ノード以下、親ノードという場合もあるを高速に取得することができる。続いて、図7及び図8を参照しながら、情報検索時の処理について説明する。まず、関連クエリ取得部13が、情報検索時に入力されたキーワードに関連する複数のキーワードを関連クエリとしてデータ記憶部21から取得するS201。例えば、openCVというキーワードが入力され、OCR,使い方,ダウンロード,顔検出,画像処理,テンプレートマッチング,カメラ,顔認識,インストール,2.1,2.0,動画,関数,リファレンス,本という関連クエリがデータ記憶部21から取得されたとする。なお、本発明では、関連クエリの取得方法取得数を含むには何ら制限されない。例えば、前述した関連文献1,2に記載の取得方法を利用できる。また、関連クエリの取得数はアプリケーションに依存しており、所定数にチューニング可能である。より多くの関連クエリを取得すると、後段にてクラスタリングする際における各クラスタ内の関連クエリ濃度が高くなるため、クラスタリング処理時の精度が向上することが期待できる。一方、手法によっては関連クエリの取得に時間がかかる可能性もある。次に、クラスタリング部12が、S201で取得した関連クエリ集合について、予め生成しておいたボトムアップインデックスを利用して、指定されたクラスタ数になるまでクラスタリングするS202。ここで、図9に示すように、T1,T4,T7,T9,T13,T14の関連クエリをクラスタリングする場合について、図10~図13を参照しながら、クラスタリングの処理について説明する。最初に、アプリケーションが要求する指定クラスタ数k、クラスタリング対象となる関連クエリ集合T’、事前に取得したボトムアップインデックスIDXの入力を受け付けるS202a。以下、指定クラスタ数kは3、関連クエリ集合T’はT1,T4,T7,T9,T13,T14、ボトムアップインデックスIDXは図6bとする。次いで、その時点の一時クラスタ数c=|T’|と、関連クエリ集合T’の親ノードの分割順位をボトムアップインデックスIDXから取得して降順にソートした親ノードリストPと、親ノードリストPの中で最も分割順位が大きいノードの親ノードの分割順位が設定された位置ポインタcpとを一時変数として設定するS202b。関連クエリ集合T’がT1,T4,T7,T9,T13,T14であることから、この時点で、c=6、P=5,7,8,11,14,15、cp=13が設定される。次いで、一時クラスタ数cと指定クラスタ数kとが比較されS202c、一時クラスタ数cが指定クラスタ数kよりも大きい場合には、一時クラスタ数cが指定クラスタ数kに一致するまで以下説明するS202d~S202iの処理が繰り返される。次いで、S202cでの比較の結果、一時クラスタ数cが指定クラスタ数kよりも大きい場合には、親ノードリストPの中で最も分割順位が大きいノードの親ノードの分割順位をボトムアップインデックスIDXから取得し、位置ポインタcpに設定するS202d。親ノードリストPは変更されていないため、初期の一時値と同じcp=13が設定される図11、図12に示す時点A参照。次いで、S202dで新たに設定された位置ポインタcpが親ノードリストPに含まれるか否かを判定するS202e。図11、図12の時点Aを参照すると、cp=13は、Pの中に含まれていない。次いで、S202eでの判定の結果、位置ポインタcpが親ノードリストPに含まれていない場合には、親ノードリストPの中で最も分割順位が大きいノードの親ノードの分割順位をボトムアップインデックスIDXから取得し、その最も大きいノードの分割順位を、取得した親ノードの分割順位と交換して降順に並び替えた後に、S202cに戻るS202f。これにより、P=5,7,8,11,13,14が設定される。その後、S202c、S202dの処理により、cp=12が設定される図11、図12に示す時点B参照。同様に、S202f、S202c、S202dの処理により、P=5,7,8,11,12,13、cp=12が設定される図11、図12に示す時点C参照。次いで、S202eでの判定の結果、位置ポインタcpが親ノードリストPに含まれている場合には、これまで処理対象であった部分関連クエリ集合の親ノードと同じ親ノードの他の部分関連クエリ集合が存在すると判断できるため、親ノードリストPの中で最も大きいノードの分割順位を削除することで、2つの部分キーワード集合を併合するS202g。次いで、親ノードリストPを降順に並び替えS202h、一時クラスタ数cから1を引いたS202i後に、S202cに戻る。その後、S202c、S202dの処理により、cp=4が設定される図11、図12に示す時点D参照。同様に、S202c~S202iの処理を繰り返すことにより、現在の処理時点は、図11、図12に示す時点Eであるとする。次いで、S202cでの比較の結果、一時クラスタ数cが指定クラスタ数kよりも大きくない場合には、k個にクラスタリングされた関連クエリ集合を出力するS202j。これにより、P=3を親ノードとする関連クエリ集合T13とT14と、P=4を親ノードとする関連クエリ集合T1とT4と、P=5を親ノードとする関連クエリ集合T7とT9とが出力される。以上がクラスタリングの処理であるが、直感的には、最初に、部分集合中の関連クエリそれぞれを1つのクラスタとみなしてクラスタ数を初期化し、次に、デンドログラムをボトムアップに登りながら併合する処理を行っている。すなわち、図13bに示すように、キーワードを事前にクラスタリングしておきPreProcessing、その事前のクラスタリング結果を情報検索時にインデックスとして利用することにより、図13aに示した従来のオンデマンドクラスタリングよりも高速に関連タグの多様化を図ることができる。なお、このクラスタリングの結果、OCR,テンプレートマッチング,顔検出,顔認識という第1クラスタと、使い方,ダウンロード,インストール,関数,リファレンス,本という第2クラスタと、画像処理,カメラ,2.1,2.0,動画という第3クラスタとにクラスタリングされたとする。次に、図7及び図8に戻り、代表クエリ選択部14が、各クラスタ内から代表クエリをそれぞれ選択するS203。例えば、クラスタ内での関連クエリの中心性に基づいて代表クエリを判定する。具体的には、クラスタに含まれる全ての関連クエリ間に枝があると仮定し、図14に示すように、以下の式2を用いて各クエリ間の中心性centralityをそれぞれ計算する。なお、QSは、クラスタ内における自分以外の関連クエリの総数である。すなわち、自分以外の関連クエリへのキーワード間距離を距離行列データから探索して平均値を計算し、その平均値が最も小さい関連クエリをクラスタ内の中心とみなして代表クエリとして選択する。1回の距離行列データの探索は定数時間で実行できるため、キーワード間距離をナイーブに計算するのと比べて非常に高速に取得できる。ここで、図15を参照しながら、代表クエリの選択処理について説明する。最初に、S202で得られたクラスタCi0≦i≦n:nはクラスタの総数=指定されたクラスタ数、距離行列データMを受け付けるS203a。次いで、クラスタCiのiに1を初期値として設定するS203b。次いで、iとnとが比較されS203c、iがn以下の場合には、クラスタCi内の全ての関連クエリの中心性を距離行列データを用いて計算しS203d、中心性の最も高い関連クエリを代表クエリQiに設定するS203e。その後、iに1を追加しS203f、全てのクラスタの代表クエリQiが設定されるまでS203c~S203eの処理を繰り返す。最後に、iがnよりも大きい場合には、各クラスタCiから代表クエリQiを出力するS203g。前述の第1~第3クラスタに対してGoogle検索エンジンでのヒット数を用いた中心性の計算結果を以下に示す。内に中心性の値を示す。第1クラスタについては、平均値の小さい順に、顔認識25.47,顔検出57.33,テンプレートマッチング87.13,OCR163.92となった。第2クラスタについては、使い方5.02,ダウンロード5.03,インストール5.03,リファレンス5.05,関数5.07,本5.08となった。第3クラスタについては、画像処理28.35,動画31.25,2.061.83,カメラ133.85,2.1242.52となった。以上の計算結果より、アプリケーション側ユーザ側に推薦される関連クエリとしては、各クラスタで最も平均値の小さい顔認識,使い方,画像処理がそれぞれ選択される。いずれの関連クエリも多様であることが把握できる。なお、代表クエリを選択する方法としては、クエリにマッチした文書数、指定した期間においてクエリが発行された回数、鮮度の高いクエリを選ぶ方法を利用してもよい。最後に、図7及び図8に戻り、代表クエリ出力部15が、選択された各代表クエリを入力キーワードに関連付けて視認可能にクライアント端末5に出力するS204。参考までに、クライアント端末5に出力される情報検索結果を図16に示す。入力されたopenCVのキーワードに対して、顔認識と使い方と画像処理の関連クエリ代表クエリがそれぞれ紐付けされて表示されている。なお、計算されたキーワード間距離の平均値に応じて各関連クエリの文字や形状を変化させ、更には入力キーワードとの距離を調整するようにしてもよい。以上より、本実施の形態によれば、キーワードからキーワード間距離を探索可能な距離行列データと、階層的クラスタリングされたキーワードのボトムアップインデックスとを予め生成し記憶しておくので、情報検索時に代表クエリを高速に選択できる。本実施の形態によれば、所定のクラスタ数になるまでクラスタリングすることを繰り返し、各クラスタからキーワードを代表クエリとしてそれぞれ選択するので、端末の画面サイズや検索アプリケーションのデザイン等に応じて推薦されるクエリ数を動的に変えたいとするユーザの要望を満たすことができる。本実施の形態によれば、階層的クラスタリングによって構築されたボトムアップインデックスを下層から併合してクラスタリングするので、多様化された代表クエリを選択できる。本実施の形態によれば、クラスタ内のキーワードが他のキーワードに対して有するキーワード間距離を距離行列データから探索するので、キーワード間距離の探索を定数時間で実行可能となり、代表クエリを高速に選択できる。本実施の形態によれば、クラスタリングによって生じたクラスタ内のキーワードが他のキーワードに対して有するキーワード間距離を距離行列データから探索して平均値を計算し、その平均値が最も小さいキーワードを代表クエリとして選択するので、より適切に多様化された代表クエリを選択できる。これらの効果から、クエリの違いが容易に把握可能なクエリを提供可能であり、次の検索時において容易にクエリを選択可能となる。特に、モバイル端末において、検索時におけるユーザ満足度を高めるようにユーザをナビゲート可能となる情報検索時における検索ナビゲーションの効率化。"