"プロセッサと記憶装置とを備えた計算機で、受信した検索キーワードで所定のデータベースから検索を行う情報検索方法であって、前記計算機が受信した検索キーワードの履歴と前記データベースの情報へのアクセスの履歴からキーワード列を生成する第1のステップと、前記計算機が前記検索キーワードを受信する第2のステップと、前記計算機が前記検索キーワードに一致または類似するキーワードを含む前記キーワード列を検索し、1つ以上のキーワード列を抽出する第3のステップと、前記計算機が前記抽出したキーワード列のうち、前記検索キーワードに一致または類似するキーワードから前記データベースの情報に至るキーワードを出力する第4のステップと、を含むことを特徴とする情報検索方法。請求項1に記載の情報検索方法であって、前記第1のステップは、前記計算機が前記検索キーワードの受信または前記データベースの情報へのアクセスの度に、前記検索キーワードと前記データベースの情報へのアクセスをアクセス履歴情報に蓄積する第5のステップと、前記計算機が所定のタイミングで前記アクセス履歴情報の検索キーワードと前記データベースの情報を読み込んで、前記検索キーワードから前記データベースの情報に至るキーワードを接続したキーワード列を関連グラフとして生成する第6のステップと、前記計算機が前記関連グラフから前記各キーワードへの確率遷移行列を生成する第7のステップと、前記計算機が前記確率遷移行列から前記キーワードの固有ベクトルを演算する第8のステップと、前記計算機が前記固有ベクトルから複数のキーワード列を生成し、当該キーワード列を推薦キーワードテーブルに格納する第9のステップと、を含むことを特徴とする情報検索方法。請求項2に記載の情報検索方法であって、前記第6のステップは、前記キーワード列の終端にデータベースの情報を含み、前記第9のステップは、前記推薦キーワードテーブルの前記キーワード列の終端にデータベースの情報を含むことを特徴とする情報検索方法。請求項2に記載の情報検索方法であって、前記第8のステップは、前記確率遷移行列の固有値が大きい順に所定数の固有ベクトルを演算することを特徴とする情報検索方法。請求項2に記載の情報検索方法であって、前記第4のステップは、前記固有ベクトルが最も小さい値の前記キーワードを特定することを特徴とする情報検索方法。請求項1に記載の情報検索方法であって、前記第4のステップは、前記計算機が前記抽出したキーワード列のうち、前記検索キーワードに一致または類似するキーワードよりも所定数だけ上位のキーワードから前記データベースの情報に至るキーワードを出力することを特徴とする情報検索方法。プロセッサと記憶装置とを備えて、受信した検索キーワードで所定のデータベースから検索を行う情報検索装置であって、前記受信した検索キーワードの履歴と前記データベースの情報へのアクセスの履歴からキーワード列を生成する推薦キーワード生成部と、前記検索キーワードを受信し、前記検索キーワードに一致または類似するキーワードを前記生成されたキーワード列から検索して、1つ以上のキーワード列を抽出し、前記抽出したキーワード列のうち、前記検索キーワードに一致または類似するキーワードから前記データベースの情報に至るキーワードを出力する検索部と、を備えたことを特徴とする情報検索装置。請求項7に記載の情報検索装置であって、前記推薦キーワード生成部は、前記検索キーワードの受信または前記データベースの情報へのアクセスの度に、前記検索キーワードとデータベースの情報へのアクセスをアクセス履歴情報に蓄積する履歴収集部を有し、前記推薦キーワード生成部は、所定のタイミングで、前記アクセス履歴情報の検索キーワードとデータベースの情報を読み込んで、前記検索キーワードから前記データベースの情報に至るキーワードを接続したキーワード列を関連グラフとして生成し、前記関連グラフから前記各キーワードへの確率遷移行列を生成し、前記計算機が前記確率遷移行列から前記キーワードの固有ベクトルを演算し、前記計算機が前記固有ベクトルから複数のキーワード列を生成し、当該キーワード列を推薦キーワードテーブルに格納することを特徴とする情報検索装置。請求項8に記載の情報検索装置であって、前記推薦キーワード生成部は、前記キーワード列の終端にデータベースの情報を含むことを特徴とする情報検索装置。請求項8に記載の情報検索装置であって、前記推薦キーワード生成部は、前記確率遷移行列の固有値が大きい順に所定数の固有ベクトルを演算することを特徴とする情報検索装置。請求項8に記載の情報検索装置であって、前記検索部は、前記固有ベクトルが最も小さい値の前記キーワードを特定することを特徴とする情報検索装置。請求項7に記載の情報検索装置であって、前記検索部は、前記抽出したキーワード列のうち、前記検索キーワードに一致または類似するキーワードよりも所定数だけ上位のキーワードから前記データベースの情報に至るキーワードを出力することを特徴とする情報検索装置。プロセッサと記憶装置とを備えた計算機で、受信した検索キーワードで所定のデータベースから検索を行うプログラムであって、前記受信した検索キーワードの履歴と前記データベースの情報へのアクセスの履歴からキーワード列を生成する第1の手順と、前記検索キーワードを受信する第2の手順と、前記検索キーワードに一致または類似するキーワードを含むキーワード列を検索し、1つ以上のキーワード列を抽出する第3の手順と、前記抽出したキーワード列のうち、前記検索キーワードに一致または類似するキーワードから前記データベースの情報に至るキーワードとを出力する第4の手順と、を前記計算機に実行させるプログラムを格納した非一時的な計算機読み取り可能な記憶媒体。請求項13に記載の記憶媒体であって、前記第1の手順は、前記検索キーワードの受信または前記データベースの情報へのアクセスの度に、前記検索キーワードと前記データベースの情報をアクセス履歴情報に蓄積する第5の手順と、前記所定のタイミングで前記アクセス履歴情報の検索キーワードと前記データベースの情報を読み込んで、前記検索キーワードから前記データベースの情報に至るキーワードを接続したキーワード列を関連グラフとして生成する第6の手順と、前記関連グラフから前記各キーワードへの確率遷移行列を生成する第7の手順と、前記確率遷移行列から前記キーワードの固有ベクトルを演算する第8の手順と、前記固有ベクトルから複数のキーワード列を生成し、当該キーワード列を推薦キーワードテーブルに格納する第9の手順と、を含むことを特徴とする記憶媒体。請求項14に記載の記憶媒体であって、前記第6の手順は、前記キーワード列の終端にデータベースの情報を含み、前記第9の手順は、前記推薦キーワードテーブルの前記キーワード列の終端にデータベースの情報を含むことを特徴とする記憶媒体。しかし、上記非特許文献1のContentbasedfilteringでは、商品の性質を詳細に用意する必要があるため、大幅な手間がかかり、かつ、商品によって保持する性質が均等ではないため、推薦の性能にばらつきが出てしまうという問題がある。このため、多数の商品を提供する電子商取引サイトでは上記非特許文献1が利用しにくく、上記のような問題解決には至っていない。また、電子商取引サイトを利用したユーザのクリックの履歴を活用することで、クリックされたURLのキーワードからユーザの好みを推定し、推定された好みから商品を特定して推薦する方法が知られている例えば、特許文献1。特許文献1の手法では、上記のContentbasedfilteringの方法における、性質の近い商品の評価を利用しなくてもよい。したがって、類似する商品がない場合でも推薦することが可能になる。しかしながら、上記特許文献1では、ユーザが希望する商品とURLが結びつかない場合は、URLの情報が有効にならないという問題がある。つまり、URLなどのユーザ側の情報と、商品アイテムの情報にギャップがある場合、ユーザの希望する商品にたどり着けないことになる。特に、市場投入間もない商品の場合、この傾向が顕著である。これは、上記従来例と同様に、発売直後の商品を閲覧クリックしたユーザが少ないことに起因する。本発明は上記問題点に鑑みてなされたもので、多数のユーザの検索履歴を活用することで、一人のユーザでは結び付けられなかったキーワードと商品情報を結びつけることを目的とする。本発明は、プロセッサと記憶装置とを備えた計算機で、受信した検索キーワードで所定のデータベースから検索を行う情報検索方法であって、前記計算機が受信した検索キーワードの履歴と前記データベースの情報へのアクセスの履歴からキーワード列を生成する第1のステップと、前記計算機が前記検索キーワードを受信する第2のステップと、前記計算機が前記検索キーワードに一致または類似するキーワードを含む前記キーワード列を検索し、1つ以上のキーワード列を抽出する第3のステップと、前記計算機が前記抽出したキーワード列のうち、前記検索キーワードに一致または類似するキーワードから前記データベースの情報に至るキーワードを出力する第4のステップと、を含む。本発明によれば、検索キーワードからデータベースの情報に到達するキーワード列を提供することで、データベースの利用者は、所望する情報を前記従来例に比して極めて容易に得ることができる。特に、多数のユーザの検索履歴を活用して推薦キーワードテーブルを作成することで、一人のユーザでは容易に結び付けられなかったキーワードとデータベースの情報を結びつけることが可能となる。本発明を実施するための形態以下、実施形態というについて、適宜図面を参照しながら詳細に説明する。図1は、本発明の実施形の態を示し、計算機システムの構成の一例を示すブロック図である。図1においてWEBサーバ100、データベースサーバ200、ストレージ装置300及びログ収集サーバ400は電子商取引サイト2を構成し、電子商取引サイト2はインターネット1またはWANを介して接続された複数のクライアント端末500に電子商取引のWEBサービスを提供する。図1において、LAN3に接続されたWEBサーバ100、データベースサーバ200、ストレージ装置300及びログ収集サーバ400は、電子商取引サイト2を構成する。電子商取引サイト2のLAN3は、インターネット1を介してクライアント端末500に接続される。電子商取引サイト2を利用するユーザは、クライアント端末500のブラウザを介してWEBサーバ100と接続し、WEBサーバ100は商品情報の提供や商品の購入などのサービスを提供する例を示す。<クライアント端末500>各クライアント端末500は、演算処理を行うプロセッサ501と、データやプログラムを保持するメモリ502と、データやプログラムを格納するストレージ装置503と、出力装置としてのディスプレイ装置504と、マウスやキーボードなどの入力デバイス505を備える。クライアント端末500のメモリ502にはWEBブラウザがロードされ、プロセッサ501によって実行される。そして、WEBブラウザによってクライアント端末500が電子商取引サイト2のWEBサーバ100からサービスの提供を受ける。例えば、クライアント端末500は入力デバイス505からユーザが入力した検索キーワードをWEBサーバ100へ送信して商品情報の検索を要求する。WEBサーバ100は受信したキーワードから、該当する商品の情報をデータベースサーバ200から取得してクライアント端末500に送信する。クライアント端末500は、WEBサーバ100から受信した検索結果としての商品情報をディスプレイ装置504に表示する。<電子商取引サイト2>電子商取引サイト2は、複数のクライアント端末500から要求を受け付けてサービスを提供するWEBサーバ100と、ストレージ装置503に格納された商品データベース310を管理して、WEBサーバ100がクライアント端末500から受け付けたキーワードで商品情報を検索するデータベースサーバ200と、クライアント端末500のアクセスの履歴を取得して蓄積するログ収集サーバ400がLAN3に接続されて、相互に通信可能となっている。本発明では、WEBサーバ100がクライアント端末500から受け付けた検索キーワードでデータベースサーバ200に商品データベース310の検索を行う際に、検索した商品情報に加えて、予め作成しておいた推薦キーワードテーブル220のキーワード列も提供するものである。以下、電子商取引サイト2を構成する各サーバの構成についてそれぞれ説明する。<WEBサーバ100>WEBサーバ100は、演算処理を行うプロセッサ101と、情報を保持するメモリ102と、を備えて図示しないネットワークインターフェースを介してLAN3に接続される。メモリ102には、WEBサービス部110がロードされてプロセッサ101によって実行される。WEBサービス部110は、クライアント端末500のWEBブラウザが送信したHTTPによる要求を受け付けるWebサーバ機能と、Webサーバ機能が受け付けた処理要求に対して、データベースサーバ200からデータを取得し、取得したデータに所定の加工などを行ってWebサーバ機能へ応答するアプリケーションサーバの機能を含むものとする。なお、WEBサービス部110のWebサーバ機能とアプリケーションサーバ機能を独立させて、それぞれサーバとすることができる。WEBサービス部110は、データベースサーバ200から取得したデータをクライアント端末500に送信する。<データベースサーバ200>データベースサーバ200は、演算処理を行うプロセッサ201と、情報を保持するメモリ202と、を備えて図示しないネットワークインターフェースを介してLAN3に接続される。メモリ102には、データベース管理システム以下DBMS210と推薦キーワードテーブル220と関連グラフ240、確率遷移行列250、固有ベクトル260を生成する推薦キーワード生成部230がロードされて実行される。DBMS210は、ストレージ装置300の商品データベース310を管理する。DBMS210は、WEBサーバ100から検索キーワードを受け付けると、ストレージ装置300の商品データベース310を検索し、検索キーワードにマッチした商品情報を取得する。このとき、DBMS210は、検索キーワードにマッチする推薦キーワードテーブル220からキーワード列を取得して、キーワード列の終端には検索結果としての商品情報を含めてWEBサーバ100へ応答する。本実施形態では、データベースサーバ200が商品データベース310と推薦キーワードテーブル220を検索する情報の検索装置として機能し、DBMS210は検索部として機能する。推薦キーワード生成部230は、所定のタイミングでログ収集サーバ400が収集したユーザアクセス履歴テーブル420を参照し、後述するように関連グラフ240や推薦キーワードテーブル220を生成し、メモリ202に保持する。なお、推薦キーワード生成部230は、生成した推薦キーワードテーブル220や固有ベクトル260等をストレージ装置300に格納するようにしてもよい。推薦キーワード生成部230は、推薦キーワードテーブル220を生成する際に、関連グラフ240、確率遷移行列250、固有ベクトル260を生成する。これらの詳細については後述する。なお、本実施形態では、推薦キーワード生成部230をデータベースサーバ200で実行する例を示したが、これに限定されるものではない。本発明では、ユーザアクセス履歴テーブル420を参照して推薦キーワードテーブル220を生成し、DBMS210が推薦キーワードテーブル220を参照し、キーワード列と商品情報をWEBサーバ100へ応答できればよい。このため、推薦キーワード生成部230は、データベースサーバ200以外のログ収集サーバ400やWEBサーバ100で実行することができる。また、本発明では、検索キーワードを受け付けたWEBサーバ100がキーワード列と商品情報をクライアント端末500に応答するので、WEBサーバ100で推薦キーワードテーブル220と固有ベクトル260等を保持するようにしても良い。<ログ収集サーバ400>ログ収集サーバ400は、演算処理を行うプロセッサ401と、情報を保持するメモリ402と、を備えて図示しないネットワークインターフェースを介してLAN3に接続される。メモリ402には、ログ収集部410がロードされてプロセッサ401によって実行される。ログ収集部410は、クライアント端末500が要求した検索キーワードと商品情報を取得し、ユーザアクセス履歴テーブル420に蓄積する。なお、本実施形態では、メモリ402にユーザアクセス履歴テーブル420を格納する例を示すが、ストレージ装置300やログ収集サーバ400のローカルのストレージ装置図示省略にユーザアクセス履歴テーブル420を格納するようにしても良い。ログ収集部410は、クライアント端末500がWEBサーバ100に対して商品データベース310の情報を要求したときに、図5に示すユーザアクセス履歴テーブル420に新たなエントリを加えて、クライアント端末500が要求した情報を蓄積する。図5はユーザアクセス履歴テーブル420を示す。ユーザアクセス履歴テーブル420は、クライアント端末500が商品データベース310の情報を要求したときの時刻情報を格納する日時421と、クライアント端末500の識別子または検索要求を行う利用者の識別子を格納するユーザID422と、クライアント端末500と電子商取引サイト2の間に張られたセッションの識別子を格納するセッションID422と、クライアント端末500が行った操作の種類を格納するアクション424と、クライアント端末500が入力または選択した検索キーワードを格納するキーワード425と、クライアント端末500が要求した商品情報の所在を格納する商品情報URL426とから一つのエントリを構成する。なお、上記アクション424には、後述する商品情報の検索画面で、クライアント端末500が検索キーワードを入力した場合にはinputがアクション424に格納され、クライアント端末500が商品情報を選択したときにはselectがアクション424に格納される。ここで、ログ収集サーバ400は、クライアント端末500がWEBサーバ100に要求した内容をアクセスの履歴として蓄積するため、クライアント端末500とWEBサーバ100の間に介在するように配置すればよい。例えば、ログ収集サーバ400は、クライアント端末500とWEBサーバ100の間でパケットを転送するプロクシとして機能させることができる。なお、本発明ではクライアント端末500が商品データベース310の商品情報をWEBサーバ100へ要求したときに、ユーザアクセス履歴テーブル420に新たなエントリを追加できればよいので、図1の構成に限定される物ではない。例えば、WEBサーバ100のWEBサービス部110でクライアント端末500のログを生成し、WEBサーバ100に保持したユーザアクセス履歴テーブル420を更新しても良い。また、WEBサーバ100のWEBサービス部100と、データベースサーバ200のDBMS210、推薦キーワード生成部230、ログ収集サーバ400のログ収集部410はそれぞれプログラムで構成される。これらのプログラムは、非一時的な計算機読み取り可能な記憶媒体としてのストレージ装置300に格納され、各サーバの起動時にメモリにロードされる。<全体の処理>図2は、図1の計算機システムで行われる全体的な処理のフローチャートである。まず、ステップS1では、複数のクライアント端末500がWEBサーバ100にアクセスして、検索キーワードによって商品情報を要求する。ステップS2では、ログ収集サーバ400は、各クライアント端末500が要求した検索キーワードと各クライアント端末500がアクセスした商品情報を、それぞれユーザアクセス履歴テーブル420に蓄積する。一方、ステップS3では、所定の時間間隔例えば、1時間毎でデータベースサーバ200の推薦キーワード生成部230がユーザアクセス履歴テーブル420を参照して推薦キーワードテーブル220と固有ベクトル260等を生成しておく。そして、ステップS4では、上記ステップS1で受け付けた検索キーワードを含むキーワード列推薦キーワード列をデータベースサーバ200のDBMS210が推薦キーワードテーブル220から抽出する。そして、データベースサーバ200のDBMS210は、抽出したキーワード列と、このキーワード列から検索された商品情報を商品データベース310から取得してWEBサーバ100に応答する。WEBサーバ100はデータベースサーバ200から受け付けた情報を、検索キーワードの送信元のクライアント端末500に応答する。この結果、クライアント端末500のディスプレイ装置504には、図3に示すような検索画面540が表示される。図3は、クライアント端末500がWEBサーバ100にアクセスして、商品情報を要求する際にディスプレイ装置504に表示される検索画面540である。この検索画面540は、検索キーワード図中入力キーワードを入力する領域541と、検索キーワードに対するWEBサーバ100からの検索結果を表示する領域542検索結果表示領域の2つに分けられる。そして、検索結果を表示する領域542は、上半分が検索キーワードと推薦キーワードを含む関連グラフ木構造のキーワード列2400を表示する領域543と、関連グラフの終端木構造の葉部分=リーフノードには検索結果としての商品情報を表示する領域544から構成される。クライアント端末500のユーザが、商品情報の領域541に表示されたNo.1~N0.4の商品情報の枠内を選択すると、WEBサーバ100は商品データベース310から商品情報を取得してディスプレイ装置504に表示する。検索結果を表示する領域542の、関連グラフ2400は、後述するように、検索キーワードを入力して図25または図26の処理で推薦キーワードテーブル220から抽出されたキーワード列のキーワードを接続したものである。ログ収集サーバ400は、図3に示す検索画面540でクライアント端末500がWEBサーバ100に対して商品情報を要求または検索するときに、ユーザアクセス履歴テーブル420に新たな履歴を加える。つまり、クライアント端末500で、検索画面540の領域541で検索キーワードを入力し、WEBサーバ100に検索キーワードを送信するとログ収集サーバ400は、新たなエントリユーザアクセス履歴テーブル42に追加し、当該エントリのアクション424はinputに設定される。一方、検索結果542の領域544で商品情報を選択またはクリックし、WEBサーバ100に商品情報を要求するとログ収集サーバ400は、新たなエントリを加えて、当該エントリのアクション424はselectに設定される。<推薦キーワードテーブル220の生成の概要>図4はデータベースサーバ200の推薦キーワード生成部230で行われる処理の一例を示すフローチャートである。この処理は、図2のステップS3で行われる処理である。ステップS31では、推薦キーワード生成部230がログ収集サーバ400のアクセス履歴テーブル420を参照して、検索キーワードの入力履歴を取得する。ステップS32では、推薦キーワード生成部230がログ収集サーバ400のアクセス履歴テーブル420を参照して、商品情報のアクセス履歴を取得する。ステップS33では、推薦キーワード生成部230が図6の処理を実行して、ユーザアクセス履歴テーブル420より、検索キーワードから商品情報に至るキーワード列を抽出して関連グラフ240を生成する。この関連グラフ240は、図7~図13で示すように、ユーザアクセス履歴テーブル420のセッションID423毎に、関連グラフ240の一部を構成する部分グラフ240A~240Fを抽出する。そして、推薦キーワード生成部230が、部分グラフ240A~240Fから検索キーワードより商品情報に至るキーワード列を含むキーワードの木構造を、図14に示す関連グラフ240として生成する。すなわち、関連グラフ240は、電子商取引サイト2のユーザの何れかが過去に検索したキーワードの履歴と、閲覧した商品情報の履歴から、商品情報に辿りつくまでのキーワードを推薦キーワード生成部230が結合したグラフである。次に、ステップS34では、推薦キーワード生成部230が、上記ステップS33で求めた関連グラフ240から、検索キーワードの起点と終点以下、親ノードから子ノードの遷移確率を求めて確率遷移行列Z250を求める。確率遷移行列Zの演算は、後述の図15~図18のように行われる。ステップS35では、推薦キーワード生成部230が、上記ステップS34で求めた確率遷移行列Zから固有ベクトル260をK本演算する。ここで、Kは予め設定した値例えば、2で、管理者などが設定する値である。この演算によって図19、図20のようにK本のキーワード列が選択される。そして、ステップS36では、推薦キーワード生成部230が、上記ステップS35で求めたK本の固有ベクトル260から、検索キーワードを基点として商品情報に至る推薦キーワードテーブル220を図21で示すように生成する。以下、上記ステップS33~S36のそれぞれについて以下に詳述する。<関連グラフの生成>図6は、関連グラフ240の生成の詳細を示すフローチャートである。ステップS331では、推薦キーワード生成部230が、予め設定された期間内のアクセスログをセッション毎にユーザアクセス履歴テーブル420から抽出する。予め設定された期間としては、各6ヶ月以内などの期間を設定することができる。なお、以下では、アクセスログは、ユーザアクセス履歴テーブル420から抽出した所定の期間内のアクセスログと、商品情報へのアクセスの記録を示す。次に、ステップS332で、推薦キーワード生成部230は、抽出したアクセスログについてセッションID423が同一のレコードを抽出する。そして、ステップS333では、推薦キーワード生成部230は、セッションID423が同一のレコードを日時421の昇順でソートする。そして、推薦キーワード生成部230は、ソートした検索履歴からキーワード425に格納された検索キーワードを順次取得して連結する。推薦キーワード生成部230は、連結した検索キーワードと商品情報を関連グラフ240として保持する。推薦キーワード生成部230は、所定期間内の全てのセッションID423について部分グラフ240A~240Fを抽出して上記関連グラフ240を生成する。例えば、図7で示すように、データベースサーバ200の推薦キーワード生成部230は、ログ収集サーバ400のユーザアクセス履歴テーブル420から日付421が所定の期間内のアクセスログを取得する。そして、推薦キーワード生成部230は取得したユーザアクセス履歴テーブル420から、同一のセッションID423のレコードとして、図示の例では、セッションID423=91119のレコードを抽出し、日時421の昇順でソートしたものを、セッションログ420Aとする。次に、推薦キーワード生成部230は、図8で示すように、セッションログ420Aから、日時421の古いレコードから順次キーワード425の内容を抽出し、抽出した検索キーワードを並べたデータを部分グラフ240Aとして生成する。図8の例では、推薦キーワード生成部230が、セッションID423=91119に等しい複数のレコードをセッションログ420Aとしてユーザアクセス履歴テーブル420から抽出し、日付421の昇順でソートする。そして、推薦キーワード生成部230は、ソート後のセッションログ420Aから日時421の昇順でキーワード425の内容を抽出した結果、金具、フック、S字フックの検索キーワードを時系列で接続したものを部分グラフ240Aとして生成する。つまり、セッションID423=91119では、金具という検索キーワードをクライアント端末500から入力した後に、フックという検索キーワードを入力し、当該セッションの最後にS字フックという順で検索キーワードを入力した履歴を示す。つまり、部分グラフ240Aは、検索キーワードの時系列的な関係を、検索キーワードの接続順序で表現するグラフである。図9は、図8と同様であり、推薦キーワード生成部230が図7のユーザアクセス履歴テーブル420からセッションID423=91121に等しい複数のレコードをセッションログ420Bとして抽出した例を示す。推薦キーワード生成部230は、セッションログ420Bを、日時421の昇順でソートする。そして、推薦キーワード生成部230は、ソート後のセッションログ420Bから日時421の昇順でキーワード425の内容を抽出した結果、フック、S字フックの検索キーワードを時系列で接続したものを部分グラフ240Bとして生成する。図10は、図8と同様であり、推薦キーワード生成部230が図7のユーザアクセス履歴テーブル420からセッションID423=92111に等しい複数のレコードをセッションログ420Cとして図7のユーザアクセス履歴テーブル420から抽出した例を示す。推薦キーワード生成部230は、セッションログ420Cを、日時421の昇順でソートする。そして、推薦キーワード生成部230は、ソート後のセッションログ420Cから日時421の昇順でキーワード425の内容を抽出した結果、フック、S管の検索キーワードを時系列で接続したものを部分グラフ240Cとして生成する。図11は、図8と同様であり、推薦キーワード生成部230が図7のユーザアクセス履歴テーブル420からセッションID423=92911に等しい複数のレコードをセッションログ420Dとして図7のユーザアクセス履歴テーブル420から抽出した例を示す。推薦キーワード生成部230は、セッションログ420Dを、日時421の昇順でソートする。そして、推薦キーワード生成部230は、ソート後のセッションログ420Dから日時421の昇順でキーワード425の内容を抽出した結果、金具、取付金具の検索キーワードを時系列で接続したものを部分グラフ240Dとして生成する。図12は、図8と同様であり、推薦キーワード生成部230が図7のユーザアクセス履歴テーブル420からセッションID423=92923に等しい複数のレコードをセッションログ420Eとして図7のユーザアクセス履歴テーブル420から抽出した例を示す。推薦キーワード生成部230は、セッションログ420Eを、日時421の昇順でソートする。そして、推薦キーワード生成部230は、ソート後のセッションログ420Eから日時421の昇順でキーワード425の内容を抽出した結果、S管、ユニットS管XXXの検索キーワードを時系列で接続したものを部分グラフ240Eとして生成する。ここで、推薦キーワード生成部230は、生成した部分グラフ240EのユニットS管XXXは、商品情報URL426にデータがあるので、関連グラフ240のリーフノードとなる商品情報とする。図13は、図8と同様であり、推薦キーワード生成部230が図7のユーザアクセス履歴テーブル420からセッションID423=93211に等しい複数のレコードをセッションログ420Fとして図7のユーザアクセス履歴テーブル420から抽出した例を示す。推薦キーワード生成部230は、セッションログ420Fを、日時421の昇順でソートする。そして、推薦キーワード生成部230は、ソート後のセッションログ420Fから日時421の昇順でキーワード425の内容を抽出した結果、S管、ユニットS管YYYの検索キーワードを時系列で接続したものを部分グラフ240Fとして生成する。ここで、推薦キーワード生成部230は、生成した部分グラフ240FのユニットS管YYYは、商品情報URL426にデータがあるので、関連グラフ240のリーフノードとなる商品情報とする。以上のように、図6の処理によって、推薦キーワード生成部230は、セッションID423毎に時系列でキーワード425の内容を抽出したものを部分グラフ240A~240Fとして生成する。これらの部分グラフ240A~240Fの集合が、図1に示したデータベースサーバ200のメモリ202内の関連グラフ240となる。そして、推薦キーワード生成部230は、上記生成した部分グラフ240A~240Fより、リーフノードとなる検索キーワードから順に接続関係を辿って、図14に示す関連グラフ240を生成する。この関連グラフ240の生成は、推薦キーワード生成部230が、商品情報に対応付けられたリーフノード間の時系列的に古い検索キーワードのうち、同一の検索キーワードを持つ関連グラフを同一のノード親ノードをもつ部分グラフとして抽出する。例えば、リーフノードを持つ部分グラフ240Eと240Fは、親ノードとしてS管が等しいので、推薦キーワード生成部230はS管を親ノードとして子ノードにリーフノードをもつ部分グラフを生成する。そして、推薦キーワード生成部230は、各部分グラフ240A~240Dについても、リーフノードから親ノードについてそれぞれ比較して、同一のノードを親ノードとして各部分グラフ240A~240Fを纏めることで図14の関連グラフ240を生成する。図4のステップS33及び図6の処理により、推薦キーワード生成部230では、セッションログ423A~423Fから検索キーワードを部分グラフ240A~240Fとして抽出する。そして、推薦キーワード生成部230は、商品情報に対応付けられたリーフノードから親ノードとなる検索キーワードを辿って、図14に示すように、検索キーワードから商品情報に至るキーワードを木構造のキーワード列で表した関連グラフ240を生成する。図14は、検索キーワードから商品情報に至るキーワード列の遷移回数を示す関連グラフ240である。関連グラフ240は、検索キーワード間で遷移の関係を線で接続し、遷移した回数を接続線の横に表示したものである。例えば、親ノードとしてのフックから子ノードとしてのS字フックへの遷移は、図8の部分グラフ240Aと、図9の部分グラフ240Bの合計2回の遷移が存在するので、関連グラフ240のフックからS字フックへの遷移回数は2回となる。<確率遷移行列の生成>次に、図4のステップS34で行われる関連グラフ240から各検索キーワードの確率遷移行列250を生成する処理について詳述する。図15は、関連グラフ240を構成するキーワード列から確率遷移行列250Aを求める一例を示す。まず、推薦キーワード生成部230は、関連グラフ240を構成するキーワード列を取得して、親ノードを表す列251へ各検索キーワードを格納し、子ノードを示す行252へ各検索キーワードを格納する。そして、推薦キーワード生成部230は、関連グラフ240から各検索キーワードについて、親ノードから子ノードへ遷移した回数を設定し、確率遷移行列250Aとして生成する。次に、推薦キーワード生成部230は、確率遷移行列250Aの行単位で子ノードへの遷移回数の総数を求めて母数とする。そして、推薦キーワード生成部230は、各行の母数で子ノードへの遷移回数を除した確率を求めて、図16で示す確率遷移行列250Bとして生成する。例えば、確率遷移行列250Aの親ノードがフックの行では、S管への遷移が1回、S字フックへの2回であるので、行の遷移回数の総数は3回となる。推薦キーワード生成部230は、図16の確率遷移行列250Bのように、親ノードがフックの行では、S管への遷移確率が1/3、S字フックへの遷移確率が1/3に設定する。推薦キーワード生成部230は、他の行についても同様に、親ノードから子ノードへの遷移確率を行単位で求め、確率遷移行列250Bを生成する。次に、推薦キーワード生成部230は、確率遷移行列250Bのうち図14の関連グラフ240で子ノードがない親ノードの遷移確率を、各行の構成要素子ノードの総数の逆数として設定し、図17で示す確率遷移行列250Cとして生成する。図17の例では、検索の課程で確率遷移行列250Bでは子ノードのない親ノード=取付金具、S字フック、ユニットS管XXX、S管YYYにたどり着いた後も、さらに検索キーワードを入力する場合がある。このため、子ノードのない親ノードでは、他の子ノードのいずれかへ遷移すると仮定して均等の確率を設定する。すなわち、確率遷移行列250Cでは、子ノード図中、行方向の金具~S管YYYの総数が7であるので、各親ノードから子ノードへ遷移する確率を1/7に設定する。次に、推薦キーワード生成部230は、図18で示すように、単位行列として確率遷移行列250Dを生成し、上記図17で生成した確率遷移行列250Cから確率遷移行列Zを生成する。ここで、単位行列としての確率遷移行列250Dは、親ノードから子ノードへの遷移確率が全て均等とした行列で、図示の例では子ノードの総数が7であるので、単位行列は、1/7の遷移確率に設定される。次に、推薦キーワード生成部230は、図17で求めた確率遷移行列250Cを行列Hとし、図18で設定した確率遷移行列250Dの単位行列を行列Iとして、次式より確率遷移行列250を求める。なお、以下では確率遷移行列250を行列Zで表す。Z=αH1-α×I.........1ただし、αは安定化係数で、予め設定した値例えば、0.8~0.9等である。以上により、確率遷移行列Zが推薦キーワード生成部230によって求められる。<固有ベクトルの演算>次に、図4のステップS35で行われる固有ベクトル260の演算について説明する。推薦キーワード生成部230は、上記1式で求めた確率遷移行列Zについて、予め設定したK本の固有ベクトルを演算する。ただし、固有ベクトルの演算は、固有値の大きいものから順にK本の固有ベクトルを演算する。例えば、K=2の場合、図19、図20のように、推薦キーワード生成部230は、検索キーワードから商品情報に至るシーケンスから、図19に示す第1固有ベクトルと、図20に示す第2固有ベクトルをそれぞれ求める。なお、図19は、固有ベクトル260と、第1固有ベクトルの値を関連グラフ240に設定した例を示す。また、図20は、固有ベクトル260と、第2固有ベクトルの値を関連グラフ240に設定した例を示す。図19の第1固有ベクトルを設定した関連グラフ240において、金具から商品情報であるユニットS管XXXに至るキーワード列で、固有ベクトル260の値が最も小さいS管=0.04が最も思いつきにくい検索キーワードである。つまり、ユーザアクセス履歴テーブル420のセッションログでは、金具の検索キーワードからフックの検索結果を得たユーザは多数存在するが、S管の検索キーワードから商品情報のユニットS管XXXの検索結果を得たユーザは極めて少数であることを示す。本発明では、思いつきにくいが、商品情報にたどり着くことのできる固有ベクトルの小さい推薦キーワードを提示することができるのである。なお、図3の検索結果表示領域542の関連グラフ領域543に、第1固有ベクトルの値を表示しても良い。特に、第1固有ベクトルの値のうち最も値の小さい固有ベクトルの値を推薦キーワードと共に表示してもよい。あるいは、第1固有ベクトルの値のうち最も値の小さい固有ベクトルの推薦キーワードを協調して表示する等、固有ベクトルが最小であることを特定するようにしてもよい。これにより、商品情報へ辿りつくのに思いつきにくい推薦キーワードが何れであるかを明示することができる。<推薦キーワードの生成>次に、図4のステップS36で行われる推薦キーワードテーブル220の生成について説明する。推薦キーワード生成部230は、上記ステップS35で、K=2の場合、上記図19、図20のように第1固有ベクトルと第2固有ベクトルを求める。そして、推薦キーワード生成部230は、図19に示す第1固有ベクトルでは、検索キーワードが金具からフック、S管を経てリーフノードである商品情報=ユニットS管XXXに至るキーワード列を得る。この、キーワード列に最も高い優先度=1を与える。また、図20に示す第2固有ベクトルでは、検索キーワードが金具からフック、S管を経てリーフノードである商品情報=S管YYYに至るキーワード列を得る。この、キーワード列に2番目の優先度=2を与える。そして、推薦キーワード生成部230は、キーワード列の長さに応じて第1ワードから第Nワード本実施形態ではN=4までの検索キーワードを推薦キーワードとして、上記優先度の順に設定したテーブルを推薦キーワードテーブル220として生成する。この結果、図19、図20の例では、図21に示すように、優先度221に応じた第1ワード222から第4ワード225にキーワード列の検索キーワードが設定される。例えば、優先度221=1の推薦キーワードテーブル220は、第1ワード=金具から第4ワード=ユニットS管XXXのキーワード列から構成される。また、優先度221=2の推薦キーワードテーブル220は、第1ワード=金具から第4ワード=S管YYYのキーワード列から構成される。なお、図21において、優先度221=3,4のエントリは、固有ベクトル260を4本求めたときの例を示す。また、推薦キーワードテーブル220には、商品情報が第1ワード222~第Nワードの何れのフィールドに格納されているかの情報を格納したフィールドを加えておくことが望ましい。あるいは、推薦キーワードテーブル220のキーワード列の終端が商品情報のときに0を設定し、キーワード列の終端がキーワードのときに1を設定するフラグを各エントリに設けても良い。<推薦キーワードの提示>次に、図2のステップS4で示した、検索キーワードに対して推薦キーワードテーブル220に格納された推薦キーワードを提示する処理の詳細について以下に説明する。図25は、図2のステップS4で行われる処理の詳細を示すフローチャートである。このフローチャートは、クライアント端末500が入力した検索キーワードを、WEBサーバ100を介してデータベースサーバ200が受信したときにDBMS210で実行される。ステップS41では、DBMS210がWEBサーバ100から検索キーワードを受け付ける。この検索キーワードは、クライアント端末500が図3の検索画面540で入力したキーワードである。ステップS42では、DBMS210は推薦キーワードテーブル220を検索し、受け付けた検索キーワードと一致する推薦キーワードXを特定する。なお、推薦キーワードに一致する検索キーワードが推薦キーワードテーブル220内に見つからないときには、類義語辞書等から検索キーワードに最も近い推薦キーワード220をDBMS210が推薦キーワードXとして特定してもよい。なお、検索キーワードに最も近い類義語を推薦キーワードテーブル220から検索する手法については、公知または周知の手法を用いればよい。ステップS43では、DBMS210は推薦キーワードテーブル220を検索し、特定した推薦キーワードXを含むキーワード列をL本抽出する。なお、Lは予め設定された値で、キーワードテーブル220から抽出するキーワード列の本数の最大値である。ステップS44では、DBMS210は上記ステップS43で抽出した1以上のキーワード列のうち推薦キーワードXから商品情報に至るパスキーワード列を抽出する。ステップS45では、DBMS210が推薦キーワードXから商品情報に至るパスを、図3に示した検索結果表示領域542の関連グラフを表示する領域543に出力するデータを生成する。ステップS46では、DBMS210が上記ステップS44で抽出したパスの商品情報を商品データベース310から取得し、図3に示した検索結果表示領域542の商品情報を表示する領域544に出力するデータを生成し、上記ステップS45で生成した関連グラフの領域543と共にWEBサーバ100に応答する。WEBサーバ100はDBMS210からの応答をクライアント端末500に送信する。以上の処理により、クライアント端末500がWEBサーバ100に検索キーワードを送信すると、WEBサーバ100はデータベースサーバ200に検索キーワードを転送して、検索キーワードの検索を依頼する。データベースサーバ200では予め推薦キーワードテーブル220を生成しておき、WEBサーバ100から受信した検索キーワードで推薦キーワードテーブル220を検索する。データベースサーバ200は、検索キーワードと一致または類似する推薦キーワードを特定して推薦キーワードXとする。DBMS210は推薦キーワードXに関連するキーワード列を推薦キーワードテーブル220から複数抽出し、推薦キーワードXから商品情報に至るキーワード列を出力する。このキーワード列の終端は、検索結果としての商品情報であり、推薦キーワードXから商品情報に至るキーワード列は、WEBサーバ100を介して図3で示したクライアント端末500の検索結果表示領域542に出力される。例えば、図22で示すように、DBMS210は検索キーワード226が金具で抽出する抽出本数の最大値L=4のとき、第1ワードが金具に一致する優先度=1~4の推薦キーワードテーブル220から複数のキーワード列を取得する。そしてDBMS210が、取得したキーワード列を図3に示す検索結果表示領域542に表示するデータとしてWEBサーバ100を介してクライアント端末500に応答する。すなわち、金具~商品情報に至る複数のパスが、クライアント端末500のディスプレイ504に出力される。なお、図22の220は推薦キーワードテーブル220の検索用のテーブルであり、DBMS210が一時的に生成することができる。また、検索キーワードがフックの場合には、図23で示すように、推薦キーワードテーブル220の優先度が1~3のエントリにおいて第2ワードが検索キーワードに一致する。DBMS210は、図中220で示すように推薦キーワードテーブル220のうち優先度が1~3の第2ワード以降をキーワード列として3本抽出し、WEBサーバ100を介してクライアント端末500に応答する。また、検索キーワードがS管の場合には、図24で示すように、推薦キーワードテーブル220の優先度が1~2のエントリにおいて第3ワードが検索キーワードに一致する。DBMS210は、図中220で示すように推薦キーワードテーブル220のうち優先度が1~2の第3ワード以降をキーワード列として2本抽出し、WEBサーバ100を介してクライアント端末500に応答する。以上より、クライアント端末500を操作する電子商取引サイト2のユーザは、WEBサーバ100から検索画面540を要求し、検索キーワードを入力すると、検索キーワードに近い推薦キーワードから商品情報に至る複数のキーワード列を関連グラフ240として得ることができる。この推薦キーワードテーブル220は、電子商取引サイト2で複数のユーザが実行した検索と閲覧検索結果へのアクセスの履歴を格納したユーザアクセス履歴テーブル420から生成するものである。これにより、前記従来例のように、ユーザなどが商品データベース310内の商品に評価を与える必要がなくなる。そして、本発明は、検索キーワードと商品情報の関係をキーワード列関連グラフ2400の構造から、暗黙の評価をクライアント端末500のユーザに提供することができ。また、検索キーワードから商品情報に到達する木構造の関連グラフ2400を提供することで、クライアント端末500のユーザは、所望する商品情報を前記従来例に比して極めて容易に得ることができる。また、本発明では、前記従来例のように発売直後の商品の情報を用意する必要もないので、電子商取引サイト2を運営する労力も大幅に低減できる。商品などの検索の際に、確実に目的の商品情報に辿りつける検索キーワードは、商品名そのものや、商品の型番など、ユーザにとって比較的忘れやすい情報が多く存在する。一方、ユーザがすぐに思い付くことができる検索キーワードは、抽象度が高いためヒットする商品の範囲は非常に広くなってしまう、という問題があった。このため商品の名称になじみがない新商品の場合、前記従来例で述べたColdstartproblemの本質的な課題であり、容易に検索キーワードから目的の商品に辿りつけないという問題があった。これに対して、本発明では、検索されたキーワードの履歴と参照された商品情報の履歴から、なじみのない商品が属する抽象的なキーワードから、より具体的なキーワードに至るキーワード列を生成することが可能となった。特に、多数のユーザの検索履歴を活用して推薦キーワードテーブル220を作成することで、一人のユーザでは容易に結び付けられなかったキーワードと商品情報を結びつけることが可能となる。本発明によれば、新商品であっても、例えば既に売れている商品から一旦、抽象的なキーワードに戻ってそこから手繰り寄せることができ、ユーザが新商品のうち本来欲しかった機能を有するものを容易に検索することが容易になる。なお、上記実施形態では、商品データベース310に本発明を適用した例を示したが、売買の有無にかかわらず、ユーザが他のユーザの評価を参考にしたい情報を格納したデータベースの検索システムまたは検索装置に適用することができる。<変形例>図26は、図2のステップS4で行われる処理の変形例を示すフローチャートである。この変形例では、検索キーワードに一致または類似する推薦キーワードテーブル220の高次検索の起点側で上位の推薦キーワードも検索結果表示領542へ出力する処理である。このフローチャートは、クライアント端末500が入力した検索キーワードを、WEBサーバ100を介してデータベースサーバ200が受信したときにDBMS210で実行される。ステップS51では、図24のステップS41と同様に、DBMS210がWEBサーバ100から検索キーワードを受け付ける。この検索キーワードは、クライアント端末500が図3の検索画面540で入力したキーワードである。ステップS52では、DBMS210は推薦キーワードテーブル220を検索し、受け付けた検索キーワードと一致する推薦キーワードXを特定する。なお、推薦キーワードテーブル220に一致する検索キーワードが見つからないときには、類義語辞書等から検索キーワードに最も近い推薦キーワードをDBMS210が推薦キーワードXとして特定してもよい。ステップS53では、DBMS210は推薦キーワードテーブル220を検索し、特定した推薦キーワードXを含むキーワード列をM本抽出する。なお、Mは予め設定された値で抽出するキーワード列の本数の最大値を示す。ステップS54では、DBMS210は上記ステップS53で抽出したキーワード列のうち推薦キーワードXよりも高次検索の起点側の推薦キーワードYを抽出する。ステップS55では、DBMS210は推薦キーワードテーブル220を検索し、高次の推薦キーワードYから商品情報に至るキーワード列パスをL本抽出する。そして、DBMS210は推薦キーワードYから商品情報に至るパスを、図3に示した検索結果表示領域542の関連グラフを表示する領域543に出力するデータを生成する。ステップS56では、DBMS210が上記ステップS54で抽出したパスの商品情報を商品データベース310から取得し、図3に示した検索結果表示領域542の商品情報を表示する領域544に出力するデータを生成し、上記ステップS55で生成した関連グラフの領域543と共にWEBサーバ100に応答する。WEBサーバ100はDBMS210からの応答をクライアント端末500に送信する。以上の処理により、データベースサーバ200では予め生成した推薦キーワードテーブル220を、WEBサーバ100から受信した検索キーワードで検索する。データベースサーバ200は、検索キーワードと一致または類似する推薦キーワードXを特定し、さらに推薦キーワードXよりも検索の起点側の高次の推薦キーワードYから商品情報に至るキーワード列を取得して、図3で示した検索結果表示領域542に出力するデータを生成する。この変形例によれば、新しい商品が商品データベース310に追加された場合にも、高次関連グラフ2400で検索の起点側または上方の推薦キーワードからのパスを辿ることで比較的早期に新たな商品が推薦キーワード220から推薦されやすくなり、注目されるまで時間がかかってしまうという前記従来例のColdstartproblemに対する解決策を与えることができる。つまり、本発明の電子商取引サイト2では、クライアント端末500のユーザが思いついた検索キーワードよりも広い範囲でキーワード列と商品情報を提供できるので、発売直後の新商品に辿りつく可能性を高めることができる。例えば、DBMS210が検索キーワードとしてフックを受け付けた場合、図21で示すように、優先度221が1~3の第2ワード223のフックが推薦キーワードXとして特定する。そして、DBMS210は、特定した第2ワード223よりも高次検索の起点側の推薦キーワード220が第1ワード222に金具が存在するので、この金具を推薦キーワードYとして特定する。そして、DBMS210は、図3で示すように金具を頂点とする関連グラフ2400のキーワード列をWEBサーバ100へ送信する。クライアント端末500は、図3の検索画面540の検索結果表示領域542に表示された関連グラフ2400から、検索キーワード=フックから高次の推薦キーワードである金具を辿り、推薦キーワードが取付金具を経て商品情報に至ることもしることができる。なお、DBMS210が特定した推薦キーワードXより高次の推薦キーワードYの範囲は、予め設定した範囲で特定することができる。例えば、推薦キーワード220の第Nワードを推薦キーワードXとして特定した場合、第N-βワードを推薦キーワードYとして特定する。これにより、検索キーワードから特定した推薦キーワードXよりもβ階層だけ高次の推薦キーワードYからのキーワード列を得ることができる。これにより、電子商取引サイト2は、入力された検索キーワードよりも広範囲のキーワード列をクライアント端末500のユーザに提供することができる。なお、上記実施形態では、データベースサーバ200のDBMS210が、推薦キーワード220を検索する例を示したが、WEBサーバ100が推薦キーワード220を利用するようにしても良い。例えば、WEBサーバ100で推薦キーワード生成部230を実行してメモリ102に推薦キーワード220を格納しておく。WEBサーバ100は検索キーワードをデータベースサーバ200に転送し、検索結果をデータベースサーバ200から受信すると、図25に示したステップS42~S46と同様の処理を行う。これにより、WEBサーバ100は推薦キーワード220をデータベースサーバ200の検索結果商品情報に付加して関連グラフ2400をクライアント端末500に提供することができる。また、上記実施形態のWEBサーバ100とログ収集サーバ400とデータベースサーバ200とストレージ措置300を一つに纏めて情報検索装置として提供しても良い。"