(57)【要約】【課題】  情報を検索する際に、利用者の検索欲求を反映した次検索キーワードを提示する。【解決手段】  検索キーワードを入力して（１３）、検索キーワードを検索システムに送信し、検索システムが求めた前記検索キーワードを含む複数の文書を受信し（１４）、表示部に表示する。複数の文書それぞれから単語毎に意味属性を解析し（１７）、検索キーワードとユーザの操作を履歴情報として格納し（１２）、意味属性と履歴情報に基づいて複数の文書それぞれから文書特徴情報を生成する（１８）。文書特徴情報のクラスタリング処理を行ない、クラスタに含まれる複数の文書からクラスタ代表キーワードを抽出し（１９）、表示部にクラスタ代表キーワードを検索キーワードの次に検索すべき次検索キーワードの候補として表示する（２０）。【選択図】  図１
2010026640.tif 000002
【特許請求の範囲】
【請求項１】
検索キーワードを入力する入力部と、
前記検索キーワードを検索システムに送信し、この検索システムが求めた前記検索キーワードを含む複数の文書を受信する検索制御部と、
前記複数の文書を表示する表示部と、        
前記複数の文書それぞれから本文を抽出する本文抽出部と、
前記本文の単語毎に意味属性を解析する解析部と、
前記検索キーワードを履歴情報として格納する格納部と、
前記意味属性と前記履歴情報に基づいて前記複数の文書それぞれから文書特徴情報を生成する生成部と、
前記複数の文書それぞれの文書特徴情報をクラスタにし、各クラスタに含まれる複数の文書からクラスタ代表キーワードを抽出するクラスタ代表キーワード抽出部とを具備し、
前記表示部は、前記クラスタ代表キーワードを前記検索キーワードの次に検索すべき次検索キーワードの候補として表示することを特徴とする次検索キーワード提示装置。
【請求項２】
前記格納部は、前記次検索キーワードの候補に対する操作を履歴情報としてさらに格納することを特徴とする請求項１記載の次検索キーワード提示装置。
【請求項３】
前記検索システムは、外部に設けられ、前記検索制御部から入力した前記検索キーワードを受信し、前記検索キーワードを含む複数の文書を前記検索制御部に送信することを特徴とする請求項１記載の次検索キーワード提示装置。
【請求項４】
前記解析部は、単語とその意味属性を列挙した辞書、あるいは語頭又は語尾の表現とその属性のルールを用いて前記本文の単語毎の意味属性を解析することを特徴とする請求項１記載の次検索キーワード提示装置。
【請求項５】
前記生成部は、前記履歴情報に含まれる前記検索キーワードの意味属性解析を行ない、文書特徴キーワードを抽出し、前記文書特徴キーワードの意味属性毎に前記辞書または前記ルールから確信度を集計することで文書特徴情報を生成することを特徴とする請求項４記載の次検索キーワード提示装置。
【請求項６】
前記クラスタ代表キーワード抽出部は、前記クラスタからクラスタを代表するキーワードと、クラスタ内で文書を代表するキーワードの抽出を行なうことを特徴とする請求項１記載の次検索キーワード提示装置。
【請求項７】
前記表示部は、表示した前記複数の文書の周辺に次検索キーワードの候補を表示することを特徴とする請求項１記載の次検索キーワード提示装置。
【請求項８】
前記表示部は、カーソルが前記複数の文書に移動すると、前記複数の文書に対して次検索キーワードの候補を別のポップアップウインドウに表示することを特徴とする請求項１記載の次検索キーワード提示装置。
【請求項９】
前記生成部は、前記確信度と前記文書特徴キーワードが前記文書に出現する頻度とを掛けて、前記文書特徴情報を生成することを特徴とする請求項５記載の次検索キーワード提示装置。
【請求項１０】
前記クラスタ代表キーワード抽出部は、前記検索キーワードに対して前記クラスタが複数ある場合、前記クラスタ代表キーワードの集合に対して前記クラスタ代表キーワード同士の距離を計算し、前記クラスタ代表キーワードと前記クラスタ代表キーワードの距離がクラスタ間で最大となる組合せを採用することで抽出されることを特徴とする請求項１記載の次検索キーワード提示装置。
【請求項１１】
前記検索キーワードに対して前記クラスタが複数ある場合、複数の前記クラスタ代表キーワードが前記表示部に表示されることを特徴とする請求項１記載の次検索キーワード提示装置。
【請求項１２】
前記クラスタ代表キーワード抽出部は、前記クラスタに含まれる複数の文書から複数の文書代表キーワードを抽出し、複数の前記文書代表キーワードから前記クラスタ代表キーワードを抽出することを特徴とする請求項１記載の次検索キーワード提示装置。
【請求項１３】
前記検索キーワードに対して前記クラスタが一つの場合、複数の前記文書代表キーワードが前記表示部にさらに表示されることを特徴とする請求項１１記載の次検索キーワード提示装置。
【請求項１４】
入力部が、入力した検索キーワードを受け取り、
検索制御部が、前記検索キーワードを検索システムに送信し、この検索システムが求めた前記検索キーワードを含む複数の文書を受信し、
表示部が、前記複数の文書を表示し、
本文抽出部が、前記複数の文書それぞれから本文を抽出し、
解析部が、前記本文の単語毎に意味属性を解析し、
格納部が、前記検索キーワードを履歴情報として格納し、
生成部が、前記意味属性と前記履歴情報に基づいて前記複数の文書それぞれから文書特徴情報を生成し、
クラスタ代表キーワード抽出部が、前記複数の文書それぞれの文書特徴情報をクラスタにし、各クラスタに含まれる複数の文書からクラスタ代表キーワードを抽出し、
前記表示部は、前記クラスタ代表キーワードを前記検索キーワードの次に検索すべき次検索キーワードの候補として表示することを特徴とする次検索キーワード提示方法。
【請求項１５】
入力部が、入力した検索キーワードを受け取るステップと、
検索制御部が、前記検索キーワードを検索システムに送信し、この検索システムが求めた前記検索キーワードを含む複数の文書を受信するステップと、
表示部が、前記複数の文書を表示するステップと、
本文抽出部が、前記複数の文書それぞれから本文を抽出するステップと、
解析部が、前記本文の単語毎に意味属性を解析するステップと、
格納部が、前記検索キーワードを履歴情報として格納するステップと、
生成部が、前記意味属性と前記履歴情報に基づいて前記複数の文書それぞれから文書特徴情報を生成するステップと、
クラスタ代表キーワード抽出部が、前記複数の文書それぞれの文書特徴情報をクラスタにし、各クラスタに含まれる複数の文書からクラスタ代表キーワードを抽出するステップと、
前記表示部は、前記クラスタ代表キーワードを前記検索キーワードの次に検索すべき次検索キーワードの候補として表示するステップとを具備することを特徴とする次検索キーワード提示プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ウーブページに代表される文書データベースを利用者の入力したキーワードに応じて検索し、利用者に検索結果と次に検索するべきキーワードの候補を提示する次検索キーワード提示装置、次検索キーワード提示方法、及び次検索キーワード提示プログラムに関する。
【背景技術】
【０００２】
近年、パーソナルコンピュータの普及と共に、利用者が利用可能な情報データベースも増えてきた。インターネット上のサーチエンジンはキーワードを入力することで文書データベースの検索が行なわれる。このようなサーチエンジンにおいては、利用者は適切と思われるキーワードをサーチエンジンに送信し、そのキーワードを含む文書を検索結果として受け取る。しかし受け取った結果が利用者にとって思わしくない場合は、よりよい検索結果を得るために利用者は別のキーワードを追加したり、より適切と思われるキーワードに置き換えたりといった試行錯誤が必要である。そのため、サーチエンジンでは、ある入力キーワードに対して検索結果がたくさんある場合、検索結果を絞り込むための新たに追加すべきキーワードの候補の提示が行なわれている（例えば、非特許文献１。）。
【０００３】
多くの文書検索システムで新たに追加すべきキーワードの候補の提示が行なわれているが、常に行なわれるわけではなく入力キーワードによっては行なわれない場合も多い。また提示が行なわれる場合でも、どのような追加キーワードが提示されるかは固定されている。
【非特許文献１】Ｙａｈｏｏ！（Ｒ）検索ヘルプ−「関連検索ワード」とは−〈ＵＲＬ：ｈｔｔｐ：／／ｈｅｌｐ．ｙａｈｏｏ．ｃｏ．ｊｐ／ｈｅｌｐ／ｊｐ／ｓｅａｒｃｈ／ｗｅｂ／ｗｅｂ−１７．ｈｔｍｌ〉
【発明の開示】
【発明が解決しようとする課題】
【０００４】
すなわち、個々の利用者の検索欲求に対して次に検索すべきキーワードの候補として不必要なものまでが表示装置に提示されてしまうことがある。
【課題を解決するための手段】
【０００５】
第１の発明は検索キーワードを入力する入力部と、前記検索キーワードを検索システムに送信し、この検索システムが求めた前記検索キーワードを含む複数の文書を受信する検索制御部と、前記複数の文書を表示する表示部と、前記複数の文書それぞれから本文を抽出する本文抽出部と、前記本文の単語毎に意味属性を解析する解析部と、前記検索キーワードを履歴情報として格納する格納部と、前記意味属性と前記履歴情報に基づいて前記複数の文書それぞれから文書特徴情報を生成する生成部と、前記複数の文書それぞれの文書特徴情報をクラスタにし、各クラスタに含まれる複数の文書からクラスタ代表キーワードを抽出するクラスタ代表キーワード抽出部とを具備し、前記表示部は、前記クラスタ代表キーワードを前記検索キーワードの次に検索すべき次検索キーワードの候補として表示することを特徴する次検索キーワード提示装置である。
【０００６】
また、第２の発明では前記格納部が前記次検索キーワードの候補に対する操作を履歴情報としてさらに格納することを特徴とする請求項１記載の次検索キーワード提示装置。
【０００７】
また、第３の発明では前記検索システムが外部に設けられ、前記検索制御部から入力した前記検索キーワードを受信し、前記検索キーワードを含む複数の文書を前記検索制御部に送信することを特徴とする請求項１記載の次検索キーワード提示装置である。
【０００８】
また、第４の発明では前記解析部が単語とその意味属性を列挙した辞書、あるいは語頭又は語尾の表現とその属性のルールを用いて前記本文の単語毎の意味属性を解析することを特徴とする請求項１記載の次検索キーワード提示装置である。
【０００９】
また、第５の発明では前記生成部が前記履歴情報に含まれる前記検索キーワードの意味属性解析を行ない、文書特徴キーワードを抽出し、前記文書特徴キーワードの意味属性毎に前記辞書または前記ルールから確信度を集計することで文書特徴情報を生成することを特徴とする請求項４記載の次検索キーワード提示装置。
【００１０】
また、第６の発明では前記クラスタ代表キーワード抽出部が前記クラスタからクラスタを代表するキーワードと、クラスタ内で文書を代表するキーワードの抽出を行なうことを特徴する請求項１記載の次検索キーワード提示装置である。
【００１１】
また、第７の発明では前記表示部が表示した前記複数の文書の周辺に次検索キーワードの候補を表示することを特徴とする請求項１記載の次検索キーワード提示装置。である。
【００１２】
また、第８の発明では前記表示部が、カーソルが前記複数の文書に移動すると、前記複数の文書に対して次検索キーワードの候補を別のポップアップウインドウに表示することを特徴とする請求項１記載の次検索キーワード提示装置である。
【００１３】
また、第９の発明では生成部が前記確信度と前記文書特徴キーワードが前記文書に出現する頻度とを掛けて、前記文書特徴情報を生成することを特徴とする請求項５記載の次検索キーワード提示装置である。
【００１４】
また、第１０の発明では前記クラスタ代表キーワード抽出部が前記検索キーワードに対して前記クラスタが複数ある場合、前記クラスタ代表キーワードの集合に対して前記クラスタ代表キーワード同士の距離を計算し、前記クラスタ代表キーワードと前記クラスタ代表キーワードの距離がクラスタ間で最大となる組合せを採用することで抽出されることを特徴とする請求項１記載の次検索キーワード提示装置である。
【００１５】
また、第１１の発明では前記検索キーワードに対して前記クラスタが複数ある場合、複数の前記クラスタ代表キーワードが前記表示部に表示される次検索キーワード提示装置である。
【００１６】
また、第１２の発明では前記クラスタ代表キーワード抽出部が前記クラスタに含まれる複数の文書から複数の文書代表キーワードを抽出し、複数の前記文書代表キーワードから前記クラスタ代表キーワードを抽出することを特徴とする請求項１記載の次検索キーワード提示装置である。
【００１７】
また、第１３の発明では前記検索キーワードに対して前記クラスタが一つの場合、複数の前記文書代表キーワードが前記表示部にさらに表示されることを特徴とする請求項１１記載の次検索キーワード提示装置である。
【００１８】
また、第１４の発明では入力部が、入力した検索キーワードを受け取り、検索制御部が、前記検索キーワードを検索システムに送信し、この検索システムが求めた前記検索キーワードを含む複数の文書を受信し、表示部が、前記複数の文書を表示し、本文抽出部が、前記複数の文書それぞれから本文を抽出し、解析部が、前記本文の単語毎に意味属性を解析し、格納部が、前記検索キーワードを履歴情報として格納し、生成部が、前記意味属性と前記履歴情報に基づいて前記複数の文書それぞれから文書特徴情報を生成し、クラスタ代表キーワード抽出部が、前記複数の文書それぞれの文書特徴情報をクラスタにし、各クラスタに含まれる複数の文書からクラスタ代表キーワードを抽出し、前記表示部は、前記クラスタ代表キーワードを前記検索キーワードの次に検索すべき次検索キーワードの候補として表示することを特徴とする次検索キーワード提示方法である。
【００１９】
また、第１５の発明では入力部が、入力した検索キーワードを受け取るステップと、検索制御部が、前記検索キーワードを検索システムに送信し、この検索システムが求めた前記検索キーワードを含む複数の文書を受信するステップと、表示部が、前記複数の文書を表示するステップと、本文抽出部が、前記複数の文書それぞれから本文を抽出するステップと、解析部が、前記本文の単語毎に意味属性を解析するステップと、格納部が、前記検索キーワードを履歴情報として格納するステップと、生成部が、前記意味属性と前記履歴情報に基づいて前記複数の文書それぞれから文書特徴情報を生成するステップと、クラスタ代表キーワード抽出部が、前記複数の文書それぞれの文書特徴情報をクラスタにし、各クラスタに含まれる複数の文書からクラスタ代表キーワードを抽出するステップと、前記表示部は、前記クラスタ代表キーワードを前記検索キーワードの次に検索すべき次検索キーワードの候補として表示するステップとを具備することを特徴とする次検索キーワード提示プログラムである。
【発明の効果】
【００２０】
本発明によれば、個々の利用者の検索欲求を反映した次に検索すべきキーワードの候補を表示装置に提示することができる。
【発明を実施するための最良の形態】
【００２１】
以下、図面を参照して、本発明の実施の形態について説明する。
【実施例１】
【００２２】
図１は本実施形態における次検索キーワード提示装置の機能ブロック図である。同図に示すように次検索キーワード提示装置１１は、利用者毎に操作履歴を格納する履歴情報格納部１２と、利用者が検索のために用いるキーワードを入力するためのキーワード入力部１３と、利用者が入力したキーワードを外部の検索システム１５に送信し、このキーワードを含む複数の文書を検索結果として受信する検索制御部１４と、検索結果としての複数の文書から本文を抽出する本文抽出部１６と、本文の単語の意味属性を解析する意味属性解析部１７と、抽出した本文の意味属性解析結果と履歴情報格納部１２に格納されている履歴情報に基づいてそれぞれの文書特徴ベクトルを生成する文書特徴ベクトル生成部１８と、生成された文書特徴ベクトルのクラスタリングを行ない、それぞれの文書が属するクラスタを代表するクラスタ代表キーワードと、クラスタ内でそれぞれの文書を代表する文書代表キーワードの抽出を行なうクラスタ代表キーワード抽出部１９と、クラスタに含まれるそれぞれの文書毎に抽出されたキーワードを用いてそれぞれの文書毎に次に検索すべきキーワードの候補を提示する表示部２０を備えている。検索制御部１４は外部の検索システム１５にアクセス可能である。
【００２３】
履歴格納部１２はキーワード入力部１３と表示部２０に表示された検索キーワードの候補に対する利用者の操作、すなわち利用者の操作履歴として、利用者が検索のためにどのようなキーワードを入力したか、検索結果のうちどれを選択したか、検索結果を選択した後にどのような行動をとったかといった情報を格納する。
【００２４】
図２は入力したキーワード、選択した検索結果、後の行動の履歴情報の具体例である。この例では「爬虫類」というキーワードを入力して検索したが適切な結果が得られなかったため「イグアナ」と「トカゲ」というキーワードを新たに入力し、検索を行ない、７９５０００件中３番目の「イグアナ達との生活」というタイトルの結果と５番目の「イグアナの最適な生息場所」を選択したが、適切な結果がなかったので再び「生息地域」という新たなキーワードを追加して検索を行なったことを表している。その後、ユーザがログアウトの行動をした。そしてその後しばらくして「俳優名」と「○○映画」をキーワードとして新たな検索を開始したことを表している。
【００２５】
本実施形態では、説明を簡単にするために、本装置を通じて利用者がとった操作のみを履歴情報として格納している。さらに、利用者のすべての日常生活と関連付けた履歴情報を格納してもよい。例えば家庭内でテレビを視聴しながら本装置を利用した場合などは、利用者は放送内容に関連した検索を行なっていると考えられるため、放送内容を履歴情報として格納してもよい。具体的には、テレビ放送の映像に重畳して配信されているＥＰＧやデータ放送や字幕などのテキストデータ、映像中の人物や建物などの画像情報、テロップなどを認識したテキストデータ、映像中の発話や楽曲などの音声情報、それらを認識した発話内容や楽曲のタイトルなどのテキストデータなどが挙げられる。
【００２６】
あるいは屋外で電車やバスに乗りながら本装置を利用した場合、利用者は乗換情報や事故情報など路線や地域に関連した検索を行なっていると考えられるため、乗車している路線やＧＰＳなどから得られる位置情報を履歴情報として格納してもよい。
【００２７】
検索制御部１４はキーワード入力部１３に入力されたキーワードを、外部の検索システム１５に送信して検索結果を受け取る。キーワードの送信先である文書検索システムは、本実施形態では外部の検索システム１５を利用するものとしているが、外部の検索システムは次検索キーワード提示装置１１と一体化した実施形態にしてもよい。
【００２８】
本文抽出部１６は検索結果のそれぞれの文書からヘッダやフッタ、広告、リンク集などその文書に固有ではないと考えられる箇所を削除し、画面の大きな領域を占めるなどレイアウト上重要であると考えられる箇所を抽出することで本文の抽出を行なう。非常に長い文書など、文書内で話題が一つに定まっていないような場合は段落毎に本文を区切り、話題毎に一つ一つの本文として分割して抽出してもよい。
【００２９】
意味属性解析部１７は、テキストデータ中に含まれる単語に対し、金額や時刻のような定型表現、人名や地名のような固有名詞、あるいは食物や動植物名のような事物のカテゴリといった、単語の意味に関する属性のクラスを付与する。意味解析処理は、図３のようにあらかじめ与えられた辞書とのマッチングで行なってもよい。
【００３０】
また、図４のように語頭や語尾の表現とその意味属性のルールとのマッチングで行なってもよい。「川崎」のように人名でも地名でもあるような多義キーワードについては、複数の意味属性をそのまま利用してもよいが、ユーザの利便性を考えると辞書やルールにあらかじめ設定されている確信度が最大のものや、前後の出現するキーワードの意味属性との距離が最小のものなどを選択することで一つの意味属性に決定することが望ましい。
【００３１】
文書特徴ベクトル生成部１８は、文書毎に図３の辞書テーブルと図４のルールテーブルによって、意味属性を付けられた単語から特徴がある文書特徴キーワードを抽出して、履歴情報格納部１２に格納されている履歴情報と一緒に加工することでユーザの嗜好ベクトルを生成する。
【００３２】
図５はユーザ嗜好ベクトルの例である。意味属性解析部１７はユーザの履歴情報を解析して意味属性に確信度を付与し、文書特徴ベクトル生成部１８はユーザ嗜好ベクトルを生成する。この例の場合、「動物、爬虫類」と「人名、芸能人」に非常に興味があることを高い確信度１００で表している。一方、履歴情報の中には「地位、歌手」の検索動作情報が存在するが、特に興味を持っている行動ではなかったことを低い確信度１０で表している。ユーザ嗜好ベクトルを生成した後に、それぞれの文書とユーザの嗜好ベクトルを用いて文書特徴情報（以下、文書特徴ベクトルという）を生成する。胴囲
図６は文書特徴ベクトルの生成を説明する図である。文書に含まれる文書特徴キーワードを抽出し、キーワードの意味属性に対してユーザ嗜好ベクトルの確信度を付与して、リストを作る。作ったリストはユーザ嗜好ベクトルと比較することで、文書特徴ベクトルを生成する。
【００３３】
この例では、トカゲとイグアナというキーワードがあるので、その意味属性「動物、爬虫類」は２回出現している。またＯＯ選手と川崎市の単語があるので、意味属性「人名、スポーツ選手」と「地名、日本の都市」はそれぞれ１回出現している。これを用いて、図５ユーザ嗜好ベクトルの確信度とキーワードが文書に出現する頻度とを掛けて、文書特徴ベクトルを生成する。この例では、「動物、爬虫類」の確信度は２００である。ここで、ユーザ毎の嗜好ベクトルを用いるので同じ文書でもユーザ毎に文書特徴ベクトルは異なる点に留意する。
【００３４】
クラスタ代表キーワード抽出部１９は、生成された文書特徴ベクトルのクラスタリングを行ない、クラスタを代表するクラスタ代表キーワードと、所定のクラスタ内でそれぞれの文書を特徴付ける文書代表キーワードの抽出を行なう。クラスタ内でそれぞれの文書を特徴付ける文書代表キーワードは、クラスタに含まれるそれぞれの文書に含まれる文書代表キーワードを抽出し、文書代表キーワードの集合に対して文書代表キーワード同士の距離を計算し、文書代表キーワード同士の距離が文書間で最大となる組合せを採用することで抽出される。
【００３５】
同様に、クラスタ代表キーワードは、それぞれのクラスタに含まれるクラスタ代表キーワードを抽出し、クラスタ代表キーワードの集合に対してクラスタ代表キーワード同士の距離を計算し、クラスタ代表キーワードとクラスタ代表キーワードの距離がクラスタ間で最大となる組合せを採用することで抽出される。
【００３６】
表示部２０は、検索キーワードに対する検索結果のタイトルと要約に加え、文書代表キーワードとクラスタ代表キーワードに基づいて生成された次検索キーワードの候補を表示する。そして、前述したように表示部２０に対して利用者がとった操作（例えば：検索結果のうちどれを選択したか、検索結果を選択した後にどのような行動をとったか）は履歴情報管理部に格納される。
【００３７】
次に、図７に示すように次検索キーワード提示装置１１による文書特徴ベクトル生成とクラスタリングの処理についての概要を説明する。まず、本文抽出部１６ですべての検索結果の文書から本文を抽出する（ステップＳ７１０）。抽出した本文に対して意味属性解析部１７で意味属性解析を行ない、(キーワード、意味属性)の組み合わせを一時的に記憶する（ステップＳ７２０）。意味属性解析された単語に対して、辞書またはルールテーブルを参照することで確信度の付与を行ない、(意味属性、確信度)の組み合わせを一時的に記憶する。その後、文書特徴ベクトル生成部１８で文書特徴キーワードを抽出する（ステップＳ７３０）。このとき文書特徴ベクトル生成部１８は、履歴情報格納部１２を参照しながら、抽出された文書特徴キーワードと履歴中の検索キーワードを比較することで、意味属性の出現頻度を集計する（ステップＳ７４０）。文書毎に意味属性の出現頻度を用いて、確信度が付けられた文書特徴ベクトルを文書特徴ベクトル生成部１８で生成する（ステップＳ７５０）。
【００３８】
引き続きクラスタ代表キーワード抽出部１９で、クラスタリング処理を行なう。まず初めに、生成された文書特徴ベクトルそれぞれを要素とする要素数１のクラスタを初期値として生成する（ステップＳ７６０）。そして、すべてのクラスタ同士の組み合わせについて、文書特徴ベクトルＡと文書特徴ベクトルＢとの距離をクラスタ代表キーワード抽出部１９で計算する（ステップ７７０）。その距離をあらかじめ定められた閾値と比較する（ステップＳ７８０）。閾値より小さい場合は（ステップＳ７８０のＹ）、文書特徴ベクトルＡとＢをまとめて、文書特徴ベクトルＡとＢからなる新しい文書特徴ベクトルＣ ＝ Ａ ＋ Ｂを生成して、文書特徴ベクトルＡとＢのもともとのクラスタを削除して新しい文書ベクトルＣからなるクラスタを生成する（ステップＳ７９０）。文書特徴ベクトルＡとＢを削除した後に、再び文書特徴ベクトル間の距離を計算する。ここで、すべての文書特徴ベクトルＡとＢの間の距離が閾値より大きい場合は（ステップＳ７８０のＮ）、まとめるべきクラスタがすでになくなったものとしてクラスタリングを終了する。
【００３９】
次に、図７のＳ７１０の本文抽出処理について説明する。図８は検索結果の文書がＨＴＭＬであるときの本文抽出処理のフローチャートである。
【００４０】
ＨＴＭＬ文書から本文抽出処理について、図８に示す。以下の説明では、ＨＴＭＬ文書中のそれぞれのタグについて、タグを含めない（タグの内側にあるタグをすべて含めない）文字数をＮｅｘｃｌｕｄｅとして、タグを含めた(タグの内側にあるタグをすべて含める)文字数をＮｉｎｃｌｕｄｅとする。ＨＴＭＬ文書を読み込んで、ドキュメントオブジェクトモデル（ＤＯＭ）ツリーを生成する（ステップＳ８１０）。ＤＯＭを生成したら、処理していないテーブルタグ（例えば：＜ＴＡＢＬＥ＞）があるか否かをチェックする（ステップＳ８１１）。処理していないテーブルタグがあれば（ステップＳ８１１のＹ）、Ｎｅｘｃｌｕｄｅ／Ｎｉｎｃｌｕｄｅの数値を算出して、閾値と比べる（ステップＳ８１２）。Ｎｅｘｃｌｕｄｅ／Ｎｉｎｃｌｕｄｅの数値が閾値より小さかったら（ステップＳ８１２のＹ）、処理されているタグを削除して、また処理していないテーブルタグがあるか否かのチェックを再び行う（ステップＳ８１３）。Ｎｅｘｃｌｕｄｅ／Ｎｉｎｃｌｕｄｅの数値が閾値より大きかったら（ステップＳ８１２のＮ）、テーブルタグではないと見なして、表組みを表す関数値を算出し、閾値と比べる（ステップＳ８１４）。表組みを表す関数値が閾値より大きかったら（ステップＳ８１４のＹ）、本文内容が含まれているテーブルと見なして、タグ中のテキストを抽出する（ステップＳ８１５）。表組みを表す関数値が閾値より小さかったら（ステップＳ８１４のＮ）、まだ処理していないテーブルタグがあるか否かのチェックを行う。
【００４１】
処理していないテーブルタグが無かったら（ステップＳ８１１のＮ）、処理していないレイアウト用タグ（例えば：＜ＤＩＶ＞、＜ＣＥＮＴＥＲ＞など）があるか否かをチェックする（ステップＳ８１６）。処理していないレイアウト用タグがあれば（ステップＳ８１６のＹ）、Ｎｅｘｃｌｕｄｅ／Ｎｉｎｃｌｕｄｅの数値を算出して、閾値と比べる（ステップＳ８１７）。Ｎｅｘｃｌｕｄｅ／Ｎｉｎｃｌｕｄｅの数値は閾値より小さかったら（ステップＳ８１７のＹ）、処理されているタグを削除して、また処理していないレイアウト用タグがあるか否かのチェックを行う（ステップＳ８１８）。Ｎｅｘｃｌｕｄｅ／Ｎｉｎｃｌｕｄｅの数値が閾値より大きかったら（ステップＳ８１７のＮ）、レイアウト用タグではないと見なして、リンク集を表す関数値を算出する。
【００４２】
次に、リンク集を表す関数値と閾値を比べる（ステップＳ８１９）。リンク集を表す関数値が閾値より小さかったら（ステップＳ８１９のＹ）、本文内容が含まれていると見なして、タグ中のテキストを抽出する（ステップＳ８２０）。リンク集を表す関数値が閾値より大きかったら（ステップＳ８１９のＮ）、また処理していないレイアウト用タグがあるか否かのチェックを行う。処理していないレイアウト用タグが無ければ（ステップＳ８１６のＮ）、それぞれのテキストの文字列長とテキストに含まれる句読点をベーススコアとしてテキストのスコアを計算する（ステップＳ８２１）。計算されたスコアは、出現順に減衰係数を掛けて、合計スコアを計算する（ステップＳ８２２）。
【００４３】
次に、合計スコアは閾値と比べる（ステップＳ８２３）。合計スコアが閾値を超えなかたら（ステップＳ８２３のＮ）、テキストを結合して、本文を抽出する（ステップＳ８２４）。合計スコアが閾値を超えたら（ステップＳ８２３のＹ）、ＨＴＭＬ文書から本文抽出処理を終了する。
【００４４】
次に、クラスタからキーワード抽出処理について説明する。本実施例では本文からキーワード(特に複合語)を抽出するための手法として古くから知られているＣ‐ｖａｌｕｅによるフローを説明する。まずあるクラスタＣに含まれる文書の集合をＤｓ（Ｃ）とし、Ｄｓ（Ｃ）に含まれる形態素列の集合をｗｓ（Ｃ）とする。そしてｗｓ（Ｃ）に含まれるすべての形態素列ｗに対して統計情報を集計する。すべての形態素列ｗに対してＣ‐ｖａｌｕｅ（ｗ） ＝ （ｌ（ｗ）− １）＊（ｎ（ｗ）− ｔ（ｗ）/ｃ（ｗ））を計算する。そしてＣ‐ｖａｌｕｅ（ｗ）の値があらかじめ与えられた閾値を超える形態素列ｗを、クラスタＣを代表するキーワードとして抽出し、クラスタを代表するキーワードの抽出処理は終了になる。ただしＣ‐ｖａｌｕｅによる抽出は非常に文書の数が大きいクラスタなどに対しては処理速度が遅くなるため、精度よりも処理速度を優先するような場合は単純に出現頻度が高いものを抽出したり、文字列長が長いものを抽出したりするだけでもよい。
【００４５】
図９に、統計情報の集計処理のフローチャートを示す。まず、処理していないクラスタＣがあるか否かをチェックする（ステップＳ９１０）。処理していないクラスタＣがあったら（ステップＳ９１０のＹ）、後述する統計情報の表をクリアする（ステップＳ９２０）。そして、クラスタＣに含まれ、処理していない文書Ｄがあるか否かをチェックする（ステップ９３０）。処理していない文書Ｄがあったら（ステップＳ９３０のＹ）、文書Ｄに含まれ、処理していない形態素列ｗがあるか否かをチェックする（ステップ９４０）。処理していない形態素列ｗがあったら（ステップＳ９４０のＹ）、この形態素列ｗは統計情報の表にあるか否かをチェックする（ステップＳ９５０）。形態素列ｗが統計情報の表に無かったら（ステップＳ９５０のＮ）、形態素列ｗを統計情報の表に追加して、再び文書Ｄに含まれ、処理していない形態素列ｗのチェックを行う（ステップＳ９６０）。形態素列ｗが統計情報の表にあったら（ステップＳ９５０のＹ）、再び文書Ｄに含まれ、処理していない形態素列ｗのチェックを行う処理していない形態素列ｗが無かったら、文書Ｄに含まれ、処理していない形態素列ｗのチェックに戻る。文書Ｄに含まれ、処理していない形態素列ｗが無かったら（ステップＳ９４０のＮ）、またクラスタＣに含まれ、処理していない文書Ｄがあるか否かのチェックを行う。
【００４６】
クラスタＣに含まれ、処理していない文書Ｄが無かったら（ステップＳ９３０のＮ）、統計情報の表に処理していない形態素列ｗがあるか否かをチェックする（ステップＳ９７０）。処理していない形態素列ｗがあったら（ステップＳ９７０のＹ）、形態素列Ｗの出現度を集計する（ステップＳ９７１）。次に、ｗを含み、形態素列ｗより長い形態素列の出現度を集計する（ステップＳ９７２）。その後、前記形態素列と異なり、形態素列ｗを含み、形態素列ｗより長い形態素列の数を集計して、また統計情報の表に処理していない形態素列ｗがあるか否かのチェックを行う（ステップＳ９７３）。統計情報の表に処理していない形態素列ｗが無かったら（ステップＳ９７０のＮ）、また処理していないクラスタＣがあるか否かのチェックを行う（ステップＳ９１０）。処理していないクラスタＣが無かったら（ステップＳ９１０のＮ）、クラスタを代表するキーワードの抽出処理は終了になる。
【００４７】
図１０にこれらの統計情報の統計情報の表の例を示す。ｌ（ｗ）は形態素列ｗの文字列長である。ｎ（ｗ）はクラスタＣにおける形態素列ｗの出現頻度である。ｔ（ｗ）は形態素列ｗを含み、かつ形態素列ｗより長い形態素列のクラスタＣにおける出現頻度である。ｃ（ｗ）は形態素列ｗを含み、かつ形態素列ｗより長い形態素列のクラスタＣにおける異なり数である。
【００４８】
図１１に、文書特徴キーワードの抽出処理のフローチャートを示す。まず、処理していない文書Ｄがあるか否かをチェックする（ステップＳ１１１０）。処理していない文書Ｄがあったら（ステップＳ１１１０のＹ）、統計情報が記載されている統計情報の表をクリアする（ステップＳ１１２０）。文書Ｄに含まれ、処理していない形態素列Ｗがあるか否かをチェックする（ステップ１１３０）。処理していない形態素列Ｗがあったら（ステップＳ１１３０のＹ）、この形態素列Ｗが統計情報の表にあるか否かをチェックする（ステップＳ１１４０）。形態素列Ｗが統計情報の表に無かったら（ステップＳ１１４０のＮ）、形態素列Ｗを統計情報の表に追加して、再び文書Ｄに含まれ、処理していない形態素列Ｗのチェックを行う（ステップＳ１１５０）。統計情報の表にあったら（ステップＳ１１４０のＹ）、また処理していない形態素列Ｗのチェックに戻る。処理していない形態素列Ｗが無かったら（ステップＳ１１３０のＮ）、文書Ｄに含まれ、処理していない形態素列Ｗが無かったら、統計情報の表に処理していない形態素列Ｗがあるか否かをチェックする（ステップＳ１１６０）。処理していない形態素列Ｗがあったら（ステップＳ１１６０のＹ）、形態素列Ｗの出現度を集計する（ステップＳ１１６１）。次に、Ｗを含み、Ｗより長い形態素列の出現度を集計する（ステップＳ１１６２）。その後、前記形態素列と異なり、形態素列Ｗを含み、Ｗより長い形態素列の異なり数を集計して、また統計情報の表に処理していない形態素列Ｗがあるか否かのチェックを行う（ステップＳ１１６３）。統計情報の表に処理していない形態素列Ｗが無かったら（ステップＳ１１６０のＮ）、また処理していない文書Ｄはあるか否かのチェックを行う。処理していない文書Ｄが無かったら（ステップＳ１１１０のＮ）、文書特徴キーワードの抽出処理は終了になる。
【００４９】
続いて、クラスタ代表キーワード抽出部１９は、まず図１１で説明した文書特徴キーワードの抽出処理とで文書を代表するキーワードの抽出を行なう。ただしそれぞれの文書から抽出されたキーワードは、文書が同じクラスタに属しているためほとんど同じものとなってしまうので、抽出されたキーワード同士の距離を計算し、キーワード同士の距離が文書間でなるべく大きくなる組合せを選択するという処理を行なう。具体的には、以下のような処理によって文書同士が区別できる理解しやすいキーワードを選択する。
【００５０】
図１２は文書代表キーワードを抽出する処理のフローチャートである。まず図１１に示すような文書特徴キーワードの抽出処理で文書特徴キーワードを抽出する（ステップＳ１２１０）。文書特徴キーワードを抽出した後に、（文書、意味属性、文書代表キーワード候補）からなる文書代表キーワード候補の表(詳細は後述)を初期化して、一時的に記憶する（ステップＳ１２２０）。次に、すべての文書に出現している文書特徴キーワードを文書代表キーワード候補の表から削除する（ステップＳ１２３０）。その後、文書代表キーワード候補の表が空か否かをチェックする（ステップＳ１２４０）。文書代表キーワード候補の表が空ではなかったら（ステップＳ１２４０のＮ）、文書代表キーワード候補の表の中で最も多い文書にまたがる意味属性を一つ選択する（ステップＳ１２５０）。その後、選択した意味属性に属するキーワードの中で最も少ない文書にまたがるキーワードＫを文書代表キーワード候補として選択する（ステップＳ１２６０）。次に、抽出したキーワードＫが複数の文書にまたがるか否かをチェックする（ステップＳ１２７０）。キーワードＫが複数の文書にまたがる場合は（ステップＳ１２７０のＹ）、キーワードＫがまたがる文書で最も多い文書にまたがる、先ほどの意味属性と異なる意味属性を一つ選択して、新たに選択した意味属性のキーワードの中で最も少ない文書にまたがるキーワードＫを選択する（ステップＳ１２８０）。キーワードＫが複数の文書にまたがらない場合は（ステップＳ１２７０のＮ）、キーワードＫによって特定された文書を文書代表キーワード候補の表から削除して、文書代表キーワード候補の表が空か否かをチェックする（ステップＳ１２９０）。文書代表キーワード候補の表が空になったら（ステップＳ１２４０のＹ）、クラスタ内の文書毎に差分の大きなキーワードを抽出する処理は終了する。
【００５１】
キーワード同士の距離は品詞を元に計算する方法や、意味属性を元に計算する方法などさまざまなものが考えられるが、以下では意味属性を用いたキーワード選択処理の例を説明する。
【００５２】
図１３は文書代表キーワード候補の例である。まず、クラスタ代表キーワード抽出部１９はそれぞれの文書から抽出された文書代表キーワード候補と、それぞれの文書代表キーワード候補の意味属性を元に(文書、意味属性、文書代表キーワード候補)の組合せからなる文書代表キーワード候補の表を初期化する。この例の場合、文書１からは動物、爬虫類という意味属性を持った「イグアナ」、地名、日本の都市という意味属性を持った「東京」という文書代表キーワード候補が抽出され、文書２からは動物、爬虫類という意味属性を持った「イグアナ」という文書代表キーワード候補が抽出され、文書３からは動物、爬虫類という意味属性を持った「イグアナ」と「トカゲ」、地名、日本の都市という意味属性を持った「川崎」という文書代表キーワード候補が抽出されている。
【００５３】
続いて、クラスタ代表キーワード抽出部１９は、クラスタ代表キーワード候補同士の距離がなるべく大きくなる組合せを選択するようにすべての文書にまたがって出現しているクラスタ代表キーワード候補を文書代表キーワード候補の表から削除する。図１３の例の場合、「イグアナ」は文書１と文書２に出現するので、「イグアナ」というクラスタ代表キーワード候補は文書代表キーワード候補の表から削除される。すべての文書にまたがって出現しているクラスタ代表キーワード候補がない場合はそのままでよい。なお処理のこの段階で文書代表キーワード候補の表が空になってしまった場合は、文書同士を区別できる適切なクラスタ代表キーワードが抽出できなかったことを意味している。そのため文書代表キーワード候補の表が空になってしまった場合は異なる文書に対しても同じクラスタ代表キーワード候補を抽出するか、あるいは残っているそれぞれの文書に差分がないと考えて表示部２０では１つにまとめて表示してしまってよい。
【００５４】
文書代表キーワード候補の表が空でなかった場合は、文書代表キーワード候補の表の最も多くの文書にまたがる意味属性Ｃを一つ選択する。複数存在する場合はランダムに選択してもよいし、意味属性に含まれるキーワードの数などを利用してもよい。あるいはあらかじめ意味属性の順序づけを設定しておいて、それを利用してもよい。たとえば時刻表現よりも人名のほうが情報量が多いと考えられるため、意味属性の順序も時刻表現より人名を優先するといった方法が考えられる。あるいは利用者の履歴情報を利用してもよい。例えばある利用者が人名よりも地名についてよく注目している場合は、人名より地名を優先するといった方法が考えられる。あるいは履歴情報のうち最近選択した意味属性を優先することも考えられる。
【００５５】
どのような方法で意味属性を選択した場合でも、その後クラスタ代表キーワード抽出部１９は選択された意味属性の中でもっとも少ない文書にまたがるキーワードＫを一つ選択する。複数存在する場合はランダムに選択してもよいし、利用者の履歴情報を利用してもよい。ここでキーワードＫが一つの文書Ｄにだけまたがっていたとすると、その文書ＤはキーワードＫで特定できることになる。よって文書Ｄを特定するキーワードとしてキーワードＫを抽出し、文書代表キーワード候補の表からキーワードＫと文書Ｄを削除する。文書代表キーワード候補の表が空でないかぎり改めて文書を代表する形態素列の抽出処理を行なうことを繰り返すことによって、ほかの残された文書からも文書を特定するキーワードを抽出していくことができる。一方キーワードＫが文書集合Ｄｓにまたがっていたとすると、そのキーワードＫでは文書集合Ｄｓに含まれる文書はまだ特定できないことになる。したがってこの文書集合Ｄｓで最も多くの文書にまたがる、先ほど選択した意味属性とは異なる意味属性を一つ選択し、改めてキーワード抽出処理を行なうことを繰り返すことによって、文書集合Ｄｓに含まれる文書にも文書を特定するキーワードを抽出していくことができる。
【００５６】
次に、図１の表示部２０に次検索キーワード表示処理について説明する。次検索キーワードの表示は図１４（ａ）に示すようにいくつかの方法が考えられる。それぞれの検索結果の差がわかりやすくなるようにするためには、それぞれの検索結果のタイトルと要約文と一緒に次検索キーワードも表示するのがよい。
【００５７】
なお、図１４（ｂ）に示すように、検索キーワードの数が多くなると表示部２０の中で占める領域が大きくなるため、利用者が検索結果の上にマウスを持ってきたり右クリックしたりしたときに、本装置によって抽出された次検索キーワードをポップアップ表示してもよい。これらの提示方法は、あらかじめ利用者が本装置に対して設定しておいてもよいし、利用者が適宜切り替えられるようにしてもよいし、次検索キーワードの数やあらかじめ設定しておいた意味属性の重要度などによって自動的に切り替えてもよい。
【００５８】
なお、本実施形態における次検索キーワード提示装置１１はパソコンに搭載されているものとして説明したが、パソコンに必ずしも内蔵されていなくとも、その他の電子デバイス、例えば携帯電話機などに搭載されるようにしてもよい。近年、携帯通信機器、例えば携帯電話機またはＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）など、でインターネット情報を見たり、乗換情報を探したり、路線情報を求めているユーザが増加している。検索されている情報の例としては、電車の時刻表や路線上の有名地などがある。
【実施例２】
【００５９】
図１５は、携帯通信機器において実施例２の機能を実現する実施例である。ユーザは携帯通信機器で情報を検索する。この場合、次検索キーワード提示装置１１は携帯通信機器に搭載されて、ユーザの履歴情報を収集し、今後新たな検索する際に、この履歴情報を利用する。あるいは、ほかの実施形態では、ユーザからの検索要求を携帯電話機を通して中央サーバに送信するようにしてもよい。
【実施例３】
【００６０】
図１６は、送信された検索要求の検索情報、あるいは検索キーワードを、中央サーバまでに送信する実施例である。実施例３における次検索キーワード提示装置１１は中央サーバに搭載されている。中央サーバに送信したユーザ入力情報は履歴として保存されている。このような実施形態を利用する場合、携帯性があるので、ユーザの日常生活の活動を履歴情報として格納できる。特に、ユーザはパソコンの前に座らなくても、次検索キーワード提示装置１１を利用できるという利点がある。
【図面の簡単な説明】
【００６１】
【図１】本発明の実施形態における次検索キーワード提示装置の機能ブロック図。
【図２】履歴情報の具体例を説明するための図。
【図３】意味属性辞書テーブルの例を説明するための図。
【図４】意味属性ルールテーブルの例を説明するための図。
【図５】ユーザ嗜好ベクトルの例を説明するための図。
【図６】文書特徴ベクトルの生成例を説明するための図。
【図７】文書特徴ベクトル生成とクラスタリング処理を説明するための図。
【図８】図７のＳ７１０の本文抽出処理を説明するための図。
【図９】形態素列の抽出のための統計情報の集計処理を説明するための図。
【図１０】各形態素列の統計情報の統計情報の表の例を説明するための図。
【図１１】文書特徴キーワード抽出処理を説明するための図。
【図１２】クラスタ内の文書毎に差分の大きな文書代表キーワードを抽出する処理を説明するための図。
【図１３】文書代表キーワード候補の表の例を説明するための図。
【図１４】検索結果に対する次検索キーワード提示の例を説明するための図。
【図１５】本発明の第２の実施形態における携帯電話を用いる例を説明するための図。
【図１６】本発明の第３の実施形態における携帯電話を用いる例を説明するための図。
【符号の説明】
【００６２】
１１      次検索キーワード提示装置
１２      履歴情報格納部
１３      キーワード入力部
１４      検索制御部
１５      検索システム
１６      本文抽出部
１７      意味属性解析部
１８      特徴ベクトル生成部
１９      クラスタ代表キーワード抽出部
２０      表示部
【図１】
2010026640.tif 000003
【図２】
2010026640.tif 000004
【図３】
2010026640.tif 000005
【図４】
2010026640.tif 000006
【図５】
2010026640.tif 000007
【図６】
2010026640.tif 000008
【図７】
2010026640.tif 000009
【図８】
2010026640.tif 000010
【図９】
2010026640.tif 000011
【図１０】
2010026640.tif 000012
【図１１】
2010026640.tif 000013
【図１２】
2010026640.tif 000014
【図１３】
2010026640.tif 000015
【図１４】
2010026640.tif 000016
【図１５】
2010026640.tif 000017
【図１６】
2010026640.tif 000018