(57)【特許請求の範囲】
【請求項１】
各文書が指定期間内の日時情報を属性として持つ文書集合を入力する文書入力部と、
前記文書集合及び閲覧された文書又はブックマーク操作によるラベル付けを行った文書を含む履歴文書の各々をキーワード解析することにより、各々が複数のキーワードを含む複数の特徴ベクトルを求める文書解析部と、
前記文書集合をクラスタリングすることにより、各々が同一の話題に属する文書からなる複数の話題クラスタ及び複数のサブ話題クラスタを求めるクラスタリング部と、
前記サブ話題クラスタ間の話題の推移を表す推移構造を生成する話題推移生成部と、
各話題クラスタ及び各サブ話題クラスタにおいて特徴属性を抽出する特徴属性抽出部と、
前記履歴文書の特徴ベクトルと前記文書集合に含まれる各文書の特徴ベクトルとの類似性判定により、サブ話題クラスタのいずれかに相当する興味クラスタを抽出する興味クラスタ抽出部と、
前記興味クラスタが持つ前記推移構造に基づいて、該興味クラスタと推移関係にあるサブ話題クラスタを求め、該サブ話題クラスタに含まれる文書を推薦文書として抽出する推薦文書抽出部と、
前記推薦文書を前記特徴属性とともに提示する推薦文書提示部と、を備えることを特徴とする情報推薦装置。 
【請求項２】
前記履歴文書を入力する履歴入力部をさらに具備することを特徴とする請求項１記載の情報推薦装置。
【請求項３】
前記複数の話題クラスタの各々について、各話題クラスタをさらにサブ話題クラスタにクラスタリングする構造化が可能であるかを判定し、構造化が可能であるならば該当する話題クラスタを対象にしてクラスタリングを行って前記複数のサブ話題クラスタを得るよう前記クラスタリング部を制御する構造化判定部をさらに具備することを特徴とする請求項１記載の情報推薦装置。
【請求項４】
前記特徴属性及び前記推移構造を含むクラスタ構造情報を格納するクラスタ構造格納部をさらに具備することを特徴とする請求項１記載の情報推薦装置。
【請求項５】
前記文書集合は、文書自体が日時情報を持つ文書及び文書に付随するメタデータが日時情報を持つ文書を含む請求項１記載の情報推薦装置。
【請求項６】
前記クラスタリング部は、任意の文書の組に対応する特徴ベクトルの組について内積値を求め、該内積値の閾値判定によりクラスタリングを行うことを特徴とする請求項１記載の情報推薦装置。
【請求項７】
前記話題推移生成部は、前記サブ話題クラスタの組に対し、サブ話題クラスタ間の文書の類似度及び文書の日時情報の関係を求めることにより前記推移構造を生成することを特徴とする請求項１記載の情報推薦装置。
【請求項８】
複数の前記履歴文書に基づく嗜好構造を格納する嗜好構造格納部をさらに具備し、
前記クラスタリング部は、前記複数の履歴文書を対象にしてクラスタリングを行い、
前記嗜好構造格納部は、前記クラスタリングの結果に基づいた前記嗜好構造を格納し、
前記興味クラスタ抽出部は、前記嗜好構造と前記クラスタ構造情報との構造比較により興味クラスタを抽出する請求項１記載の情報推薦装置。
【請求項９】
前記文書解析部が前記複数の履歴文書の各々の文書解析を行い、該文書解析の結果に基づいて嗜好の重み付けを行うことを特徴とする請求項８記載の情報推薦装置。
【請求項１０】
各文書が指定期間内の日時情報を属性として持つ文書集合を文書入力部が入力するステップと、
前記文書集合及び閲覧された文書又はブックマーク操作によるラベル付けを行った文書を含む履歴文書の各々をキーワード解析することにより、各々が複数のキーワードを含む複数の特徴ベクトルを文書解析部が求めるステップと、
前記文書集合をクラスタリングすることにより、各々が同一の話題に属する文書からなる複数の話題クラスタ及び複数のサブ話題クラスタをクラスタリング部が求めるステップと、
前記サブ話題クラスタ間の話題の推移を表す推移構造を話題推移生成部が生成するステップと、
各話題クラスタ及び各サブ話題クラスタにおいて特徴属性を特徴属性抽出部が抽出するステップと、
前記履歴文書の特徴ベクトルと前記文書集合に含まれる各文書の特徴ベクトルとの類似性判定により、前記複数の話題クラスタ又はサブ話題クラスタのいずれかに相当する興味クラスタを興味クラスタ抽出部が抽出するステップと、
前記興味クラスタが持つ前記推移構造に基づいて、推薦文書抽出部が該興味クラスタと推移関係にあるサブ話題クラスタを求め、該サブ話題クラスタに含まれる文書を推薦文書として抽出するステップと、
推薦文書提示部が前記推薦文書を前記特徴属性とともに提示するステップと、を備えることを特徴とする情報推薦方法。
【請求項１１】
前記履歴文書を履歴入力部が入力するステップをさらに有することを特徴とする請求項１０記載の情報推薦方法。
【請求項１２】
前記複数の話題クラスタの各々について、各話題クラスタをさらにサブ話題クラスタにクラスタリングする構造化が可能であるかを判定し、構造化が可能であるならば該当する話題クラスタを対象にしてクラスタリングを行って前記複数のサブ話題クラスタを得るよう前記クラスタリング部を制御する構造化判定部をさらに具備することを特徴とする請求項１記載の情報推薦装置。
【請求項１３】
前記特徴属性及び前記推移構造を含むクラスタ構造情報をクラスタ構造格納部が格納するステップをさらに具備することを特徴とする請求項１０記載の情報推薦方法。
【請求項１４】
前記文書集合は、文書自体が日時情報を持つ文書及び文書に付随するメタデータが日時情報を持つ文書を含む請求項１０記載の情報推薦方法。
【請求項１５】
前記クラスタリング部が、任意の文書の組に対応する特徴ベクトルの組について内積値を求め、該内積値の閾値判定によりクラスタリングを行うステップをさらに有することを特徴とする請求項１０記載の情報推薦方法。
【請求項１６】
前記話題推移生成部が、前記サブ話題クラスタの組に対し、サブ話題クラスタ間の文書の類似度及び文書の日時情報の関係を求めることにより前記推移構造を生成するステップをさらに有することを特徴とする請求項１０記載の情報推薦方法。
【請求項１７】
複数の前記履歴文書に基づく嗜好構造を嗜好構造格納部が格納するステップと、
前記クラスタリング部が、前記複数の履歴文書を対象にしてクラスタリングを行うステップと、
前記嗜好構造格納部が、前記クラスタリングの結果に基づいた前記嗜好構造を格納するステップと、
前記興味クラスタ抽出部が、前記嗜好構造と前記クラスタ構造情報との構造比較により興味クラスタを抽出するステップとをさらに有することを特徴とする請求項１０記載の情報推薦方法。
【請求項１８】
前記文書解析部が、前記複数の履歴文書の各々の文書解析を行い、該文書解析の結果に基づいて嗜好の重み付けを行うステップをさらに有することを特徴とする請求項１７記載の情報推薦方法。
【請求項１９】
コンピュータを、
各文書が指定期間内の日時情報を属性として持つ文書集合を入力する文書入力手段、
前記文書集合及び閲覧され文書又はブックマーク操作によるラベル付けを行った文書を含む履歴文書の各々をキーワード解析することにより、各々が複数のキーワードを含む複数の特徴ベクトルを求める文書解析手段、
前記文書集合をクラスタリングすることにより、各々が同一の話題に属する文書からなる複数の話題クラスタ及び複数のサブ話題クラスタを求めるクラスタリング手段、
前記サブ話題クラスタ間の話題の推移を表す推移構造を生成する話題推移生成手段、
各話題クラスタ及び各サブ話題クラスタにおいて特徴属性を抽出する特徴属性抽出手段、
前記履歴文書の特徴ベクトルと前記文書集合に含まれる各文書の特徴ベクトルとの類似性判定により、サブ話題クラスタのいずれかに相当する興味クラスタを抽出する興味クラスタ抽出手段、
前記興味クラスタが持つ前記推移構造に基づいて、該興味クラスタと推移関係にあるサブ話題クラスタを求め、該サブ話題クラスタに含まれる文書を推薦文書として抽出する推薦文書抽出手段、
前記推薦文書を前記特徴属性とともに提示する推薦文書提示手段、として機能させるための情報推薦プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、日時情報を属性としてもつ文書から、ユーザが過去に閲覧した文書の続きにあたる文書を効果的に検出して提示することのできる情報推薦装置および情報推薦方法に関する。
【背景技術】
【０００２】
ユーザごとの興味に即した話題を情報として推薦したい・知りたいというニーズは高く、従来、様々な技術が開発されている。例えば、ＷＷＷでは、ユーザごとの過去の閲覧履歴に含まれるＷｅｂページや「興味あり」のマークをしたＷｅｂページ、に関連する別のＷｅｂページを推薦する技術や、ユーザが興味ある商品を購入した際に、他のユーザが併せて購入した別の商品を推薦する技術などが存在する。
【０００３】
ユーザの興味に即した情報を推薦する手段としては、大きく分けて協調フィルタリングによる推薦の形態と、類似コンテンツや同じジャンルの推薦の形態とが考えられる。例えば、特許文献１に開示されている技術では協調フィルタリング方法における評価値の予測を試みている。また、特許文献２では、ユーザ嗜好についての特徴ベクトルマッチングに基づく情報推薦を試みている。これは、例えばユーザの利用履歴である文書集合から特徴的なキーワードを複数抽出し、これらを特徴ベクトルとして保存し、新しいコンテンツが該特徴ベクトルと似ているかどうかに基づいて、該コンテンツがユーザの嗜好と近いコンテンツであるかどうかを判定するというものである。
【特許文献１】特開２００３−１６７９０１号公報
【特許文献２】特開２００６−１９０１２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１で記載されるような協調フィルタリングでは、マッチングを行うために他のユーザの利用履歴が必要である。例えば、ある話題に興味のあるユーザＡに対してコンテンツを推薦する場合、この話題に興味のある別のユーザＢを検索し、該ユーザＢのコンテンツ利用履歴に基づいてユーザＡに推薦するコンテンツを決定することになる。このような特許文献１の技術は、別のユーザの利用履歴を参照しない（又は参照できない）運用形態では利用することができない。
【０００５】
また、特許文献２で記載されるような、ユーザの利用履歴や嗜好に基づく方式では、同じ話題が別のキーワードで表現される場合のようにキーワード同士が直接的には一致しない場合には、コンテンツを推薦できないという問題がある。また、ジャンルに基づく推薦の場合においても、ジャンルが表す話題の範囲とユーザの興味の範囲とが一致しない場合があるという問題がある。
【０００６】
さらに、共通の課題としてジャンル内のコンテンツの経過または推移を追跡できないという問題がある。
【０００７】
本発明は、かかる事情を考慮してなされたものであって、日時情報を属性としてもつ文書から、ユーザが過去に閲覧した文書の続きにあたる文書を効果的に検出し、これを推薦文書として提示することのできる情報推薦装置および情報推薦方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一観点に係る情報推薦装置は、各文書が指定期間内の日時情報を属性として持つ文書集合を入力する文書入力部と、前記文書集合及び閲覧された文書又はブックマーク操作によるラベル付けを行った文書を含む履歴文書の各々をキーワード解析することにより、各々が複数のキーワードを含む複数の特徴ベクトルを求める文書解析部と、前記文書集合をクラスタリングすることにより、各々が同一の話題に属する文書からなる複数の話題クラスタ及び複数のサブ話題クラスタを求めるクラスタリング部と、前記サブ話題クラスタ間の話題の推移を表す推移構造を生成する話題推移生成部と、各話題クラスタ及び各サブ話題クラスタにおいて特徴属性を抽出する特徴属性抽出部と、前記履歴文書の特徴ベクトルと前記文書集合に含まれる各文書の特徴ベクトルとの類似性判定により、前記複数の話題クラスタ又はサブ話題クラスタのいずれかに相当する興味クラスタを抽出する興味クラスタ抽出部と、前記興味クラスタが持つ前記推移構造に基づいて、該興味クラスタと推移関係にあるサブ話題クラスタを求め、該サブ話題クラスタに含まれる文書を推薦文書として抽出する推薦文書抽出部と、前記推薦文書を前記特徴属性とともに提示する推薦文書提示部と、を備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、日時情報を属性としてもつ文書から、ユーザが過去に閲覧した文書の続きにあたる文書を効果的に検出し、これを推薦文書として提示することのできる情報推薦装置および情報推薦方法を提供できる。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照しながら本発明の実施形態を説明する。
【００１１】
図１に示すように、一実施形態として、サーバコンピュータ（以下、「サーバ」という。）１にＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワーク２を介してクライアントコンピュータ（以下、「クライアント」という。）３が複数台接続されたサーバクライアントシステムを想定する。サーバ１およびクライアント３は、例えば、一般的なパーソナルコンピュータである。
【００１２】
図２に示すように、サーバ１は、情報処理を行うＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１、ＢＩＯＳ（Ｂａｓｉｃ Ｉｎｐｕｔ／Ｏｕｔｐｕｔ ｓｙｔｅｍ）などを記憶した読出し専用メモリであるＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０２、各種データを書換え可能に記憶するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０３、各種データベースとして機能するとともに各種のプログラムを格納するＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１０４、記憶媒体１１０を用いて情報を保管したり、外部に情報を配布したり、外部からの情報を入手するためのＣＤ−ＲＯＭドライブ等の媒体読取装置１０５、ネットワーク２を介して外部の他のコンピュータとの通信により情報を伝達するための通信制御装置１０６、処理経過や結果等を操作者に表示するＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）やＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）等の表示部１０７、並びに操作者（ユーザ）がＣＰＵ１０１に対する命令や情報等を入力するためのキーボードやマウス等の入力部１０８等から構成されており、これらの各部間で送受信されるデータをバスコントローラ１０９が調停して動作する。
【００１３】
このようなサーバ１およびクライアント３では、ユーザが電源を投入するとＣＰＵ１０１がＲＯＭ１０２内のローダーというプログラムを起動し、ＨＤＤ１０４よりＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）というコンピュータのハードウェアとソフトウェアとを管理するプログラムをＲＡＭ１０３に読み込んで起動する。ＯＳは、ユーザの操作に応じてプログラムを起動したり、情報を読み込んだり、保存を行ったりする。ＯＳのうち代表的なものとしては、Ｗｉｎｄｏｗｓ（登録商標）等が知られている。ＯＳ上で動作するプログラムは「アプリケーションプログラム」と呼ばれる。なお、アプリケーションプログラムは、ＯＳ上で動作するものに限らず、後述の各種処理の一部の実行をＯＳに肩代わりさせるものであってもよいし、所定のアプリケーションソフトやＯＳなどを構成する一群のプログラムファイルの一部として含まれているものであってもよい。
【００１４】
ここで、サーバ１は、アプリケーションプログラムとして、本発明の一実施形態に係る情報推薦プログラムをＨＤＤ１０４に記憶している。この意味で、ＨＤＤ１０４は、該情報推薦プログラムを記憶する記憶媒体として機能する。一般に、ＨＤＤ１０４にインストールされるアプリケーションプログラムは、ＣＤ−ＲＯＭやＤＶＤなどの光ディスク、光磁気ディスク、フレキシブルディスクなどの磁気ディスク、半導体メモリ等の各種メディアを含む記憶媒体１１０に記録され、該記憶媒体１１０に記録された動作プログラムがＨＤＤ１０４にインストールされる。このため、ＣＤ−ＲＯＭ等の光情報記録メディアやＦＤ等の磁気メディア等の可搬性を有する記憶媒体１１０についても、アプリケーションプログラムを記憶する記憶媒体となり得る。さらには、アプリケーションプログラムは、例えば通信制御装置１０６を介して外部から取り込まれ、ＨＤＤ１０４にインストールされても良い。
【００１５】
サーバ１は、ＯＳ上で動作する情報推薦プログラムが起動すると、この情報推薦プログラムに従い、ＣＰＵ１０１が各種の演算処理を実行して各部を集中的に制御する。サーバ１のＣＰＵ１０１が実行する各種の演算処理のうち、本実施形態の特徴的な処理について以下に説明する。
【００１６】
図３に示すように、サーバ１は、文書入力部１１、履歴入力部１２、クラスタリング部１３、文書解析部１４、構造化判定部１５、特徴属性抽出部１６、話題推移生成部１７、クラスタ構造格納部１８、興味クラスタ抽出部１９、推薦文書抽出部２０、推薦文書提示部２１を備える。クラスタ構造格納部１８は、ＨＤＤ１０４、記憶媒体１１０、ＲＡＭ１０３など、一般的に利用されている種々の記憶手段により構成することができる。
【００１７】
以下、各機能ブロックについて説明する。なお、機能ブロックの各々に関係するより具体的なデータ構造や処理手順については後述する。
【００１８】
文書入力部１１は、属性として日時情報を持つ文書を入力の対象とし、予め決められた日数を有する指定期間内の日時を属性として持つ様々な文書（以下、「文書集合」という。）の入力を受け付ける。属性として日時情報を持つ文書としては、例えばインターネット上の、Ｗｅｂページのニュース記事（図４（ａ）参照）、ＲＳＳ（Ｒｉｃｈ  Ｓｉｔｅ  Ｓｕｍｍａｒｙ：Ｗｅｂページの新着情報や記事の要約）であったり、ＥＰＧ（Ｅｌｅｃｔｒｏｎｉｃ  Ｐｒｏｇｒａｍ  Ｇｕｉｄｅ：電子番組ガイド）上の情報（図４（ｂ）参照）であったりする。いずれの文書においても、本文あるいは更新時刻などの属性として日時情報を含むことが必要である。これらの文書の配信元としては、指定されたＷｅｂサイトやデータベースが用いられる。また、Ｗｅｂページのニュース記事（図４（ａ）参照）やＥＰＧ上の情報（図４（ｂ）参照）には、図示しないがそれぞれを一意に識別可能な文書ＩＤが付されている。すなわち、文書入力部１１に入力される文書は、ニュース記事を示すＷｅｂページ、日記、Ｗｅｂｌｏｇ（ブログ）、ＲＳＳ等のＷｅｂから取得可能なデータに加え、電子メールやインスタントメッセンジャーなどのメッセージ、ＥＰＧ情報および字幕情報等の番組映像データに付随するメタデータテキストなどを含む。すなわち、番組映像データを文書として扱った場合に、該番組映像データ自体からは日時情報を得られないため、そのメタデータテキストから、日時情報を得るようにする。
【００１９】
履歴入力部１２は、ユーザが閲覧した文書の履歴又はブックマーク操作によるラベル付けを行った文書の履歴の入力を受け付ける。本実施形態において、各ユーザは固有のユーザＩＤを持つ。Ｗｅｂブラウザによる閲覧やブックマークなどの操作履歴は、その都度あるいは定期的にユーザＩＤと対応付けてサーバにアップロードされる。
【００２０】
クラスタリング部１３は、文書入力部１１を通じて入力された指定期間の文書集合について、同じ話題に属する１つ又は複数の文書を要素とする話題クラスタを抽出する。すなわち、クラスタリング部１３は、文書入力部１１から文書集合を受け取ると、文書解析部１４に一旦渡すことになる。話題クラスタの生成方法の例としては、文書解析部１４による解析によって得られたキーワードを用いることで各文書を単語ベクトルとみなし、各文書を表す単語ベクトルの内積が最大となる文書の組を同じ話題に属する文書であるとみなす、という処理を、内積値の閾値判定を行いながら繰り返すことが考えられる。このようなクラスタリング部１３により、話題クラスタの集合が得られる。
【００２１】
文書解析部１４は、文書入力部１１又はクラスタリング部１３から文書集合を受け取り、既存の自然言語処理技術（例えば、形態素解析やｎ−ｇｒａｍ抽出など）を用い、Ｗｅｂ上のテキストやＥＰＧのテキストに含まれる代表的なキーワードを解析する。例えば、文字列「自然言語処理」を形態素解析することにより「自然」「言語」「処理」等の単語をキーワードとして切り出すことができる。また、文書数とキーワードの出現頻度から計算されるＴＦ（Ｔｅｒｍ  Ｆｒｅｑｕｅｎｃｙ）やＩＤＦ（Ｉｎｖｅｒｓｅｄ  Ｄｏｃｕｍｅｎｔ  Ｆｒｅｑｕｅｎｃｙ）などを用いて各キーワードに対する重み付けが行われる。計算されたＴＦ・ＩＤＦの値は、上述の単語ベクトルの各要素に利用される。
【００２２】
構造化判定部１５は、１つの話題クラスタが示す話題をさらに複数の話題（サブ話題）に細分化するかどうかを判定する。話題構造化の判定基準としては、例えば話題クラスタを構成する文書の数、文書に含まれる日付の分散、文書に含まれるキーワードのＣ−ｖａｌｕｅの値、などを利用することができる。Ｃ−ｖａｌｕｅについては、「K. Frantsi and S. Ananiadou, “Extracting Nested Collocations,” in Proceedings of International Conference on Computational Linguistics (COLING-96), pp.41-46, 1996.」に記載されている。これらの値が閾値を超える場合には、構造化判定部１５は、話題クラスタを細分化可能であると判定する。この場合、構造化判定部１５は、その話題クラスタに属する文書集合を対象に、クラスタ生成の処理が再帰的に行われるよう、クラスタリング部１３（及び文書解析部１４）を制御する。したがって、話題クラスタ又はサブ話題クラスタについて、上記閾値判定により各々が示す話題はこれ以上構造化可能ではないと判定されるまで、繰り返し話題クラスタの抽出が行われる。これにより、階層的な構造を持つサブ話題クラスタが生成される。ただし、話題クラスタをサブ話題クラスタに細分化する処理では、当初のクラスタリングで用いられた話題キーワード自体は計算に用いないものとする。
【００２３】
特徴属性抽出部１６は、クラスタリング部１３により抽出されたそれぞれの話題クラスタに対し、よく含まれるキーワードを話題キーワードとして抽出する。キーワードとしてはどの長さまで抽出すべきかを示す基準が必要であるが、例えばＣ−ｖａｌｕｅなどの手法を利用することが可能である。
【００２４】
話題推移生成部１７は、クラスタリング部１３により抽出された話題クラスタおよびサブ話題クラスタの関係に基づき、話題の推移構造を生成する。
【００２５】
クラスタ構造格納部１８は、クラスタリング部１３によって抽出された話題クラスタ毎の話題、特徴属性抽出部１６によって抽出された話題毎の特徴、話題推移生成部１７によって生成された話題推移構造を格納する。
【００２６】
興味クラスタ抽出部１９は、クラスタ構造格納部１８に格納されたクラスタ構造と履歴入力部１２によって入力された履歴とを対応付けることにより、ユーザが閲覧した、あるいはユーザが「興味あり」とマーキングした文書の集合がどの話題あるいはどのサブ話題に対応するかを判定する。
【００２７】
推薦文書抽出部２０は、興味クラスタ抽出部１９によって抽出された、履歴と対応付けられる話題あるいはサブ話題に応じて推薦するべき文書を抽出する。
【００２８】
推薦文書提示部２１は、推薦文書抽出部２０によって選択された文書を、話題およびサブ話題の構造と対応付けてユーザに対して提示する。提示方法としては、例えばＷｅｂページとして生成し、各ユーザが使用するクライアント３からのネットワーク２を介した表示要求に応じて提示する。
【００２９】
次に、情報推薦プログラムに従ってサーバ１のＣＰＵ１０１が実行する処理のうち、クラスタリング部１３および文書解析部１４における話題クラスタ抽出処理について図５のフローチャートを参照して説明する。
【００３０】
図５に示すように、まず、文書解析部１４は指定期間内に文書入力部１１を介して入力を受け付けた複数文書のそれぞれに形態素解析を行って、文書を形態素（単語）に分割する（ステップＳ１）。次に、文書解析部１４は、分割により得られた形態素のＴＦ・ＩＤＦ値を計算することにより、単語毎の重みを考慮した文書毎の単語ベクトルを生成する（ステップＳ２）。そして、文書解析部１４は、ステップＳ２で生成したキーワードの候補から、助詞や記号のようにキーワードとして用いられない不要な表現を除外する（ステップＳ３）。
【００３１】
以上のステップ３までの文書解析部１４による一つの文書の解析結果に相当する単語一覧がクラスタリング部１３に戻される。
【００３２】
クラスタリング部１３は、２つの文書の組み合わせを求めるとともに、該２つの文書について、各々の単語ベクトルの内積の最大値を計算し（ステップＳ４）、その値が閾値を超えるかどうかを判定する（ステップＳ５）。
【００３３】
なお、本実施形態においては、クラスタリング部１３は、文書集合やキーワード自身の属性である出現頻度を用いてスコアを算出するようにしたが、これに限るものではなく、キーワードの長さ、形態素情報などの文書集合におけるキーワード自身の属性を用いてスコアを算出するようにしても良い。
【００３４】
単語ベクトルの内積の最大値が閾値より大きい場合（ステップＳ５＝Ｙｅｓ）、該最大値を与える２つの文書は同じクラスタに属する文書であるとみなす（ステップＳ６）。そして、ステップ４の処理が繰り返し実行される。
【００３５】
単語ベクトルの内積の最大値が閾値以下の場合（ステップＳ５＝Ｎｏ）、クラスタリング処理は終了し、クラスタの個数が閾値より大きいかどうかを判定する（ステップＳ７）。閾値より大きい場合は頻度の高い順に閾値までの個数だけクラスタを残し、残りは除去する（ステップ８）。ここまでの処理により話題クラスタが与えられる。
【００３６】
次に、各話題クラスタにおいて、話題を代表するキーワードを特徴属性抽出部１６により抽出する処理手順を図６のフローチャートを参照して説明する。  
図６に示すように、まず、文書解析部１４による処理結果として得られた複数の形態素を連結することにより、２単語以上からなるキーワードの候補を生成する（ステップＳ１１）。次に、ステップＳ１１で生成されたキーワードの候補から、助詞や記号のようにキーワードとして用いられない不要な表現を除去する（ステップＳ１２）。
【００３７】
次に、特徴属性抽出部１６は、各単語の出現頻度を計算するとともに、該出現頻度の高い順に時事キーワードの候補とする（ステップＳ１３）。なお、特徴属性抽出部１６は、過去に算出したキーワードの出現頻度の履歴も併せて用いることによりキーワードの出現頻度を算出してもよい。これにより候補として抽出された複数のキーワードに、文字列の包含関係があるか否かを判定する（ステップＳ１４）。本実施形態において、特徴属性抽出部１６は、文書集合におけるキーワード自身の属性である出現頻度を用いてスコアを算出するようにしているが、これに限るものではなく、キーワードの長さ、形態素情報などの文書集合におけるキーワード自身の属性を用いてスコアを算出するようにしても良い。また、特徴量として表現できれば、必ずしもキーワードに限定するものではない。
【００３８】
キーワードに文字列の包含関係がある場合には（ステップＳ１４＝Ｙｅｓ）、包含されるキーワードを除去する（ステップＳ１５）。キーワードに文字列の包含関係がある場合とは、例えば、「○○問題」「○○」「問題」というキーワードについて考えると、「○○問題」と、「○○」および「問題」との間には包含関係があるので、包含されるキーワード「○○」および「問題」はステップＳ１５で除去される。一方、キーワードに文字列の包含関係がない場合は（ステップＳ１４＝Ｎｏ）、そのままステップＳ１６に進む。
【００３９】
以上のように、特徴属性抽出部１６は、文書解析部１４により解析された各キーワードの包含関係を利用してキーワードを抽出する。こうして得られたキーワードの一覧は、話題を代表する話題キーワードの集合となるが、抽出されたキーワードの個数が予め設定された閾値よりも多い場合には（ステップＳ１６＝Ｙｅｓ）、頻度の高い順に閾値に相当する個数のキーワードを採用し、残りを除去する（ステップＳ１７）。
【００４０】
図７は、抽出された話題キーワード一覧のデータ構造を示している。同図に示すように、各話題ＩＤ７０は、キーワード自身の文字列７１の他に、（指定）期間７２、出現頻度７３、出現元文書のＩＤ７４を属性として有する。
【００４１】
ここで、構造化判定部１５により話題が細分化可能であると判定された場合に、クラスタリング部１３によってさらに細分化された話題（クラスタ）のことを「サブ話題（クラスタ）」と呼び、サブ話題（クラスタ）を代表するキーワードのことを「サブ話題キーワード」と呼ぶことにする。話題推移生成部１７における話題およびサブ話題の推移生成の処理手順について図８のフローチャートを参照して説明する。
【００４２】
図８に示すように、まず、細分化可能な話題クラスタを構成する文書を入力としてクラスタリング部１３によるクラスタリングを行う。（ステップＳ２１）。この時、処理中の話題クラスタそのものを構成する話題キーワードは計算に含めない。また、サブ話題は近い日に出現したものが同じクラスタに属しやすいよう日付の近さも計算に用いる。
【００４３】
次に、ステップＳ２１のクラスタリング結果として得られたサブ話題クラスタから、サブ話題キーワードを特徴属性抽出部１６により抽出する（ステップＳ２２）。
【００４４】
次に、得られたそれぞれのサブ話題キーワード群を小見出しとし、細分化前の話題クラスタを示す話題キーワード（大見出しとする）に関連付ける（ステップＳ２３）。大見出し、小見出しの区別は、後述する推薦文書提示における表示に反映される。
【００４５】
続いて、話題推移生成部１７は、サブ話題クラスタの組に対し、クラスタ同士に類似性があるならば、日時が後であるサブ話題クラスタが、日時が前のサブ話題クラスタに続く話題であると判定する（ステップＳ２４）。この推移構造を求める処理は、例えばサブ話題クラスタの重心となる平均特徴ベクトルを計算し、それらのユークリッド距離が閾値以下である場合や、平均特徴ベクトルの余弦尺度が閾値以上である場合に類似のサブ話題であると判定する、などの手法を用いることができる。なお、クラスタ同士の類似性判定はこれらの方法に限るものではない。また、日時の前後関係に関しても、サブ話題クラスタを構成する文書のうち最も早い日時を選択する場合もあれば、平均の日時を選択する方法なども考えられる。これら以外の手法を用いても構わない。
【００４６】
上記処理の結果として得られたクラスタ構造情報の一例を図９に示す。話題ＩＤ９０により識別されるそれぞれの話題やサブ話題に対して、話題クラスタあるいはサブ話題クラスタ抽出時に付加された属性（キーワード９１、話題／サブ話題の区別９２、出現期間９３、出現頻度９４、出現元文書のＩＤ９５、前の話題のＩＤ（推移構造）９６）が付与されている。これらのデータはクラスタ構造格納部１８に格納される。
【００４７】
また、図９の結果に対応するクラスタリング結果を模式的に図１０に示す。入力された文書集合１００（例：ニュース記事一覧）が話題クラスタ１０１およびサブ話題クラスタ１０２に分類される。またサブ話題の類似度に応じた推移構造が形成されていることが図１０から分かる。
【００４８】
次に、興味クラスタ抽出部１９および推薦文書抽出部２０の処理について図１１を用いて説明する。まず、履歴入力部１２により入力された、ユーザの閲覧結果文書又はブックマーク操作等のラベル付与がなされた履歴である文書集合１１０が入力される。本装置に履歴を入力するのは、該装置を用いているユーザの興味を反映した情報を求めるためである。本実施形態において、履歴を表す文書であるとして入力の対象とする文書とは、ニュース記事を示すＷｅｂページ、日記、Ｗｅｂｌｏｇ（ブログ）、ＲＳＳ等のＷｅｂから取得可能なデータに加え、電子メールやインスタントメッセンジャーなどのメッセージ、ＥＰＧ情報および字幕情報等の番組映像データに付随するメタデータテキストなどを含む。さらに、これらのような本来的に日時情報が付随するテキストデータに加え、電子書類又はプレゼンテーション資料の閲覧時刻、Ｗｅｂページのブックマーク時刻など、テキスト情報に対して何らかのユーザ操作が行われることによって得られる日時情報が後に付与された文書を含む。
【００４９】
例えば、ユーザのブックマーク結果一覧１１０が履歴入力部１２に入力されたならば、文書解析部１４は各ブックマークに対応する文書毎に特徴ベクトルを算出する。興味クラスタ抽出部１９は、それぞれの特徴ベクトルとクラスタ構造格納部１８に格納されている各話題クラスタおよびサブ話題クラスタの単語ベクトル（特徴ベクトル）との類似性を判定することにより、ユーザが保持するブックマークに関連する話題クラスタまたはサブ話題クラスタを興味クラスタとして抽出する。例えば、図１１では話題クラスタＢに含まれるサブ話題クラスタ「激戦区」１１１、話題クラスタｎに含まれるサブ話題クラスタ「音楽プレーヤｇ」１１２がそれぞれ興味クラスタとして抽出される。本実施形態では、興味クラスタの抽出に特徴ベクトルの類似度を用いることとするが、単に同じＷｅｂページのＵＲＬや視聴した番組の一致、などの手法を用いても構わない。
【００５０】
次に、推薦文書抽出部２０は興味クラスタ抽出部１９によって抽出された話題クラスタにより示される話題の「続き」に相当する文書を推薦文書として抽出する。例えば、図１１の例においてユーザに対して推薦されるサブ話題クラスタは、上記のサブ話題クラスタの続きに相当する「審判」１１３や、「ｇ携帯」１１４，「ｇ端末」１１５，「ｇミニ」１１６など、図１１で斜線で示された文書である。なお、文書集合１１０においてサブ話題クラスタとの関連がないブックマークに関しては、話題クラスタ全体との関連を調べ、関連する場合には例えばその話題クラスタに属し、ブックマークされた文書より一定期間以上期間を空けた新しいものを全て推薦対象とする、などの方法が考えられる。いずれにしても、単純に過去の履歴と単語の出現頻度が類似した文書を推薦する場合には、同じ話題に属する文書が推薦される可能性があるが、話題クラスタ・サブ話題クラスタを比較の起点とすることにより、話題単位での推移を知ることが可能である。
【００５１】
このようにして推薦文書抽出部２０により抽出された推薦文書は、推薦文書提示部２１によりユーザに対して提示される。この推薦文書提示部２１による推薦例を図１２を用いて説明する。
【００５２】
まず、ユーザがブックマークした文書に関連する話題全体の推移が表示される。例えば、話題「参院選」の場合は、「公示」に始まり、「激戦区→審判」「新党→惨敗」に至る推移が提示される。次に、ユーザがブックマークした文書に対応する話題クラスタまたはサブ話題クラスタに対して「○件マーク」のような表示が付与される。図１２の例では、例えば「激戦区」１２０に「１件マーク」１２１と付与されている。
【００５３】
そして、推薦文書（のアイコン）に関しては、これを強調表示して表示される（例：推薦文書「審判」１２２）。推薦されない文書に関しても、サブ話題と対応して強調表示は行わない形で表示は行われる。本実施形態では話題に属する文書は全て表示しているが、推薦文書のみ表示することとしても構わない。また、強調表示の方法としてはサイズや色による区別の他、その文書の概要や一部を表示するなど、任意の方法を用いることができる。
【００５４】
また、推薦方法として、単に文書を提示するだけでなく、例えば文書がテレビ番組の場合には録画予約機能と連動したり、文書が商品の場合は購入メニューを表示したりするなど、文書に付随する機器やサービスの操作と連携しても良い。
【００５５】
なお、各文書の表示順序に関しては、それぞれの話題やサブ話題に含まれる文書の個数や、ユーザがブックマークした個数、話題の新鮮さなどの属性により表示順序を変更しても良いものとする。また、表示される文書は予め文書入力部１１に入力された文書だけでなく、例えば結果表示される話題やサブ話題の見出しとなっている代表キーワードによるＷｅｂ検索結果の表示であっても良いものとする。この場合は、例えば表示されている話題あるいはサブ話題のキーワードを選択することで表示する方式が考えられる。
【００５６】
このように本実施形態によれば、指定期間に入力を受け付けた文書情報に含まれるキーワードを解析し、解析された各話題を分類し、再度クラスタリングすることで得られたサブ話題による階層化された話題構造を生成する。そして、サブ話題の類似度および日時の関係を用いて話題の推移構造が構成される。これら話題の推移構造に対し、ユーザが過去にブックマークした文書がどの話題・サブ話題に対応するかを判定し、その話題の続きに対応する文書を話題の推移構造と併せて提示することにより、ブックマークした文書と直接類似するかどうかによらず、過去に閲覧あるいはラベル付けを行った話題がその後どうなったのか、という進展や状態を含めてユーザに効果的に推薦することができる。
【００５７】
すなわち、本実施形態は、日々閲覧されるＷｅｂページのような文書や、日々配信されるテレビ番組の番組表情報などの文書を記録し、それぞれのキーワードがどのように出現したか、その頻度や新しさを算出し、話題を知るためのクラスタ構造を生成する。そして、現在出現している話題や代表的なキーワードは何か、またその話題はどのように推移しているのかを容易に理解し、ユーザの過去の閲覧・ブックマーク操作などのラベル付けの履歴に基づいて、そのような話題の「続き」に相当する文書を提示できる。
【００５８】
なお、本実施形態においては、推薦文書提示部２１は、推薦文書抽出部２０により抽出された文書を、各ユーザが使用するクライアント３からのネットワーク２を介した表示要求に応じて提示するようにしたが、これに限るものではない。例えば、Ｗｅｂページを予め各ユーザが使用するクライアント３上にダウンロードし、該ダウンロード結果に相当するローカルファイルを表示するようにしても良い。
【００５９】
クラスタリングの方式に関して、本実施形態ではまず類似する文書を集めることでクラスタを生成する「階層型クラスタリング」と呼ばれる方式を用いたが、逆に、文書全体を分割することでクラスタを生成する「非階層型クラスタリング」と呼ばれる方式を用いることも可能である。クラスタリングを行うタイミングとしては、毎回全てのクラスタを作成する方式に加え、新しく追加された文書のみ追加する方法を併用しても構わない。
【００６０】
また図１３に示すように、履歴入力部１２に入力された文書集合を対象にクラスタリング処理を行うようにし、クラスタ構造格納部１８に格納されるクラスタ構造と同様の嗜好構造を求め、嗜好構造格納部２２に格納する構造としてもよい。この場合、興味クラスタ抽出部１９は、クラスタ構造格納部１８に格納された話題及びサブ話題のクラスタ構造と、嗜好構造格納部２２に格納された嗜好構造の比較により、推薦文書を特定することができる。例えば、当該ユーザの嗜好・興味の変化（推移）を示しながら、対応する話題の「続き」に相当する文書を推薦することができるようになる。また、嗜好構造格納部２２に格納された嗜好構造に対して、文書解析部１４が文書解析を行うことも好ましい。この場合、文書解析部１４は、上述したＴＦ・ＩＤＦを計算することにより、ユーザの嗜好に基づいて重み付けを行う。
【００６１】
また、本実施形態においては、情報推薦装置であるサーバ１にネットワーク２を介してクライアント３が複数台接続されたサーバクライアントシステムを想定したが、これに限るものではなく、情報推薦装置全体をスタンドアロンで使用するものであっても良い。また、本実施形態ではユーザの履歴情報はユーザＩＤ毎に個別に管理するものとしたが、複数人のユーザで共有するものであっても良い。
【００６２】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００６３】
【図１】一実施形態にかかる情報推薦装置を含むシステム構築例を示す模式図
【図２】サーバのハードウェア構成図
【図３】サーバの機能構成を示すブロック図
【図４】（ａ）はインターネット上のＷｅｂページのニュース記事を例示的に示す図、（ｂ）はＥＰＧ上の情報を例示的に示す図
【図５】話題クラスタ抽出の処理手順を示すフローチャート
【図６】キーワード抽出の処理手順を示すフローチャート
【図７】話題キーワード一覧のデータ構造を示す模式図
【図８】話題キーワードの構造化の処理手順を示すフローチャート
【図９】クラスタ構造情報の一例を示す図
【図１０】クラスタリング結果の一例を示す図
【図１１】ユーザの閲覧・ブックマーク履歴とサブ話題クラスタとを対応付け、その推移にあたる話題を抽出する処理の模式図
【図１２】ユーザが閲覧・ブックマークした履歴と話題の対応（理由）とその話題の経過を示す模式図
【図１３】ユーザの履歴に基づく分類を用いる場合のブロック図
【符号の説明】
【００６４】
１１…文書入力部；１２…履歴入力部；１３…クラスタリング部；１４…文書解析部；１５…構造化判定部；１６…特徴属性抽出部；１７…話題推移生成部；１８…クラスタ構造格納部；１９…興味クラスタ抽出部；２０…推薦文書抽出部；２１…推薦文書提示部
【図１】
0005224868.tif 000002
【図２】
0005224868.tif 000003
【図３】
0005224868.tif 000004
【図４】
0005224868.tif 000005
【図５】
0005224868.tif 000006
【図６】
0005224868.tif 000007
【図７】
0005224868.tif 000008
【図８】
0005224868.tif 000009
【図９】
0005224868.tif 000010
【図１０】
0005224868.tif 000011
【図１１】
0005224868.tif 000012
【図１２】
0005224868.tif 000013
【図１３】
0005224868.tif 000014