(57)【要約】【課題】大量の文書データのなかから検索した文書データについて、適切な評価値を算出し、利用者が望む文書を迅速に発見できるようにする。【解決手段】検索キーワード入力部１２１は、検索キーワードを入力する。文書検索部１２２は、文書記憶装置が記憶した複数の文書データそれぞれについて、検索キーワードが出現する出現位置を算出する。評価値算出部１２４は、文書データの先頭から文書検索部１２２が算出した出現位置までの長さを文書データ全体の長さで割った商を算出して比出現位置とし、算出した比出現位置に基づいて、上記文書データの評価値を算出する。【選択図】図４
2012073877.tif 000002
【特許請求の範囲】
【請求項１】
文書記憶装置が記憶した複数の文書データのなかから検索キーワードを含む文書データを検索する文書検索装置において、
データを処理する処理装置と、検索キーワード入力部と、文書検索部と、評価値算出部と、結果出力部とを有し、
上記検索キーワード入力部は、上記処理装置を用いて、検索キーワードを入力し、
上記文書検索部は、上記処理装置を用いて、上記文書記憶装置が記憶した複数の文書データそれぞれについて、上記検索キーワード入力部が入力した検索キーワードを検索して、上記文書データが上記検索キーワードを含むか否かを判定し、上記検索キーワードを含むと判定した文書データについて、上記検索キーワードが出現する出現位置を算出し、
上記評価値算出部は、上記処理装置を用いて、上記文書記憶装置が記憶した複数の文書データのうち、上記検索キーワードを含むと上記文書検索部が判定した文書データについて、上記文書データの先頭から上記文書検索部が算出した出現位置までの長さを上記文書データ全体の長さで割った商を算出して比出現位置とし、算出した比出現位置に基づいて、上記文書データの評価値を算出し、
上記結果出力部は、上記処理装置を用いて、上記検索キーワードを含むと上記文書検索部が判定した文書データを示す情報を、上記評価値算出部が算出した評価値が高い順に出力することを特徴とする文書検索装置。
【請求項２】
上記評価値算出部は、上記処理装置を用いて、０以上１以下の範囲を分割した複数の分割範囲について、上記比出現位置が上記複数の分割範囲のうちどの分割範囲に入るかを判定し、判定した分割範囲に基づいて、上記検索キーワードの出現回数が最も多い分割範囲を判別し、判別した分割範囲に対応づけられた重み付けを、上記文書データにおける上記検索キーワードの出現回数に乗じた積を算出して、上記文書データの評価値とすることを特徴とする請求項１に記載の文書検索装置。
【請求項３】
上記評価値算出部は、上記処理装置を用いて、上記比出現位置に対応づけられた重み付けの合計を算出して、上記文書データの評価値とすることを特徴とする請求項１に記載の文書検索装置。
【請求項４】
上記文書記憶装置は、記憶した複数の文書データそれぞれについて、上記文書データの種別を表わす文書種別データを記憶し、
上記評価値算出部は、上記処理装置を用いて、上記文書記憶装置が記憶した複数の文書データのうち、上記検索キーワードを含むと上記文書検索部が判定した文書データについて、上記文書記憶部が記憶した文書種別データに基づいて上記重み付けを算出し、算出した重み付けに基づいて上記評価値を算出することを特徴とする請求項２または請求項３に記載の文書検索装置。
【請求項５】
複数の文書データを記憶する文書記憶装置と、請求項１乃至請求項４のいずれかに記載の文書検索装置とを有することを特徴とする文書検索システム。
【請求項６】
コンピュータが実行することにより、上記コンピュータが請求項１乃至請求項４のいずれかに記載の文書検索装置として機能することを特徴とするコンピュータプログラム。
【請求項７】
データを処理する処理装置と、検索キーワード入力部と、文書検索部と、評価値算出部と、結果出力部とを有する文書検索装置が、文書記憶装置が記憶した複数の文書データのなかから検索キーワードを含む文書データを検索する文書検索方法において、
上記検索キーワード入力部が、上記処理装置を用いて、検索キーワードを入力し、
上記文書検索部が、上記処理装置を用いて、上記文書記憶装置が記憶した複数の文書データそれぞれについて、上記検索キーワード入力部が入力した検索キーワードを検索して、上記文書データが上記検索キーワードを含むか否かを判定し、上記検索キーワードを含むと判定した文書データについて、上記検索キーワードが出現する出現位置を算出し、
上記評価値算出部が、上記処理装置を用いて、上記文書記憶装置が記憶した複数の文書データのうち、上記検索キーワードを含むと上記文書検索部が判定した文書データについて、上記文書データの先頭から上記文書検索部が算出した出現位置までの長さを上記文書データ全体の長さで割った商を算出して比出現位置とし、算出した比出現位置に基づいて、上記文書データの評価値を算出し、
上記結果出力部が、上記処理装置を用いて、上記検索キーワードを含むと上記文書検索部が判定した文書データを示す情報を、上記評価値算出部が算出した評価値が高い順に出力することを特徴とする文書検索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、蓄積された文書データのなかから検索キーワードを含む文書データを検索する文書検索装置に関する。
【背景技術】
【０００２】
大量の文書データのなかから、検索キーワードを含む文書データを検索する場合、検索キーワードを含む文書データの数も大量になる場合がある。このため、文書データの評価値を算出して、評価値が高い順に並べることにより、利用者が探している文書データを見つけやすくする技術がある。
評価値としては、例えば、検索キーワードを出現回数を用いる方式がある。
また、文書データが、特許文献のように文書の構造があらかじめわかっている文書である場合には、検索キーワードが出現する位置によって、評価値に重み付けをする方式がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１−３９３３７号公報
【特許文献２】特開２００４−１２７１３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
検索キーワードの出現回数を評価値とする方式は、文書が長いほど出現回数も多くなるので、評価値が高くなる傾向がある。
また、評価値に重み付けをする方式は、文書の構造があらかじめわかっている場合には適用できるが、文書の構造がわからない場合は適用できない。
【０００５】
この発明は、例えば上記のような課題を解決するためになされたものであり、文書の構造がわからない場合でも、適切な評価値を算出し、利用者が望む文書を迅速に発見できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
この発明にかかる文書検索装置は、
文書記憶装置が記憶した複数の文書データのなかから検索キーワードを含む文書データを検索する文書検索装置において、
データを処理する処理装置と、検索キーワード入力部と、文書検索部と、評価値算出部と、結果出力部とを有し、
上記検索キーワード入力部は、上記処理装置を用いて、検索キーワードを入力し、
上記文書検索部は、上記処理装置を用いて、上記文書記憶装置が記憶した複数の文書データそれぞれについて、上記検索キーワード入力部が入力した検索キーワードを検索して、上記文書データが上記検索キーワードを含むか否かを判定し、上記検索キーワードを含むと判定した文書データについて、上記検索キーワードが出現する出現位置を算出し、
上記評価値算出部は、上記処理装置を用いて、上記文書記憶装置が記憶した複数の文書データのうち、上記検索キーワードを含むと上記文書検索部が判定した文書データについて、上記文書データの先頭から上記文書検索部が算出した出現位置までの長さを上記文書データ全体の長さで割った商を算出して比出現位置とし、算出した比出現位置に基づいて、上記文書データの評価値を算出し、
上記結果出力部は、上記処理装置を用いて、上記検索キーワードを含むと上記文書検索部が判定した文書データを示す情報を、上記評価値算出部が算出した評価値が高い順に出力することを特徴とする。
【０００７】
上記評価値算出部は、上記処理装置を用いて、０以上１以下の範囲を分割した複数の分割範囲について、上記比出現位置が上記複数の分割範囲のうちどの分割範囲に入るかを判定し、判定した分割範囲に基づいて、上記検索キーワードの出現回数が最も多い分割範囲を判別し、判別した分割範囲に対応づけられた重み付けを、上記文書データにおける上記検索キーワードの出現回数に乗じた積を算出して、上記文書データの評価値とすることを特徴とする。
【０００８】
上記評価値算出部は、上記処理装置を用いて、上記比出現位置に対応づけられた重み付けの合計を算出して、上記文書データの評価値とすることを特徴とする。
【０００９】
上記文書記憶装置は、記憶した複数の文書データそれぞれについて、上記文書データの種別を表わす文書種別データを記憶し、
上記評価値算出部は、上記処理装置を用いて、上記文書記憶装置が記憶した複数の文書データのうち、上記検索キーワードを含むと上記文書検索部が判定した文書データについて、上記文書記憶部が記憶した文書種別データに基づいて上記重み付けを算出し、算出した重み付けに基づいて上記評価値を算出することを特徴とする。
【００１０】
この発明にかかる文書検索システムは、複数の文書データを記憶する文書記憶装置と、上記文書検索装置とを有することを特徴とする。
【００１１】
この発明にかかるコンピュータプログラムは、コンピュータが実行することにより、上記コンピュータが上記文書検索装置として機能することを特徴とする。
【００１２】
この発明にかかる文書検索方法は、
データを処理する処理装置と、検索キーワード入力部と、文書検索部と、評価値算出部と、結果出力部とを有する文書検索装置が、文書記憶装置が記憶した複数の文書データのなかから検索キーワードを含む文書データを検索する文書検索方法において、
上記検索キーワード入力部が、上記処理装置を用いて、検索キーワードを入力し、
上記文書検索部が、上記処理装置を用いて、上記文書記憶装置が記憶した複数の文書データそれぞれについて、上記検索キーワード入力部が入力した検索キーワードを検索して、上記文書データが上記検索キーワードを含むか否かを判定し、上記検索キーワードを含むと判定した文書データについて、上記検索キーワードが出現する出現位置を算出し、
上記評価値算出部が、上記処理装置を用いて、上記文書記憶装置が記憶した複数の文書データのうち、上記検索キーワードを含むと上記文書検索部が判定した文書データについて、上記文書データの先頭から上記文書検索部が算出した出現位置までの長さを上記文書データ全体の長さで割った商を算出して比出現位置とし、算出した比出現位置に基づいて、上記文書データの評価値を算出し、
上記結果出力部が、上記処理装置を用いて、上記検索キーワードを含むと上記文書検索部が判定した文書データを示す情報を、上記評価値算出部が算出した評価値が高い順に出力することを特徴とする。
【発明の効果】
【００１３】
この発明にかかる文書検索装置によれば、検索キーワードの比出現位置に基づいて文書データの評価値を算出するので、文章構成を考慮して、その文書における検索キーワードの重要度を、評価値に反映させることができる。これにより、検索結果を表示する順位の偏りをなくし、利用者が望む文書を迅速に発見できるようにすることができる。
【図面の簡単な説明】
【００１４】
【図１】実施の形態１における文書検索システム１００の全体構成の一例を示すシステム構成図。
【図２】実施の形態１における端末装置１１０、文書検索装置１２０、文書記憶装置１７０の外観の一例を示す斜視図。
【図３】実施の形態１における端末装置１１０、文書検索装置１２０、文書記憶装置１７０のハードウェア資源の一例を示す図。
【図４】実施の形態１における文書検索装置１２０の機能ブロックの構成の一例を示すブロック構成図。
【図５】実施の形態１における検索結果データ５１０の一例を示す図。
【図６】実施の形態１における重み付けデータ５２０の一例を示す図。
【図７】実施の形態１における文書評価値データ５３０の一例を示す図。
【図８】実施の形態１における整列検索結果データ５４０の一例を示す図。
【図９】実施の形態１における文書検索処理Ｓ３００の流れの一例を示すフローチャート図。
【図１０】実施の形態１における評価値算出工程Ｓ３３０の流れの一例を示すフローチャート図。
【図１１】実施の形態１における評価値６１４の一例を示す図。
【図１２】実施の形態２における評価値算出工程Ｓ３３０の処理の流れの一例を示すフローチャート図。
【図１３】実施の形態２における評価値６１４の一例を示す図。
【図１４】実施の形態３における重み付け算出式が表わす比出現位置と重み付けとの関係を表わすグラフ図。
【図１５】実施の形態３における評価値６１４の一例を示す図。
【図１６】実施の形態４における文書検索装置１２０の機能ブロックの構成の一例を示すブロック構成図。
【図１７】実施の形態４における文書検索処理Ｓ３００の流れの一例を示すフローチャート図。
【発明を実施するための形態】
【００１５】
実施の形態１．
実施の形態１について、図１〜図１１を用いて説明する。
【００１６】
図１は、この実施の形態における文書検索システム１００の全体構成の一例を示すシステム構成図である。
文書検索システム１００は、端末装置１１０と、文書検索装置１２０と、文書記憶装置１７０とを有する。
なお、文書検索装置１２０と、文書記憶装置１７０とは、物理的に一つの装置であってもよい。
【００１７】
文書記憶装置１７０は、多数の文書データを記憶している。文書データは、例えば論文や記事など自然言語で書かれた文書をデータ化したものである。文書記憶装置１７０は、例えば、文書データをファイル形式で蓄積したファイルサーバ装置である。
端末装置１１０は、文書検索システム１００の利用者が操作して、検索キーワードを入力する。文書検索装置１２０（検索用サーバ装置）は、文書記憶装置１７０が記憶した文書データのなかから、端末装置１１０が入力した検索キーワードを含む文書データを検索する。端末装置１１０は、文書検索装置１２０が検索した結果を表示する。
【００１８】
文書検索装置１２０は、検索キーワードを含む文書データの評価値を算出する。端末装置１１０は、文書検索装置１２０が算出した評価値が高い順に検索結果を表示する。これにより、ヒットした文書データの数が多い場合でも、利用者が見つけたい文書データを容易に見つけることができる。
【００１９】
図２は、この実施の形態における端末装置１１０、文書検索装置１２０、文書記憶装置１７０の外観の一例を示す斜視図である。
端末装置１１０、文書検索装置１２０、文書記憶装置１７０は、システムユニット９１０、ＣＲＴ（Ｃａｔｈｏｄｅ・Ｒａｙ・Ｔｕｂｅ）やＬＣＤ（液晶）の表示画面を有する表示装置９０１、キーボード９０２（Ｋｅｙ・Ｂｏａｒｄ：Ｋ／Ｂ）、マウス９０３、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ・Ｄｉｓｋ・Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７などのハードウェア資源を備え、これらはケーブルや信号線で接続されている。
システムユニット９１０は、コンピュータであり、ファクシミリ機９３２、電話器９３１とケーブルで接続され、また、ローカルエリアネットワーク９４２（ＬＡＮ）、ゲートウェイ９４１を介してインターネット９４０に接続されている。
【００２０】
図３は、この実施の形態における端末装置１１０、文書検索装置１２０、文書記憶装置１７０のハードウェア資源の一例を示す図である。
端末装置１１０、文書検索装置１２０、文書記憶装置１７０は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ・Ｐｒｏｃｅｓｓｉｎｇ・Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介してＲＯＭ９１３、ＲＡＭ９１４、通信装置９１５、表示装置９０１、キーボード９０２、マウス９０３、ＦＤＤ９０４、ＣＤＤ９０５、プリンタ装置９０６、スキャナ装置９０７、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。通信装置９１５、キーボード９０２、スキャナ装置９０７、ＦＤＤ９０４などは、入力部、入力装置の一例である。
また、通信装置９１５、表示装置９０１、プリンタ装置９０６などは、出力部、出力装置の一例である。
【００２１】
通信装置９１５は、ファクシミリ機９３２、電話器９３１、ＬＡＮ９４２等に接続されている。通信装置９１５は、ＬＡＮ９４２に限らず、インターネット９４０、ＩＳＤＮ等のＷＡＮ（ワイドエリアネットワーク）などに接続されていても構わない。インターネット９４０或いはＩＳＤＮ等のＷＡＮに接続されている場合、ゲートウェイ９４１は不用となる。
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。
【００２２】
上記プログラム群９２３には、以下に述べる実施の形態の説明において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、以下に述べる実施の形態の説明において、「〜の判定結果」、「〜の計算結果」、「〜の処理結果」として説明する情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
また、以下に述べる実施の形態の説明において説明するフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ・Ｖｅｒｓａｔｉｌｅ・Ｄｉｓｋ）等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００２３】
また、以下に述べる実施の形態の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、以下に述べる「〜部」としてコンピュータを機能させるものである。あるいは、以下に述べる「〜部」の手順や方法をコンピュータに実行させるものである。
【００２４】
図４は、この実施の形態における文書検索装置１２０の機能ブロックの構成の一例を示すブロック構成図である。
文書検索装置１２０は、例えば、検索キーワード入力部１２１と、文書検索部１２２と、重み付け記憶部１２３と、評価値算出部１２４と、結果出力部１２５とを有する。
【００２５】
検索キーワード入力部１２１は、ＣＰＵ９１１を用いて、端末装置１１０から検索キーワードを入力する。
【００２６】
文書検索部１２２は、ＣＰＵ９１１を用いて、文書記憶装置１７０が記憶した文書データを検索して、それぞれの文書データが、検索キーワード入力部１２１が入力した検索キーワードを含むか否かを判定する。文書検索部１２２は、ＣＰＵ９１１を用いて、検索キーワードを含むと判定した文書データについて、検索キーワードが出現する出現位置を算出する。１つの文書データのなかに、検索キーワードが複数回出現する場合、文書検索部１２２は、すべての出現位置を算出する。文書検索部１２２は、ＣＰＵ９１１を用いて、検索結果を表わす検索結果データとして、例えば、検索キーワードを含むと判定した文書データを識別する文書識別データと、その文書データのサイズを表わす文書サイズデータと、算出したすべての出現位置を表わす出現位置データとを含むデータを生成する。
なお、検索の具体的方式は、問わない。例えば、文書検索部１２２は、文書記憶装置１７０が記憶した文書データを直接検索する構成でもよい。あるいは、文書検索部１２２は、あらかじめ検索用のインデックスを作成して記憶しておき、記憶したインデックスを検索することにより、検索にかかる時間を短縮する構成でもよい。
【００２７】
重み付け記憶部１２３は、磁気ディスク装置９２０を用いて、重み付けデータを記憶している。重み付けデータは、検索キーワードを含む文書データの評価値を算出するために用いられる。重み付けデータの詳細については、後述する。
【００２８】
評価値算出部１２４は、ＣＰＵ９１１を用いて、文書検索部１２２が生成した検索結果データと、重み付け記憶部１２３が記憶した重み付けデータとに基づいて、検索キーワードを含む文書データそれぞれの評価値を算出する。評価値算出部１２４は、検索キーワードを含む文書データのなかで、どのあたりに検索キーワードが出現するかによって、評価値を算出する。評価値算出部１２４は、比出現位置を算出する。比出現位置とは、例えば、文書データの先頭を「０」、末尾を「１」とし、検索キーワードが文書データのなかでどのあたりに出現するかを表わす数値である。評価値算出部１２４は、ＣＰＵ９１１を用いて、検索結果データから、文書サイズデータが表わす文書データのサイズと、出現位置データが表わす検索キーワードの出現位置とを取得する。評価値算出部１２４は、取得した出現位置を、取得した文書データのサイズで割った商を計算することにより、比出現位置を算出する。評価値算出部１２４は、算出した比出現位置に基づいて、文書データの評価値を算出する。
なお、比出現位置は、百分率を単位とする構成であってもよい。その場合は、文書データの先頭が「０」、末尾が「１００」となる。評価値算出部１２４は、計算した商に１００を乗じた積を計算することにより、比出現位置を算出する。
【００２９】
結果出力部１２５は、ＣＰＵ９１１を用いて、評価値算出部１２４が算出した評価値に基づいて、文書検索部１２２が検索した検索結果を並べ替え、検索キーワードを含むと文書検索部１２２が判定した文書データの所在を示す情報（例えば文書識別データやＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）など）を、評価値が高い順に出力する。
【００３０】
図５は、この実施の形態における検索結果データ５１０の一例を示す図である。
文書検索部１２２が生成する検索結果データ５１０は、例えば、１以上のレコード５１１ａ〜５１１ｃを有する。それぞれのレコード５１１は、検索キーワードを含むと文書検索部１２２が判定した１つの文書データに対応する。検索結果データ５１０に含まれるレコード５１１の数は、検索キーワードを含むと文書検索部１２２が判定した文書データの数と等しい。それぞれのレコード５１１は、文書識別データ５１２と、文書サイズデータ５１３と、出現位置データ５１４とを有する。
【００３１】
文書識別データ５１２は、文書記憶装置１７０が記憶した文書データを一意に識別するための文字列を表わすテキストデータである。
文書サイズデータ５１３は、文書識別データ５１２によって識別される文書データのサイズを表わす数値データである。文書サイズデータ５１３の単位は、例えば、文字数単位であってもよいし、バイト数単位であってもよい。
出現位置データ５１４は、文書識別データ５１２によって識別される文書データのなかで、検索キーワードが出現する出現位置のリストからなるデータである。文書サイズデータ５１３が文字数単位である場合、出現位置は、例えば、検索キーワードの先頭の文字が、文書データの何文字目に位置するかを表わす数値である。あるいは、文書サイズデータ５１３がバイト数単位である場合、出現位置は、例えば、検索キーワードの先頭の文字が、文書データの何バイト目から始まるかを表わす数値である。
【００３２】
この例において、文書検索部１２２は、文書記憶装置１７０が記憶した文書データのなかから、検索キーワードを含む文書データを３つ発見している。
文書データ「ＤＯＣ０１１」のサイズは、３０１１１文字である。そのなかで、検索キーワードは８箇所に出現している。検索キーワードの出現位置は、それぞれ、２７８０文字目、１６６１７文字目、１９００１文字目、１９１８４文字目、１９３７９文字目、２０４５６文字目、２４５３８文字目、２９１４１文字目である。
文書データ「ＤＯＣ０５３」のサイズは、１５２９２文字である。そのなかで、検索キーワードは７箇所に出現している。検索キーワードの出現位置は、それぞれ、７３７文字目、２４９１文字目、３１４１文字目、７５２４文字目、９８４６文字目、１３０８８文字目、１３５８４文字目である。
文書データ「ＤＯＣ１８６」のサイズは、１３３５６文字である。そのなかで、検索キーワードは４箇所に出現している。検索キーワードの出現位置は、それぞれ、１１３文字目、１１５２２文字目、１２８５５文字目、１３２４８文字目である。
【００３３】
図６は、この実施の形態における重み付けデータ５２０の一例を示す図である。
重み付けデータ５２０は、複数のレコード５２１ａ〜５２１ｄを有する。重み付けデータ５２０に含まれるレコード５２１の数は、文書データを分割する分割数と等しい。それぞれのレコード５２１は、比出現範囲データ５２２と、重みデータ５２３とを有する。
比出現範囲データ５２２は、文書データを分割した範囲を表わすデータである。この例において、比出現範囲データ５２２は、文書データを分割した範囲の末尾を表わす数値データである。文書データを分割した範囲の先頭は、先頭のレコード５２１ａの場合は「０」、それ以外の場合は前のレコード５２１の比出現範囲データ５２２が表わす前の分割範囲の続きである。
重みデータ５２３は、比出現範囲データ５２２が表わす範囲に対する重み付けを表わす数値データである。
【００３４】
この例において、比出現位置が０以上０．２５以下の範囲の重み付けは「１．５」、比出現位置が０．２５超０．５以下の範囲の重み付けは「０．８」、比出現位置が０．５超０．７５以下の範囲の重み付けは「０．５」、比出現位置が０．７５超１以下の範囲の重み付けは「１．２」である。
【００３５】
自然言語で書かれた文書は、起承転結や序破急といった文章構成を有する場合が多い。あるキーワードについての事柄が書かれている文書は、通常、そのキーワードが「起」や「序」の部分に出現する。また、あるキーワードについての事柄が結論として書かれている文書は、通常、そのキーワードが「結」や「急」の部分に出現する。これに対し、「承」や「転」や「破」の部分にキーワードが出現したとしても、その文書は、キーワードについての事柄以外の説明として書かれている可能性がある。
自然言語で書かれた文書が有するこのような特徴に着目して、検索キーワードの比出現位置によって重み付けを変える。
【００３６】
例えば、評価値算出部１２４は、ＣＰＵ９１１を用いて、算出した比出現位置に基づいて、文書を分割した範囲のなかで、検索キーワードが最も多く出現する範囲を判定する。評価値算出部１２４は、ＣＰＵ９１１を用いて、重み付け記憶部１２３が記憶した重み付けデータ５２０から、判定した範囲の重み付けを表わす重みデータ５２３を取得する。評価値算出部１２４は、ＣＰＵ９１１を用いて、取得した重みデータ５２３が表わす重み付けを、その文書データにおける検索キーワードの出現回数に乗じた積を計算することにより、その文書データの評価値を算出する。
【００３７】
図７は、この実施の形態における文書評価値データ５３０の一例を示す図である。
評価値算出部１２４は、ＣＰＵ９１１を用いて、それぞれの文書データについて算出した評価値に基づいて、文書評価値データ５３０を生成する。
評価値算出部１２４が生成する文書評価値データ５３０は、１以上のレコード５３１ａ〜５３１ｃを有する。文書評価値データ５３０に含まれるレコード５３１の数は、検索結果データ５１０に含まれるレコード５１１の数と等しい。それぞれのレコード５３１は、例えば、文書識別データ５３２と、評価値データ５３３とを有する。
文書識別データ５３２は、検索結果データ５１０の文書識別データ５１２と同一であり、検索キーワードを含むと文書検索部１２２が判定した文書データを識別するデータである。
評価値データ５３３は、文書識別データ５３２によって識別される文書データについて、評価値算出部１２４が算出した評価値を表わす数値データである。
【００３８】
図８は、この実施の形態における整列検索結果データ５４０の一例を示す図である。
結果出力部１２５は、ＣＰＵ９１１を用いて、評価値算出部１２４が生成した文書評価値データ５３０に基づいて、レコードの順序を並べ替え、整列検索結果データ５４０を生成する。
結果出力部１２５が生成する整列検索結果データ５４０は、１以上のレコード５４１ａ〜５４１ｃを有する。整列検索結果データ５４０の各レコード５４１は、文書評価値データ５３０の各レコード５３１と同じであり、文書識別データ５４２と、評価値データ５４３とを有する。整列検索結果データ５４０は、レコードの順番だけが、文書評価値データ５３０と異なっている。整列検索結果データ５４０のレコード５４１は、評価値データ５４３が大きい順に並んでいる。
なお、結果出力部１２５が生成する整列検索結果データ５４０の各レコード５４１は、この他に、文書識別データ５４２によって識別される文書のサイズを表わす文書サイズデータ、検索キーワードの出現位置を表わす出現位置データなどを含む構成であってもよい。更に、各レコード５４１は、検索キーワードが出現する出現位置の前後の所定の長さの文字列を表わす出現位置周辺文字列データなどを含む構成であってもよい。
【００３９】
図９は、この実施の形態における文書検索処理Ｓ３００の流れの一例を示すフローチャート図である。
文書検索処理Ｓ３００において、文書検索装置１２０は、文書記憶装置１７０が記憶した文書データを検索する。文書検索処理Ｓ３００は、例えば、検索キーワード入力工程Ｓ３１０と、文書検索工程Ｓ３２０と、評価値算出工程Ｓ３３０と、並べ替え工程Ｓ３８０と、結果出力工程Ｓ３９０とを有する。文書検索装置１２０は、検索キーワード入力工程Ｓ３１０から処理を開始する。
【００４０】
検索キーワード入力工程Ｓ３１０において、検索キーワード入力部１２１は、ＣＰＵ９１１を用いて、端末装置１１０が入力した検索キーワードを取得する。
【００４１】
文書検索工程Ｓ３２０において、文書検索部１２２は、ＣＰＵ９１１を用いて、文書記憶装置１７０が記憶した文書データを検索して、検索キーワード入力工程Ｓ３１０で検索キーワード入力部１２１が取得した検索キーワードを含む文書データを判定する。
検索キーワードを含む文書データを発見した場合、文書検索部１２２は、ＣＰＵ９１１を用いて、検索結果データ５１０のレコード５１１を生成し、評価値算出工程Ｓ３３０へ処理を進める。
文書記憶装置１７０が記憶した文書データをすべて検索し終わった場合、文書検索部１２２は、ＣＰＵ９１１を用いて、並べ替え工程Ｓ３８０へ処理を進める。
【００４２】
評価値算出工程Ｓ３３０において、評価値算出部１２４は、ＣＰＵ９１１を用いて、文書検索工程Ｓ３２０で文書検索部１２２が生成したレコード５１１に基づいて、その文書データの評価値を算出し、文書評価値データ５３０のレコード５３１を生成する。
文書検索部１２２は、ＣＰＵ９１１を用いて、文書検索工程Ｓ３２０に処理を戻し、検索キーワードを含む次の文書データを検索する。
【００４３】
並べ替え工程Ｓ３８０において、結果出力部１２５は、ＣＰＵ９１１を用いて、評価値算出工程Ｓ３３０で評価値算出部１２４が生成した文書評価値データ５３０のレコード５３１を並べ替えて、整列検索結果データ５４０を生成する。
【００４４】
結果出力工程Ｓ３９０において、結果出力部１２５は、ＣＰＵ９１１を用いて、並べ替え工程Ｓ３８０で生成した整列検索結果データ５４０を、端末装置１１０に対して通知する。
【００４５】
図１０は、この実施の形態における評価値算出工程Ｓ３３０の流れの一例を示すフローチャート図である。
評価値算出工程Ｓ３３０は、例えば、初期化工程Ｓ３３１と、出現位置選択工程Ｓ３３２と、全体出現回数計数工程Ｓ３３３と、比出現位置算出工程Ｓ３３４と、分割範囲判定工程Ｓ３３５と、範囲出現回数計数工程Ｓ３３６と、最多出現範囲判定工程Ｓ３３７と、重み付け取得工程Ｓ３３８と、乗算工程Ｓ３３９とを有する。評価値算出部１２４は、初期化工程Ｓ３３１から処理を開始する。
【００４６】
初期化工程Ｓ３３１において、評価値算出部１２４は、ＣＰＵ９１１を用いて、全体出現回数と範囲出現回数とを初期化する。全体出現回数とは、その文書データ全体における検索キーワードの出現回数である。範囲出現回数とは、その文書データを分割した分割範囲ごとの検索キーワードの出現回数である。評価値算出部１２４は、ＲＡＭ９１４を用いて、全体出現回数として「０」を記憶する。評価値算出部１２４は、ＣＰＵ９１１を用いて、重み付け記憶部１２３が記憶した重み付けデータ５２０からレコード５２１の数を取得することにより、分割範囲の数を取得する。評価値算出部１２４は、ＲＡＭ９１４を用いて、取得した数の分割範囲それぞれについて、範囲出現回数として「０」を記憶する。
【００４７】
出現位置選択工程Ｓ３３２において、評価値算出部１２４は、ＣＰＵ９１１を用いて、文書検索部１２２が生成したレコード５１１の出現位置データ５１４が表わす出現位置のなかから、未選択の出現位置を選択する。
すべての出現位置が選択済であり、未選択の出現位置が存在しない場合、評価値算出部１２４は、ＣＰＵ９１１を用いて、最多出現範囲判定工程Ｓ３３７へ処理を進める。
未選択の出現位置が存在する場合、評価値算出部１２４は、ＣＰＵ９１１を用いて、未選択の出現位置のなかから、出現位置を一つ選択し、全体出現回数計数工程Ｓ３３３へ処理を進める。
【００４８】
全体出現回数計数工程Ｓ３３３において、評価値算出部１２４は、ＣＰＵ９１１を用いて、記憶した全体出現回数に１を加えた和を計算する。評価値算出部１２４は、ＲＡＭ９１４を用いて、１を加えた和を、更新された全体出現回数として記憶する。
【００４９】
比出現位置算出工程Ｓ３３４において、評価値算出部１２４は、ＣＰＵ９１１を用いて、文書検索部１２２が生成したレコード５１１の文書サイズデータ５１３が表わす文書サイズを取得する。評価値算出部１２４は、ＣＰＵ９１１を用いて、比出現位置として、出現位置選択工程Ｓ３３２で取得した出現位置を、取得した文書サイズで割った商を計算する。
【００５０】
分割範囲判定工程Ｓ３３５において、評価値算出部１２４は、ＣＰＵ９１１を用いて、重み付け記憶部１２３が記憶した重み付けデータ５２０に基づいて、算出した比出現位置が、どの分割範囲に入るかを判定する。
【００５１】
範囲出現回数計数工程Ｓ３３６において、評価値算出部１２４は、ＣＰＵ９１１を用いて、分割範囲判定工程Ｓ３３５で判定した分割範囲について記憶した範囲出現回数に１を加えた和を計算する。評価値算出部１２４は、ＲＡＭ９１４を用いて、１を加えた和を、分割範囲判定工程Ｓ３３５で判定した分割範囲について、更新された範囲出現回数として記憶する。
評価値算出部１２４は、ＣＰＵ９１１を用いて、出現位置選択工程Ｓ３３２に処理を戻し、次の出現位置を選択する。
【００５２】
最多出現範囲判定工程Ｓ３３７において、評価値算出部１２４は、ＣＰＵ９１１を用いて、記憶した範囲出現回数のなかで、どの分割範囲についての範囲出現回数が最も大きいかを判定する。
【００５３】
重み付け取得工程Ｓ３３８において、評価値算出部１２４は、ＣＰＵ９１１を用いて、重み付け記憶部１２３が記憶した重み付けデータ５２０のなかから、最多出現範囲判定工程Ｓ３３７で判定した分割範囲についての重みデータ５２３が表わす重み付けを取得する。なお、範囲出現回数が最大の分割範囲が複数ある場合、評価値算出部１２４は、ＣＰＵ９１１を用いて、複数の分割範囲それぞれについての重み付けを取得し、取得した複数の重み付けから、一つの重み付けを算出する。例えば、評価値算出部１２４は、ＣＰＵ９１１を用いて、複数の重み付けの平均、最大値、最小値などを算出する。
【００５４】
乗算工程Ｓ３３９において、評価値算出部１２４は、ＣＰＵ９１１を用いて、その文書データの評価値として、記憶した全体出現回数と、重み付け取得工程Ｓ３３８で取得した重み付けとの積を算出する。
評価値算出部１２４は、ＣＰＵ９１１を用いて、算出した評価値に基づいて、レコード５３１を生成する。
【００５５】
図１１は、この実施の形態における評価値６１４の一例を示す図である。
この例は、図５に示した検索結果データ５１０と、図６に示した重み付けデータ５２０とに基づいて、評価値算出部１２４が算出する評価値の例である。
【００５６】
文書データ「ＤＯＣ０１１」は、全体のサイズが３０１１１文字であり、検索キーワードは、そのうち、最初の四分の一の範囲に１回、三番目の四分の一の範囲に５回、最後の四分の一の範囲に２回、合計８回出現する。検索キーワードの範囲出現回数６１２が最も多い範囲は、三番目の範囲である。三番目の範囲に対する重み付け６１１は、「０．５」なので、評価値算出部１２４は、全体出現回数６１３「８」と重み付け６１１「０．５」との積「４．０」を計算して、文書データ「ＤＯＣ０１１」の評価値６１４とする。
【００５７】
文書データ「ＤＯＣ０５３」は、全体のサイズが１５２９２文字であり、検索キーワードは、そのうち、最初の範囲に３回、二番目の範囲に１回、三番目の範囲に１回、最後の範囲に２回、合計７回出現する。検索キーワードの範囲出現回数６１２が最も多い範囲は、最初の範囲である。最初の範囲に対する重み付け６１１は、「１．５」なので、評価値算出部１２４は、全体出現回数６１３「７」と重み付け６１１「１．５」との積「１３．５」を計算して、文書データ「ＤＯＣ０５３」の評価値６１４とする。
【００５８】
文書データ「ＤＯＣ１８６」は、全体のサイズが１３３５６文字であり、検索キーワードは、そのうち、最初の範囲に１回、最後の範囲に３回、合計４回出現する。検索キーワードの範囲出現回数６１２が最も多い範囲は、最後の範囲である。最後の範囲に対する重み付け６１１は、「１．２」なので、評価値算出部１２４は、全体出現回数６１３「４」と重み付け６１１「１．２」との積「４．８」を計算して、文書データ「ＤＯＣ１８６」の評価値６１４とする。
【００５９】
端末装置１１０は、検索結果を評価値が高い順に表示するから、「ＤＯＣ０５３」を先頭に表示し、次に「ＤＯＣ１８６」を表示し、最後に「ＤＯＣ０１１」を表示する。「ＤＯＣ０１１」は、検索キーワードの出現回数が最も多いが、評価値が最も低いので、最後に表示される。
【００６０】
一般に、文書の文字数が多ければ、検索キーワードの出現回数が多くなる。したがって、検索キーワードの出現回数を基準にして表示順を決めると、文字数が多い文書が上位になりやすく、順位に偏りが生じる。
文書検索システム１００は、上述したように、自然言語で書かれた文書が有する特徴を鑑みて、検索キーワードの出現位置に基づいて、重み付けを変える。すなわち、検索キーワードの出現位置から、その文書においてその検索キーワードがどのような意味を持つかを判定する。
具体的には、例えば、起承転結や序破急などの文章構成に基づいて、検索キーワードの意味付けを判定する。文書の先頭付近や末尾付近に検索キーワードが現れる場合は、その文書の話題がその検索キーワードに関するものである可能性が高い。逆に、文書の中央付近に検索キーワードが現れる場合、その文書は、別のキーワードを話題としたものであり、検索キーワードは、主たる話題ではない可能性がある。
【００６１】
このように、キーワードの検出位置による意味付けを考慮することにより、検索結果を表示する場合の順位の偏りをなくし、利用者が望む文書を迅速に発見できるようにすることができる。
【００６２】
なお、分割範囲の数は４に限らず、２以上であればいくつでもよい。分割範囲の数は、あらかじめ定めておく構成であってもよいし、利用者が指定できる構成であってもよい。
また、分割範囲の長さは、均等でなくてもよい。例えば、一般的な文章では、起承転結の「承」の割合が多いので、例えば、「２０％」「４０％」「２０％」「２０％」のように分割する構成であってもよい。各分割範囲の長さは、あらかじめ定めておく構成であってもよいし、利用者が指定できる構成であってもよい。分割範囲の長さが不均等である場合、評価値算出部１２４は、最多出現範囲判定工程Ｓ３３７において、各分割範囲についての範囲出現回数をそのまま比較する構成であってもよいし、範囲出現回数を分割範囲の長さで割った商（「範囲出現密度」）を比較する構成であってもよい。
また、各分割範囲に対する重み付けも、あらかじめ定めておく構成であってもよいし、利用者が指定できる構成であってもよい。あるいは、検索結果に対する評価（探したい文書をすぐに見つけることができたか否かなど）を利用者に入力させ、重み付け記憶部１２３は、ＣＰＵ９１１を用いて、入力した評価に基づいて、記憶した重み付けを更新することにより、教師付き学習により重み付けを最適化する構成であってもよい。
【００６３】
実施の形態２．
実施の形態２について、図１２〜図１３を用いて説明する。
なお、実施の形態１と共通する部分については、同一の符号を付し、説明を省略する。
【００６４】
図１２は、この実施の形態における評価値算出工程Ｓ３３０の処理の流れの一例を示すフローチャート図である。
評価値算出工程Ｓ３３０は、初期化工程Ｓ３３１と、出現位置選択工程Ｓ３３２と、比出現位置算出工程Ｓ３３４と、重み付け算出工程Ｓ３４０と、重み付け出現回数累計工程Ｓ３４１とを有する。このうち、出現位置選択工程Ｓ３３２と、比出現位置算出工程Ｓ３３４とは、実施の形態１と同様なので、ここでは説明を省略する。
【００６５】
初期化工程Ｓ３３１において、評価値算出部１２４は、ＣＰＵ９１１を用いて、その文書データの評価値を初期化する。評価値算出部１２４は、ＲＡＭ９１４を用いて、評価値として「０」を記憶する。
【００６６】
重み付け算出工程Ｓ３４０において、評価値算出部１２４は、ＣＰＵ９１１を用いて、重み付け記憶部１２３が記憶した重み付けデータ５２０から、比出現位置算出工程Ｓ３３４で算出した比出現位置を含む分割範囲に対する重み付けを取得する。
【００６７】
重み付け出現回数累計工程Ｓ３４１において、評価値算出部１２４は、ＣＰＵ９１１を用いて、記憶した評価値に、重み付け算出工程Ｓ３４０で取得した重み付けを加えた和を計算する。評価値算出部１２４は、ＲＡＭ９１４を用いて、計算した和を、更新された評価値として記憶する。
評価値算出部１２４は、ＣＰＵ９１１を用いて、出現位置選択工程Ｓ３３２に処理を戻し、次の出現位置を選択する。
【００６８】
図１３は、この実施の形態における評価値６１４の一例を示す図である。
この例は、図５に示した検索結果データ５１０と、図６に示した重み付けデータ５２０とに基づいて、評価値算出部１２４が算出する評価値の例である。
【００６９】
文書データ「ＤＯＣ０１１」は、全体のサイズが３０１１１文字であり、検索キーワードは、そのうち、最初の四分の一の範囲に１回、三番目の四分の一の範囲に５回、最後の四分の一の範囲に２回、合計８回出現する。最初の範囲に対する重み付け６１１は「１．５」、三番目の範囲に対する重み付け６１１は「０．５」、最後の範囲に対する重み付け６１１は「１．２」だから、評価値算出部１２４は、範囲出現回数６１２「１」と重み付け６１１「１．５」との積「１．５」と、範囲出現回数６１２「５」と重み付け６１１「０．５」との積「２．５」と、範囲出現回数６１２「２」と重み付け６１１「１．２」との積「２．４」との合計「６．４」を、文書データ「ＤＯＣ０１１」の評価値６１４とする。
【００７０】
文書データ「ＤＯＣ０５３」は、全体のサイズが１５２９２文字であり、検索キーワードは、そのうち、最初の範囲に３回、二番目の範囲に１回、三番目の範囲に１回、最後の範囲に２回、合計７回出現する。最初の範囲に対する重み付け６１１は「１．５」、二番目の範囲に対する重み付け６１１は「０．８」、三番目の範囲に対する重み付け６１１は「０．５」、最後の範囲に対する重み付け６１１は「１．２」だから、評価値算出部１２４は、範囲出現回数６１２「３」と重み付け６１１「１．５」との積「４．５」と、範囲出現回数６１２「１」と重み付け６１１「０．８」との積「０．８」と、範囲出現回数６１２「１」と重み付け６１１「０．５」との積「０．５」と、範囲出現回数６１２「２」と重み付け６１１「１．２」との積「２．４」との合計「８．２」を、文書データ「ＤＯＣ０５３」の評価値６１４とする。
【００７１】
文書データ「ＤＯＣ１８６」は、全体のサイズが１３３５６文字であり、検索キーワードは、そのうち、最初の範囲に１回、最後の範囲に３回、合計４回出現する。最初の範囲に対する重み付け６１１は「１．５」、最後の範囲に対する重み付け６１１は「１．２」だから、評価値算出部１２４は、範囲出現回数６１２「１」と重み付け６１１「１．５」との積「１．５」と、範囲出現回数６１２「３」と重み付け６１１「１．２」との積「３．６」との合計「５．１」を、文書データ「ＤＯＣ１８６」の評価値６１４とする。
【００７２】
実施の形態１における評価値算出部１２４は、範囲出現回数が最も多い分割範囲に対する重み付けを、全体出現回数に乗じることにより、評価値を算出する。すなわち、検索キーワードが文書全体のなかでどの範囲に最も多く現れるかによって、文書全体のなかでの検索キーワードの位置づけを判定し、評価値を算出する。
これに対し、この実施の形態における評価値算出部１２４は、各分割範囲についての範囲出現回数とその分割範囲に対する重み付けとの積を合算して、評価値を算出する。すなわち、検索キーワードが出現した各位置において、検索キーワードがどのように使われているかを評価し、それを累計することにより、評価値を算出する。
【００７３】
評価値の算出方式をこのように変形しても、実施の形態１と同様、検索結果を表示する場合の順位の偏りをなくし、利用者が望む文書を迅速に発見できるようにすることができる。
【００７４】
なお、実施の形態１と同様、分割範囲の数はいくつでもよいし、分割範囲は均等でなくてもよい。分割範囲の数や長さは、あらかじめ定めておく構成でもよいし、利用者が指定する構成としてもよい。また、分割範囲に対する重み付けも、あらかじめ定めておく構成でもよいし、利用者が指定する構成でもよいし、学習により更新する構成でもよい。
【００７５】
実施の形態３．
実施の形態３について、図１４〜図１５を用いて説明する。
なお、実施の形態１〜実施の形態２と共通する部分については、同一の符号を付し、説明を省略する。
【００７６】
重み付け記憶部１２３は、磁気ディスク装置９２０を用いて、比出現位置と重み付けとの関係を表わす数式（以下「重み付け算出式」と呼ぶ。）の係数を記憶している。
評価値算出部１２４は、ＣＰＵ９１１を用いて、重み付け記憶部１２３が記憶した係数に基づいて、比出現位置に対する重み付けを算出する。評価値算出部１２４は、ＣＰＵ９１１を用いて、それぞれの比出現位置に対する重み付けを累計することにより、その文書データの評価値を算出する。
【００７７】
図１４は、この実施の形態における重み付け算出式が表わす比出現位置と重み付けとの関係を表わすグラフ図である。
例えば、文書検索装置１２０は、重み付け算出式として三次式を用い、重み付け記憶部１２３は、三次項の係数として「１．６」、二次項の係数として「１．６」、一次項の係数として「−３．５」、定数項の係数として「１．６」を記憶している。
評価値算出部１２４は、重み付け算出式に比出現位置を代入して、重み付けを算出する。
例えば、比出現位置が「０」の場合、評価値算出部１２４は、重み付け「１．６」を算出する。あるいは、比出現位置が「０．５」の場合、評価値算出部１２４は、重み付け「０．４５」を算出する。また、比出現位置が「１」の場合、評価値算出部１２４は、重み付け「１．３」を算出する。
【００７８】
この実施の形態における評価値算出工程Ｓ３３０の処理の流れは、実施の形態２と同様のなので、図１２を用いて説明する。
評価値算出工程Ｓ３３０は、初期化工程Ｓ３３１と、出現位置選択工程Ｓ３３２と、比出現位置算出工程Ｓ３３４と、重み付け算出工程Ｓ３４０と、重み付け出現回数累計工程Ｓ３４１とを有する。このうち、重み付け算出工程Ｓ３４０以外は、実施の形態２と同様なので、ここでは説明を省略する。
【００７９】
重み付け算出工程Ｓ３４０において、評価値算出部１２４は、ＣＰＵ９１１を用いて、重み付け記憶部１２３が記憶した係数によって定まる重み付け算出式に、比出現位置算出工程Ｓ３３４で算出した比出現位置を代入して、重み付けを算出する。
【００８０】
図１５は、この実施の形態における評価値６１４の一例を示す図である。
この例は、図５に示した検索結果データ５１０と、図１４に示した重み付け算出式とに基づいて、評価値算出部１２４が算出する評価値の例である。
【００８１】
文書データ「ＤＯＣ０１１」の評価値６１４として、評価値算出部１２４は、検索キーワードが出現する最初の出現位置についての重み付け６１１「１．２９」と、二番目の出現位置についての重み付け６１１「０．４２」と、三番目の出現位置についての重み付け６１１「０．４３」と、四番目の出現位置についての重み付け６１１「０．４３」と、五番目の出現位置についての重み付け６１１「０．４４」と、六番目の出現位置についての重み付け６１１「０．４６」と、七番目の出現位置についての重み付け６１１「０．６８」と、最後の出現位置についての重み付け６１１「１．１６」との合計「５．３２」を算出する。
【００８２】
文書データ「ＤＯＣ０５３」の評価値６１４として、評価値算出部１２４は、検索キーワードが出現する最初の出現位置についての重み付け６１１「１．４４」と、二番目の出現位置についての重み付け６１１「１．０８」と、三番目の出現位置についての重み付け６１１「０．９２」と、四番目の出現位置についての重み付け６１１「０．４６」と、五番目の出現位置についての重み付け６１１「０．４４」と、六番目の出現位置についての重み付け６１１「０．７８」と、最後の出現位置についての重み付け６１１「０．８７」との合計「５．９８」を算出する。
【００８３】
文書データ「ＤＯＣ１８６」の評価値６１４として、評価値算出部１２４は、検索キーワードが出現する最初の出現位置についての重み付け６１１「１．５７」と、二番目の出現位置についての重み付け６１１「０．８０」と、三番目の出現位置についての重み付け６１１「１．１４」と、最後の出現位置についての重み付け６１１「１．２６」との合計「４．７７」を算出する。
【００８４】
実施の形態２における評価値算出部１２４は、検索キーワードの比出現位置が、どの分割範囲に含まれるかによって重み付けを算出する。このため、検索キーワードの比出現位置が分割範囲の境界付近である場合、わずかな比出現位置の変動によって、重み付けが大きく変化する場合がある。
この実施の形態における評価値算出部１２４は、例えば多項式で構成される重み付け算出式を用いて重み付けを算出する。重み付け算出式として、０以上１以下の定義域内で連続した関数を用いれば、比出現位置のわずかな変動で重み付けが大きく変わることがないので、より正確に、文書データの評価値を算出することができる。
【００８５】
評価値の算出方式をこのように変形しても、実施の形態１及び実施の形態２と同様、検索結果を表示する場合の順位の偏りをなくし、利用者が望む文書を迅速に発見できるようにすることができる。
【００８６】
なお、重み付け算出式の係数は、あらかじめ定めておく構成でもよいし、利用者が指定する構成でもよいし、学習により更新する構成でもよい。
【００８７】
実施の形態４．
実施の形態４について、図１６〜図１７を用いて説明する。
なお、実施の形態１〜実施の形態３と共通する部分については、同一の符号を付し、説明を省略する。
【００８８】
自然言語で書かれた文書にも、論文、新聞記事、随筆など様々な種類がある。実施の形態１〜実施の形態３では、文書の種類にかかわらず、同じ重み付けを使用する。もしくは、文書記憶装置１７０が記憶した文書データが、同じ重み付けを適用できる同種もしくは近い種類の文書だけであることを前提としている。
この実施の形態では、文書記憶装置１７０が記憶した文書データのなかに、複数の種類の文書が含まれ、文書の種類ごとに重み付けを使い分ける場合について説明する。
【００８９】
文書記憶装置１７０は、磁気ディスク装置９２０を用いて、記憶した文書データに対応づけて、その文書データの種類を表わす文書種別データを記憶している。
【００９０】
図１６は、この実施の形態における文書検索装置１２０の機能ブロックの構成の一例を示すブロック構成図である。
文書検索装置１２０は、検索キーワード入力部１２１と、文書検索部１２２と、重み付け記憶部１２３と、重み付け選択部１２６と、評価値算出部１２４と、結果出力部１２５とを有する。
【００９１】
重み付け記憶部１２３は、磁気ディスク装置９２０を用いて、複数の重み付けデータ５２０を記憶している。重み付け記憶部１２３は、磁気ディスク装置９２０を用いて、それぞれの重み付けデータ５２０に対応づけて、その重み付けデータ５２０を適用する文書データの種類を表わす文書種別データを記憶している。
【００９２】
文書検索部１２２は、ＣＰＵ９１１を用いて、検索キーワードを含むと判定した文書データそれぞれについて、その文書データの種類を表わす文書種別データを、文書記憶装置１７０から取得し、実施の形態１〜実施の形態３で説明したデータに加えて、取得した文書種別データを含む検索結果データ５１０を生成する。
【００９３】
重み付け選択部１２６は、ＣＰＵ９１１を用いて、文書検索部１２２が生成した検索結果データ５１０のなかから、検索キーワードを含むと文書検索部１２２が判定した文書データそれぞれについて、その文書データの種類を表わす文書種別データを取得する。重み付け選択部１２６は、ＣＰＵ９１１を用いて、重み付け記憶部１２３が記憶した重み付けデータ５２０のなかから、取得した文書種別データに対応づけられた重み付けデータ５２０を選択する。
【００９４】
評価値算出部１２４は、ＣＰＵ９１１を用いて、検索キーワードを含むと文書検索部１２２が判定した文書データそれぞれについて、重み付け選択部１２６が選択した重み付けデータ５２０を使用して、評価値を算出する。なお、評価値の算出方式は、実施の形態１〜実施の形態３のいずれで説明した方式であってもよい。
【００９５】
図１７は、この実施の形態における文書検索処理Ｓ３００の流れの一例を示すフローチャート図である。
文書検索処理Ｓ３００は、例えば、検索キーワード入力工程Ｓ３１０と、文書検索工程Ｓ３２０と、重み付け選択工程Ｓ３２５と、評価値算出工程Ｓ３３０と、並べ替え工程Ｓ３８０と、結果出力工程Ｓ３９０とを有する。このうち、重み付け選択工程Ｓ３２５以外は、実施の形態１〜実施の形態３で説明したものと同様なので、ここでは説明を省略する。
【００９６】
重み付け選択工程Ｓ３２５において、重み付け選択部１２６は、ＣＰＵ９１１を用いて、文書検索工程Ｓ３２０で文書検索部１２２が生成したレコード５１１から、文書種別データを取得する。重み付け選択部１２６は、ＣＰＵ９１１を用いて、重み付け記憶部１２３が記憶した重み付けデータ５２０のなかから、取得した文書種別データと同一の文書種別データに対応づけられた重み付けデータ５２０を取得する。
【００９７】
評価値算出工程Ｓ３３０において、評価値算出部１２４は、ＣＰＵ９１１を用いて、重み付け選択工程Ｓ３２５で重み付け選択部１２６が取得した重み付けデータ５２０に基づいて、評価値を算出する。
【００９８】
文書の種類によって、一般的な文章構成が異なる場合がある。このように、文書の種類によって重み付けを変えることにより、その文書で一般的な文章構成に最適の重み付けを使って、評価値を算出することができる。
これにより、検索結果を表示する場合の順位の偏りをなくし、利用者が望む文書を更に迅速に発見できるようにすることができる。
【００９９】
以上各実施の形態で説明した構成は一例であり、例えば異なる実施の形態で説明した構成を組み合わせた構成としてもよいし、重要でない部分の構成を他の構成で置き換えた構成としてもよい。
【０１００】
以上説明した文書検索装置（１２０）は、文書記憶装置（１７０）が記憶した複数の文書データのなかから検索キーワードを含む文書データを検索する。
文書検索装置（１２０）は、データを処理する処理装置（ＣＰＵ９１１）と、検索キーワード入力部（１２１）と、文書検索部（１２２）と、評価値算出部（１２４）と、結果出力部（１２５）とを有する。
上記検索キーワード入力部（１２１）は、上記処理装置（９１１）を用いて、検索キーワードを入力する。
上記文書検索部（１２２）は、上記処理装置（９１１）を用いて、上記文書記憶装置（１７０）が記憶した複数の文書データそれぞれについて、上記検索キーワード入力部（１２１）が入力した検索キーワードを検索して、上記文書データが上記検索キーワードを含むか否かを判定し、上記検索キーワードを含むと判定した文書データについて、上記検索キーワードが出現する出現位置を算出する。
上記評価値算出部（１２４）は、上記処理装置（９１１）を用いて、上記文書記憶装置（１７０）が記憶した複数の文書データのうち、上記検索キーワードを含むと上記文書検索部（１２２）が判定した文書データについて、上記文書データの先頭から上記文書検索部（１２２）が算出した出現位置までの長さを上記文書データ全体の長さで割った商を算出して比出現位置とし、算出した比出現位置に基づいて、上記文書データの評価値を算出する。
上記結果出力部（１２５）は、上記処理装置（９１１）を用いて、上記検索キーワードを含むと上記文書検索部（１２２）が判定した文書データを示す情報を、上記評価値算出部（１２４）が算出した評価値が高い順に出力する。
【０１０１】
検索キーワードの比出現位置に基づいて文書データの評価値を算出するので、文章構成を考慮して、その文書における検索キーワードの重要度を、評価値に反映させることができる。これにより、検索結果を表示する順位の偏りをなくし、利用者が望む文書を迅速に発見できるようにすることができる。
【０１０２】
上記文書検索装置（１２０）において、上記評価値算出部（１２４）は、上記処理装置（９１１）を用いて、０以上１以下の範囲を分割した複数の分割範囲について、上記比出現位置が上記複数の分割範囲のうちどの分割範囲に入るかを判定し、判定した分割範囲に基づいて、上記検索キーワードの出現回数が最も多い分割範囲を判別し、判別した分割範囲に対応づけられた重み付けを、上記文書データ全体における上記検索キーワードの出現回数に乗じた積を算出して、上記文書データの評価値とする。
【０１０３】
範囲出現回数が最も多い分割範囲を判別することにより、その文書における検索キーワードの重要度を判定し、判定した重要度に対応する重み付けを全体出現回数に乗じることにより評価値を算出するので、検索結果を表示する順位の偏りをなくし、利用者が望む文書を迅速に発見できるようにすることができる。
【０１０４】
上記文書検索装置（１２０）において、上記評価値算出部（１２４）は、上記処理装置（９１１）を用いて、上記比出現位置に対応づけられた重み付けの合計を算出して、上記文書データの評価値とする。
【０１０５】
比出現位置に対応づけられた重み付けを算出することにより、検索キーワードが出現するたびに、その文書におけるその出現の重要度を判定し、それを合計することにより評価値を算出するので、検索結果を表示する順位の偏りをなくし、利用者が望む文書を迅速に発見できるようにすることができる。
【０１０６】
上記文書記憶装置（１７０）は、記憶した複数の文書データそれぞれについて、上記文書データの種別を表わす文書種別データを記憶する。
上記文書検索装置（１２０）において、上記評価値算出部（１２４）は、上記処理装置を用いて、上記文書記憶装置（１７０）が記憶した複数の文書データのうち、上記検索キーワードを含むと上記文書検索部（１２２）が判定した文書データについて、上記文書記憶部（１７０）が記憶した文書種別データに基づいて上記重み付けを算出し、算出した重み付けに基づいて上記評価値を算出する。
【０１０７】
文書の種別によって重み付けを変えるので、一般的な文章構成が異なる種類の文書について、最適な重み付けを使って評価値を算出することができる。これにより、検索結果を表示する順位の偏りをなくし、利用者が望む文書を迅速に発見できるようにすることができる。
【０１０８】
上記文書検索装置（１２０）は、コンピュータを文書検索装置として機能させるコンピュータプログラムを、上記コンピュータが実行することにより、実現することができる。これにより、検索結果を表示する順位の偏りをなくし、利用者が望む文書を迅速に発見できるようにすることができる。
【符号の説明】
【０１０９】
１００  文書検索システム、１１０  端末装置、１２０  文書検索装置、１２１  検索キーワード入力部、１２２  文書検索部、１２３  重み付け記憶部、１２４  評価値算出部、１２５  結果出力部、１２６  重み付け選択部、１７０  文書記憶装置、５１０  検索結果データ、５１１，５２１，５３１，５４１  レコード、５１２，５３２，５４２  文書識別データ、５１３  文書サイズデータ、５１４  出現位置データ、５２０  重み付けデータ、５２２  比出現範囲データ、５２３  重みデータ、５３０  文書評価値データ、５３２  文書識別データ、５３３，５４３  評価値データ、５４０  整列検索結果データ、６１１  重み付け、６１２  範囲出現回数、６１３  全体出現回数、６１４  評価値、９０１  表示装置、９０２  キーボード、９０３  マウス、９０４  ＦＤＤ、９０５  ＣＤＤ、９０６  プリンタ装置、９０７  スキャナ装置、９１０  システムユニット、９１１  ＣＰＵ、９１２  バス、９１３  ＲＯＭ、９１４  ＲＡＭ、９１５  通信装置、９２０  磁気ディスク装置、９２１  ＯＳ、９２２  ウィンドウシステム、９２３  プログラム群、９２４  ファイル群、９３１  電話器、９３２  ファクシミリ機、９４０  インターネット、９４１  ゲートウェイ、９４２  ＬＡＮ。
【図１】
2012073877.tif 000003
【図２】
2012073877.tif 000004
【図３】
2012073877.tif 000005
【図４】
2012073877.tif 000006
【図５】
2012073877.tif 000007
【図６】
2012073877.tif 000008
【図７】
2012073877.tif 000009
【図８】
2012073877.tif 000010
【図９】
2012073877.tif 000011
【図１０】
2012073877.tif 000012
【図１１】
2012073877.tif 000013
【図１２】
2012073877.tif 000014
【図１３】
2012073877.tif 000015
【図１４】
2012073877.tif 000016
【図１５】
2012073877.tif 000017
【図１６】
2012073877.tif 000018
【図１７】
2012073877.tif 000019