(57)【特許請求の範囲】
【請求項１】
複数の文書情報を保持し、ユーザからの要求に応じて、当該保持している文書情報を選択的に要求元のユーザに提供する文書情報提供手段と、
ユーザごとに、当該ユーザがアクセスした文書情報の識別子とアクセス時刻とを関連付けたアクセスログのリストをアクセス履歴として記憶するアクセス履歴記憶手段と、
文書情報に設定された１又は複数のキーワードから成るキーワードの集合を当該文書情報の識別子に関連付けて記憶するキーワード記憶手段と、
ユーザのプロファイル情報を生成するプロファイル情報生成手段と、
を有し、
前記プロファイル情報生成手段は、
（ａ）複数の文書情報が階層的に形成されている場合において、部分列に分解した各文書情報に対応するキーワードの集合に、当該キーワードの集合の上位の階層の文書情報に設定された前記キーワードの集合を追加することによって当該文書情報のキーワードの集合を新たに設定し、
（ｂ）プロファイル情報生成対象のユーザのアクセス履歴を前記アクセス履歴記憶手段から取得し、
（ｃ）取得したアクセス履歴に含まれるアクセス時刻を参照に、この取得したアクセス履歴に含まれる文書情報の識別子から特定できる文書情報に新たに設定されたキーワードの集合を時系列順に並べることでキーワードの集合の時系列順リストを生成し、
（ｄ）キーワードの集合の中に含まれるキーワードを参照に、キーワードの集合の時系列順リストを、同じキーワードを含むキーワードの集合毎に複数の部分列に分解し、
（ｅ）取得したアクセス履歴から特定される各キーワードの出現期間の包含関係を参照に、分解したキーワードの集合の各部分列においてキーワードの集合間の参照関係を表す情報を生成し、
（ｆ）取得したアクセス履歴を参照に、生成した複数のキーワードの集合間の参照関係を表す情報に対して、さらにキーワードの集合間の参照関係を表す情報の間に出現順に従った参照関係を表す情報を付加することによって当該ユーザのプロファイル情報を生成する、
ことを特徴とする情報閲覧支援装置。
【請求項２】
請求項１に記載の情報閲覧支援装置において、
前記プロファイル情報を提示するプロファイル情報提示手段を有することを特徴とする情報閲覧支援装置。
【請求項３】
文書情報に設定された１又は複数のキーワードから成るキーワードの集合を当該文書データに関連付けて記憶する手段にアクセス可能なコンピュータを、
複数の文書情報を保持し、ユーザからの要求に応じて、当該保持している文書情報を選択的に要求元のユーザに提供する文書情報提供手段、
ユーザごとに、当該ユーザがアクセスした文書情報の識別子とアクセス時刻とを関連付けたアクセスログのリストをアクセス履歴として記憶するアクセス履歴記憶手段、
文書情報に設定された１又は複数のキーワードから成るキーワードの集合を当該文書情報の識別子に関連付けて記憶するキーワード記憶手段、
ユーザのプロファイル情報を生成するプロファイル情報生成手段、
として機能させ、
前記プロファイル情報生成手段は、
（ａ）複数の文書情報が階層的に形成されている場合において、部分列に分解した各文書情報に対応するキーワードの集合に、当該キーワードの集合の上位の階層の文書情報に設定された前記キーワードの集合を追加することによって当該文書情報のキーワードの集合を新たに設定し、
（ｂ）プロファイル情報生成対象のユーザのアクセス履歴を前記アクセス履歴記憶手段から取得し、
（ｃ）取得したアクセス履歴に含まれるアクセス時刻を参照に、この取得したアクセス履歴に含まれる文書情報の識別子から特定できる文書情報に新たに設定されたキーワードの集合を時系列順に並べることでキーワードの集合の時系列順リストを生成し、
（ｄ）キーワードの集合の中に含まれるキーワードを参照に、キーワードの集合の時系列順リストを、同じキーワードを含むキーワードの集合毎に複数の部分列に分解し、
（ｅ）取得したアクセス履歴から特定される各キーワードの出現期間の包含関係を参照に、分解したキーワードの集合の各部分列においてキーワードの集合間の参照関係を表す情報を生成し、
（ｆ）取得したアクセス履歴を参照に、生成した複数のキーワードの集合間の参照関係を表す情報に対して、さらにキーワードの集合間の参照関係を表す情報の間に出現順に従った参照関係を表す情報を付加することによって当該ユーザのプロファイル情報を生成する、
ことを特徴とする情報閲覧支援プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、Ｗｅｂサーバ等におけるユーザの情報の閲覧作業を支援する装置に関する。
【０００２】
【従来の技術】
近年、Ｗｅｂサーバ等のインターネット関連技術の発展とコンピュータの普及により、種々の情報を発信するＷｅｂページがますます増大しつつある。このような中で、Ｗｅｂページを閲覧するユーザは、自ら興味のあるＷｅｂページを見いだすまでに多くの時間を割くようになっている。このユーザの負担を軽減すべく、ユーザの興味あるページの設定を受付けて、当該ページが更新されるとユーザに対して当該更新を報知するソフトウエアが開発されている。
【０００３】
しかし、ユーザ自身が興味あるページを設定することが困難であることに鑑みて、Ｗｅｂページごとにキーワードを設定し、ユーザが過去に閲覧したＷｅｂページのキーワードの集合から、そのキーワードに適合するページへのリンクをユーザに提供するシステムも考えられている。また、特開平８−６９５７号公報、「データ検索装置」では、ユーザが過去に閲覧したＷｅｂページのキーワード集合を用いてユーザに対する情報提供経路をカスタマイズする装置が開示されている。
【０００４】
このように、情報の閲覧作業に対するユーザ負担を軽減する装置の開発は情報化の激しい現代では重要な問題である。
【０００５】
【発明が解決しようとする課題】
しかしながら、上記従来のデータ検索装置等では、ユーザの興味のうつろいに配慮していないため、種々の情報に興味を持つ活発なユーザほど過去の履歴に基づくキーワード集合が散漫になって適切なガイドが行われなくなるという問題点があった。
【０００６】
本発明は上記実情に鑑みて為されたもので、適切なガイドをもって情報の閲覧作業を支援できる情報閲覧支援装置を提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記従来例の問題点を解決するための本発明は、ユーザの通常行動（一般的情報から詳細な情報へとリンクを辿る過程）と、ユーザの変化行動（対象の変化）との２軸からユーザの過去の閲覧行動を分析し、この２軸を利用したプロファイルを用いてユーザの情報の閲覧作業を支援する。これにより、ある目的を持ってサイトを訪問したが、偶然興味のある別目的の情報を見いだしたというような状況において、そのサイトへの再訪問が支援される。また、詳細化の軸でもユーザの情報の閲覧作業支援をするので過去のアクセス時に誤って異なる話題に移動していても、適切な情報の閲覧作業が支援される。
【０００８】
すなわち、上記従来例の問題点を解決するための本発明に係る情報閲覧支援装置は、複数の文書情報を保持し、ユーザからの要求に応じて、当該保持している文書情報を選択的に要求元のユーザに提供する文書情報提供手段と、ユーザごとに、当該ユーザがアクセスした文書情報の識別子とアクセス時刻とを関連付けたアクセスログのリストをアクセス履歴として記憶するアクセス履歴記憶手段と、文書情報に設定された１又は複数のキーワードから成るキーワードの集合を当該文書情報の識別子に関連付けて記憶するキーワード記憶手段と、ユーザのプロファイル情報を生成するプロファイル情報生成手段と、を有し、前記プロファイル情報生成手段は、（ａ）複数の文書情報が階層的に形成されている場合において、部分列に分解した各文書情報に対応するキーワードの集合に、当該キーワードの集合の上位の階層の文書情報に設定された前記キーワードの集合を追加することによって当該文書情報のキーワードの集合を新たに設定し、（ｂ）プロファイル情報生成対象のユーザのアクセス履歴を前記アクセス履歴記憶手段から取得し、（ｃ）取得したアクセス履歴に含まれるアクセス時刻を参照に、この取得したアクセス履歴に含まれる文書情報の識別子から特定できる文書情報に新たに設定されたキーワードの集合を時系列順に並べることでキーワードの集合の時系列順リストを生成し、（ｄ）キーワードの集合の中に含まれるキーワードを参照に、キーワードの集合の時系列順リストを、同じキーワードを含むキーワードの集合毎に複数の部分列に分解し、（ｅ）取得したアクセス履歴から特定される各キーワードの出現期間の包含関係を参照に、分解したキーワードの集合の各部分列においてキーワードの集合間の参照関係を表す情報を生成し、（ｆ）取得したアクセス履歴を参照に、生成した複数のキーワードの集合間の参照関係を表す情報に対して、さらにキーワードの集合間の参照関係を表す情報の間に出現順に従った参照関係を表す情報を付加することによって当該ユーザのプロファイル情報を生成する、ことを特徴とする。
【０００９】
またここで、前記プロファイル情報を提示するプロファイル情報提示手段を有することを特徴とする。
【００１０】
さらに、上記従来例の問題点を解決するための本発明に係る情報閲覧支援プログラムは、文書情報に設定された１又は複数のキーワードから成るキーワードの集合を当該文書データに関連付けて記憶する手段にアクセス可能なコンピュータを、複数の文書情報を保持し、ユーザからの要求に応じて、当該保持している文書情報を選択的に要求元のユーザに提供する文書情報提供手段、ユーザごとに、当該ユーザがアクセスした文書情報の識別子とアクセス時刻とを関連付けたアクセスログのリストをアクセス履歴として記憶するアクセス履歴記憶手段、文書情報に設定された１又は複数のキーワードから成るキーワードの集合を当該文書情報の識別子に関連付けて記憶するキーワード記憶手段、ユーザのプロファイル情報を生成するプロファイル情報生成手段、として機能させ、前記プロファイル情報生成手段は、（ａ）複数の文書情報が階層的に形成されている場合において、部分列に分解した各文書情報に対応するキーワードの集合に、当該キーワードの集合の上位の階層の文書情報に設定された前記キーワードの集合を追加することによって当該文書情報のキーワードの集合を新たに設定し、（ｂ）プロファイル情報生成対象のユーザのアクセス履歴を前記アクセス履歴記憶手段から取得し、（ｃ）取得したアクセス履歴に含まれるアクセス時刻を参照に、この取得したアクセス履歴に含まれる文書情報の識別子から特定できる文書情報に新たに設定されたキーワードの集合を時系列順に並べることでキーワードの集合の時系列順リストを生成し、（ｄ）キーワードの集合の中に含まれるキーワードを参照に、キーワードの集合の時系列順リストを、同じキーワードを含むキーワードの集合毎に複数の部分列に分解し、（ｅ）取得したアクセス履歴から特定される各キーワードの出現期間の包含関係を参照に、分解したキーワードの集合の各部分列においてキーワードの集合間の参照関係を表す情報を生成し、（ｆ）取得したアクセス履歴を参照に、生成した複数のキーワードの集合間の参照関係を表す情報に対して、さらにキーワードの集合間の参照関係を表す情報の間に出現順に従った参照関係を表す情報を付加することによって当該ユーザのプロファイル情報を生成することを特徴とする。
【００１１】
【発明の実施の形態】
本発明の実施の形態について、図面を参照しながら説明する。尚、ここでは、インターネット上で情報提供を行うＷｅｂサーバとして本発明の情報閲覧支援装置を実装した例を示す。図１は、本実施の形態に係る情報閲覧支援装置の構成ブロック図である。
【００１２】
本実施の形態の情報閲覧支援装置は、図１に示すように、サーバ部１１と、アクセス履歴管理部１２と、キーワード設定部１３と、キーワード保持部１４と、ユーザプロファイリング部１５と、ナビゲーションガイド部１６とから基本的に構成されている。尚、ここでは各部が一体のサーバに内蔵されている場合を例としているが、これらの各部はそれぞれ別体のコンピュータによって分散的に処理されてもよい。また、サーバ部１１は、ここでは１つのみ示しているが、複数あってもよい。
【００１３】
以下、各部を具体的に説明する。サーバ部１１は一般的なＷｅｂサーバであり、図示しない文書ストレージに格納されている文書データをインターネットを介して受信した要求に応じて提供する。またこのサーバ部１１は、一般的なＷｅｂサーバと同様に、文書データを要求したクライアントのＩＰアドレスと、そのアクセス時刻と、アクセスされた文書データ（Ｗｅｂページ）の識別子（例えばＵＲＬ；Uniform Resource Locator）をアクセスログとしてアクセス履歴管理部１２に出力する。
【００１４】
アクセス履歴管理部１２は、サーバ部１１から入力されるアクセスログを記録する。また、このアクセス履歴管理部１２は、このアクセスログを分析して、ユーザごとに、当該ユーザの識別子と、当該ユーザが参照したＷｅｂページのＵＲＬのリストを時系列順に保持する。ここでユーザの識別子としては、クライアントのＩＰアドレスを用いてもよいし、ユーザがサーバ部１１に対してユーザ名を入力してログインをしている場合には、当該ユーザ名をユーザの識別子として用いてもよい。
【００１５】
キーワード設定部１３は、サーバ部１１が提供するＷｅｂページの各々について、そのＷｅｂページで提供される情報を特徴づける語をキーワードとして生成する。このキーワードは、各Ｗｅｂページに対するキーワードの入力をサイト作成者から受けてもよいし、広く知られたキーワード抽出技術（文書要約技術）を用いて行ってもよい。この場合に、キーワードの設定はＷｅｂサイトの一般的構造に配慮して行うことが好ましい。具体的に、一般的なＷｅｂサイトでは、ユーザが一番最初にアクセスする索引ページ（index）があり、ここからリンクを経て当該サイトで提供される種々の詳しい情報へのアクセスができるようになっている。例えば、コンピュータ関係の商品を販売するサイトでは、図２に示すように、「商品情報」の索引ページ（Ａ）を中心として、「デスクトップ型ＰＣ」（Ｂ）、周辺機器である「ＤＶＤ」（Ｃ）、ソフトの一種としての「ＤＶＤ録画された映画」（Ｄ）の各商品を紹介するページが階層的に形成されているのが普通である。従って、索引ページからリンクを辿るごとに順次詳細な情報へとアクセスするようになっている。この点に着目すると、上位の階層のキーワードを下位の階層にも設定するように、いわばキーワードに包含関係を持たせることが好ましい。このキーワードの包含関係の変化により、ユーザが閲覧している情報の分類の変化が認識しやすくなるからである。従って、図２に示すサイトでは、索引ページ（Ａ）に「商品情報」のキーワードを付与したとすると、このページ（Ａ）からのリンク先であるページ（Ｂ）〜（Ｄ）には「商品情報」のキーワードを承継して付与するとともに、さらにそれぞれのページの内容を表すキーワードを追加して付与する。本実施の形態においては、リンク先のページに予めキーワードを付与する際には、サイトの入口である索引ページからの最短距離（リンクを辿るために最低限クリック操作をしなければならない回数）をリンク先及びリンク元の各ページについて演算しておき、リンク先のページの距離がリンク元のページの距離より大となるときだけ承継して付与する。すなわち、図２に示すサイトにおいて、ページＦ（最低２回のクリックが必要）に付与されたキーワードは、リンク先であるページＧ（最低１回のクリックが必要）に承継して付与されない。
【００１６】
図２は、本実施の形態でのキーワードの付与例を示す説明図である。図２で利用されているキーワード集合は、「商品情報」、「デスクトップ」、「ＰＣ」、「機能」、「DVD」、「DVD-ROM」、「DVD-RAM」、「周辺機器」、「映画」、「タイトル１」、「タイトル２」の１１個である。ここでＷｅｂサイトの入り口となるページ（Ａ）では、このサイトで提供されている商品情報の分類へのリンクが記述されている。そして、このページ（Ａ）からハイパーリンクで参照されているページＢ、ページＤ、ページＧでは、それぞれ「ＰＣ」の情報、「ＤＶＤ関連の周辺機器」の情報、「ＤＶＤの映画」の情報が記述されている。従って、情報の詳細度とキーワードの包含関係を一致させて、図２のようなキーワードが各ページに対して付与される。
【００１７】
キーワード保持部１４は、サーバ部１１で提供される各Ｗｅｂページについて、そのＵＲＬと、そのページに対してキーワード設定部１３で設定されたキーワードとを関連づけてキーワードデータベースとして保持する。尚、サーバ部１１が複数存在する場合には、キーワード保持部１４は、各サーバ部１１に対するキーワードデータベースを一括して管理し、アクセス履歴管理部１２も同様に複数のサーバ部１１へのアクセス履歴を統合して管理する。
【００１８】
ユーザプロファイリング部１５は、アクセス履歴管理部１２によりユーザごとに保持されている過去にアクセスしたＵＲＬの時系列順リストを参照し、そのＵＲＬに対するキーワードをキーワード保持部１４から取得し、これに基づいてユーザごとのプロファイル情報を生成して保持する。このプロファイル情報の具体的構造と、ユーザプロファイリング部１５の具体的動作については、後に詳しく説明する。ナビゲーションガイド部１６は、ユーザごとのプロファイル情報を用いて、ユーザがサーバ部１１に対してアクセスしたときに推薦ページの提供等、ガイド情報を提供する。このナビゲーションガイド部１６の具体的に動作についても、後に詳しく述べる。
【００１９】
［ユーザプロファイルの生成］
ここで、ユーザプロファイリング部１５の具体的動作について説明する。ユーザプロファイリング部１５は、まず、プロファイル情報を生成する対象のユーザのアクセス履歴をアクセス履歴管理部１２から取得する。ここでアクセス履歴は、当該ユーザが過去にアクセスしたページのＵＲＬの時系列順リストである。ユーザプロファイリング部１５は、キーワード保持部１４のキーワードデータベースから、取得した時系列順リスト内の各ページに対応するキーワード集合を抽出し、キーワード集合の時系列順リストを生成する。
【００２０】
ここで、各ページへのアクセス履歴から、各キーワードがアクセスされたかアクセスされていないかを表す時系列データを得ることができる。例えば、図２のサイトで、ユーザがＡ→Ｂ→Ｃ→Ｄ→Ｅ→Ｆの順にアクセスしたとすると、各キーワードの時系列データは図３のようになる。図３では、黒塗り枠がアクセスされたことを示し、白抜きの枠がアクセスされていないことを示す。尚、図２のサイトにおいて、Ｅ→Ｆのリンクは存在しないが、クライアント側のソフトウェアでは通常、過去の閲覧ページをキャッシュとして保持しており、このキャッシュを表示させてリンクを辿る場合がある。つまりこの場合、キャッシュされていたページＤを表示させ、そこからページＦをたどって閲覧することができる。この時に、サーバ部１１ヘのアクセスは行われないので、上述の時系列順となるのである。しかし、このキャッシュはユーザ設定により有効／無効が異なるので、本実施の形態では各ＵＲＬへのアクセスを１度のみ記録することで、ユーザごとに異なるクライアントソフトの設定の影響を取り除く。尤も異なる設定の影響を考慮しない場合には、全てのアクセスを記録し、Ａ→Ｂ→Ｃ→Ｄ→Ｅ→Ｄ→Ｆというアクセス履歴からキーワードの時系列データを作成してもよい。
【００２１】
そして、ユーザプロファイリング部１５は、キーワードの時系列リスト（アクセス状況を表す時系列データ）を部分列に分解する。すなわち、連続したアクセス系列を一つの部分列として取り出す。図３では、破線で囲まれた領域がそれぞれ部分列となる。例えば、キーワード「周辺機器」はＤ，Ｆの間に連続してアクセスされており、この期間が一つの部分列となる。そして各部分列について、ユーザのアクセス履歴中の何番目から何番目の部分列であるかという情報とともに部分列情報を生成する。
【００２２】
次に、ユーザプロファイリング部１５は、これらの部分列の依存関係を取得する。ここで依存関係とは、あるキーワードが出現した期間に、他のキーワードの出現期間が含まれているかどうかという関係をあらわす。図３の例では、キーワード「周辺機器」の出現期間は、キーワード「DVD」の出現期間に含まれる。以下、この関係を簡便に表現するために、他のキーワードの出現期間を含むキーワード（ここでいう「DVD」）を「親ノード」、含まれるキーワード（ここでいう「周辺機器」）を「子ノード」として、木構造で表すこととする。
【００２３】
すなわち、木構造において、親ノードが子ノードの出現期間を必ず含むという制約を与えつつ、部分列を分析する。さらに、同じキーワードを直接の上位階層に持つキーワードについては、出現期間の始まりが早いものを左側に配置する。図３の例では、全てのキーワードの出現期間が「商品情報」に含まれるので、「商品情報」をルート（根ノード）とする木が構成される。複数の木が生成された場合には、キーワードを持たない空ノードを根ノードとして生成して一つの木にまとめる。また、キーワード間の参照関係（親子関係）をあらわすリンクには、その親キーワードと子キーワードの出現期間に基づいて重みを設定する。本実施の形態では、子キーワードの出現期間を親キーワードの出現期間で除した値（（１）式）を重みとする。
【００２４】
【数１】
0004655382.tif 000002
【００２５】
さらに本実施の形態では、ユーザプロファイリング部１５は、出現期間があらかじめ定められた条件を満たさないものを除くことで、木構造のキーワードの出現期間の大きさを制限する。具体的には、キーワードの出現期間を根となるキーワードの出現期間で除した値が所定の閾値（第１の閾値）以上となる場合に、そのキーワードについて木構造を生成する。例えば閾値を０．２とすると、図４に示す木構造となる。尚、単純にキーワードの出現期間のみで大きさを制限してもよい。そしてユーザプロファイリング部１５は、このようにして生成した木構造から、ユーザのプロファイル情報を生成する。ユーザプロファイル情報は、木構造で表わすことができ、木構造中のノードは、１個以上のキーワードを属性として持つ。リンクでつながれた上位階層のノードと下位階層のノード間には、上位階層のキーワード集合は下位階層のキーワード集合に含まれる。次に図４の木構造に基づき、プロファイル情報を生成する手順を説明すると、まず、上位階層のノードのキーワードを下位階層のノードに追加する。このとき図４から図５に示す木が得られる。次に、木に含まれるノードの数を少なくするために、子の数が１かつ予め設定された閾値（第２の閾値）に対し、子ノードの出現期間を親ノードの出現期間を除した値が第２の閾値以下となるノードを取除く。すなわち、次の（２）式を満たすノードを取除く。
【００２６】
【数２】
0004655382.tif 000003
【００２７】
さらに、子ノードの出現期間を親ノードの出現期間に置き換える。これにより、親子のノードを一つのノードに圧縮して扱うことができる。具体的に第２の閾値を０．７とすると、図５の例では、「商品情報、PC」のノード、「商品情報、DVD」のノード、「商品情報、DVD、周辺機器」の３つのノードが取り除かれる。木に含まれるノードの数を少なくすることで、ユーザプロファイル情報として保持すべきデータ量を小さくできる。尚、木のノード数の制限を行う必要がない場合には、この親子ノードをまとめる処理を行わなくてもよい。
【００２８】
次に、同一階層のノードでかつ直接の上位階層として共通のノードを有している複数のノードについて、出現順に従って参照関係（以下、トピックリンクと称する）を設定する。ある親ノードのｋ個の子ノードをのうち、ｎ番目のノードをｃｈｉｌｄn（１≦ｎ≦ｋ−１）と表すとき、ｃｈｉｌｄnからｃｈｉｌｄn+1へトピックリンクを設定する。このとき、ｎの値が小さいノードほど左に配置されているとする。ｃｈｉｌｄkについては以下のようにトピックリンクを設定する。木構造の根ノードからｃｈｉｌｄkにいたるパス上のノードをＡｎｃｅｓｔｏｒi（１≦i≦l）（ｉ＝１は根ノード、ｉ＝ｌはｃｈｉｌｄkの親ノード）で表すとき、ｉ＜ｌにおいて複数の子ノードを持つ最もｃｈｉｌｄkに近いノードをＡｎｃｅｓｔｏｒj（１≦j＜l）とする。このＡｎｃｅｓｔｏｒjの子ノードＡｎｃｅｓｔｏｒj+1からトピックリンクで参照されたノードに対して、ｃｈｉｌｄkからトピックリンクを設定する。複数の子ノードをもつノードＡｎｃｅｓｔｏｒjが存在しない場合には根ノードへの参照をトピックリンクとして設定する。また、木構造の根となるノードについては、仮想的ノードからのトピックリンクを設定する。この仮想的ノードを、以下、「初期ノード」と呼ぶ。また、初期ノードから根ノードへのトピックリンクには重みが設定される。ここでは重みは「１」とする。
【００２９】
これによると、あるノードからリンクを介してアクセスされた複数のノード間がトピックリンクにより関連づけられ、また、トピックリンクで関連づけられたノード群が出現期間の始りの遅いノード（最も右側のノード）によって代表され、この代表ノードが根ノードからのパス上、最も近い位置にあるノード群に関連づけられる。また、根ノードに対しては仮想的に用意される初期ノードからトピックリンクが設定される。
【００３０】
これにより図５から図６に示すプロファイルが生成される。また、木を小さくする処理を行わない場合には、図５から図７に示すプロファイルが生成される。このプロファイルにおいて、木構造の上位階層と下位階層の関係は、情報の詳細化の関係を表す。従って、木構造中のあるノードで表現されるキーワード集合に沿った情報を入手した後、その下位ノードで表現されるさらに詳細な情報をユーザが閲覧したことを意味する。また、トピックリンクが、ユーザの興味・目的の変化を表す。すなわち、木構造の階層関係がユーザの通常行動を分析するための第１軸であり、トピックリンクがユーザの変化行動を分析するための第２軸となる。尚、この興味・目的の変化は非常に小さい範囲の変化であることもあれば、大きな変化であることもある。
【００３１】
このユーザプロファイリング部１５が生成するプロファイル情報により、ユーザの興味の変化を捉えることができる。例えば、図６に示すプロファイルの例では、ユーザが「商品情報」に興味を持ってサイトを訪れたが、そこでデスクトップＰＣに興味を示した後、周辺機器のDVD-ROMへと興味が移っていることがわかる。キーワードヘのアクセス期間（重み）から、ユーザは当初はＰＣの情報収集をしていたが、DVDに興味が移り、DVDの情報を長く閲覧していたと考えられる。ユーザプロファイリング部１５が、このようにして得られたユーザのプロファイルを、ユーザ識別子に関連づけてユーザプロファイルデータベースに記憶する。このデータデータベースは、木構造をノード間の参照関係を保持したまま記憶しておくことが好ましい。例えば、既存のオブジェクト指向データベースを利用すれば、木構造をノード間の参照関係を保持したまま格納することができる。
【００３２】
尚、サーバ部１１のアクセスログを前処理したものをもとに、プロファイル生成の元となるデータを作成することもできる。その際には、まずアクセスログをユーザごとに並び替えて分割する。更に分割されたアクセスログにおいて、アクセス間隔が一定間隔以上空いた場合には、ユーザが情報閲覧を終了したとみなして更に分割する。分割されたアクセス履歴をユーザ識別子と組にして、プロファイル生成の元となるデータとする。
【００３３】
［情報の閲覧作業支援］
またここで、ナビゲーションガイド部１６の具体的動作について説明する。ナビゲーションガイド部１６は、ユーザが初めてサーバ部１１にアクセスしたユーザであるか否かを判断し、はじめてアクセスしたと判断したときには、そのユーザに対するプロファイルが存在しないのでそのまま処理を終了する。すなわち、初めてのユーザに対しては、ナビゲーションガイドは行われず、ユーザは一般的なＷｅｂサイトを訪れた場合と同様に各Ｗｅｂページを閲覧することになる。その過程では、ユーザが閲覧を要求したページがサーバ部１１よってユーザに提示されると共に、アクセス履歴管理部１２によって、このユーザが要求したページのＵＲＬの時系列リストが記録され、ユーザがページの閲覧を終了した際に、このアクセス履歴を元にユーザプロファイリング部１５が、このユーザに対するプロファイルを生成する。ここで、ユーザがページの閲覧を終了したかどうかは、ログアウトボタンの利用などによりユーザが明示的に終了を宣言する方法と、一定期間サーバ部１１へのアクセスがないときに、アクセス終了とみなす暗黙的な方法とがあり、いずれによっても構わない。
【００３４】
一方、以前に訪問経験のあるユーザに対しては、次のように支援が行われる。すなわち、ナビゲーションガイド部１６は、サーバ１１へのアクセスを行っているユーザが過去にアクセス経験があると判断した場合には、図８に示す処理を開始して、そのユーザに対するプロファイルを取得する（Ｓ１）。そして、ユーザが閲覧しようとしているページに付与されているキーワード集合をキーワード保持部１４のキーワードデータベースから取得する（Ｓ２）。このキーワード集合を以下ではユーザの「ステータス」と呼ぶ。そして、推薦情報の生成処理を行う（Ｓ３）。この推薦情報の生成については後に詳しく説明する。
【００３５】
そしてナビゲーションガイド部１６は、ユーザがさらに情報の閲覧を続けているか否かをサーバ部１１が出力するアクセスログから判断し（Ｓ４）、閲覧をしていない場合には（Ｎｏならば）、処理を終了する。また、処理Ｓ４において、閲覧を続けているときには（Ｙｅｓならば）、アクセス履歴管理部１２がこの新たなページ要求に応じて記録した、ページのＵＲＬを参照し、このＵＲＬであらわされる情報に付与されたキーワード集合をキーワード保持部１４のキーワードデータベースから取得して、この取得したキーワード集合と、ユーザのステータスをあらわすキーワード集合の和集合を演算して、得られた和集合を新たにユーザのステータスとしてステータスを更新し（Ｓ５）、処理Ｓ３に戻って推薦情報の生成処理を行う。
【００３６】
［推薦情報の生成］
ここで、処理Ｓ３の推薦情報の生成処理について説明する。ナビゲーションガイド部１６は、推薦情報の生成処理として図９に示す処理を開始し、まず、プロファイル木から、カレントノードを探索し、探索されたか否かを調べる（Ｓ１１）。ここで、プロファイル木からカレントノードを探索する処理は、図６等に示したユーザプロファイル情報の木構造から、現在ユーザがアクセスしているページに対応したノードを探索する処理に相当する。この処理の具体的内容は後述する。
【００３７】
ナビゲーションガイド部１６は、処理Ｓ１１においてカレントノードが見つからない場合には（Ｎｏならば）処理を終了する。処理Ｓ１１においてカレントノードが見つかった場合（Ｙｅｓの場合）には、このカレントノードから参照されているノードで所定の条件を満たすものを選択する。この条件は、「リンクに付与された重みの値が最大の子ノードを選択する」といったものである。このときに子ノードに加えて、カレントノードからトピックリンクで参照されるノードを併せて選択する。そして、サイト内のページに付与されたキーワード集合と選択されたノードをあらわすキーワード集合との類似度を算出する（Ｓ１２）。すべてのページについて類似度を算出した後、類似度が事前に設定された値であるとともに所定の条件を満たすページがあるか否かを判断する（Ｓ１３）。ここで所定の条件としては、ユーザが以前に閲覧したページでないことを条件とすることが考えられる。そして、そのようなページがなければ、処理を終了し、そのようなページがあれば、そのうち上位の事前に設定されたＮ件のページのＵＲＬをユーザに提供する（Ｓ１４）。ユーザへの提示方法としては、ユーザの利用している閲覧ソフトウェアにおいて、ユーザが希望した情報とは別の画面に、ナビゲーション情報として検索されたＵＲＬの一覧を表示することが考えられる。また、すべての情報の表示形式において、あらかじめ推薦情報を表現する領域を確保し、確保された領域で提示を行う手法や、推薦されたＵＲＬがユーザの選択した情報に含まれていた場合には、そのＵＲＬに関連する情報をユーザが気づきやすい位置（画面の上部など）に提示する手法が考えられる。
【００３８】
このように、処理Ｓ１２においてカレントノードから参照されているノードの選択時に子ノードとともにトピックリンクで参照されるノードを併せて選択することで、詳細化（子ノード）と興味・目的の変化（トピックリンクで結ばれたノード）の２つの種類の軸に基づいたＵＲＬの提示を行うことが可能となる。図６において「商品情報、PC、デスクトップ」のノードがカレントノードとして選択された場合には、子ノードは存在しない。従って、詳細化の提示のみを行う場合には、提示は行われない。しかし興味・目的の変化の提示を行う場合には、図６の「商品情報、DVD、DVD-ROM、周辺機器」のノードが選択され、これに基づくナビゲーションが行われる。
【００３９】
また、処理Ｓ１４による提供によって、例えば図１０のようなＷｅｂページがあったときに、ここでは「液晶ディスプレイのページ」、「CD-ROMドライブのページ」、「DVDドライブのページ」への３つのリンクが設定されているとする。ここでユーザプロファイルに基づき、DVDドライブのページと、DVDソフトのＵＲＬが推薦される場合には、図１１に示すように異なるウインドウに、２つのリンクがお薦め情報として提示されたり、図１２のように、もともとのページに含まれるDVDドライブへのリンクが他の２つのリンクの上に移動され（Ｐ）、かつ本来ページに含まれていないDVDソフトのページへのリンクが追加される（Ｑ）。
【００４０】
［カレントノードの探索］
ここで処理Ｓ１１においけるプロファイル木からカレントノードを探索する処理について説明する。ナビゲーションガイド部１６は、カレントノードの探索処理として図１３に示す処理を開始する。まず、前回のカレントノードが存在しているか否かを調べる（Ｓ２１）。ここでユーザが閲覧を開始した直後には前回のカレントノードの設定がされていないので（Ｎｏとなるので）、プロファイルの初期ノードから参照されているノード中で最も重みの大きいノードをカレントノードとして取り出して（Ｓ２２）、処理Ｓ２３に移行する。また、処理Ｓ２１でカレントノードが設定されていれば（Ｙｅｓならば）、そのまま処理Ｓ２３に移行する。
【００４１】
そして、ナビゲーションガイド部１６は、設定された前回のカレントノードの持つキーワード集合とユーザのステータスの類似度（カレントノード類似度）Sim(Status,Current）を計算する（Ｓ２３）。ここで類似度の計算方法としては、V.I.Levenshtein. Binary Codes Capable of Correcting Deletions, Insertions and Reversals, Soviet Phys. Dokl., Vol.10, No.8, 1966, pp.707-710に記述された「編集距離」を用いる。編集距離とは比較の対象となった２つの文字列について、一方の文字列に文字列の追加、削除、交換を行い他方の文字列に変換するために必要な追加、削除、交換の回数を表す。値が小さいほど、類似度が高いことになる。このために、キーワード保持部１４は、キーワードデーターベースに記録されているキーワードに対し、あらかじめ一意の番号が付与しておくことが好ましい。このようにしておくと、キーワード集合がキーワードに付与された番号に従った順列として表現される。そして順列として表現された２つのキーワード集合に対して、編集距離を算出し、その逆数を類似度とする。ここで、カレントノード候補の変更回数を示すカウンタ（遷移数カウンタ）をリセットし（Ｓ２４）、設定された前回のカレントノードに対し子ノードまたはトピックリンクで参照されるノードが存在するか否かを調べる（Ｓ２５）。ここで、そのようなノードがなければ（Ｎｏならば）、根（ルート）ノードを返り値（探索したカレントノード）に設定して（Ｓ２６）処理を終了する。
【００４２】
また、処理Ｓ２５において、そのようなノードがあれば（Ｙｅｓならば）、遷移数カウンタをインクリメントして（Ｓ２７）、事前に設定した値（規定値）より遷移数カウンタが小さいか否かを判断し（Ｓ２８）、小さくない（Ｎｏ）ならば、返り値なしと設定（つまりカレントノードが取得できなかったと設定）して（Ｓ２９）、処理を終了する。
【００４３】
一方、処理Ｓ２８において遷移数カウンタが既定値より小さい（Ｙｅｓ）ならば、カレントノードから参照されている下位階層のノード及びカレントノードからトピックリンクで参照されているノードのすべてについて、ユーザのステータスとの類似度Sim(Status,Next_k）を計算する（Ｓ３０）。そして、処理Ｓ３０で計算された類似度の最大値が処理Ｓ２３で演算したカレントノード類似度より大であるか否かを調べ（Ｓ３１）、大ならば（Ｙｅｓ）、新たに最大値をとったノードをカレントノード候補に設定し（Ｓ３２）、そのノードのキーワード集合とステータスとの類似度を新たなカレントノード類似度として、処理Ｓ２５からプロファイル木の探索処理を繰り返す。また、処理Ｓ３１においてカレントノード類似度が大きい場合（Ｎｏならば）、類似度Sim(Status,Current）が最大となるカレントノードが見つかったとして、この値が所定値より大であるか否かを調べ（Ｓ３３）、大であれば、このカレントノード候補を返り値に設定して（Ｓ３４）、処理を終了する。また、処理Ｓ３３で大でなければ、処理Ｓ２９に移行する。
【００４４】
具体的に、図６のプロファイルにおいて、カレントノードとして「商品情報」のノードが選択され、ユーザのステータスを表すキーワード集合が「商品情報、PC、デスクトップ」とするとき、ユーザのステータスとカレントノードの編集距離は「２」となる。つぎに、図６の「商品情報」のノードの子ノードとユーザのステータスとの編集距離を算出する。このとき「商品情報、PC、デスクトップ」との編集距離は０、「商品情報、DVD、DVD-ROM、周辺機器」との編集距離は５となる。従って、類似度が最大、即ち編集距離が最小となるノードとして「商品情報、PC、デスクトップ」のノードがカレントノードとして選択される。尚、図１３の示すフローチャートのように木構造を順次たどって、カレントノードを探索する手法のほかに、木構造内の全てのノードについてユーザのステータスとの類似度を算出し、類似度が最大値をとるノードをカレントノードとしてもよい。
【００４５】
また、処理Ｓ５において、新たなステータスを対象に推薦情報の検索を行う際には、プロファイル木の検索においては、選択されたノードがカレントノードとして存在するので、カレントノードを起点に探索を行う。推薦情報が得られた場合には、既に述べたのと同様にユーザに提示し、ユーザのステータスに含まれるキーワード集合をすべて取り除く（ステータスを初期化する）。推薦情報が得られなかった場合には、ステータスは変更しない。
【００４６】
次に、すでにプロファイルをもつユーザが、ナビゲーションガイドを利用して閲覧した後で、ナビゲーションガイド部１６が、プロファイルを更新する処理について述べる。最初に、初めてサイトを訪れた場合と同様に、アクセス履歴を元にプロファイル木を生成する。次に、以前に生成されていたプロファイル木と新たに生成されたプロファイル木を合成する処理を行う。具体的には、ナビゲーションガイド部１６は、図１４に示すように、まず、以前に生成されていたプロファイル木のすべてのリンク（親子関係を表すリンク、トピックリンク、初期ノードから結ばれたリンク）のすべての重みを減少させて更新する（Ｓ４１）。ここでは、以前のアクセスから今回のアクセスまでの時間ｔの関数である、（３）式の関数を乗算して重みを減少させる。
【００４７】
【数３】
0004655382.tif 000004
ここで、（ｔ＞１）である。次に、新たに生成されたプロファイル木の根ノードへの参照情報を初期ノードに追加し、重みを１に設定して、根（ルート）ノードを更新する（Ｓ４２）。そして新たに生成されたプロファイル中のすべてノードを、元々のプロファイル木に挿入する（Ｓ４３）。この挿入処理は図１５に示すように、挿入先のプロファイル木の根ノードを選択し（Ｓ５１）、追加するノードのキーワード集合が選択したノードのキーワード集合に含まれるか否かを判断し（Ｓ５２）、含まれていれば（Ｙｅｓならば）、追加するノードを親ノードして挿入して（Ｓ５３）、処理を終了する。
【００４８】
一方、処理Ｓ５２において、含まれていなければ（Ｎｏならば）、追加するノードのキーワードの集合と選択したノードのキーワードの集合が等しいか否かを判断する（Ｓ５４）。ここで、等しい（Ｙｅｓ）場合には、そのまま処理を終了する、処理Ｓ５４において、等しくないと判断された場合（Ｎｏ）には、追加するノードのキーワードの集合に選択したノードの集合が含まれるか否かを判断し（Ｓ５５）、含まれる場合には（Ｙｅｓ）、追加するノードを選択したノードの子ノードとして挿入し（Ｓ５６）、処理を終了する。
【００４９】
また、処理Ｓ５５において含まれない場合には（Ｎｏ）、選択されたノードに子ノードがあるか否かを判断し（Ｓ５７）、子ノードがあれば（Ｙｅｓ）、子ノードを選択して（Ｓ５８）、処理Ｓ５２から処理を繰り返す。また、処理Ｓ５７において子ノードがなければ、追加するノードを子ノードとして追加し（Ｓ５９）、処理を終了する。
【００５０】
この図１５に示す処理により、プロファイル木の条件を満たすようにノードが挿入される。そして、処理Ｓ４３に戻り、挿入されたノード間のパス上の重みを更新する（Ｓ４４）。具体的に、すでに存在する親子関係中に挿入された場合には、親ノードと挿入されたノードと子ノードの間の参照関係を表すリンクには、元々の親ノードと子ノード間の重みの値を重みとして設定する。新たに子ノードして挿入されたノードについては、重みを０に設定する。挿入されたノードと、元々存在するノードとの兄弟間の順序は、新たに挿入されたノードが後になり、かつ、挿入されたノード同士では元々のプロファイル木の順序に従った順序付けを行う。挿入して得られた新たなプロファイル木において、挿入されたノードまたは新たなプロファイル木のノードとキーワード集合が一致したノード間に、親ノードとその子孫のノードという関係が存在した場合は、親ノードからその子孫のノードへの経路を抽出する。抽出された経路中のリンクの重みに、追加すべきプロファイル木として生成されたプロファイル木中での重みを加算する。
【００５１】
そして最後に、合成されたプロファイル木について、新たにトピックリンクの設定を行う（Ｓ４５）。トピックリンクの設定方法については既に説明したので詳細な説明を省略する。
【００５２】
具体的に図６に示すプロファイルを持つユーザが、図２に示したサイトをＡ→Ｄ→Ｅ→Ｆ→Ｇ→Ｈ→Ｉの順にアクセスした場合を考えると、この時ユーザのアクセスしたキーワードの状態は図１６のようになる。このとき、図１７のプロファイルが新たに生成される。また、こうして生成されたプロファイルと図６に示すプロファイルを合成した結果は、図１８に示すようになる。プロファイルを合成することにより、ユーザが頻繁に訪れるノードへのリンクが強化され、優先的に提示されるようになり、ユーザに対する適切なガイドが行われるようになる。また、前回のアクセス履歴から得られたプロファイルの根ノードへのリンクの重みを強化することで、前回のアクセスの再現を優先することが可能になる。
【００５３】
【発明の効果】
本発明によれば、ユーザの通常行動（一般的情報から詳細な情報へとリンクを辿る過程）と、ユーザの変化行動（対象の変化）との２軸からユーザの過去の閲覧行動を分析し、この２軸を利用したプロファイルを用いてユーザの情報の閲覧作業を支援する。これにより、ある目的を持ってサイトを訪問したが、偶然興味のある別目的の情報を見いだしたというような状況において、そのサイトへの再訪問が支援される。また、詳細化の軸でもユーザの情報の閲覧作業支援をするので過去のアクセス時に誤って異なる話題に移動していても、適切な情報の閲覧作業が支援される。
【図面の簡単な説明】
【図１】  本発明の実施の形態に係る情報閲覧支援装置の構成ブロック図である。
【図２】  一般的なＷｅｂサイトの構成例を示す説明図である。
【図３】  出現パターンの一例を表す説明図である。
【図４】  分析に用いられる木構造の一例を示す説明図である。
【図５】  分析に用いられる木構造の一例を示す説明図である。
【図６】  分析に用いられる木構造の一例を示す説明図である。
【図７】  分析に用いられる木構造の一例を示す説明図である。
【図８】  ナビゲーションガイドの処理を表すフローチャート図である。
【図９】  推薦情報を生成する処理を表すフローチャート図である。
【図１０】  Ｗｅｂページの一例を表す説明図である。
【図１１】  ガイド情報付きのＷｅｂページの一例を表す説明図である。
【図１２】  ガイド情報付きのＷｅｂページの一例を表す説明図である。
【図１３】  プロファイル木の探索処理を表すフローチャート図である。
【図１４】  プロファイル木の合成処理を表すフローチャート図である。
【図１５】  プロファイル木へのノード挿入処理を表すフローチャート図である。
【図１６】  出現パターンの一例を表す説明図である。
【図１７】  分析に用いられる木構造の一例を示す説明図である。
【図１８】  分析に用いられる木構造の一例を示す説明図である。
【符号の説明】
１１  サーバ部、１２  アクセス履歴管理部、１３  キーワード設定部、１４キーワード保持部、１５  ユーザプロファイリング部、１６  ナビゲーションガイド部。
【図１】
0004655382.tif 000005
【図２】
0004655382.tif 000006
【図３】
0004655382.tif 000007
【図４】
0004655382.tif 000008
【図５】
0004655382.tif 000009
【図６】
0004655382.tif 000010
【図７】
0004655382.tif 000011
【図８】
0004655382.tif 000012
【図９】
0004655382.tif 000013
【図１０】
0004655382.tif 000014
【図１１】
0004655382.tif 000015
【図１２】
0004655382.tif 000016
【図１３】
0004655382.tif 000017
【図１４】
0004655382.tif 000018
【図１５】
0004655382.tif 000019
【図１６】
0004655382.tif 000020
【図１７】
0004655382.tif 000021
【図１８】
0004655382.tif 000022