(57)【要約】【課題】更新された文書の内容についての傾向を利用者が把握することを可能とする。【解決手段】差分データ抽出部２３は、文書ＤＢ１１に登録されている文書データが更新される際の更新前後の差分を差分データとして抽出する。差分データ登録部２４は、抽出された差分データを差分ＤＢ１３に登録する。差分データクラスタリング実行部２５は、差分ＤＢ１３に登録されている差分データの集合に対してクラスタリングを実行する。クラスタリング結果表示部２８は、差分データクラスタリング実行部２５による差分データの集合に対するクラスタリング結果を表示装置１６に表示する。【選択図】      図１
2005293266.tif 000002
【特許請求の範囲】
【請求項１】
文書データベースに登録されている文書データを利用者からの要求に応じて検索する文書検索装置において、
前記文書データベースに登録されている文書データが更新される際の更新前後の差分を差分データとして抽出する差分データ抽出手段と、
前記差分データ抽出手段によって抽出された差分データを差分データベースに登録する差分データ登録手段と、
前記差分データベースに登録されている差分データの集合に対してクラスタリングを実行することにより差分クラスタリング結果を取得する差分データクラスタリング実行手段と、
前記差分クラスタリング結果を表示装置に表示するクラスタリング結果表示手段と
を具備することを特徴とする文書検索装置。
【請求項２】
前記文書データベースに登録されている文書データの集合に対してクラスタリングを実行することによりむ文書クラスタリング結果を取得する文書データクラスタリング実行手段と、
前記文書クラスタリング結果と前記差分クラスタリング結果とを、前記文書クラスタリング結果に含まれるクラスタを単位に統合するクラスタリング結果統合手段とを更に具備し、
前記クラスタリング結果表示手段は、前記文書クラスタリング結果及び前記クラスタリング結果統合手段による統合結果を前記表示装置に表示する
ことを特徴とする請求項１記載の文書検索装置。
【請求項３】
前記文書クラスタリング結果が前記表示装置に表示されている状態で、当該文書クラスタリング結果から任意のクラスタが利用者の操作に応じて選択された場合に、前記文書クラスタリング結果と前記差分クラスタリング結果との統合を前記クラスタリング結果統合手段に指示する統合指示手段を更に具備し、
前記クラスタリング結果統合手段は、前記統合指示手段からの指示に応じ、前記選択されたクラスタについて、前記文書クラスタリング結果と前記差分クラスタリング結果とを統合する
ことを特徴とする請求項２記載の文書検索装置。
【請求項４】
前記クラスタリング結果統合手段は、前記差分クラスタリング結果に含まれているクラスタの各々を、当該クラスタ及び前記選択されたクラスタに共通に分類される文書データのみを含むクラスタに変更し、変更されたクラスタを前記文書クラスタリング結果の前記選択されたクラスタに統合することを特徴とする請求項３記載の文書検索装置。
【請求項５】
前記差分データ抽出手段は、前記文書データベース上での更新前の文書データと更新後の文書データとを単位文に分割し、当該単位文のうち、前記更新前の文書データ及び前記更新後の文書データの一方のみに含まれている単位文を前記差分データとして抽出することを特徴とする請求項１記載の文書検索装置。
【請求項６】
前記差分データ抽出手段は、前記文書データベースに登録されている文書データが更新される際の更新前の文書データと更新後の文書データとを単位文に分割し、当該単位文のうち、前記更新前の文書データ及び前記更新後の文書データの一方のみに含まれている単位文を前記差分データとして抽出することを特徴とする請求項５記載の文書検索装置。
【請求項７】
前記差分データクラスタリング実行手段によるクラスタリングの対象となる差分データの集合を特定するための任意の時刻範囲を利用者の操作に応じて指定する比較差分指定手段を更に具備し、
前記差分データ登録手段は、前記差分データ抽出手段によって抽出された差分データに更新時刻を示す時刻情報を付して、当該時刻情報が付された差分データを前記差分データベースに登録し、
前記差分データクラスタリング実行手段は、前記差分データベースに登録されている差分データのうち、前記比較差分指定手段によって指定された時刻範囲の更新時刻を示す時刻情報が付加された差分データの集合に対してクラスタリングを実行する
ことを特徴とする請求項１記載の文書作成装置。
【請求項８】
利用者の操作に応じて文書検索のための質問文が入力された場合、当該質問文と前記差分クラスタリング結果に含まれているクラスタとの関連性の度合いを解析する解析手段と、
前記解析手段による解析結果をもとに、前記差分クラスタリング結果の中から、前記質問文と関連したクラスタを選択する関連クラスタ選択手段と
を更に具備し、
前記クラスタリング結果表示手段は、前記関連クラスタ選択手段によって選択されたクラスタの一覧を前記表示装置に表示する
ことを特徴とする請求項１記載の文書検索装置。
【請求項９】
前記クラスタリング結果表示手段は、前記表示装置に表示されている前記クラスタの一覧からの利用者の操作に従う任意のクラスタの選択を受け付けて、当該任意のクラスタに属する文書の一覧を前記表示装置に表示する
ことを特徴とする請求項８記載の文書検索装置。
【請求項１０】
文書データベースに登録されている文書データを利用者からの要求に応じて検索する文書検索装置に適用されるクラスタリングプログラムであって、
前記情報検索装置に、
前記文書データベースに登録されている文書データが更新される際の更新前後の差分を差分データとして抽出するステップと、
抽出された差分データを差分データベースに登録するステップと、
前記差分データベースに登録されている差分データの集合に対してクラスタリングを実行することにより差分クラスタリング結果を取得するステップと、
前記差分クラスタリング結果を表示装置に表示するステップと
を実行させるためのクラスタリングプログラム。
【請求項１１】
前記文書検索装置に、
前記文書データベースに登録されている文書データの集合に対してクラスタリングを実行することにより文書クラスタリング結果を取得するステップと、
前記文書クラスタリング結果と前記差分クラスタリング結果とを、前記文書クラスタリング結果に含まれるクラスタを単位に統合するステップと、
前記文書クラスタリング結果と前記差分クラスタリング結果との統合結果を前記表示装置に表示するステップと
を更に実行させるための請求項１０記載のクラスタリングプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書データベースに登録されている文書データを利用者からの要求に応じて検索する文書検索装置に係り、特に文書データが更新される際の更新前後の差分に対するクラスタリングを行うための文書検索装置及びクラスタリングプログラムに関する。
【背景技術】
【０００２】
データの集合に対して一定の基準に従ってクラスタリングし、データ集合の傾向を分析することがある。このような分析方法をクラスタリング分析と呼ぶ。データの集合をクラスタリングするクラスタリング技術は、主として文書データベースに登録（蓄積）されている文書データを利用者からの要求に応じて検索する文書検索装置に適用される（例えば、特許文献１参照）。クラスタリング技術によれば、文書データベースに登録されている文書データの集合において、それぞれのデータに対して形態素解析を行い、単語の出現頻度や共起頻度などの一定の基準に従ってクラスタリングを行うことで、単語のクラスタ（グルーピング）を作成することができる。このクラスタリングの結果からデータ集合の傾向を把握することができ、更にデータをそれぞれのクラスタに振り分けることでデータの分類を行うことができる。
【０００３】
文書検索装置による文書検索の対象となる文書データベースのデータは更新される。そこで従来の文書検索装置では、更新された文書データ（文書ファイル）を利用者に提示するために、更新された文書データを更新日時順（例えば新しい順）に一覧表示する更新データ提示技術が一般に適用されている。この他に、頻繁に更新の行われた文書データを更新頻度の高い順に一覧表示（つまりにランキング表示）する更新データ提示技術が適用されることもある。
【特許文献１】特開２００３−３４５８１０（段落０００９、００１０、００１８）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記した従来のクラスタリング技術において、利用者は、クラスタリング結果から、文書データの集合全体の傾向を把握することができる。この文書データの集合は更新される。しかし、文書データの集合が大きく変化しない限り、更新前のクラスタリング結果と更新後のクラスタリング結果との間に大きな差は生じない。このため従来のクラスタリング技術において、更新された文書データの傾向を把握することは難しい。例えば定期的にクラスタリングを行って、クラスタリング結果を先行するクラスタリング結果と比較しても、更新された文書データの傾向を把握することは難しい。
【０００５】
そこで文書検索装置において、上記のクラスタリング技術と上記の更新データ提示技術とを併用することが考えられる。しかし、従来の更新データ提示技術のように、更新日時順、或いは更新頻度順の並びの更新データの一覧を単に表示しただけでは、実際に文書データのどの部分が更新されたかという情報を得ることはできない。また、更新データの量が多い場合は、更新された内容の傾向を把握することが難しい。
【０００６】
本発明は上記事情を考慮してなされたものでその目的は、更新された文書データの内容についての傾向を利用者が把握することを可能とする文書検索装置及びクラスタリングプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明の１つの観点によれば、文書データベースに登録されている文書データを利用者からの要求に応じて検索する文書検索装置が提供される。この文書検索装置は、上記文書データベースに登録されている文書データが更新される際の更新前後の差分を差分データとして抽出する差分データ抽出手段と、この差分データ抽出手段によって抽出された差分データを差分データベースに登録する差分データ登録手段と、上記差分データベースに登録されている差分データの集合に対してクラスタリングを実行することにより差分クラスタリング結果を取得する差分データクラスタリング実行手段と、上記差分クラスタリング結果を表示装置に表示するクラスタリング結果表示手段とを備える。
【０００８】
このような構成においては、文書データベースに登録されている文書データが更新される際の更新前後の差分が差分データとして抽出され、その抽出された差分データの集合に対してクラスタリング（以下、差分クラスタリングと称する）が行われることにより、更新された文書データの内容についてのクラスタリング結果である差分クラスタリング結果が取得される。したがって、この差分クラスタリング結果を表示装置を介して利用者に提示することにより、従来技術のように文書データベース全体、つまり文書データベースに登録されている更新された文書データを含む文書データの集合に対してクラスタリングを行うのに比べて、利用者は文書データベース中の更新された情報の傾向を把握することができる。
【０００９】
特に、文書データベース全体に対するクラスタリングの結果（文書クラスタリング結果）と上記差分クラスタリング結果とを、上記文書クラスタリング結果に含まれるクラスタを単位に統合するならば、文書クラスタリング結果には文書データ更新の差異が反映されにくくても、この統合結果を利用者に提示することにより、利用者は、この統合結果から文書データベース全体のクラスタ毎の更新の傾向を把握することができる。
【発明の効果】
【００１０】
本発明によれば、文書データベース上の文書データが更新される際の更新前後の差分を差分データとして差分データベースに蓄積し、その差分データベース上の差分データについてクラスタリングを実行して、そのクラスタリング結果を利用者に提示することにより、更新された内容（差分）についての傾向を利用者が把握することを可能とし、更新された内容について分類された情報を取得することが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の一実施形態につき図面を参照して説明する。  
図１は本発明の一実施形態に係る文書検索装置の構成を示すブロック図である。図１の文書検索装置は、文書データベース（以下、文書ＤＢと称する）１１と、文書クラスタリング結果データベース（以下、文書クラスタリング結果ＤＢと称する）１２と、差分データベース（以下、差分ＤＢと称する）１３と、差分クラスタリング結果データベース（以下、差分クラスタリング結果ＤＢと称する）１４と、キーボード及びマウスを含む入力装置１５と、表示装置１６とを備えている。図１の文書検索装置はまた、文書データ登録部２１と、文書データクラスタリング実行部２２と、差分データ抽出部２３と、差分データ登録部２４と、差分データクラスタリング実行部２５と、比較差分指定部２６と、クラスタリング結果統合部２７と、クラスタリング結果表示部２８とを備えている。
【００１２】
文書ＤＢ１１は、クラスタリングの対象となる文書データの集合を格納するのに用いられる。文書クラスタリング結果ＤＢ１２は、文書ＤＢ１１に格納されている文書データの集合に対するクラスタリングの結果（文書クラスタリング結果）を格納するのに用いられる。差分ＤＢ１３は、後述する差分データの集合を格納するのに用いられる。差分クラスタリング結果ＤＢ１４は、差分ＤＢ１３に格納されている差分データの集合に対するクラスタリングの結果（差分クラスタリング結果）を格納するのに用いられる。
【００１３】
文書データ登録部２１は、クラスタリングの対象となる文書データを文書ＤＢ１１に登録する。この文書データの登録は、文書ＤＢ１１に既に登録されている文書データを旧文書データとして、当該旧文書データを新文書データに更新する文書データ更新を含む。文書データ登録部２１は、文書ＤＢ１１への登録対象となる文書データに対して形態素解析（単語に分割する）を行い、その結果を文書ＤＢ１１に登録する。文書データクラスタリング実行部２２は、差分ＤＢ１３に登録されている文書データの集合に対して、クラスタリングを実行する。
【００１４】
差分データ抽出部２３は、文書データ登録部２１によるデータ登録時に、登録される新文書データと文書ＤＢ１１内の対応する旧文書データとを比較し、差分データを抽出する。差分データ登録部２４は、差分データ抽出部２３によって抽出された差分データの集合に対して、形態素解析（単語に分割する）を行い、その結果を差分ＤＢ１３に登録する。
【００１５】
差分データクラスタリング実行部２５は、文書ＤＢ１１に登録されている差分データの集合に対して、クラスタリングを実行する。比較差分指定部２６は、利用者とのインタフェースをなし、差分データクラスタリング実行部２５によるクラスタリングの対象となる差分データを特定するための２つの時刻（で示される時刻範囲）を利用者の入力操作に応じて指定する。
【００１６】
クラスタリング結果統合部２７は、文書クラスタリング結果ＤＢ１２及び差分クラスタリング結果ＤＢ１４にそれぞれ格納されているクラスタリング結果を統合する。クラスタリング結果表示部２８は、クラスタリング結果統合部２７により統合されたクラスタリング結果、文書クラスタリング結果ＤＢ１２に格納されているクラスタリング結果、或いは差分クラスタリング結果ＤＢ１４に格納されているクラスタリング結果を表示する。
【００１７】
本実施形態において、図１の文書検索装置はパーソナルコンピュータによって実現され、文書データ登録部２１、文書データクラスタリング実行部２２、差分データ抽出部２３、差分データ登録部２４、差分データクラスタリング実行部２５、比較差分指定部２６、クラスタリング結果統合部２７及びクラスタリング結果表示部２８は、対応する処理を記述したプログラム（クラスタリングプログラム）を、当該コンピュータが読み取って実行することにより実現される。このプログラムは、コンピュータで読み取り可能な記憶媒体（フロッピー（登録商標）ディスクに代表される磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤに代表される光ディスク、フラッシュメモリに代表される半導体メモリ等）に予め格納して頒布可能である。このプログラムが、ネットワークを介してダウンロード（頒布）されても構わない。
【００１８】
また本実施形態では、文書ＤＢ１１、文書クラスタリング結果ＤＢ１２、差分ＤＢ１３及び差分クラスタリング結果ＤＢ１４の各ＤＢが、上記コンピュータの外部記憶装置、例えばハードディスク装置（ＨＤＤ）上に置かれる構成を適用している。しかし、これらのＤＢ１１〜１４が、文書検索装置から独立に設けられる構成、例えば文書検索装置（を実現するコンピュータ）とネットワーク接続されたデータベースサーバコンピュータ上に置かれる構成であっても構わない。
【００１９】
次に、図１の文書検索装置における差分クラスタリングを含む動作について、図２のフローチャートを参照して説明する。  
文書データ登録部２１は、文書データを文書ＤＢ１１に登録するための処理を行う（ステップＳ１）。この登録処理では、文書データ登録部２１は文書データの形態素解析を行い、単語単位に分割する。文書データ登録部２１は、この単語単位に分割された文書データの集合を文書ＤＢ１１に登録する。文書データ登録部２１によって登録される文書データが、磁気ディスク、光ディスク等の可搬型の記憶媒体から読み込まれるものであっても、或いはネットワークを介して転送されるものであっても構わない。
【００２０】
さて、ステップＳ１で文書ＤＢ１１に登録される文書データが、当該文書ＤＢ１１に既に登録されている文書データ（既登録文書データ）に対する更新された文書データ（更新文書データ）の場合、当該文書ＤＢ１１上では、既登録文書データが更新文書データに更新される。差分データ抽出部２３は、文書データ登録部２１による文書ＤＢ１１への文書データ（更新文書データ）登録処理時には、更新の対象となる既登録文書データ（つまり旧文書データ）と更新文書データ（つまり新文書データ）とを比較し、差分データを抽出する（ステップＳ２）。
【００２１】
差分データは、
１）新規に追加されたデータ
２）更新されたデータ
３）削除されたデータ
の３種に分類される。一般に更新文書データ（つまり新文書データ）上では、データの「追加」「更新（変更）」「削除」が発生する。ここで、文書データは、タイトル、及び本文という構造を持っているものとする。
【００２２】
差分データ抽出部２３は、上記ステップＳ２における差分データの抽出を、文書データ（文書）を構成する単位文毎に行う。即ち差分データ抽出部２３は、新文書データと旧文書データとを、単位文毎に比較する。この単位文毎の比較で差異を検出したならば、差分データ抽出部２３は、新文書データ内の該当する単位文（新文書データ及び旧文書データの一方のみに含まれている単位文）全体を差分データとして抽出する。
【００２３】
この単位文、つまり差分データの抽出の単位となる単位文としては、例えば
１）改行を区切りとした単位文
２）句点を区切りとした単位文
３）文書の構造情報（章、節など）から推定される区切りをもとにした単位文
等が利用可能である。また、単位文を段落としても構わない。
【００２４】
単位文の決定には、正規表現によるパターンマッチングを用いると良い。この正規表現の例を以下に示す。  
１）改行、句点、読点で区切る場合
正規表現は
［￥ｎ。、］
のように表される。ここで、［  ］は括弧内の任意の１文字を表し、￥ｎは改行文字を表す。
【００２５】
２）章、節毎に区切る場合
正規表現は、
＾第［０−９］＋章￥ｎ
＾第［０−９］＋章￥ｓ［＾。］＋￥ｎ
＾［０−９］￥．［０−９］￥ｓ［＾。］＋￥ｎ
のように表される。ここで、“＋”は直前の文字の１回以上の繰り返しを表し、“＾”は行頭を表す（［］内の“＾”を除く）。［＾  ］は［  ］内にない任意の１文字を表し、“￥ｓ”は空白文字を表し、“￥．”はピリオドを表す。
【００２６】
今、差分データ抽出部２３が、次の正規表現
＾第［０−９］＋章￥ｓ［＾。］＋￥ｎ
＾［０−９］￥．［０−９］￥ｓ［＾。］＋￥ｎ
［□◇・］
に基づいて文書データを単位文に区切るように設定されているものとする。
【００２７】
この場合、例えば図３（ａ）に示す文書３００は、図３（ｂ）に示す単位文３０１，３０２，３０３，３０４，３０５…に区切られる。
【００２８】
ここで、上記ステップＳ２における差分データ抽出処理の手順について、図４及び図５のフローチャートを参照して説明する。  
まず差分データ抽出部２３は、新文書と旧文書それぞれを単位文に分割する（ステップＳ１０）。次に差分データ抽出部２３は、新文書中の単位文を指定するポインタｉと、旧文書中の単位文を指定するポインタｊとを、それぞれ初期値１に設定する（ステップＳ１１１）。
【００２９】
次に差分データ抽出部２３は、新文書のｉ番目の単位文と旧文書のｊ番目の単位文とを比較する（ステップＳ１２）。もし、両単位文が同一内容である場合（ステップＳ１３）、差分データ抽出部２３はポインタｉ，ｊをいずれも１インクリメントする（ステップＳ１４）。そして、新文書及び旧文書中に、インクリメント後のポインタｉ及びｊで指定される次の単位文がそれぞれあるならば（ステップＳ１５，Ｓ１６）、差分データ抽出部２３は当該次の単位文を比較する（ステップＳ１２）。
【００３０】
これに対し、新文書のｉ番目の単位文と旧文書のｊ番目の単位文の内容が異なる場合には、差分データ抽出部２３は、新文書のｉ番目の単位文と同一内容の文を、旧文書のｊ番目の単位文に後続する単位文列、例えばｊ＋１〜ｊ＋ｋmax（ｋmaxは予め定められた整数であり、例えば２）番目の単位文列の中から探す処理、或いは旧文書のｊ番目の単位文と同一内容の文を、新文書のｉ番目の単位文に後続する単位文列、例えばｉ＋１〜ｉ＋ｋmax番目の単位文列の中から探す処理を実行する。即ち差分データ抽出部２３は、新文書のｉ番目の単位文と旧文書のｊ＋ｋ番目の単位文とを比較する処理（ステップＳ１８）と、旧文書のｊ番目の単位文と新文書のｉ＋ｋ番目の単位文とを比較する処理（ステップＳ２０）とを、いずれかの処理の結果、同一内容の文が検出されるまで（ステップＳ１９またはＳ２１）、ｋの値を初期値１から１ずつインクリメントしながら（ステップＳ２２）、ｋ＝ｋmaxを上限に繰り返す（ステップＳ２３）。
【００３１】
もし、新文書のｉ番目の単位文と旧文書のｊ＋ｋ番目の単位文とが同一内容である場合（ステップＳ１９）、差分データ抽出部２３は、旧文書のｊ〜ｊ＋ｋ−１番目の単位文を、削除された差分データとして抽出し、当該差分データを差分データ登録部２４に渡す（ステップＳ２４）。このステップＳ２４で差分データ登録部２４に渡される差分データには、削除データであることを示す削除タグが付される。差分データ抽出部２３はステップＳ２４を実行すると、ｉを１インクリメントすると共に、ｊをｋ＋１インクリメントする（ステップＳ２５）。
【００３２】
次に、旧文書のｊ番目の単位文と新文書のｉ＋ｋ番目の単位文とが同一内容である場合（ステップＳ２１）、差分データ抽出部２３は、新文書のｉ〜ｉ＋ｋ−１番目の単位文を、追加された差分データとして抽出し、当該差分データを差分データ登録部２４に渡す（ステップＳ２６）。このステップＳ２６で差分データ登録部２４に渡される差分データには、当該データが追加データであることを示す追加タグが付される。差分データ抽出部２３はステップＳ２６を実行すると、ｉをｋ＋１インクリメントすると共に、ｊを１インクリメントする（ステップＳ２７）。
【００３３】
一方、旧文書のｊ＋１〜ｊ＋ｋmax番目の単位文列の中から、新文書のｉ番目の単位文と同一内容の文が見つからず、且つ新文書のｉ＋１〜ｉ＋ｋmax番目の単位文列の中から、旧文書のｊ番目の単位文と同一内容の文が見つからなかった場合、差分データ抽出部２３はステップＳ２８に進む。このステップＳ２８において、差分データ抽出部２３は、新文書のｉ番目の単位文と旧文書のｊ番目の単位文とを、それぞれ更新後の差分データと更新前の差分データとして抽出し、当該差分データを差分ＤＢ１３に登録する。このステップＳ２８で差分データ登録部２４に渡される１対の差分データにはいずれも、更新前データまたは更新後データのいずれかであることを示す更新タグが付される。差分データ抽出部２３はステップＳ２８を実行すると、ｉ，ｊをいずれも１インクリメントする（ステップＳ１４）。
【００３４】
差分データ抽出部２３は、ステップＳ１４，Ｓ２５またはＳ２７を実行すると、当該ステップＳ１４，Ｓ２５またはＳ２７で更新されたｉ，ｊをもとに、ｉ及びｊで指定される次の単位文がそれぞれ新文書及び旧文書中にあるかを調べる（ステップＳ１５，Ｓ１６，Ｓ３０）。もし、ｉ及びｊで指定される次の単位文がそれぞれ新文書及び旧文書中にあるならば（ステップＳ１５，Ｓ１６）、差分データ抽出部２３は当該次の単位文を比較する（ステップＳ１２）。
【００３５】
これに対し、新文書中にｉで指定される次の単位文（ｉ番目の単位文）はあるものの、旧文書中にｊで指定される次の単位文がない場合、つまり旧文書の全単位文について処理し終えた場合（ステップＳ１５，Ｓ１６）、差分データ抽出部２３は、新文書中のｉ番目以降の単位文を、追加された差分データとして抽出し、当該差分データを、追加タグを付して差分データ登録部２４に渡す（ステップＳ２９）。これにより、１つの文書データについて、更新前後の差分データを抽出する差分データ抽出処理が終了する。また、旧文書中にｊで指定される次の単位文（ｊ番目の単位文）はあるものの、新文書中にｉで指定される次の単位文がない場合、つまり新文書の全単位文について処理し終えた場合（ステップＳ１５，Ｓ３０）、差分データ抽出部２３は、旧文書中のｊ番目以降の単位文を、削除された差分データとして抽出し、当該差分データを、削除タグを付して差分データ登録部２４に渡す（ステップＳ３１）。これにより、上記差分データ抽出処理が終了する。また、ｉ及びｊで指定される次の単位文がいずれもないならば、そのまま上記差分データ抽出処理が終了する。
【００３６】
上述の差分データ抽出の例を、図６に示す。図６において、旧文書６１は、単位文Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，Ｇ，Ｈに区切られている。一方、新文書は、単位文Ａ，Ｂ’，Ｘ，Ｃ，Ｄ，Ｆ，Ｇ，Ｈに区切られている。ｋmax＝２とすると、図６の例では、新文書６２のｉ＝２番目の単位文Ｂ’または旧文書６１のｊ＝２番目の単位文Ｂと同一内容の単位文は、ステップＳ１８〜Ｓ２３がｋmax＝２回繰り返されても、それぞれ旧文書６１の３〜４番目の単位文列及び新文書６２の３〜４番目の単位文列から見つけることはできない。この場合、単位文Ｂ’及びＢは、それぞれ更新後の差分データ及び更新前の差分データとして抽出される（ステップＳ２８）。
【００３７】
次の単位文、即ち新文書６２のｉ＝３番目の単位文Ｘ及び旧文書６１のｊ＝３番目の単位文Ｃに関しては、ｊ＝３番目の単位文Ｃが新文書６２のｉ＝４番目の単位文Ｃと同一内容であることが、１回目のステップＳ２０，Ｓ２１の処理で検出される。この場合、新文書の３番目の単位文Ｘが、追加された差分データとして抽出される（ステップＳ２６）。
【００３８】
すると、次の単位文は、新文書６２のｉ＝５番目の単位文Ｄ及び旧文書６１のｊ＝４番目の単位文Ｄとなる（ステップＳ２７）。この場合、ｉ＝５番目の単位文Ｄ及びｊ＝４番目の単位文Ｄは同一内容であることが検出される（ステップＳ１２，Ｓ１３）。
【００３９】
ここでは、次の単位文は、新文書６２のｉ＝６番目の単位文Ｆ及び旧文書６１のｊ＝５番目の単位文Ｅとなる（ステップＳ１４）。この場合、ｉ＝６番目の単位文Ｆ及びｊ＝５番目の単位文Ｅに関しては、ｉ＝６番目の単位文Ｆが旧文書６１のｉ＝６番目の単位文Ｆと同一内容であることが、１回目のステップＳ１８，Ｓ１９の処理で検出される。この場合、旧文書の５番目の単位文Ｅが、削除された差分データとして抽出される（ステップＳ２４）。
【００４０】
すると、次の単位文は、新文書６２のｉ＝６番目の単位文Ｆ及び旧文書６１のｊ＝６番目の単位文Ｆとなる（ステップＳ２５）。ｉ＝６番目の単位文Ｆ及び旧文書６１のｊ＝６番目の単位文Ｆは同一内容であり、更に新文書６２及び旧文書６１の後続の単位文についても同一内容であることが、いずれもステップＳ１２，Ｓ１３の処理で、順次検出される。
【００４１】
さて、差分データ抽出部２３によって抽出されて差分データ登録部２４に渡される各差分データには、上記したように当該差分データが、「追加」「更新」「削除」のいずれに関するデータであるかを示すタグが付されている。また、差分データ抽出部２３から差分データ登録部２４には、差分データが抽出される文書データ単位で、当該文書データを特定するためのキー情報（以下、文書ＩＤと称する）が渡される。文書ＩＤには、例えば文書データのファイル名またはロケーション情報が用いられる。このロケーション情報には、例えばＵＲＬ（Uniform Resource Locator）が用いられる。
【００４２】
ここで、図２のフローチャートに従う動作の説明に戻る。差分データ登録部２４は、差分データ抽出部２３から渡された差分データを差分ＤＢ１３に登録するための処理を行う（ステップＳ３）。この登録処理では、差分データ登録部２４は差分データの形態素解析を行い、単語単位に分割する。文書データ登録部２１は、この単語単位に分割された差分データの集合を、対応する文書データの文書ＩＤ及び時刻情報と共に差分ＤＢ１３に登録する。この時刻情報は、当該時刻情報が付されている差分データに対応する文書データの更新時刻を示す。つまり時刻情報は、当該時刻情報が付されている差分データが、いつの時点における差分データであるかを示す。
【００４３】
比較差分指定部２６は、表示装置１６の表示画面を用いた入力要求により、利用者に対し、差分データクラスタリング実行部２５によるクラスタリング（差分クラスタリング）の対象となる差分データの集合を指定させる。ここでは、画面表示された例えば一定時間間隔の時刻列Ｔ1，Ｔ2，Ｔ3，Ｔ4，…の中から、任意の２つの連続する時刻Ｔi，Ｔi+1を、利用者により例えば入力装置１５のマウスを用いて選択させることで、その時刻Ｔi，Ｔi+1の範囲内の差分データの集合を差分クラスタリングの対象として指定させることができる。また、比較差分指定部２６は、差分クラスタリングの対象とする差分データの種類（更新種類）を指定することもできる。ここでは、「追加」「更新」「削除」の中から、１つ以上の任意の種類が指定可能である。
【００４４】
比較差分指定部２６は、利用者の操作によって指定された時刻Ｔi，Ｔi+1（更には差分データの種類）をクラスタリング結果表示部２８に対して通知する。差分データクラスタリング実行部２５は、差分ＤＢ１３に登録されている差分データの集合の中から、比較差分指定部２６によって通知（指定）された時刻Ｔi，Ｔi+1の範囲内の差分データの集合を選択し、その選択された差分データの集合に対して、クラスタリングを実行する（ステップＳ４）。ここで、時刻Ｔi，Ｔi+1の範囲内の差分データの集合は、文書データ単位で、差分データと共に差分ＤＢ１３に登録された時刻情報をもとに選択される。また、差分データの種類が指定されている場合には、時刻Ｔi，Ｔi+1の範囲内の差分データの集合の中から、指定された種類の差分データの集合だけが選択される。差分データクラスタリング実行部２５によるクラスタリングの結果（差分クラスタリング結果）は差分クラスタリング結果ＤＢ１４に格納される。
【００４５】
クラスタリング結果統合部２７は、文書クラスタリング結果ＤＢ１２に格納されている、文書ＤＢ１１内の文書データの集合に対するクラスタリング結果（文書クラスタリング結果）と、差分クラスタリング結果ＤＢ１４に格納されている、差分ＤＢ１３から選択された時刻Ｔi，Ｔi+1の範囲内の（指定された種類の）差分データの集合に対するクラスタリング結果（差分クラスタリング結果）とを統合（マージ）する（ステップＳ５）。ここでは、クラスタリング結果統合部２７は、文書クラスタリング結果の中から利用者によって指定されたクラスタについて、当該文書クラスタリング結果と差分クラスタリング結果とを統合する。
【００４６】
クラスタリング結果表示部２８は、差分クラスタリング結果ＤＢ１４に格納されている差分クラスタリング結果を、表示装置の表示画面に表示する（ステップＳ６）。この他に、クラスタリング結果表示部２８は、文書クラスタリング結果ＤＢ１２に格納されている文書クラスタリング結果、またはクラスタリング結果統合部２７によって統合された結果を表示することもできる。クラスタリング結果表示部２８は、クラスタリング結果表示指定部２８０を含んでいる。クラスタリング結果表示指定部２８０は、差分クラスタリング結果、文書クラスタリング結果、または文書クラスタリング結果と差分クラスタリング結果との統合結果のいずれを表示するかを、表示画面を介して利用者に指定させる。
【００４７】
図７に、文書クラスタリング結果の表示画面例を示し、図８に差分クラスタリング結果の表示画面例を示す。図７及び図８には、対応するクラスタリングで作成された各クラスタを示す見出し（項目）と、当該クラスタに属する（分類される）文書の数とが示されている。図８の差分クラスタリング結果には、文書データの集合全体をクラスタリングした図７の文書クラスタリング結果からは把握できない、当該文書データの集合中の更新データの傾向が現れている。つまり、本実施形態においては、文書ＤＢ１１上で更新された文書データの差分データについてクラスタリングを行って、更新された内容（差分）についてクラスタを作成し、そのクラスタを利用者に提示することで、利用者は、文書ＤＢ１１中の更新されたデータの傾向を把握することができる。また利用者は、更新された内容について分類された情報を取得できる。しかも、差分クラスタリングの対象となる差分データは、パターンマッチングにより単位文を決定して、その決定された単位文毎に抽出されるため、有効性の高い差分データを抽出でき、更新の傾向をより効果的に利用者に提示することができる。
【００４８】
今、図７の文書クラスタリング結果が表示されている状態で、利用者が入力装置１５のマウスを操作して、見出しが「ニュース」のクラスタを選択したものとする。するとクラスタリング結果表示指定部２８０は、クラスタリング結果統合部２７に対し、見出しが「ニュース」のクラスタについて、文書クラスタリング結果と差分クラスタリング結果とを統合することを指示する。クラスタリング結果統合部２７は、クラスタリング結果表示指定部２８０からの統合指示に従い、見出しが「ニュース」のクラスタについて、文書クラスタリング結果と差分クラスタリング結果とを統合する（組み合わせる）。
【００４９】
このクラスタリング結果統合部２７による統合処理の手順について、図９のフローチャートを参照して説明する。  
クラスタリング結果統合部２７は、文書クラスタリング結果中の、利用者によって選択された「ニュース」のクラスタ（以下、文書クラスタと称する）について、その文書クラスタに属する文書の文書ＩＤの集合を検出する（ステップＳ４１）。次に、クラスタリング結果統合部２７は、差分クラスタリング結果中の各クラスタの中から、１つのクラスタ（以下、差分クラスタと称する）を選択する（ステップＳ４２）。ここでは、上位階層のクラスタから順に選択するものとする。クラスタリング結果統合部２７は、ステップＳ４２で選択された差分クラスタに属する文書の文書ＩＤの集合を検出する（ステップＳ４３）。
【００５０】
次にクラスタリング結果統合部２７は、ステップＳ４１で検出された文書ＩＤの集合及びステップＳ４３で検出された文書ＩＤの集合のいずれにも含まれる文書ＩＤの集合、つまり利用者によって選択された文書クラスタ及びステップＳ４２で選択された差分クラスタのいずれにも属する（共通に分類される）文書の文書ＩＤの集合を検出する（ステップＳ４４）。
【００５１】
クラスタリング結果統合部２７は、ステップＳ４２で選択された差分クラスタを、ステップＳ４４で検出された文書ＩＤの集合で示される文書の集合のみが属する（統合後の）差分クラスタに変更する（ステップＳ４５）。ここでは、変更後の差分クラスタに属する文書の数（つまり選択された文書クラスタ及び差分クラスタのいずれにも属する文書の数）がカウントされる。次にクラスタリング結果統合部２７は、変更後の差分クラスタを、選択された文書クラスタに統合する（ステップＳ４６）。
【００５２】
クラスタリング結果統合部２７は、以上のステップＳ４２〜Ｓ４６を、差分クラスタリング結果中の全クラスタについて実行する（ステップＳ４７）。これにより、クラスタリング結果統合部２７は、利用者により選択された、見出しが「ニュース」のクラスタについて、図７の文書クラスタリング結果と図８の差分クラスタリング結果とを統合した結果を取得することができる。
【００５３】
クラスタリング結果表示部２８は、クラスタリング結果統合部２７によって取得された、見出しが「ニュース」のクラスタについて、文書クラスタリング結果と差分クラスタリング結果とを統合した統合結果を、表示装置１６に表示する。
【００５４】
この統合結果の表示画面例を図１０に示す。利用者は、図１０の統合結果が表示されることにより、自身が文書クラスタリング結果から選択したクラスタについて、どのような更新傾向があったかを表示画面上で把握することができる。つまり利用者は、文書ＤＢ１１全体に対する文書クラスタリング結果で示される各クラスタを適宜選択することで、そのクラスタ毎の更新の傾向を把握することができる。ここで、文書クラスタリング結果と統合される差分クラスタリング結果に、「削除」「更新」または「追加」の中から利用者により選択された種類の差分データの集合に対する差分クラスタリング結果を用いることも可能である。
【００５５】
［変形例］
次に、上述の差分クラスタリングを自然言語検索に適用した、上記実施形態の変形例について、図１１の表示画面例及び図１２のフローチャートを参照して説明する。  
クラスタリング結果表示部２８は、図１１（ａ）に示す検索入力画面１１０を表示装置１６に表示する。検索入力画面１１０には、検索のための質問文を入力するのに用いられる入力ボックス１１１と、検索実行を指示するための検索ボタン１１２とが配置されている。検索入力画面１１０には更に、更新傾向の表示方法を選択して指示するための、例えば４つの更新傾向表示指示ボタン１１３-1，１１３-2，１１３-3，１１３-4が配置されている。ボタン１１３-1，１１３-2，１１３-3，１１３-4は、更新傾向の表示なし、「追加」に関する更新傾向の表示、「更新」に関する更新傾向の表示、「削除」に関する更新傾向の表示を、それぞれ指示するのに用いられる。
【００５６】
この変形例では、差分データクラスタリング実行部２５は、上記ステップＳ４において、「追加」「更新」「削除」の各差分データ種類（更新種類）毎に、対応する差分データの集合に対するクラスタリングを行う。この差分データクラスタリング実行部２５による差分データ種類毎のクラスタリング結果は、差分クラスタリング結果ＤＢ１４に格納される。また、差分データクラスタリング実行部２５は、差分クラスタリングで生成された各クラスタについて、当該クラスタに属する文書データに基づき、当該クラスタの特徴を表すための従来から良く知られているプロファイル情報を生成する。
【００５７】
以下、プロファイル情報について簡単に説明する。クラスタのプロファイル情報は、例えば特徴ベクトルで表現される。このクラスタの特徴ベクトルは、文書の特徴ベクトルに基づいて作成される。ここでは、クラスタの特徴ベクトルは、当該クラスタに属する各文書の特徴ベクトルを加算することにより作成される。文書の特徴ベクトルは、ＴＦ（Term Frequency）／ＩＤＦ（Inverse Document Frequency）の単語の重みを用いて作成される。文書の特徴ベクトルは、当該文書に出現する単語を次元（要素）とし、当該単語の重みを次元量として表される。単語の重み（ＴＦ／ＩＤＦの単語の重み）は、当該単語が出現する文書ＤＢ（ここでは文書ＤＢ１１）内の文書の数に対する当該単語の出現回数の割合、つまり当該単語の出現頻度によって表される。
【００５８】
さて、図１１（ａ）に示す検索入力画面１１０が表示装置１６に表示されている状態で、入力装置１５を用いた利用者の操作により、入力ボックス１１１に質問文が入力されたものとする。また、図１１（ａ）の例のように、検索入力画面１１０上の更新傾向表示指示ボタン１１３-1，１１３-2，１１３-3，１１３-4のうちの「追加」に関する更新傾向の表示を指示するボタン１１３-2が選択されたものとする。
【００５９】
この状態で、検索入力画面１１０上の検索ボタン１１２が選択されると、クラスタリング結果表示部２８はまず、解析手段として機能する。即ち、クラスタリング結果表示部２８は、入力ボックス１１１に入力された質問文を形態素解析し、質問文の特徴ベクトルを作成する（ステップＳ５１）。この質問文の特徴ベクトルは、上記した文書の特徴ベクトルを作成する場合と同様に、ＴＦ／ＩＤＦの単語重みをもとに作成される。次にクラスタリング結果表示部２８（解析手段）は、質問文の特徴ベクトルと、差分データクラスタリング実行部２５による差分クラスタリング結果のうち、選択された更新傾向表示指示ボタン１１３-2に対応する更新種類の差分クラスタリング結果に含まれている各クラスタ（差分クラスタ）の特徴ベクトルとの間の類似度（関連性の度合い）を算出（解析）する（ステップＳ５２）。この類似度は、質問文の特徴ベクトルと上記各クラスタの特徴ベクトルとの内積をとることにより算出される。
【００６０】
次にクラスタリング結果表示部２８は関連クラスタ選択手段として機能して、質問文の特徴ベクトルと差分クラスタリング結果の各クラスタの特徴ベクトルとの間の類似度を、予め定められた閾値と比較する（ステップＳ５３）。クラスタリング結果表示部２８（関連クラスタ選択手段）は、ステップＳ５３での比較結果をもとに、質問文の特徴ベクトルとの間の類似度が閾値より高い全てのクラスタ（差分クラスタ）を、当該質問文と関連したクラスタであるとして選択する（ステップＳ５４）。ここで、解析手段及び関連クラスタ選択手段を、クラスタリング結果表示部２８から独立して設けることも可能である。
【００６１】
クラスタリング結果表示部２８は、質問文と関連したクラスタがステップＳ５４で選択されると、図１１（ｂ）に示す検索結果画面１２０上に、この選択されたクラスタの一覧１２１を表示する（ステップＳ５５）。これにより利用者は、自身が入力した質問文に関連する更新データの傾向を把握することができる。
【００６２】
本実施形態では、検索ボタン１１２が選択されると、入力された質問文から切り出されるキーワードを用いて、文書ＤＢ１１に登録されている文書データ集合を対象とする文書検索、つまり通常の文書検索（自然言語検索）が行われる。そこで、クラスタリング結果表示部２８は図１１（ｂ）に示すように、検索結果画面１２０上に、この通常の文書検索の結果１２２も表示する（ステップＳ５６）。
【００６３】
利用者は、クラスタの一覧１２１が表示されている場合、入力装置１５を操作することにより、その一覧１２１から所望のクラスタを選択することができる。クラスタリング結果表示部２８は、クラスタの一覧１２１からクラスタが選択されると（ステップＳ５７）、その選択されたクラスタに属する文書の一覧を表示する（ステップＳ５８）。
【００６４】
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
【図面の簡単な説明】
【００６５】
【図１】本発明の一実施形態に係る文書検索装置の構成を示すブロック図。
【図２】同実施形態における差分クラスタリングを含む動作の手順を示すフローチャート。
【図３】正規表現によるパターンマッチングを用いた単位文の決定を説明するための図。
【図４】図２のステップＳ２における差分データ抽出処理を説明するためのフローチャートの一部を示す図。
【図５】図２のステップＳ２における差分データ抽出処理を説明するためのフローチャートの残りを示す図。
【図６】差分データ抽出例を示す図。
【図７】文書クラスタリング結果の表示画面例を示す図。
【図８】差分クラスタリング結果の表示画面例を示す図。
【図９】クラスタリング結果統合部２７によるクラスタリング結果統合処理の手順を示すフローチャート。
【図１０】文書クラスタリング結果と差分クラスタリング結果とを統合した統合結果の表示画面例を示す図。
【図１１】検索入力画面及び検索結果画面の例を示す図。
【図１２】差分クラスタリングを自然言語検索に適用した場合の動作を説明するためのフローチャート。
【符号の説明】
【００６６】
１１…文書ＤＢ、１２…文書クラスタリング結果ＤＢ、１３…差分ＤＢ、１４…差分クラスタリング結果ＤＢ、１５…入力装置、１６…表示装置、２１…文書データ登録部、２２…文書データクラスタリング実行部、２３…差分データ抽出部、２４…差分データ登録部、２６…比較差分指定部、２７…クラスタリング結果統合部、２８…クラスタリング結果表示部、１１１…入力ボックス、１１３-1，１１３-2，１１３-3，１１３-4…更新傾向表示指示ボタン、２８０…クラスタリング結果表示指定部（統合指示手段、解析手段、関連クラスタ選択手段）。
【図１】
2005293266.tif 000003
【図２】
2005293266.tif 000004
【図３】
2005293266.tif 000005
【図４】
2005293266.tif 000006
【図５】
2005293266.tif 000007
【図６】
2005293266.tif 000008
【図７】
2005293266.tif 000009
【図８】
2005293266.tif 000010
【図９】
2005293266.tif 000011
【図１０】
2005293266.tif 000012
【図１１】
2005293266.tif 000013
【図１２】
2005293266.tif 000014