(57)【要約】【課題】文書中の数値データの類似度を考慮して検索を行う。【解決手段】属性Ａの数値の集合Ｄに対して、Ｄのすべての要素を含むような数値区間の集合Ｅを生成し、Ｄの要素ｘを区間内に含むような区間に対しては１、含まないような区間に対しては0を対応させることにより、文書中の数値を索引付けする。テキスト部分は単語の頻度、数値部分は前記数値の索引付け方法を用いて、数値を含む文書データの索引付けを行う。こうして作成した文書データの索引を用いてベクトル空間法や確率モデルによる文書データ間の類似度を計算し、類似度の高い文書データから順に提示する。【選択図】図１
2008276550.tif 000002
【特許請求の範囲】
【請求項１】
複数の文書のデータを格納した文書データベースと、
前記文書データベースに格納された文書中の数値を当該数値の属性を表すラベルと当該数値が含まれる数値区間と文書中での出現頻度の組として索引付けし、文書中のテキストを当該テキストを構成する単語とその出現頻度の組として索引付けした文書毎の索引と、
検索入力として文書の指定を受け付け、前記索引を用いて前記指定された文書と前記文書データベースに格納された文書間の類似度を計算し、類似度の高い文書から順に提示する演算部と
を有することを特徴とする文書検索システム。
【請求項２】
請求項１記載の文書検索システムにおいて、前記数値区間は、属性Ａの数値の集合Ｄに対して、Ｄのすべての要素が少なくともどれかの区間に含まれるような数値区間の集合Ｅを構成していることを特徴とする文書検索システム。
【請求項３】
請求項２記載の文書検索システムにおいて、一部が互いに重複した数値区間の組が存在することを特徴とする文書検索システム。
【請求項４】
請求項１記載の文書検索システムにおいて、数値抽出処理部と、属性の種類毎に用意され数値を数値区間に変換する数値変換テーブルと、索引作成部とを有し、前記文書データベースに格納された各文書に対して、前記数値抽出処理部によって属性と数値の組を抽出し、前記索引作成部は前記抽出した属性と数値の組を前記数値変換テーブルに従って索引付けすることを特徴とする文書検索システム。
【請求項５】
請求項４記載の文書検索システムにおいて、属性と用語の組を属性と数値あるいは数値区間の組に対応付ける用語−数値変換テーブルを有し、前記数値抽出処理部は文書から属性と用語の組を抽出し、抽出された属性と用語の組を前記用語−数値変換テーブルによって用語と数値区間の組に変換し、前記索引作成部は前記用語−数値変換テーブルによって属性と数値の組に変換された属性と用語の組を前記数値変換テーブルに従って索引付けすることを特徴とする文書検索システム。
【請求項６】
検索入力として文書の指定を受け付ける工程と、
文書データベースに格納されている文書中の数値を当該数値の属性を表すラベルと当該数値が含まれる数値区間と文書中での出現頻度の組として索引付けし、文書中のテキストを当該テキストを構成する単語とその出現頻度の組として索引付けした文書毎の索引と、前記検索入力として指定された文書の索引を用いて前記指定された文書と前記文書データベースに格納された各文書の類似度を計算する工程と、
前記文書データベースの文書を前記類似度の高い順に提示する工程と
を有することを特徴とする文書検索方法。
【請求項７】
請求項６記載の文書検索方法において、前記数値区間は、属性Ａの数値の集合Ｄに対して、Ｄのすべての要素が少なくともどれかの区間に含まれるような数値区間の集合Ｅを構成していることを特徴とする文書検索方法。
【請求項８】
請求項７記載の文書検索方法において、一部が互いに重複した数値区間の組が存在することを特徴とする文書検索方法。
【請求項９】
請求項６記載の文書検索方法において、前記文書データベースに格納された各文書に対して属性と数値の組を抽出する工程と、属性毎に数値を数値区間に変換する数値変換テーブルに従って前記抽出した属性と数値の組を索引付けする工程を有することを特徴とする文書検索方法。
【請求項１０】
請求項９記載の文書検索システムにおいて、文書から属性と用語の組を抽出する工程と、属性と用語の組を属性と数値あるいは数値区間の組に対応付ける用語−数値変換テーブルに従って前記抽出した属性と用語の組を用語と数値区間の組に変換する工程と、前記工程で属性と数値の組に変換された属性と用語の組を前記数値変換テーブルに従って索引付けする工程を有することを特徴とする文書検索方法。
【請求項１１】
複数の文書のデータを格納した文書データベースに格納されている各文書から属性と数値の組を抽出する工程と、
属性の種類毎に用意された数値を数値区間に変換する数値変換テーブルに従って前記抽出した数値を数値区間に変換し、属性と数値区間と出現頻度の組として索引付けする工程と、
文書中のテキストを当該テキストを構成する単語とその出現頻度の組として索引付けする工程と、
前記索引付けされた文書データを用いて、検索入力として指定された文書データと前記文書データベースに格納された各文書の類似度を計算する工程と、
前記文書データベースの文書を前記類似度の高い順に提示する工程と
を有することを特徴とする文書検索方法。
【請求項１２】
請求項１１記載の文書検索方法において、前記数値区間は、属性Ａの数値の集合Ｄに対して、Ｄのすべての要素が少なくともどれかの区間に含まれるような数値区間の集合Ｅを構成していることを特徴とする文書検索方法。
【請求項１３】
請求項１１記載の文書検索方法において、文書から属性と用語の組を抽出する工程と、属性と用語の組を属性と数値あるいは数値区間の組に対応付ける用語−数値変換テーブルに従って前記抽出した属性と用語の組を用語と数値区間の組に変換する工程と、前記工程で属性と数値の組に変換された属性と用語の組を前記数値変換テーブルに従って索引付けする工程を有することを特徴とする文書検索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書検索システム及び文書検索方法に関し、数値データを含む文書の検索システム及び検索方法に関する。
【背景技術】
【０００２】
文書情報の電子化が進むにつれ、大量の情報の中からユーザが必要とする情報を効率よく探し出すことが重要な課題となっている。情報検索技術はこのような課題を解決するための技術であり、インターネットの検索エンジンは情報検索技術を応用したものである。ユーザが検索要求を入力すると、大量の文書情報から入力に関連する情報が検索され、関連度順に表示される。
【０００３】
また、特開2000-155758号公報「複数文書データベースを対象とした文書検索方法及び文書検索サービス」には、検索要求として文書群を入力とし、同じ文書データベース内の関連する文書群を検索する文書連想検索と呼ばれる方法が開示されている。文書連想検索では、文書を単語（もしくは文字列）に分解し、ある文書にある単語が何回出現するかという単語出現頻度のベクトルを作成し、入力文書と文書データベース内の文書のベクトル間の類似度（非特許文献１「言語表現のベクトル空間モデルにおける最適な計量距離」）や確率モデルによる文書間の類似度（特開平9-62693号公報「確率モデルによる文書分類方法」参照）から類似文書を検索する方法を取っている。
【０００４】
【特許文献１】特開2000-155758号公報
【特許文献２】特開2004-178490号公報
【特許文献３】特開平9-62693号公報
【非特許文献１】言語表現のベクトル空間モデルにおける最適な計量距離，持橋 大地他、電子情報通信学会論文誌「情報・システム：D-II」，J88-D-II，No.4，pp.747-756，April，2005
【非特許文献２】数値情報をキーとした新聞記事からの情報抽出, 斉藤 公一他, 自然言語処理研究会報告, 1998-ＮＬ-125, 情報処理学会, 1998
【発明の開示】
【発明が解決しようとする課題】
【０００５】
文書連想検索では文書に数値データ（例えば実測値データ）が含まれる場合には、数値データは、単語の１つとして出現頻度が計算され類似度が計算される。しかし、数値によっては、近しい数値は同一の語として扱いたい場合がある。例としては、電子カルテやオーダリングシステムなどの医療情報システムを利用する現場において、医師や薬剤師がある患者の状態に似た患者の情報を検索したいという場合である。
【０００６】
そのような場合には、電子カルテの経過記録（初期の記録を記載した後に、経過に従って患者の訴えや診察所見、検査結果、医師の推論や判断の結果治療の方針などを入力する）などの記述を参照し、症状の似た患者を探す。経過記録の文書中には、検査値など患者の症状を表現するために重要な意味を持つ数値データも記載されている。そこで、経過記録などの文書を単語に分解し、出現頻度ベクトルを生成し、ある患者の文書の出現頻度ベクトルと類似する文書を探し、似た患者の情報の連想検索を行うとする。ところが、「血糖値124mg/dl」「血糖値125mg/dl」「血糖値180mg/dl」では、前者２つの数値は中程度の血糖値を意味し症状としては類似し、高血糖を意味する後者とは症状が異なるにもかかわらず、重要な意味を持つ数値データの類似度が考慮されないため同一の類似度として検索されてしまい、検索の精度が低減してしまう。
【０００７】
またカルテに症状所見を記載する際に、症状を表現する標準的な用語・コードと数値を併用して使用する場合（例えば、大きさに関して「米粒大」と「3mmから4mm程度の数値」を併用）がある。標準的な用語・コードもしくは数値のどちらか一方で記載された文書を元に連想検索を行うと、他方の表記で記載された文書は検索対象とされないため、同様に検索精度の低下が生じてしまう。
【課題を解決するための手段】
【０００８】
そこで、本発明では属性Ａの数値の集合Ｄに対して、Ｄのすべての要素を含むような数値区間の集合Ｅを生成し、Ｄの要素ｘを区間内に含むような区間に対しては１、含まないような区間に対しては0を対応させることにより、文書中の数値を索引付けする。複数の属性の数値を含む場合には、それぞれの属性の数値に対する数値区間集合を生成し数値を索引付けする。テキスト部分は単語の頻度、数値部分は前記数値の索引付け方法を用いて、数値を含む文書データの索引付けを行う。文書データの索引を用いてベクトル空間法や確率モデルによる文書データ間の類似度を計算し、類似度の高い文書データから順に提示する。
【０００９】
類似度の計算方法の例として、ベクトル空間法による例を挙げる。まず文書を多次元のベクトルで表現する。
【００１０】
【数１】
2008276550.tif 000003
【００１１】
文書ベクトルの各要素は、ある単語がその文書に出現するか否かという2値の場合もあれば、ある単語がその文書に何回出現するかという出現頻度の場合もあれば、適当な方法(TF-IDFなど)で重みをつけた実数値の場合もある。
二つの文書の類似度としては、二つの文書ベクトルｘ１とｘ２のコサイン距離を用いる。
【００１２】
【数２】
2008276550.tif 000004
【００１３】
文書中で属性の状態を表す用語（例えば大きさを表す用語「米粒大」）と、その属性を表す数値（例えば「4mm」）を混在して表記する場合については、次のような手段を行う。属性を表す用語に対して用語を特徴付ける数値や用語を表現するためにどの程度の数値まで許容するか（例えば、「3mmから4mm」の数値）区間を規定し、数値区間と用語の対応データを生成する。そして、属性の状態を表す数値が上記区間内に含まれる場合には上記区間に対して１を、含まない場合には0を与え、用語に対しては上記数値区間に対して１を与える索引付け方法により、属性の状態の用語と数値を併用するデータの索引付けを行う。
【００１４】
数値と対応した属性の状態によって複数の用語が使われる場合（例えば、大きさという属性に対して米粒大や鶏卵大のような複数の用語）には、まずそれぞれの用語を表現する代表的な数値又は数値区間とその用語を対応付けるデータ（米粒大は「3mmから4mmの数値区間」、鶏卵大は「50mmから60mmの数値区間」）を生成する。
【００１５】
そして前記数値区間の最も短い区間幅（上記の例では1mm）で、すべての数値を被覆する区間集合を生成する。
【００１６】
文書に含まれる数値データの抽出は、数値とそれに関連する属性情報を特定の形式で抽出する。データベースのように項目に対して属性が明示的に割り振られている場合には、数値と項目に対する属性のペアとして抽出し文書データの索引として利用する。文書データにおいては、数値の近隣の用語や数値の直後に表れる単位の言語表現パターンから、どのような意味を持つ数値かを特定し、数値を抽出する。非特許文献2「数値情報をキーとした新聞記事からの情報抽出」など既存の方法が利用できる。どのような数値データを抽出の対象とするかはユーザが任意に決める。
【００１７】
数値の表記によっては同一の意味を持つ数値でも単位が異なるため、異なる表記とする場合があり、特開2004-178490号公報「数値情報検索装置」のように、単位を統一する方法が利用できる。
【発明の効果】
【００１８】
本発明によると、データ中に含まれる数値データに重要な意味が含まれる場合には、数値の類似度を考慮したより検索精度の高い文書検索が可能となる。検索作業効率の向上も可能となる。
【発明を実施するための最良の形態】
【００１９】
図１は、本発明を実現するためのシステムの構成例を示す概略図である。このシステムはクライアント11、サーバ13、クライアントとサーバ間を接続する通信ネットワーク12から構成される。クライアント11は、ユーザからの検索要求を入力する検索要求入力手段111、ユーザからの検索要求を受け、サーバへの検索要求の発行を行う検索要求発行手段112、ユーザに対して検索結果の表示を行う検索結果表示手段113、ディスプレイ・キーボード・マウス114、制御・演算装置115を備える。
【００２０】
サーバ13は、制御・演算装置131、索引作成プログラム132、検索サーバプログラム133、数値抽出プログラム134、文書データ135、文書の索引136、数値区間生成プログラム137、数値変換テーブル138、用語−数値変換テーブル139を備える。数値区間生成プログラム137を利用して、数値変換テーブル138を予め作成しておく。数値変換テーブル作成詳細については後に述べる。サーバ13は、検索対象となる文書データ135から、重要な意味を持つ数値を予め数値抽出プログラム134を用いて抽出し、索引生成プログラム132を用いて、数値変換テーブル138のある区間に属する数値データはその区間を表す索引とその索引に対して１を与える処理とテキスト部分は単語の頻度によって索引付けし、各文書に現れる単語と単語の頻度の情報を索引136として格納しておき、検索処理に利用する。
【００２１】
次に、クライアント11が文書データベース内の任意の文書群に関連する文書群を得る方法について説明する。
クライアント11は、検索要求発行手段112を用いて、ユーザの入力に応じて検索元となる文書データベース内の文書群を指定し、通信ネットワーク12を介してユーザが指定した文書の情報をサーバ13に送出する。サーバ13側では、検索サーバプログラム133、索引136を用いて、指定した文書群と関連度（類似度）の高い文書群を文書データベースから検索する。公知技術であるベクトル空間法を用いて文書間の関連度は計算できる。文書検索結果は関連度の重み付きで、通信ネットワーク12を介してクライアント11に返される。以上の方法で、クライアント11は文書データベース135内の任意の文書群に関連する文書群を得ることができる。
【００２２】
図2は、クライアント11における初期画面の例を示す図である。利用者は検索要求入力エリア201に検索要求を入力し、検索指示ボタン202をクリックすることで検索を行う。検索元の文書データが複数ある場合は、検索元指定エリア203のチェックボックスを使用し検索元文書データの指定を行う。
【００２３】
図3は、クライアント11における関連文書の検索結果例を示す図である。検索結果は検索結果表示手段112によって表示される。検索結果表示手段112は文書群指定手段もかねており、文書選択エリア301のチェックボックスにより、任意個数の記事を選択し、連想検索指示ボタン302をクリックすることで、選択した記事と関連する文書を連想検索することができる。上記画面で、患者ID0350046のレポートをチェックし連想検索を行うと、下記画面のようにチェックしたレポートと関連度の高いレポートの順に検索結果が表示される。なお、この例は後述する図6の索引を用いて連想検索している。
【００２４】
図4は、検索対象となる文書データ135から数値抽出プログラム134を用いて抽出した数値を索引化する際に使用する、数値変換テーブル138の例である。文書から抽出された数値データは、索引作成プログラム132によって数値変換テーブル138の属する区間に対応する索引に変換され、索引に対して１が与えられる。図4(a)の数値変換テーブルは、血糖値データの数値変換テーブルの例となっている。１列目は数値の属性を表す属性名のフィールドとなっていて、２列目は数値区間を表すフィールドとなっている。文書から抽出された数値に上記数値変換テーブルの該当する数値区間を見つけ出し、該当する数値区間に相当する文字列とその数値属性の組を抽出された数値の索引とする。図4(b)の数値変換テーブルは、血糖値データの数値変換テーブルの例であるが、図4(a)のテーブルと数値区間が異なる。同じ属性であっても、異なる数値区間を用いて１つの数値に対して複数の索引を生成することも考えられる。数値区間の異なる索引によって索引化されることで様々な視点から数値を索引化できる。図4(c)の数値変換テーブルは、年齢データの数値変換テーブルの例となっている。文書から抽出された数値の属性によって数値変換テーブルは使い分けられる。
【００２５】
図5は、数値変換テーブル作成方法の例を示す図である。例えば、人の血糖値データの分布を、人数が等割合になるように区間をいくつかに分割し、同一区間に含まれる場合には数値が意味的に近いと考える場合である。図では、人数が15%ずつの割合になるように分割し区間を決めている。これにより作成された区間は「10mg/dl以上50mg/dl未満」「50mg/dl以上80mg/dl未満」「80mg/dl以上100mg/dl未満」「100mg/dl以上130mg/dl未満」「130mg/dl以上200mg/dl未満」のようになる。この区間の分割方法によって作成される数値変換テーブルの例は、図4(a) のようになる。さらに、区間の分割方法を数種類使用し、数値の変換を行うことで、区間の境界近辺に位置する数値について複数の視点から数値の意味付けを行うことができる。図では、15%での分割方法に加え、人数が30%ずつになるように分割する例を示している。30%ずつの割合での分割方法で生成された索引は図4(b)のようになる。これらの数値区間の異なる数値変換テーブルを用いると“血糖値124mg/dl”という数値情報が文書データ中に含まれた場合に、“100mg/dl以上130mg/dl未満”と“120mg/dl以上200mg/dl未満”の二つの区間から数値の索引付けを行えることとなる。
【００２６】
図6は、索引作成プログラム132などを用いて、索引136の作成を行った場合のデータ例である。この例では、数値データは、数値の属性を表すラベルと数値区間を表す語から成る索引として索引化され、その索引の出現頻度が表されている。またテキスト部分は単語の頻度によって索引付けされている。図３の例文では血糖値のデータと年齢のデータを含むが、異なる属性の数値データは各属性の数値変換テーブルを用いて索引化する。図3の患者ID0350046や患者ID1112708の文章に対して図4(a)のテーブルを用いて血糖値データを索引化すると、患者ID 0350046の索引“血糖値%100mg/dl以上130mg/dl未満”や患者ID 1112708の索引 “血糖値%130mg/dl以上200mg/dl未満”が生成できる。また、図4(b)のテーブルを用いて患者ID 0350046の索引“血糖値%120mg/dl以上200mg/dl未満”や患者ID 1112708の索引“血糖値%120mg/dl以上200mg/dl未満”を生成させ、同じ属性に対してレベルの異なる索引を用いて索引付けすることにより、複数の視点から索引付けができる。また図4(c)の属性の異なるテーブルを用いて、年齢データを索引化し、患者ID 0350046の索引“年齢%40歳以上60歳未満”や患者ID1112711の索引“年齢%60歳以上”を生成できる。
【００２７】
数値区間生成プログラム137を利用して数値変換テーブル138を作成する方法は、数値データの特性によって様々な方法がある。図7〜11に、ある分布を持つ数値を区間で被覆する方法の例を示す。
【００２８】
図7は、ある分布を持つ数値を、数値の個数割合が同じになるような区間で被覆した例である。すべての値を被覆する区間の集合は、レベルの異なるいくつかの割合で生成され数値を被覆している。例えば、ある数値x1は、割合のレベルの異なる4つの区間I1,I2,I3,I4に属するようになっている。そのためこの数値x1を索引付けすると、この数値が含まれる区間I1,I2,I3,I4に対して１を与えることになる。また、数値x2には3つの区間I3,I4,I5の索引に対して1を与えることになる。このように、区間の幅や被覆する数値が異なる索引で索引付けすることにより、数値が区間の境界に位置する場合などは、柔軟な意味付けを行うことが出来る。
【００２９】
図8は、ある分布をもつ数値をa%ずつの等割合含み、区間の重なりがb％ずれるような区間で被覆した例である。
【００３０】
図9は、用語−数値変換テーブル139の一例を示す図である。本例は、カルテに症状所見を記載する際、症状を表現するために使われる標準的な用語・コードと対応する数値の例である。図9に示したテーブルは、大きさを表す用語群とその用語によって示される数値の対応関係を示しており、このテーブルを用いることにより、大きさを表す用語を数値に変換することができる。図9では離散的な数値が特徴量となっているが、特徴にばらつきがある場合には、図10に示す用語−数値変換テーブル139のように数値区間で用語の特徴を表す場合もある。文書データ中に大きさを表す数値が記載された場合は、数値を含む数値区間を索引として索引に対して１を与えるような索引付けを行い、症状を表現する用語が現れた場合には対応する数値区間を索引とし、索引に対して１を与える。長さや重さなど標準的な用語・コードと数値が対応する場合には、表現を一表記に変換し索引の生成を行う。
【００３１】
図11は、図10の例のように複数の症状を表す用語に対応する数値区間が、様々な許容幅で生成される場合の索引付け方法を説明する図である。数値集合に対して最短の許容幅（図10の例では「粟粒大」の「1mm」）をもつ区間の集合で被覆した例となっている。文書データ中に大きさを表現する数値が表れた場合には、数値を含む区間を索引とし、索引に対して１を与える。また用語が現れた場合には、用語を特徴付ける数値区間と重なる最小許容幅の区間の集合を索引とし、それぞれの索引に対して１をあたえる。図11の例で言うと、「鶏卵大」という表現が現れた場合には、区間In, In+1, In+2, In+3, …, In+10を索引とし、これらの索引に対して１を与える。このような索引付け方法で索引を生成する。また、区間I’1, I’2, …,I’mのように長さの異なる区間を生成し、用語や数値を長さの異なる区間の索引を用いて索引化する場合も考えられる。
【００３２】
図12は、数値変換テーブルを作成するためのユーザインタフェース例を示している。数値区間生成の対象となるデータの属性は属性指定領域1201の属性名選択ラジオボタン1212から選択する。数値区間生成の対象となるデータは、ユーザがデータ指定領域1202のデータ指定部1214から任意に与えてもよいし、文書データから生成してもよい。どちらの方法を取るかはデータ指定エリアのラジオボタン1213で選択する。ユーザが分布を持つデータを与える場合には、分布を持つ数値データを指定するデータ指定部1214にデータファイルを指定し読込ボタン1215を押すと、データが読み込まれる。読み込まれたデータの分布は分布表示部1203に表示される。データ指定チェックボックス1213の下側のラジオボタンをチェックした場合、文書データから分布データを生成する。分布生成対象とする文書データを文書データ指定部1216から選択し分布生成ボタン1217をクリックする。このユーザからの要求により属性名選択ラジオボタン1212で選択した属性名のデータに関する分布データを作成する。分布データは、数値分布データ生成プログラム（図22にフローを示す）を用いて生成される。数値分布データ生成プログラムでは、文書データ指定部1216で指定された文書データから、属性名選択ラジオボタン1212で選択された属性名に関するデータを収集し、分布データを生成する。生成された分布データを用いて分布表示部1203に表示する。
【００３３】
上記の分布データに対して、数値区間生成プログラム137を使用して数値区間を生成する。パラメータ1205、1206などを指定し完了ボタン1207を押すと、数値区間1204と数値変換テーブル138が生成される。単位選択ラジオボックス1208や等割合・等区間などの選択が出来るラジオボックス1209があってもよい。また、区間の幅を様々な種類で生成させられるように、上記の機能をユーザが必要とする個数だけ増やすことができてもよい。さらに、区間の生成を行う範囲を指定できるように、区間生成の始点1210と終点1211を指定できてもよい。
【００３４】
図13のシーケンス図により、文書データ135中の数値データの抽出を数値抽出プログラム134を用いて行い、索引作成プログラム132を用いて索引136を作成する流れを説明する。索引はユーザが検索を行う前に予め作成される。
【００３５】
演算装置にデータベースから文書データ135を参照する(T11)。演算装置は、文書データ135から数値抽出プログラム134を用いて、特定の数値に関するデータを抽出する。次に、索引生成プログラム132を用いて、数値変換テーブル138のある区間に属する数値データはその区間を表す索引とその索引に対して１を与える処理と、文書データ135のテキスト部分は単語の頻度によって索引付けする処理を行う。前記処理によって作成された索引136をデータベースに格納する(T12)。各プログラムの詳細は、図15、図16のフローチャートを用いて後述する。
【００３６】
図14のシーケンス図により、クライアント、サーバの間のデータ及び処理の流れを説明する。ユーザが問合せの文書を指定し入力し、検索要求発行手段を用いて演算装置に送信する（Ｔ21）。問合せ文書に関する単語出現頻度データと同文書を含む文書データベース中の文書に関する単語出現頻度データを参照する（Ｔ22，Ｔ23）。演算装置は、問合せ文書と格納された文書との類似度を単語出現頻度データを用いて計算し、類似度の高い文書を返す(T24)。
【００３７】
図15、図16、図17のフローチャートを用いて各プログラムの動作について説明する。図15は、検索対象となる文書データ135から重要な意味を持つ数値とその属性を抽出する処理に関する数値抽出プログラム134を説明するフローチャートである。ここで抽出する数値情報は、ある特定の属性とその属性に関する数値との組である。数値抽出プログラムは図19の索引作成のインタフェースの索引作成ボタンが押下されることで起動され、索引作成プログラムが引き続いて実行される。索引作成インタフェースで指定される属性を抽出の対象とする。
【００３８】
索引作成インタフェースでユーザに指定された文書データ135（1346）を取得し（1347）、茶筅などの形態素解析プログラムを用いて解析（1341）する。形態素解析の結果、名詞に分類された語のうち、ユーザに指定された属性に関する用語と数詞と属性に関連する単位を属性名・単位用語辞書1344を参照し抽出(1342)する。属性名用語辞書の例を図20(a)に示す。属性名によっては、さまざまな表現の仕方があるため異表記を全て網羅する用語辞書を作成し抽出に用いる。また単位辞書の例を図20(b)に示す。単位も単位の表記方法が種々存在するため、異表記を全て網羅する単位辞書を作成し、抽出に用いる。次に、数詞情報とその近隣に現れる単位、属性をパターンマッチングによって抽出し(1343)、出力する。抽出する対象となるパターン「数詞」と「単位」と「属性」はあらかじめ定義してパターン辞書(1345)として持っておく。パターン辞書の例を図21に示す。
【００３９】
図16では、文書データに数値とその属性に関する名称の組を含む場合の索引作成プログラム132の動作について説明する。文書データから、数値情報とその属性に関する名称の組1321は予め数値抽出プログラム134を用いて抽出して、文書データと対応付けておく。テキスト部分と数値情報部分で処理が別れる（1322）。文書データのテキスト部分は形態素解析プログラムなどを利用して単語に分解し（1323）、出現頻度を計算する（1325）。この場合、単語を索引化してもよいし、N-gramなどの文字列を索引化してもよい。また、抽出した数値情報部分のテキストを含んでもよいし含まなくてもよい。数値情報と属性名の組に関しては、属性名に関する数値変換テーブルを用いて、抽出された数値が該当する数値区間に置き換え（1324）、数値区間と属性名の組として索引化し、その出現頻度を計算する（1325）。作成された索引と出現頻度は、索引としてデータベースに格納する（1326）。
【００４０】
図17では、数値区間を生成するためのプログラム137の一例を説明する。ユーザによりGUIを用いて、属性名選択ラジオボタン1212で指定した属性の分布を持つ数値データの入力(1371、図12の1214、1215)、もしくは文書データ指定部1216で指定された文書データから分布データの作成を行う（数値分布データ生成プログラム（図22にフローを示す）を用いて文書データ指定部1216で指定された文書データから属性名選択ラジオボタン1212で指定した属性に関する分布データを作成する）。作成された分布を表示（1372）する。ユーザが指定した数値区間の種類だけ（1373）、ユーザが指定したパラメータ（区間生成範囲、区間生成の単位、区間の幅、等割合か等区間か、重複度）1374を用いて数値区間の生成を行う（1375）。生成した属性と数値区間のデータは、数値変換テーブル138として格納する（1376）。
【００４１】
図18は、数値の表記の仕方によっては数値の単位や表記方法が異なる場合に単位変換を行うための属性情報辞書と変換情報辞書の例を示す。図18(a) は属性情報辞書の例を示し、図18(b)は変換情報辞書の例を示す。特開2004-178490号公報「数値情報検索装置」の単位を統一する方法を参考にする。単位変換は、文書データに対して数値抽出プログラム134を適用後に行う。文書に数詞と単位の組が出現した場合に、単位変換の対象となるかどうか属性情報辞書を用いてチェックする。属性情報辞書には単位変換の対象となる数詞と単位また属性名を格納する。単位変換の対象となる数詞と単位の組が文書中に現れた場合には、その文字列に対してタグを付与する。次に、属性、変換前の数詞・単位、変換後の数詞・単位が格納された変換情報辞書を用いて、タグが付与された文字列が変換前の数詞・単位の組に当てはまる場合には、変換後の数詞・単位の組に変換し単位を統一する。
【００４２】
例として、以下の例文(a),(b),(c)を用いる。
(a) 0.15cmの大きさの腫瘍
(b) 20mmの大きさの腫瘍
(c) 0.05メートルの大きさの腫瘍
【００４３】
数値抽出プログラム134を用いて、属性を表す用語と数詞とそれに付随する単位にタグを付与する。
(a-1) <数詞と単位>0.15cm</数詞と単位>の<属性>大きさの腫瘍</属性>
(b-1) <数詞と単位>20mm</数詞と単位>の<属性>大きさの腫瘍</属性>
(c-1) <数詞と単位>0.05メートル</数詞と単位>の<属性>大きさの腫瘍</属性>
【００４４】
タグが付与された部分について属性情報辞書を用いて、数詞・単位の組について単位変換の必要があるかどうかチェックし、必要があるものには変換のためのタグを付与する。
(a-2) <数詞と単位><LENGTH>0.15cm</LENGTH></数詞と単位>の<属性>大きさの腫瘍</属性>
(b-2) <数詞と単位>20mm</数詞と単位>の<属性>大きさの腫瘍</属性>
(c-2) <数詞と単位><LENGTH>0.05メートル</LENGTH></数詞と単位>の<属性>大きさの腫瘍</属性>
【００４５】
変換が必要と認識された文字列について、変換情報辞書を用いて単位の変換を行う。
(a-3) <数詞と単位>0.15*10**2mm</数詞と単位>の<属性>大きさの腫瘍</属性>
(b-3) <数詞と単位>20mm</数詞と単位>の<属性>大きさの腫瘍</属性>
(c-3) <数詞と単位>0.05*10**3mm</数詞と単位>の<属性>大きさの腫瘍</属性>
【００４６】
図19は、索引作成のインタフェースの例を示す。このインタフェースは、形態素解析やN-gramなど文書データの解析を行うための解析器を指定する解析器指定部1901と解析対象となるデータを指定するデータ指定部1902、複数の数値変換テーブルから任意のテーブルを指定する数値変換テーブル指定部1903、索引作成ボタン1904を備える。
【００４７】
図21に、パターン辞書1345の例を示す。辞書のパターンで文章中に表現された場合に属性の情報を抽出する。「血糖値+数詞+mg/dl」と言うパターンは、文章中（何語以内という制限を設けてもよい）に用語「血糖値」と「数詞」と単位「mg/dl」が前記の順序で現れた場合に、それらの文字列を血糖値の情報として抽出しタグを付与する。
【００４８】
図22のフローチャートにより、数値分布データ生成プログラムの処理の流れを示す。数値分布データ作成プログラムは、図12に示した数値変換テーブル作成インタフェースの分布生成ボタンによって起動される。属性名選択ラジオボタン1212で指定された文書データ135を取得し（2201,2202）、文書データに対して形態素解析を行う（2203）。形態素解析結果の名詞に分類された語のうち、ユーザに指定された属性に関する用語と数詞と属性に関連する単位を属性名・単位用語辞書1344を参照し、抽出する(2204)。次に、数詞情報とその近隣に現れる単位、属性をパターンマッチングによって抽出し(2205)、出力する。抽出する対象となるパターン「数詞」と「単位」と「属性」は、あらかじめ定義してパターン辞書1345として持っておく。パターン辞書の例を図21に示す。抽出された数値情報は同じ属性を表す数値でも単位が異なる場合があるので、上述のように属性情報辞書や変換情報辞書2209を用いて単位の変換を行う（2206）。抽出された数値ごとに集計を行い（2207）、分布データを作成して出力する（2208）。ここで生成されたデータは、数値区間を生成するためのプログラム137の入力となる。
【００４９】
図23(a)に、データのどの項目を解析対象とし索引作成するかを示す、解析対象指示テーブルの例を示す。解析対象指示テーブルには、１列目はデータの種類、2列目は各データで解析対象となる文書データが格納された項目の名称、3列目以降は属性データが格納されている項目の名称が入っている。図23(b)に、解析対象のデータの例を示す。解析対象のデータ例は、経過記録データの例で3列目のレポートという項目に文書データが格納され、4列目の基本情報（年齢）という項目に年齢が格納されている。経過記録のデータの血糖値データと年齢データに対して数値変換を行い、索引作成を行いたい場合には、文書データ項目と年齢データ項目を使って索引作成を行う必要がある。そこで、解析対象指示テーブルのデータの種類が「経過記録」となっている行で、文書データ項目と年齢データ項目を得て、経過記録データの各項目を解析対象とする。
【図面の簡単な説明】
【００５０】
【図１】本発明の実施例を構成する図。
【図２】クライアントにおける初期画面の例を示す概略図。
【図３】クライアントにおける検索結果の例を示す概略図。
【図４】数値変換テーブルの例を示す図。
【図５】数値変換テーブル作成方法の例を示す図。
【図６】索引付けの例を示す図。
【図７】数値を被覆する数値区間の例を示す図。
【図８】数値を被覆する数値区間の例を示す図。
【図９】医療で標準的な用語・コードと数値の対応テーブルの例を示す図。
【図１０】医療で標準的な用語・コードと数値区間の対応テーブルの例を示す図。
【図１１】用語に対する索引作成方法の例を示す図。
【図１２】数値変換テーブルを作成するためのユーザインタフェース例を示す図。
【図１３】数値データの抽出を行い、索引を作成する流れを示すシーケンス図。
【図１４】クライアント、サーバの間のデータ及び処理の流れを示すシーケンス図。
【図１５】数値抽出プログラムのフロー図。
【図１６】索引作成プログラムのフロー図。
【図１７】数値区間を生成するためのプログラムのフロー図。
【図１８】属性情報辞書と変換情報辞書の例を示す図。
【図１９】索引作成のユーザインタフェースの例を示す図。
【図２０】属性名・単位用語辞書の例を示す図。
【図２１】パターン辞書の例を示す図。
【図２２】数値分布データ生成プログラムのフロー図。
【図２３】解析対象指示テーブルの例を示す図。
【符号の説明】
【００５１】
11：クライアント
111：検索要求入力手段
112：検索要求発行手段 
113：検索結果表示手段
114：ディスプレイ・キーボード・マウス
115：制御・演算装置
12：通信ネットワーク
13：サーバ
131：制御・演算装置
132：索引作成プログラム
133：検索サーバプログラム
134：数値抽出プログラム
135：文書データ
136：索引 
137：数値区間生成プログラム
138：数値変換テーブル
201：検索要求入力エリア
202：検索指示ボタン
203：検索元指定エリア
301：文書選択エリア
302：連想検索指示ボタン
1201：属性指定領域
1202：データ指定領域
1203：分布表示部
1204：数値区間表示部
1205：パラメータ（区間幅）
1206：パラメータ（重複度）
1207：完了ボタン
1208：単位選択ラジオボックス
1209：等間隔・等割合選択ラジオボックス
1210：区間生成の始点
1211：区間生成の終点
1212：属性名選択ラジオボタン
1213：データ指定エリア
1214：データ指定部
1215：読込ボタン
1216：文書データ指定部
1217：分布生成ボタン
【図１】
2008276550.tif 000005
【図２】
2008276550.tif 000006
【図３】
2008276550.tif 000007
【図４】
2008276550.tif 000008
【図５】
2008276550.tif 000009
【図６】
2008276550.tif 000010
【図７】
2008276550.tif 000011
【図８】
2008276550.tif 000012
【図９】
2008276550.tif 000013
【図１０】
2008276550.tif 000014
【図１１】
2008276550.tif 000015
【図１２】
2008276550.tif 000016
【図１３】
2008276550.tif 000017
【図１４】
2008276550.tif 000018
【図１５】
2008276550.tif 000019
【図１６】
2008276550.tif 000020
【図１７】
2008276550.tif 000021
【図１８】
2008276550.tif 000022
【図１９】
2008276550.tif 000023
【図２０】
2008276550.tif 000024
【図２１】
2008276550.tif 000025
【図２２】
2008276550.tif 000026
【図２３】
2008276550.tif 000027