(57)【要約】【課題】ユーザごとの検索観点を忠実に反映した、検索漏れのない文書検索が可能な文書検索装置を提供すること。【解決手段】文書検索装置は、文書データ蓄積部２と、複数の文書を文書データとして文書データ蓄積部２に格納する文書データ格納部１と、ユーザからの検索要求を入力する検索要求入力部３と、検索要求入力部３から入力された検索要求に応じて文書データ蓄積部１に格納されている文書データから適切な文書を検索する文書検索部４と、複数の単語を含む個人キーワードリストを格納する個人キーワードリスト格納部８と、文書検索部４により検索された文書のスコア付与対象の単語に対し、前記個人キーワードリストの単語群に含まれる単語の出現数または出現の有無に応じたスコアを付与するスコア付与部５と、を備えたことを特徴とする。【選択図】      図１
2005018617.tif 000002
【特許請求の範囲】
【請求項１】
文書データ蓄積手段と、
複数の文書を文書データとして前記文書データ蓄積手段に格納する文書データ格納手段と、
ユーザからの検索要求を入力する検索要求入力手段と、
前記検索要求入力手段から入力された検索要求に応じて前記文書データ蓄積手段に格納されている文書データから適切な文書を検索する文書検索手段と、
複数の単語セットを含む個人キーワードリストを格納する個人キーワードリスト格納手段と、
前記文書検索手段により検索された文書に対し、前記検索要求に含まれる単語および前記個人キーワードリストに含まれている単語セットの出現数または出現の有無に応じたスコアを付与するスコア付与手段と、を備えたことを特徴とする文書検索装置。
【請求項２】
前記個人キーワードリストに含まれている単語セットは、各単語セットごとに正あるいは負の重みが付与されており、
前記スコア付与手段は、前記個人キーワードリストに含まれている各単語セットごとの前記重みを勘案して、前記文書検索手段により検索された文書に対してスコアを付与することを特徴とする請求項１に記載の文書検索装置。
【請求項３】
前記検索要求中に、前記個人キーワードリストに含まれている単語セットが存在する場合には、前記スコア付与手段はスコアを上げる効果の高い単語セットのみを選択してスコアを付与することを特徴とする請求項２に記載の文書検索装置。
【請求項４】
前記文書検索手段が検出した文書のうちユーザが選択した文書群を取得するユーザ選択文書取得手段と、
該ユーザ選択文書取得手段により取得された文書群と、前記文書データ蓄積手段に格納されている全文書を用いて、候補となる重み付き単語群によって全文書をスコア計算した際に出力される順位が、選択した文書群を上位とした順位と最も差異が少なくなるように単語およびその重みを選択し、これを新たな個人キーワードリストとして前記個人キーワードリスト格納手段に格納するキーワード取得手段と、を備えたことを特徴とする請求項２または３に記載の文書検索装置。
【請求項５】
前記文書データは書籍情報であり、前記ユーザ選択文書取得手段は、ユーザごとの書籍貸出情報からユーザが選択した書籍群を取得することを特徴とする請求項４に記載の文書検索装置。
【請求項６】
前記個人キーワードリストに含まれる単語群は、各書籍のキーワード情報およびタイトル情報であることを特徴とする請求項５に記載の文書検索装置。
【請求項７】
前記各書籍のキーワード情報およびタイトル情報は、書籍コードまたは該書籍コードを用いたインターネット検索により取得することを特徴とする請求項６に記載の文書検索装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、文書検索技術、より詳細にはユーザ独自の検索観点を加味し、文書検索の精度を向上させることが可能な文書検索装置に関する。特に、図書館の蔵書検索や、インターネット文書検索エンジン、社内の報告書管理システムなどに有用である。
【０００２】
【従来の技術】
大量の文書が格納された文書データベースから文書を検索する場合、検索漏れを防ぐためにできるだけ広い範囲の検索を行うと、逆に無関係な文書が検索結果に混入する可能性が高くなる。これを解決するために、文書群に対してなんらかの方法でスコアを付与し、最も適切でありそうなものから順に検索する技術がある。しかしながら、検索意図の具現化したものとしての検索要求（単語あるいは文章）が小規模なもの（例えば１単語だけ）である場合、そもそもスコア付与のヒントとなる情報が少ないため、検索要求だけではユーザの検索意図を十分に反映したものとならないという問題があった。
【０００３】
この問題を解決するために、インターネット上の検索エンジンであるｇｏｏｇｌｅ（Ｒ）などでは、インターネット上に公開されたその文書への参照数をヒントとして追加し、「より多くのユーザに参照されている文書にいろいろな意図の検索について有効な情報が含まれている」と仮定してスコアを付与し、これを参照した検索が行われている。しかしながら、やはり検索意図によっては、必然的に古い情報（多く参照されやすい）が検索結果の上位になってしまうため、必ずしも参照数の多い文書が有効であるとは限らない。
【０００４】
そこで、かかる問題を解決するために、さらにキーワードからなる検索要件の他に何らかの検索観点を加味して検索を実行する技術が提案されている（例えば、下記特許文献１〜４を参照。）。
【０００５】
【特許文献１】
特開平１０−４９５４９号公報
【特許文献２】
特開２００１−１３４５８８号公報
【特許文献３】
特開２００２−２６９１３２号公報
【特許文献４】
特開２００２−３３４１０７号公報
【０００６】
【発明が解決しようとする課題】
上記各特許文献に記載の技術は、例えば、文書データベース上に、あらかじめ種々の検索観点に沿った文書ごとの評価値を格納し、検索時にはその検索観点をユーザが選択することによってユーザの検索意図に沿った検索ができるようにしている。しかしながら、これらの技術でもあらかじめ設定されていた検索観点に基づいた検索しか行うことができず、必ずしもユーザの検索観点を忠実に反映した検索が実現できるわけではないという問題点が残る。
【０００７】
本発明は、上記のような従来技術の有する問題点に鑑みてなされたものであり、その目的は、ユーザごとの検索観点を忠実に反映した、検索漏れのない文書検索が可能な文書検索装置を提供することにある。
【０００８】
【課題を解決するための手段】
上記目的を達成するため、本発明の請求項１にかかる文書検索装置は、文書データ蓄積手段と、複数の文書を文書データとして前記文書データ蓄積手段に格納する文書データ格納手段と、ユーザからの検索要求を入力する検索要求入力手段と、前記検索要求入力手段から入力された検索要求に応じて前記文書データ蓄積手段に格納されている文書データから適切な文書を検索する文書検索手段と、複数の単語セットを含む個人キーワードリストを格納する個人キーワードリスト格納手段と、前記文書検索手段により検索された文書に対し、前記検索要求に含まれる単語および前記個人キーワードリストに含まれている単語セットの出現数または出現の有無に応じたスコアを付与するスコア付与手段と、を備えたことを特徴とする。
【０００９】
この請求項１に記載の発明によれば、個人キーワードリストを保持し、これをスコア計算に用いることによって、ユーザごとの観点の違いを反映した文書検索を実現することができる。
【００１０】
また、請求項２にかかる文書検索装置は、請求項１に記載の発明において、前記個人キーワードリストに含まれている単語セットは、各単語セットごとに正あるいは負の重みが付与されており、前記スコア付与手段は、前記個人キーワードリストに含まれている各単語セットごとの前記重みを勘案して、前記文書検索手段により検索された文書に対してスコアを付与することを特徴とする。
【００１１】
この請求項２に記載の発明によれば、各ユーザの観点を単語の有無ではなく、さらに単語セットごとの正負の重みで表現することにより、より細やかな観点を反映させた文書検索を行うことができる。特に単語の有無だけでは表現できない、負の観点の表す要素を加味した検索が可能になる。
【００１２】
また、請求項３にかかる文書検索装置は、請求項２に記載の発明において、前記検索要求中に、前記個人キーワードリストに含まれている単語セットが存在する場合には、前記スコア付与手段はスコアを上げる効果の高い単語セットのみを選択してスコアを付与することを特徴とする。
【００１３】
この請求項３に記載の発明によれば、実際の検索時に発生する可能性の高い、検索語と個人キーワードリストの単語セットの重複について、矛盾を最小にしつつ検索することができる。例えば、負の観点が付与されている個人キーワードリスト中の単語セットであっても、検索語として出現している場合には正の観点での評価が必要であり、単に検索語として挙げられている単語であっても個人キーワードリスト中では大きな重みが付いている場合には、より選択されやすいことを示しているため、高いスコアを与えるべきである。
【００１４】
また、請求項４にかかる文書検索装置は、請求項２または３に記載の発明において、前記文書検索手段が検出した文書のうちユーザが選択した文書群を取得するユーザ選択文書取得手段と、該ユーザ選択文書取得手段により取得された文書群と、前記文書データ蓄積手段に格納されている全文書を用いて、候補となる重み付き単語群によって全文書をスコア計算した際に出力される順位が、選択した文書群を上位とした順位と最も差異が少なくなるように単語およびその重みを選択し、これを新たな個人キーワードリストとして前記個人キーワードリスト格納手段に格納するキーワード取得手段と、を備えたことを特徴とする。
【００１５】
この請求項４に記載の発明によれば、ユーザごとの検索観点を反映させて個人キーワードリストを作成・更新し、この個人キーワードリストを基にした文書検索を行うことで、よりユーザの検索観点を反映した検索漏れのない文書検索が可能になる。
【００１６】
また、請求項５にかかる文書検索装置は、請求項４に記載の発明において、前記文書データは書籍情報であり、前記ユーザ選択文書取得手段は、ユーザごとの書籍貸出情報からユーザが選択した書籍群を取得することを特徴とする。
【００１７】
この請求項５に記載の発明によれば、ユーザごとの検索観点を反映させて個人キーワードリストを作成・更新し、この個人キーワードリストを基にした書籍（例えば、図書館の所蔵する書籍など）検索を行うことで、よりユーザの検索観点を反映した検索漏れのない書籍検索が可能になる。
【００１８】
また、請求項６にかかる文書検索装置は、請求項５に記載の発明において、前記個人キーワードリストに含まれる単語群は、各書籍のキーワード情報およびタイトル情報であることを特徴とする。
【００１９】
この請求項６に記載の発明によれば、検索対象が書籍情報である場合の、検索および個人キーワードリストの作成に用いる具体的な情報に既に管理されている各書籍のキーワード情報およびタイトル情報を用いることにより、システム構築の簡易化が図れる。
【００２０】
また、請求項７にかかる文書検索装置は、請求項６に記載の発明において、前記各書籍のキーワード情報およびタイトル情報は、書籍コードまたは該書籍コードを用いたインターネット検索により取得することを特徴とする。
【００２１】
この請求項７に記載の発明によれば、検索対象が書籍情報である場合の、検索および個人キーワードリストの作成に用いる具体的な情報にインターネット上に存在する情報を用いることにより、システム構築の簡易化が図れる。
【００２２】
【発明の実施の形態】
以下に添付図面を参照して、本発明の好適な実施の形態を詳細に説明する。図１は、本発明の文書検索装置の概略構成を示すブロック図である。この文書検索装置は、文書データ格納部１、文書データ蓄積部２、検索要求入力部３、文書検索部４、スコア付与部５、ユーザ選択文書取得部６、キーワード取得部７、および個人キーワードリスト格納部８により構成される。
【００２３】
ここでは、ある図書館が所蔵する図書を検索する場合を例にとって説明する。文書データ格納部１は、図書館があらかじめ作成した所蔵する書籍情報（文書データ）を受け取り、これを文書データ蓄積部２に蓄積する。文書データ蓄積部２は、前記文書データを蓄積したデータベースである。検索要求入力部３は、ユーザから入力された検索すべき単語群あるいは文章を、文書検索部４で処理できるような所定の単語リスト形式に変形し、これを検索要求として文書検索部４に送る。文書検索部４は、検索要求を受け取り文書データ蓄積部２に対して前記単語リストに記述された単語のすべてまたはそれらのうちのいずれかを含むことを条件に検索を実行し、検索された文書群をスコア付与部５に送る。
【００２４】
今、検索要求として「ローマ」、「ガイド」が文書検索部４に入力されたとする。文書検索部４は、書籍情報を検索し、図２に示す検索結果をスコア付与部５に送る。なお、図２に示した検索結果のうち、概要情報はインターネットを通じて所定の書籍コードに基づき取得されたものである。スコア付与部５では、「ローマ」、「ガイド」なる検索要求と、図３に示す個人キーワードリストを用いて、図２に示した検索結果にスコアを付与する。
【００２５】
スコア付与の方法は種々あるが、本発明では、「単語の重み×ヒット数の累計」による。図２に示した書籍のタイトル情報、キーワード情報、概要情報を用いて、例えば「ローマ・フィレンツェ・・・」なる書籍は、図４に示すようなスコア計算を行う（具体的な計算方法については後述する）。図４では、記載された単語セットのみがヒットしたものとしている。
【００２６】
ユーザ選択文書取得部６は、ユーザが希望する書籍情報を調べ、ユーザの希望書籍情報が更新された場合、キーワード取得部７に新規に追加されたユーザ選択書籍を通知する。キーワード取得部７は、ユーザが選択した書籍と、文書データ蓄積部２（データベース）に蓄積されている図書館の所蔵する書籍情報を用いて、個人キーワードリストの更新を行い、更新された個人キーワードを個人キーワードリスト格納部８に蓄積する。
【００２７】
以下、個人キーワードの更新手順について説明する。図５は、この個人キーワードの更新手順を示すフローチャートである。まず、キーワード取得部７は、貸し出された書籍のタイトル情報、キーワード情報、概要情報を単語に分割する（ステップＳ５０１）。次に、ステップＳ５０１で分割された異なり単語の１つを選択し、この単語に重みｗ−１．０を設定する（ステップＳ５０２）。そしてこれをすでに存在する個人キーワードリストとあわせてスコア付与部５に送り、全書籍（全文書）のスコアリング結果を得る（ステップＳ５０３）。
【００２８】
この結果、全書籍に順位が付加されるが、その結果のスコア順位と、貸し出した本をすべて１位、その他はすべてＮ位（Ｎは全冊数）とした選択順位とを比較し、実順位との二乗誤差（Σ（スコア順位−選択順位）＾２）を求める（ステップＳ５０４）。そして、ここで求めた値が最小になるか否かを判断する（ステップＳ５０５）。実順位との二乗誤差が最小である場合は（ステップＳ５０５：Ｙｅｓ）、実順位との二乗誤差を求めた単語セットとこの誤差値を記憶した後（ステップＳ５０６）、ステップＳ５０７へ進む。実順位との二乗誤差が最小でない（ステップＳ５０５：Ｎｏ）場合は、そのままステップＳ５０７へ進む。
【００２９】
ステップＳ５０２で設定した重み（ｗ）に対してさらに０．２を加算する（ステップＳ５０７）。重みｗ＜１．０であるか否かを判断する（ステップＳ５０８）。重みｗ＜１．０である場合は（ステップＳ５０８：Ｙｅｓ）、再度ステップＳ５０３へ戻り処理を続行する。重みｗ＜１．０でない場合は（ステップＳ５０８：Ｎｏ）、検索対象となる単語の残りがあるか否かを判断する（ステップＳ５０９）。検索対象となる単語の残りがある場合は（ステップＳ５０９：Ｙｅｓ）、再度ステップＳ５０２へ戻り処理を続行する。検索対象となる単語の残りがない場合は（ステップＳ５０９：Ｎｏ）、ステップＳ５１０へ進む。
【００３０】
続いて、先にステップＳ５０１で分割された異なり単語の２つを選択し、この単語に重みｗ−１．０を設定する（ステップＳ５１０）。そしてこれらをすでに存在する個人キーワードリストとあわせてスコア付与部５に送り、全書籍（全文書）のスコアリング結果を得る（ステップＳ５１１）。
【００３１】
この結果、全書籍に順位が付加されるが、その結果のスコア順位と、貸し出した本をすべて１位、その他はすべてＮ位（Ｎは全冊数）とした選択順位とを比較し、実順位との二乗誤差（Σ（スコア順位−選択順位）＾２）を求める（ステップＳ５１２）。そして、ここで求めた値が最小となるか否かを判断する（ステップＳ５１３）。実順位との二乗誤差が最小である場合は（ステップＳ５１３：Ｙｅｓ）、実順位との二乗誤差を求めた単語セットとこの誤差値を記憶した後（ステップＳ５１４）、ステップＳ５１５へ進む。実順位との二乗誤差が最小でない場合は（ステップＳ５１３：Ｎｏ）、そのままステップＳ５１５へ進む。
【００３２】
ステップＳ５１０で設定した重み（ｗ）に対してさらに０．２を加算する（ステップＳ５１５）。重みｗ＜１．０であるか否かを判断する（ステップＳ５１６）。重みｗ＜１．０である場合は（ステップＳ５１６：Ｙｅｓ）、再度ステップＳ５１１へ戻り処理を続行する。重みｗ＜１．０でない場合は（ステップＳ５１６：Ｎｏ）、さらなる検索対象となる単語があるか否かを判断する（ステップＳ５１７）。検索対象となる単語の残りがある場合は（ステップＳ５１７：Ｙｅｓ）、再度ステップＳ５１０へ戻り処理を続行する。検索対象となる単語の残りがない場合は（ステップＳ５１７：Ｎｏ）、ステップＳ５１８へ進む。
【００３３】
次に、実順位との二乗誤差が最小となった単語セット内の対象単語がすでに個人キーワードリストに存在するか否かを判断する（ステップＳ５１８）。実順位との二乗誤差が最小となった単語セット内の対象単語がすでに個人キーワードリストに存在する場合は（ステップＳ５１８：Ｙｅｓ）、個人キーワードリスト内の当該単語セットの重み（ｗ）を更新し（ステップＳ５１９）、処理終了となる。一方、実順位との二乗誤差が最小となった単語セット内の対象単語が個人キーワードリストに存在しない場合は（ステップＳ５１８：Ｎｏ）、個人キーワードリストに当該単語セットを追加し（ステップＳ５２０）、処理終了となる。
【００３４】
このように、本発明では、貸し出された書籍のタイトル情報、キーワード情報、概要情報を単語に分割する。そして、まず、単語群のなかの１つの単語を選択して、−１．０から０．２ずつを加算した重みを１．０になるまで設定する。残りの単語についても−１．０に０．２ずつ加えた値の重みを１．０になるまで設定し、実順位との二重誤差が最も小さくなる単語と重みのペアを選択する。同様に２単語のキーワード候補について調べるために、個々の異なり単語の組み合わせすべてについて−１．０から１．０までの重みを調べ、この結果が１単語の結果よりもよければ、１単語の結果を却下し、２単語のセットと重みのペアを採用する。採用された単語セットが、すでに個人キーワードリストに存在しているものであればその重みの値のみを置き換え、個人キーワードリストに存在していなければ、当該単語セットを個人キーワードリストに追加する。
【００３５】
以下、具体例を示しながら説明する。例えば、「ローマ・フィレンツェ・・・」の単語セットを個人キーワードリストに追加しようとする場合、まず、タイトル、キーワード、概要をそれぞれ単語ごとに分割し、それぞれについて−１．０〜１．０までの重みを考え、それらを個別の検討ケースとして一覧にする。この際、連続する２単語についても「紐／解き」などのように、一覧に追加しておく。これを図６に示す。
【００３６】
個々の検討ケースごとに、「単語セット，重み」のペアが存在するが、これを既存の個人キーワードリストの上に上書きする（個人キーワードリストに当該単語セットが存在すれば重みを更新、存在しなければ追加）。この個人キーワードリストを用いて文書データベース中の全文書にスコアを付与する。このスコアは、検討ケースごとに異なってくるが、これを示したものが図７である。
【００３７】
スコアの付与結果に基づいて全文書をランキングし、実順位との二乗誤差「（Σ（スコア順位−選択順位）＾２」を計算する。これを検討ケースごとに示したものが図８である。この結果、最も小さな値を示す検討ケースが、追加あるいは上書きすべき単語セットとその重みのペアとなる。
【００３８】
この結果を踏まえて、図３に示した個人キーワードリストが、書籍貸出情報の更新をトリガとして更新される。この結果、図８に示したような「検討ケース−二乗誤差のリスト」が求まったとし、ケース１１が最小のものであるとする。すると、図６より、単語「ローマ」に１．０なる重みを付与したものが、個人キーワードリストに追加される。最終的には、個人キーワードリストは図９のようになる。そして、次回の検索実行時には、図９の個人キーワードリストを使うことにより、特にユーザからの指定がなくとも、「ローマ」なる単語を含む文書が高いスコアを付与されるようになる。
【００３９】
以上説明したように、本発明によれば、ユーザごとの検索観点を反映させて個人キーワードリストを更新し、これをスコアリングに用いることによって、ユーザごとの検索観点の違いを忠実に反映させたより細やかな文書検索が可能になる。この結果、検索漏れが防止でき、精度の高い文書検索が実現できる。また、個人キーワードリストの作成の基になる具体的情報に、既に管理されている情報はもとよりインターネット上に存在する情報も用いることができるため、システム構築が簡易である。
【００４０】
以上、本発明の一実施形態を図面に沿って説明した。しかしながら本発明はこの実施の形態に示した事項に限定されず、特許請求の範囲の記載に基づいてその変更、改良等が可能である。例えば、図書館に所蔵されている書籍検索の他、各種データベースなどに蓄積されているデータ検索などにも適用可能である。
【００４１】
【発明の効果】
上述にように、本発明の文書検索装置は、ユーザごとの検索観点を忠実に反映した、検索漏れのない文書検索が可能になるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の文書検索装置の概略構成を示すブロック図である。
【図２】検索条件の一例の一覧表を示す図である。
【図３】個人キーワードリストの一例の一覧表を示す図である。
【図４】スコア計算の結果を示す図表である。
【図５】個人キーワードの更新手順を示すフローチャートである。
【図６】個人キーワードに新たに追加しようとする単語セットの一例を示す図表である。
【図７】検討する単語セットのケースごとのスコア計算結果を示す一覧表を示す図である。
【図８】検討する単語セットのケースごとの実順位との二重誤差の値を示す一覧表を示す図である。
【図９】更新後の個人キーワードリストの一例の一覧表を示す図である。
【符号の説明】
１  文書データ格納部
２  文書データ蓄積部
３  検索要求入力部
４  文書検索部
５  スコア付与部
６  ユーザ選択文書取得部
７  キーワード取得部
８  個人キーワードリスト格納部
【図１】
2005018617.tif 000003
【図２】
2005018617.tif 000004
【図３】
2005018617.tif 000005
【図４】
2005018617.tif 000006
【図５】
2005018617.tif 000007
【図６】
2005018617.tif 000008
【図７】
2005018617.tif 000009
【図８】
2005018617.tif 000010
【図９】
2005018617.tif 000011