(57)【要約】【目的】文書内で複数のキーワードに関連する部分を見つける。【構成】複数のキーワードが入力され（ステップ12），入力された複数のキーワードのうち，少なくとも２つのキーワードが含まれている段落部分が文書から見つけられる（ステップ13）。キーワード同士の距離が短いほどスコアが多くなるようなスコアの総スコアが段落部分ごとに算出される（ステップ14）。総スコアの多い順に段落部分が表示される（ステップ16）。【選択図】図２
2011141659.tif 000002
【特許請求の範囲】
【請求項１】
複数のキーワードを入力するキーワード入力手段，
上記キーワード入力手段から入力された複数の上記キーワードのうちの少なくとも２つの上記キーワードが含まれている段落部分を，文書ファイルによって表される文書の中から見つける段落部分検出手段，
上記段落部分検出手段によって見つけられた段落部分と上記キーワード入力手段から入力された複数の上記キーワードとの関連度を表し，かつ上記段落部分に含まれる上記キーワード同士の間隔が短いほど大きくなるようなスコアを算出するスコア算出手段，および
上記スコア算出手段によって算出されたスコアの大きい順に上記段落部分検出手段によって検出された段落部分の上記文書における位置を報知する適合度報知手段，
を備えた文書検索装置。
【請求項２】
上記スコア算出手段は，
上記キーワードの組を構成する上記キーワード同士の間隔が短いほど大きくなるスコアを，上記段落部分に含まれるすべての上記キーワードの組について算出し，算出されたスコアの総和である総スコアを算出するものであり，
上記報知手段は，
上記スコア算出手段によって算出された総スコアの大きい順に上記段落部分検出手段によって検出された段落部分の上記文書における位置を報知するものである，
請求項１に記載の文書検索装置。
【請求項３】
上記スコア算出手段は，
上記キーワードの組を構成する上記キーワード同士の間隔が短いほど大きくなる１以上のスコアを，上記段落部分に含まれるすべての上記キーワードの組について算出し，算出されたすべてのスコアの積である総スコアを算出するものであり，
上記報知手段は，
上記スコア算出手段によって算出された総スコアの大きい順に上記段落部分検出手段によって検出された段落部分の上記文書における位置を報知するものである，
請求項１または２に記載の文書検索装置。
【請求項４】
キーワード入力手段が，複数のキーワードを入力し，
段落部分検出手段が，上記キーワード入力手段から入力された複数の上記キーワードのうちの少なくとも２つの上記キーワードが含まれている段落部分を，文書ファイルによって表される文書の中から見つけ，
スコア算出手段が，上記段落部分検出手段によって見つけられた段落部分と上記キーワード入力手段から入力された複数の上記キーワードとの関連度を表し，かつ上記段落部分に含まれる上記キーワード同士の間隔が短いほど大きくなるようなスコアを算出し，
適合度報知手段が，上記スコア算出手段によって算出されたスコアの大きい順に上記段落部分検出手段によって検出された段落部分の上記文書における位置を報知する，
文書検索装置の動作制御方法。
【請求項５】
文書検索装置のコンピュータを制御するコンピュータが読み取り可能なプログラムであって，
複数のキーワードを入力させ，
入力された複数の上記キーワードのうちの少なくとも２つの上記キーワードが含まれている段落部分を，文書ファイルによって表される文書の中から見つけさせ，
見つけられた段落部分のそれぞれ入力された複数の上記キーワードとの関連度を表し，かつ上記段落部分に含まれる上記キーワード同士の間隔が短いほど大きくなるようなスコアを算出させ，
算出されたスコアの大きい順に，検出された段落部分の上記文書における位置を報知させるように文書検索装置のコンピュータを制御するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は，文書検索装置ならびにその動作制御方法およびその制御プログラムに関する。
【背景技術】
【０００２】
検索エンジンは，複数のキーワードを入力させ，入力された複数のキーワードを含むウェブ・ページを見つけることができる。しかしながら，検索エンジンを用いて文書ファイルの中から複数のキーワードに関連する部分を見つけることは考えられていない。また，複数のキーワードが一定文字間隔以内に存在する箇所を特定するもの（特許文献１），キーワード間の関連度に応じて検索結果を順番に表示するものがある（特許文献２）。
【０００３】
しかしながら，文書内で複数のキーワードに関連する部分を見つけることはできていない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2008-71337号公報
【特許文献２】特開2001-109766号公報
【発明の開示】
【０００５】
この発明は，文書内で複数のキーワードに関連する部分を見つけることを目的とする。
【０００６】
この発明による文書検索装置は，複数のキーワードを入力するキーワード入力手段，上記キーワード入力手段から入力された複数の上記キーワードのうちの少なくとも２つの上記キーワードが含まれている段落部分を，文書ファイルによって表される文書の中から見つける段落部分検出手段，上記段落部分検出手段によって見つけられた段落部分と上記キーワード入力手段から入力された複数の上記キーワードとの関連度を表し，かつ上記段落部分に含まれる上記キーワード同士の間隔が短いほど大きくなるようなスコアを算出するスコア算出手段，および上記スコア算出手段によって算出されたスコアの大きい順に上記段落部分検出手段によって検出された段落部分の上記文書における位置を報知する報知手段を備えていることを特徴とする。
【０００７】
この発明は，上記文書検索装置に適した動作制御方法も提供している。すなわち，この方法は，キーワード入力手段が，複数のキーワードを入力し，段落部分検出手段が，上記キーワード入力手段から入力された複数の上記キーワードのうちの少なくとも２つの上記キーワードが含まれている段落部分を，文書ファイルによって表される文書の中から見つけ，スコア算出手段が，上記段落部分検出手段によって見つけられた段落部分と上記キーワード入力手段から入力された複数の上記キーワードとの関連度を表し，かつ上記段落部分に含まれる上記キーワード同士の間隔が短いほど大きくなるようなスコアを算出し，適合度報知手段が，上記スコア算出手段によって算出されたスコアの大きい順に上記段落部分検出手段によって検出された段落部分の上記文書における位置を報知するものである。
【０００８】
この発明は，上記文書検索装置の動作制御方法を実施するためのコンピュータが読み取り可能なプログラムも提供している。また，そのようなプログラムを格納した記録媒体を提供するようにしてもよい。
【０００９】
この発明によると，複数のキーワードが入力される。入力された複数のキーワードのうちの２つ以上のキーワードが含まれている段落部分が文書ファイルによって表される文書の中から見つけられる。見つけられた段落部分と，入力された複数のキーワードと，の関連度を表すスコアが算出される。このスコアは，キーワード同士の間隔が短いほど大きくなるものである。算出されたスコアの大きい順に，段落部分の文書における位置が報知される。このようにして，入力された複数のキーワードに関連する段落部分を文書内から見つけることができるようになる。
【００１０】
上記スコア算出手段は，たとえば，上記キーワードの組を構成する上記キーワード同士の間隔が短いほど大きくなるスコアを，上記段落部分に含まれるすべての上記キーワードの組について算出し，算出されたスコアの総和である総スコアを算出するものである。この場合，上記報知手段は，たとえば，上記スコア算出手段によって算出された総スコアの大きい順に上記段落部分検出手段によって検出された段落部分の上記文書における位置を報知するものである。
【００１１】
上記スコア算出手段は，上記キーワードの組を構成する上記キーワード同士の間隔が短いほど大きくなる１以上のスコアを，上記段落部分に含まれるすべての上記キーワードの組について算出し，算出されたすべてのスコアの積である総スコアを算出するものでもよい。この場合，上記報知手段は，たとえば，上記スコア算出手段によって算出された総スコアの大きい順に上記段落部分検出手段によって検出された段落部分の上記文書における位置を報知するものである。
【図面の簡単な説明】
【００１２】
【図１】文書検索装置の電気的構成を示すブロック図である。
【図２】文書検索装置の処理手順を示すフローチャートである。
【図３】文書の一部分を示している。
【図４】検索ボックス画像の一例である。
【図５】検索ボックス画像の一例である。
【図６】文書の一部分を示している。
【図７】スコアを算出する関数を示すグラフである。
【図８】スコアの大きい順に段落部分の一部分が表示されている様子を示している。
【図９】スコアを算出する関数を示すグラフである。
【実施例】
【００１３】
図１は，この発明の実施例を示すもので，文書検索装置の電気的構成を示すブロック図である。
【００１４】
文書検索装置は，複数のキーワードが入力され，入力された複数のキーワードに関連する部分が，文書ファイルによって表される文書の中から見つけられるものである。
【００１５】
文書検索装置の全体の動作は，ＣＰＵ１によって統括される。
【００１６】
文書検索装置には，インターネット等を介して他のコンピュータ装置等と通信するための通信装置２，所定のデータ等を記憶するメモリ３，複数のキーワードを入力するための入力装置（キーボード，マウスなど）４，表示装置５，ＣＤ−ＲＯＭ（コンパクト・ディスク−リード・オンリ・メモリ）ドライブ６およびハードディスク（図示略）にアクセスするＨＤ（ハードディスク）ドライブ７が含まれている。ハードディスクに多数の文書ファイルが記録されている。
【００１７】
ＣＤ−ＲＯＭ８には，後述する動作を制御するプログラムが格納されている。ＣＤ−ＲＯＭ８に記録されているプログラムがＣＤ−ＲＯＭドライブ６に読み取られ，文書検索装置にインストールされることにより文書検索装置は，後述するように動作する。動作プログラムは，ＣＤ−ＲＯＭ８から読み取られなくとも文書検索装置にプレインストールされていてもよいし，インターネットを介して送信されるものでもよい。
【００１８】
図２は，文書検索装置の処理手順を示すフローチャートである。
【００１９】
この実施例による文書検索装置は，複数のキーワードが入力された場合に，それらの複数のキーワードに関連する段落部分を，文書ファイルによって表される文書の中から見つけるものである。
【００２０】
複数のキーワードに関連する段落部分を見つける文書を表す文書ファイルが，ユーザによって入力装置４を用いて指定されると，その文書ファイルはハードディスクの中から読み取られてメモリ３に入力する（ステップ11）。もっとも，文書ファイルはハードディスクに記録されていなくとも通信装置２を介して他のコンピュータ等から送信されるものでもよい。
【００２１】
図３は，ユーザによって指定された文書ファイルによって表される文書の一部分である。
【００２２】
この文書20を表す文書ファイルがメモリ３において展開されている。この時には文書20は表示装置５の表示画面に表示されないが，表示されるようにしてもよい。
【００２３】
また，表示装置５の表示画面30には，図４に示す検索ボックス画像が表示される。
【００２４】
検索ボックス画像のほぼ中央部分には，キーワード入力領域31が形成されている。キーワード入力領域31は，入力装置４から入力されたキーワードを表示する領域である。キーワード入力領域31の右側には検索指令領域32が形成されている。検索指令領域32は，クリッカブルなもので，その領域32がクリックされることにより，キーワード入力領域31に表示されているキーワード（入力されたキーワード）に関連する段落部分を文書20から見つける検索指令が文書検索装置に与えられる。
【００２５】
図５は，入力装置４を用いて複数のキーワードが入力された場合の検索ボックス画像の一例である。
【００２６】
この実施例では，入力装置４を用いて，「携帯電話」，「ＪＡＶＡアプリ」および「メモ」の３つのキーワードが入力されたものとする。もちろん，複数のキーワードであれば，２つまたは４つ以上のキーワードが入力されてもよいのはいうまでもない。ユーザによって入力された複数のキーワードである「携帯電話」，「ＪＡＶＡアプリ」および「メモリ」がキーワード入力領域31に表示される。「携帯電話」，「ＪＡＶＡアプリ」および「メモリ」のそれぞれのキーワードの間には，異なるキーワードであることが文書検索装置において認識できるように間隔があけられている。文書検索装置では，間隔があけられずに連続する文字列が一つのキーワードと認識される。
【００２７】
図２に戻って，ユーザによって複数のキーワードが入力され（ステップ12），かつ検索指令領域32がクリックされることにより，検索指令が文書検索装置に与えられると文書20の検索処理が開始する。
【００２８】
まず，入力された複数のキーワードのうち，少なくとも２つのキーワードを含む段落部分が文書20の中から，見つけられる（ステップ13）。もっとも，少なくとも２つのキーワードでなくとも一つのキーワード，入力された複数のキーワードのうちの50％以上のキーワードなどを含む段落部分が文書20の中から見つけられるようにしてもよい。改行指令または文章の先頭が１文字分あけられているような部分が段落部分の最初および最後として，段落部分が見つけられる。
【００２９】
図６は，上述した文書20の一部分を示しており，見つけられた段落部分も示している。
【００３０】
少なくとも２つのキーワードを含む段落部分として段落部分40，50，60，70，80，90および100が見つけられたものとする。段落部分40には，入力された複数のキーワードのうちいずれかのキーワードに対応するキーワード41−43が含まれている。段落部分50，60，70，80，90および100のそれぞれにも同様にキーワード51−55，61−64，71−73，81−84，91−93および101−103が含まれている。
【００３１】
このように，文書20の中から，入力された複数のキーワードのうち少なくとも２つのキーワードを含む段落部分が見つけられる。
【００３２】
図２に戻って，見つけられた段落部分のそれぞれについて，段落部分と入力された複数のキーワードとの関連の度合いを示す総スコアが算出される（ステップ14）。
【００３３】
この実施例においては，段落ごとに総スコアを算出するために，段落部分に含まれるキーワード同士の間隔が短いほど大きくなるようなスコアが算出される。算出されたスコアの総和が段落の総スコアとなる。
【００３４】
図７は，段落部分に含まれるキーワード同士の間隔が短いほど大きくなるようなスコアを算出する関数のグラフを示している。
【００３５】
この関数ｆ１（Ｄｍｎ）は，入力された複数のキーワードのうちｍ番目のキーワードとｎ番目のキーワードとの距離（ｍ番目のキーワードとｎ番目のキーワードとの間に存在する文字数，ｍ，ｎは正の整数）をＤｍｎとした場合に，その距離Ｄｍｎが小さいほど値が大きくなり，その距離Ｄｍｎが大きいほど値が０に近づくものである。この関数ｆ１（Ｄｍｎ）の値が上述したようにキーワード同士の間隔が短いほど大きくなるようなスコアである。このスコアの総和が段落ごとに式１にしたがって算出される。式１にしたがって算出された段落ごとの総和が上述した総スコアである。
【００３６】
【数１】
2011141659.tif 000003
【００３７】
図６を参照して，段落部分40においてはキーワード41とキーワード42とのスコア，キーワード41とキーワード43とのスコアおよびキーワード42とキーワード43とのスコアが算出される。これらの３つのスコアの総和が式１にしたがって算出されることにより総スコアが算出される。他の段落部分50，60，70，80，90および100においてもキーワード同士のスコアが算出され，段落ごとに総スコアが算出される。
【００３８】
式１にしたがって総スコアが算出される場合（図７のグラフにしたがってスコアが算出される場合）には，入力された複数のキーワードのうち検出された段落部分に含まれていないキーワードについてはスコアが０となり，式１に影響を与えないので（無視できるので），人間の感覚に対応した総スコアを算出できる。
【００３９】
再び図２を参照して，少なくとも２つのキーワードが含まれている段落部分として検出されたすべての段落部分について上述のように総スコアが算出されるまで総スコア算出処理が繰り返される（ステップ15）。検出された段落部分のすべてについて総スコアが算出されると（ステップ15でＹＥＳ），総スコアの多い順に，検出された段落部分が表示装置５の表示画面に表示される（ステップ16）。
【００４０】
図８は，総スコアの多い順に，検出された段落部分が表示されている様子を示している。
【００４１】
段落部分50，60，80，100，90，70および40の順に総スコアが多かったものとする。すると，その総スコアの順に段落部分の一部分が表示される。この実施例では，それぞれの段落部分の前に，それらの段落部分が文書のどこに存在するかを示すインデックスも表示される。
【００４２】
たとえば，総スコアの最も多い段落部分50は，文書20の第２章第１節第２段落であるから，その段落を示すインデックス111が表示される。そのインデックス111の次の行から段落部分50の一部分（すべてでもよい）112が表示される。インデックス111にリンク付けをし，そのインデックス111がクリックされることにより，対応する段落部分50が表示画面に表示されるようにしてもよい。
【００４３】
他の段落部分についても同様に，段落部分60の位置を示すインデックス121が表示され，そのインデックス121の次の行から段落部分60の一部分122が表示される。段落部分80のインデックス131およびその段落部分80の一部分132，段落部分100のインデックス141およびその段落部分100の一部分142，段落部分90のインデックス151およびその段落部分90の一部分152，段落部分70のインデックス161およびその段落部分70の一部分162，および段落部分40のインデックス171およびその段落部分40の一部分172が同様に表示される。
【００４４】
図９は，上述したキーワード同士のスコアを算出する関数の他の一例を示すグラフである。
【００４５】
図７に示す関数ｆ１（Ｄｍｎ）は，同一の段落部分内での２つのキーワード同士の距離が短いほど値が大きくなり，その距離が遠いほど０に近づくものであったが，図９に示す関数ｆ２（Ｄｍｎ）は，同一の段落部分内での２つのキーワード同士の距離が短いほど値が大きくなり，その距離が遠いほど１に近づくものである。
【００４６】
このような関数ｆ２（Ｄｍｎ）にもとづいて２つのキーワード同士のスコアが算出される。算出されたスコアは，式２にしたがって段落部分ごとに総スコアが算出される。
【００４７】
【数２】
2011141659.tif 000004
【００４８】
式２により，算出されたスコアの積が，段落部分ごとにすべて算出されることとなる。
【００４９】
式２にしたがって総スコアが算出される場合（図９のグラフにしたがってスコアが算出される場合）には，入力された複数のキーワードのうち検出された段落部分に含まれていないキーワードについてはスコアが１となり，式２に影響を与えないので（無視できるので），人間の感覚に対応した総スコアを算出できる。
【００５０】
上述の実施例においては，少なくとも２つのキーワードを含む段落部分を文書中から見つけ，見つけられた段落部分について上述のように総スコアを算出しているが，同一の段落部分に少なくとも２つのキーワードが含まれていなくとも，所定の文字数以内（たとえば，100文字以内）に２つ以上のキーワードが含まれている場合に，そのキーワードが含まれている段落部分を検出するようにしてもよい。もっとも，少なくとも１つのキーワードが含まれている段落部分を検出するようにしてもよい。これらの場合にも上述のように式１または式２を利用して段落部分ごとの総スコアを算出できる。
【符号の説明】
【００５１】
１  ＣＰＵ（段落部分検出手段，スコア算出手段，段落部分表示制御手段）
４  入力装置（キーワード入力手段）
【図１】
2011141659.tif 000005
【図２】
2011141659.tif 000006
【図３】
2011141659.tif 000007
【図４】
2011141659.tif 000008
【図５】
2011141659.tif 000009
【図６】
2011141659.tif 000010
【図７】
2011141659.tif 000011
【図８】
2011141659.tif 000012
【図９】
2011141659.tif 000013