(58)【調査した分野】(Int.Cl.,DB名)
前記抽出部は、前記分類対象キーワードに対する類似度に基づき検索した登録キーワードに応じて抽出された各カテゴリの組み合わせのうち同一である組み合わせの数、及び、前記分類対象キーワードとの共起に基づき検索した登録キーワードに応じて抽出された各カテゴリの組み合わせのうち同一の組み合わせの数に応じて、当該カテゴリに重要度を設定する
請求項1から4のいずれか1項に記載の情報処理装置。
前記抽出部は、前記分類対象キーワードの文字数に応じて、前記分類対象キーワードに対する類似度に基づき検索した登録キーワード及び前記分類対象キーワードとの共起に基づき検索した登録キーワードに優先度を設定する
請求項1から5のいずれか1項に記載の情報処理装置。
前記抽出部は、前記分類対象キーワードの文字数が多くなるにつれて、前記分類対象キーワードに対する類似度に基づき検索した登録キーワードの優先度を、前記分類対象キーワードとの共起に基づき検索した登録キーワードの優先度より高くする
請求項6に記載の情報処理装置。
前記出力部は、検索された前記登録キーワードのそれぞれと、当該登録キーワードを抽出した検索が類似度に基づく処理と共起に基づく処理とのいずれかであるかを識別可能に出力する
請求項1から11のいずれか1項に記載の情報処理装置。
前記抽出部は、前記カテゴリ辞書から前記分類対象キーワードを含む登録キーワードを更に検索して、検索された登録キーワードに割り当てられたカテゴリを前記カテゴリ辞書から抽出する
請求項1から12のいずれか1項に記載の情報処理装置。
【発明を実施するための形態】
【0007】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0008】
図1は、情報処理装置10の全体構成図である。情報処理装置10は、分類対象キーワードをカテゴリに分類する際の文字上の編集距離等に基づく類似度、及び、共起等に基づいて検索した登録キーワードに割り当てられたカテゴリをカテゴリ辞書から検索して、当該カテゴリを候補として出力する。これにより、情報処理装置10は、分類対象キーワードの分類精度を向上させる。例えば、情報処理装置10は、医療に関する分類対象キーワードを分類するカテゴリとして、「病名」及び「成人病」等の医療に関するカテゴリを候補として出力する。
【0009】
分類対象キーワードの一例は、新語及び未知語である。新語は、例えば、単語としては既知だがカテゴリ辞書30において未分類の初出の単語である。新語の一例は、カテゴリ辞書30に含まれる既知の「左顔面」及び「麻痺」を含む「左顔面麻痺」である。未知語は、例えば、言語処理において単語の可能性が高いと判定された文字列である。未知語の一例は、カテゴリ辞書30に含まれない未知の「ノロ」を含む「ノロウィルス」である。
【0010】
図1に示すように、情報処理装置10は、制御部12と、記憶部14と、表示部16とを備える。情報処理装置10は、記憶部14及び/または表示部16を有さず、外部の装置に設けられた記憶部14及び/または表示部16を用いてもよい。
【0011】
制御部12の一例は、CPU(central processing unit)等の演算処理装置である。制御部12は、キーワード入力部20と、辞書取得部22と、テキスト取得部24と、抽出部26と、出力部28とを備える。制御部12は、カテゴリ候補の抽出用のプログラムを読み込むことによって、キーワード入力部20、辞書取得部22、テキスト取得部24、抽出部26、出力部28として機能してもよい。また、キーワード入力部20、辞書取得部22、テキスト取得部24、抽出部26、及び、出力部28の一部または全部を、回路等のハードウェアとして構成してもよい。
【0012】
キーワード入力部20は、辞書取得部22、テキスト取得部24、抽出部26、及び、記憶部14と情報を送受信可能に接続されている。キーワード入力部20は、分類対象キーワードを入力する。例えば、キーワード入力部20は、キーボードまたはタッチパネル等の入力装置によってユーザが入力したキーワードを分類対象キーワードとして取得する。キーワード入力部20は、分類対象キーワードを辞書取得部22、テキスト取得部24、及び、抽出部26に入力する。キーワード入力部20は、ユーザがカテゴリ候補から最終的に決定したカテゴリを、分類対象キーワードと関連付けて記憶部14のカテゴリ辞書30に追加登録してもよい。
【0013】
辞書取得部22は、記憶部14及び抽出部26と情報を送受信可能に接続されている。辞書取得部22は、複数の登録キーワードのそれぞれに対してカテゴリが割り当てられたカテゴリ辞書30を記憶部14から取得する。辞書取得部22は、取得したカテゴリ辞書30を抽出部26へ出力する。
【0014】
テキスト取得部24は、記憶部14及び抽出部26と情報を送受信可能に接続されている。テキスト取得部24は、記憶部14に記憶され、1以上のテキストを含むテキストコーパス32を取得する。尚、テキスト取得部24は、一部のテキストをテキストコーパス32から取得してもよい。テキスト取得部24は、テキストまたはテキストコーパス32を抽出部26へ出力する。
【0015】
抽出部26は、キーワード入力部20から分類対象キーワードを取得する。抽出部26は、辞書取得部22からカテゴリ辞書30を取得する。抽出部26は、テキスト取得部24からテキストまたはテキストコーパス32を取得する。
【0016】
抽出部26は、カテゴリ辞書30から分類対象キーワードに対して類似度が予め定められた基準値以上の登録キーワードを検索する。例えば、抽出部26は、類似度を編集距離に基づいて算出して、登録キーワードを検索する。また、抽出部26は、テキスト中において分類対象キーワードと共起する登録キーワードを検索する。例えば、抽出部26は、テキスト取得部24から取得したテキスト中において分類対象キーワードと共起する共起キーワードを検索する。更に、抽出部26は、共起キーワードのうち、カテゴリ辞書30に存在する登録キーワードを検索する。抽出部26は、検索された登録キーワードに割り当てられたカテゴリをカテゴリ辞書30から抽出する。抽出部26は、出力部28と情報を送受信可能に接続されている。抽出部26は、抽出したカテゴリの少なくとも一部を登録キーワードと関連付けてカテゴリ候補として出力部28へと出力する。尚、抽出部26は、カテゴリ辞書30に含まれる全てのカテゴリをカテゴリ候補と識別可能に出力部28へと出力してもよい。
【0017】
出力部28は、表示部16と情報を送受信可能に接続されている。出力部28は、抽出されたカテゴリを抽出部26から取得する。出力部28は、抽出されたカテゴリを、分類対象を分類すべきカテゴリ候補として出力する。尚、出力部28は、検索されて抽出された登録キーワードのそれぞれに対して割り当てられたカテゴリを関連付けて、ユーザに対して出力してもよい。これにより、出力部28は、当該登録キーワードのカテゴリをカテゴリ候補として識別可能に出力できる。出力部28は、検索されて抽出された登録キーワードのそれぞれと、当該登録キーワードを抽出した検索が類似度に基づく処理と共起に基づく処理とのいずれかであるかを識別可能に出力してもよい。
【0018】
記憶部14は、情報処理装置10によって実行されるプログラム、及び、プログラムの実行において必要な閾値等の情報を記憶する。例えば、記憶部14は、情報処理装置10が分類対象キーワードを分類する時に実行するカテゴリ候補の抽出用のプログラムを記憶する。また、記憶部14は、カテゴリ候補の抽出用のプログラムを実行する時に必要なカテゴリ辞書30及び複数のテキストを含むテキストコーパス32を記憶する。
【0019】
表示部16は、出力部28から取得した情報を表示する。表示部16の一例は、液晶表示装置、または、有機EL表示装置である。
【0020】
図2は、記憶部14が記憶するカテゴリ辞書30の一例である。カテゴリ辞書30は、1または複数の登録キーワードのそれぞれに対し、少なくとも1つのカテゴリが割り当てられている。
【0021】
例えば、登録キーワード「顔面神経麻痺」には、カテゴリとして「病名」及び「顔面神経麻痺」が関連付けられている。また、カテゴリ「成人病」には、登録キーワードとして「胃がん」、「糖尿病」及び「心不全」が関連付けられている。尚、分類対象キーワードが医療に関するキーワードの場合、カテゴリ辞書30は医療用であってよい。
【0022】
図3は、記憶部14が記憶するテキストコーパス32の一例である。テキストコーパス32は、複数のテキストを含む。例えば、テキストコーパス32は、最上段に示すように、「左顔面麻痺」と「顔面神経麻痺」とを含むテキストを有する。これにより、抽出部26は、分類対象キーワードが「左顔面麻痺」の場合、「顔面神経麻痺」を共起する共起キーワードとして検索結果として抽出できる。尚、分類対象キーワードが医療に関するキーワードの場合、テキストコーパス32は医療用のテキストを主に含むものであってよい。例えば、分類対象キーワードが、医療保険のカテゴリに関して分類する場合、テキストコーパス32は、医療保険の申請書に含まれる1以上のテキスト等を含むものであってもよい。
【0023】
図4は、情報処理装置10によって実行されるカテゴリ候補の抽出処理を説明するフローチャートである。
図5は、カテゴリ候補の抽出処理の結果、表示部16に表示される表示画像の一例である。カテゴリ候補の抽出処理は、情報処理装置10がカテゴリ候補の抽出用のプログラムを読み込むことによって実行される。
【0024】
図4に示すように、カテゴリの抽出処理が開始すると、キーワード入力部20は、分類対象キーワードが入力されたか否かを判定する(S10)。キーワード入力部20は、分類対象キーワードが入力されるまで、待機状態となる(S10:No)。キーワード入力部20は、例えば、ユーザがキーボード等によって分類対象キーワードを入力したと判定すると(S10:Yes)、当該分類対象キーワードを辞書取得部22、テキスト取得部24、及び、抽出部26へと出力する。尚、キーワード入力部20は、カテゴリ辞書30で未分類の分類対象キーワードをテキストコーパス32から抽出してもよい。本実施形態では、キーワード入力部20は、分類対象キーワードとして「左顔面麻痺」を取得したとする。
【0025】
辞書取得部22は、キーワード入力部20から分類対象キーワードが入力されると、記憶部14からカテゴリ辞書30を取得する(S12)。辞書取得部22は、取得したカテゴリ辞書30を抽出部26へと出力する。
【0026】
テキスト取得部24は、キーワード入力部20から分類対象キーワードが入力されると、記憶部14から複数のテキストを含むテキストコーパス32を取得する(S14)。テキスト取得部24は、取得したテキストコーパス32を抽出部26へと出力する。
【0027】
抽出部26は、辞書取得部22から取得したカテゴリ辞書30から、キーワード入力部20から取得した分類対象キーワードに対して編集距離に基づく類似度が予め定められた基準値以上の登録キーワードを検索する(S16)。本実施形態では、抽出部26は、類似度を編集距離の逆数、即ち、「類似度=1/編集距離」として算出する。
【0028】
例えば、抽出部26は、「挿入」、「削除」及び「置換」のコストをそれぞれ1として編集距離を算出する。抽出部26は、分類対象キーワードである「左顔面麻痺」の「左」を削除すれば「顔面麻痺」となるので、「顔面麻痺」の編集距離を1として算出する。更に、抽出部26は、当該編集距離から類似度を1として算出する。ここで、基準値が0.5以上の場合、抽出部26は、類似度が1の「顔面麻痺」を検索結果の登録キーワードとしてカテゴリ辞書30から抽出する。抽出部26は、カテゴリ辞書30に登録されている各登録キーワードに対して編集距離を算出した後、類似度を算出して、類似度が基準値以上である全ての登録キーワードを検索してカテゴリ辞書30から抽出する。尚、基準値は、固定値であってもよく、変数であってもよい。基準値が変数の場合、一例として、抽出部26は、分類対象キーワードの文字数の関数として基準値を算出してもよい。この場合、抽出部26は、分類対象キーワードの文字数が多くなるにつれて、基準値を小さく設定する。
【0029】
抽出部26は、類似度が基準値以上となった全ての登録キーワードに割り当てられたカテゴリをカテゴリ辞書30からカテゴリ候補として抽出する(S18)。例えば、抽出部26は、
図2に示すカテゴリ辞書30において、「顔面麻痺」に割り当てられている「病名」及び「顔面神経麻痺」をカテゴリとして抽出する。
【0030】
抽出部26は、テキスト取得部24から取得したテキストコーパス32に含まれるテキスト中において、分類対象キーワードと共起している登録キーワードを検索する(S20)。
【0031】
例えば、抽出部26は、
図3の最上段に示すテキストにおいて、分類対象キーワードである「左顔面麻痺」と1つのテキスト中で共起する「顔面神経麻痺」を検索して共起キーワードとして抽出する。尚、抽出部26は、分類対象キーワードから1つのテキスト中で何語以内に共起しているキーワードのみを共起キーワードとして抽出してもよい。次に、抽出部26は、共起キーワード「顔面神経麻痺」がカテゴリ辞書30に含まれる登録キーワードか否かを判定する。抽出部26は、共起キーワード「顔面神経麻痺」がカテゴリ辞書30に含まれるので、登録キーワードとして抽出する。抽出部26は、分類対象キーワードとテキスト中で共起する全ての共起キーワードのうち、カテゴリ辞書30に含まれる登録キーワードを検索して抽出する。
【0032】
尚、抽出部26は、カテゴリ辞書30に含まれる登録キーワードの全てを抽出して、当該登録キーワードがいずれかのテキスト中で分類対象キーワードと共起するか否かで、分類対象キーワードと共起する登録キーワードを検索して抽出してもよい。
【0033】
抽出部26は、テキスト中で共起したキーワードのうち、抽出された登録キーワードに割り当てられたカテゴリをカテゴリ辞書30からカテゴリ候補として抽出する(S22)。例えば、抽出部26は、
図2に示すカテゴリ辞書30において、「顔面神経麻痺」に割り当てられている「病名」及び「顔面神経麻痺」をカテゴリとして抽出する。
【0034】
抽出部26は、検索された登録キーワードの数に応じて、各カテゴリに重要度を設定する(S24)。例えば、抽出したカテゴリである「病名」に編集距離に基づく類似度及び共起に基づいて検索された登録キーワードが「顔面神経麻痺」、「ベル麻痺」、「ハント症候群」、「左片麻痺」及び「顔面麻痺」の5個の場合、抽出部26は重要度を5と設定する。
【0035】
抽出部26は、重要度に応じて、カテゴリ候補を決定する(S25)。例えば、抽出部26は、重要度の大きいカテゴリをカテゴリ候補として決定する。この場合、抽出部26は、重要度の大きいカテゴリのうち、上位N%または上位M個をカテゴリ候補として決定してもよい。尚、N及びMは予め設定された値である。また、抽出部26は、重要度が候補用閾値以上のカテゴリをカテゴリ候補として決定してもよい。
【0036】
抽出部26は、抽出した登録キーワード、カテゴリ候補、及び、検索方法を互いに関連付けて出力部28へ出力する。尚、検索方法とは、編集距離等の類似度による検索または共起による検索を含む方法のことである。また、抽出部26は、カテゴリ辞書30に含まれる全てのカテゴリを出力部28へ出力する(S26)。
【0037】
出力部28は、抽出部26から取得した登録キーワード、カテゴリ候補を含むカテゴリ、及び、検索方法を表示部16に出力させる(S28)。例えば、出力部28は、
図5に示す表示画像40を表示部16に表示させる。
【0038】
図5に示す表示画像40において、左端の列の各セルは、カテゴリ辞書30に含まれる全カテゴリを示す。更に、左端の列において、チェックマークが付与されているカテゴリは、分類対象キーワードである「左顔面麻痺」を分類するためのカテゴリ候補である。表示画像40において、上から2段目の行の各セルは、抽出部26が共起及び編集距離に基づいて抽出した登録キーワードを示す。最上段の各セルは、上から2段目の登録キーワードの検索方法を示す。本実施形態では、検索方法は、共起または編集距離のいずれかとなる。尚、編集距離に代えて、類似度と表示してもよい。これにより、出力部28は、ユーザにいずれの検索方法によって抽出された登録キーワードかを提示することができる。
【0039】
表示画像40において、左から2列目以降であって、上から3行目以下の各セルは、各登録キーワードと各カテゴリとが関連付けられているか否かを示す。例えば、登録キーワード「顔面神経麻痺」にはカテゴリ「病名」が、カテゴリ辞書30において割り当てられているので、交差するセルには○が付与されている。従って、
図5に示す例では、抽出部26は、カテゴリ「病名」、「麻痺」及び「顔面神経麻痺」のそれぞれの重要度を5、1、4と設定している。抽出部26は、このうち重要度が高いと判断したカテゴリ「病名」及び「顔面神経麻痺」をカテゴリ候補としている。これにより、出力部28は、表示画像40上で「病名」及び「顔面神経麻痺」にチェックマークを付与して、抽出部26が抽出したカテゴリ候補を他のカテゴリと識別可能な異なる表示としている。尚、カテゴリの表示順序は、適宜設定してよい。また、カテゴリの表示順序は、ユーザの選択によって、変更可能にしてもよい。
【0040】
ユーザは、この表示画像40を参照して、分類対象キーワード「左顔面麻痺」の分類先としてカテゴリを決定する。例えば、ユーザは、マウス、及び、キーワード等の入力装置によって、各カテゴリにチェックマークを付与または削除することによって、情報処理装置10が抽出したカテゴリ候補を取捨選択する。これにより、分類対象キーワードの分類先のカテゴリが決定する。尚、ユーザは、抽出部26が決定したカテゴリ候補以外のカテゴリをカテゴリ候補としてもよい。
【0041】
キーワード入力部20は、ユーザの決定したカテゴリを取得して、当該カテゴリを分類対象キーワードに関連付けてカテゴリ辞書30に追加登録する(S30)。
【0042】
上述したように情報処理装置10では、抽出部26が、類似度の一例である編集距離の逆数及び共起によって分類対象キーワードのカテゴリ候補を抽出している。これにより、情報処理装置10は、編集距離に基づく類似度または共起の一方によってカテゴリ候補を抽出する場合に比べて、カテゴリ候補の抽出精度を向上させることができる。更に、カテゴリ辞書30が大きくなりカテゴリが増大した場合でも、情報処理装置10は、ユーザのカテゴリ選択の効率を向上させることができる。
【0043】
更に、分類対象キーワードが全く未知の新語及び未知語であっても、抽出部26は、編集距離に基づく類似度によって登録キーワードを検索できるので、当該登録キーワードに基づいてカテゴリ候補を抽出することができる。同様に、ユーザが分類対象キーワードを入力ミスした場合であっても、抽出部26は、編集距離によって登録キーワードを検索できるので、カテゴリ候補を抽出することができる。
【0044】
情報処理装置10では、抽出部26が、編集距離に基づく類似度及び共起によってカテゴリ辞書30から検索された登録キーワードの数によって、カテゴリに重要度を設定して、重要度の高いカテゴリをカテゴリ候補としている。これにより、情報処理装置10は、重要度に基づいて、よりカテゴリ候補の抽出精度を向上させることができる。
【0045】
情報処理装置10では、抽出部26が、基準値を分類対象キーワードの文字数に応じて設定する。特に、抽出部26が、分類対象キーワードの文字数が大きくなるにつれて、基準値を小さく設定することにより、不要なカテゴリを抽出するカテゴリ候補の精度をより向上させることができる。
【0046】
上述した情報処理装置10の一部を変更した実施形態について説明する。
【0047】
(重要度の変更)カテゴリの重要度の設定方法を変更した実施形態について説明する。
【0048】
抽出部26は、抽出した各カテゴリの組み合わせに応じて重要度を算出してもよい。
【0049】
具体的には、抽出部26は、各登録キーワードにより抽出した各カテゴリの組み合わせのうち、同一である組み合わせの数に応じて、カテゴリの重要度を設定してもよい。例えば、
図5に示す例では、カテゴリの組み合わせ「病名」−「顔面神経麻痺」の個数が4個なので、抽出部26は、当該カテゴリの組み合わせに含まれるカテゴリ「病名」及び「顔面神経麻痺」の重要度をそれぞれ4と設定する。一方、カテゴリの組み合わせ「病名」−「麻痺」の個数が1個なので、抽出部26は、当該カテゴリの組み合わせに含まれるカテゴリ「病名」及び「麻痺」の重要度をそれぞれ1と設定する。ここで、抽出部26は、1個のカテゴリに複数の重要度が設定された場合、大きい重要度を当該カテゴリの重要度として設定してもよい。上述の例では、抽出部26は、カテゴリ「病名」に2つの重要度を設定することになるが、大きい重要度である4をカテゴリ「病名」の重要度として設定すればよい。
【0050】
また、抽出部26は、登録キーワードの検索方法が同じ各カテゴリの組み合わせのうち同一である組み合わせの数に応じて、当該カテゴリに重要度を設定してもよい。
【0051】
具体的には、抽出部26は、分類対象キーワードに対する類似度である編集距離の逆数に基づき検索した登録キーワードに応じて抽出された各カテゴリの組み合わせのうち同一である組み合わせの数によって、当該カテゴリの重要度を設定する。
図5に示す例では、抽出部26は、編集距離に基づき検索された登録キーワード「左片麻痺」及び「顔面麻痺」のカテゴリの組み合わせのうち、同一の組み合わせ「病名」−「顔面神経麻痺」が2個なので、各カテゴリ「病名」及び「顔面神経麻痺」の重要度として2を設定する。
【0052】
また、抽出部26は、分類対象キーワードとの共起に基づき検索した登録キーワードに応じて抽出された各カテゴリの組み合わせのうち同一の組み合わせの数に応じて、当該カテゴリに重要度を設定する。
図5に示す例では、抽出部26は、共起に基づき検索された登録キーワード「顔面神経麻痺」、「ベル麻痺」及び「ハント症候群」のカテゴリの組み合わせのうち、同一の組み合わせ「病名」−「顔面神経麻痺」が2個なので、各カテゴリ「病名」、「顔面神経麻痺」の重要度として2を設定する。また、「ハント症候群」のカテゴリの組み合わせ「病名」−「麻痺」は1個なので、カテゴリ「病名」及び「麻痺」には重要度として1を設定する。ここで、抽出部26は、1個のカテゴリに複数の重要度が設定された場合、大きい重要度を当該カテゴリの重要度として設定すればよい。
【0053】
(登録キーワードの優先度)登録キーワードの優先度について説明する。上述の実施形態では、検索された登録キーワードを同じ優先度で扱ったが、抽出部26は、登録キーワードに異なる優先度を設定してもよい。
【0054】
抽出部26は、分類対象キーワードの文字数に応じて、カテゴリ辞書30から分類対象キーワードに対する類似度に基づき検索した登録キーワード及び分類対象キーワードとの共起に基づき検索した登録キーワードに優先度を設定する。例えば、抽出部26は、分類対象キーワードの文字数が多くなるにつれて、分類対象キーワードに対する類似度に基づき検索した登録キーワードの優先度を、分類対象キーワードとの共起に基づき検索した登録キーワードの優先度より高くする。この場合、一方の優先度が0となってもよい。例えば、分類対象キーワードの文字数が、予め定められた文字数閾値以上の場合、共起によって検索した登録キーワードの優先度を0としてもよい。
【0055】
これにより、抽出部26は、分類対象キーワードの文字数が多くなるにつれて、検索精度が向上する類似度によって検索された登録キーワードの優先度を高くすることができる。特に、抽出部26が、類似度として編集距離の逆数を採用している場合に、当該優先度は有効である。
【0056】
また、抽出部26は、分類対象キーワードに対する類似度に応じて、検索した各登録キーワードに異なる優先度を設定してもよい。例えば、抽出部26は、類似度が大きい登録キーワードには高い優先度を設定する。特に、抽出部26は、類似度として編集距離の逆数を採用した場合、編集距離が短い登録キーワードほど高い優先度を設定する。換言すれば、抽出部26は、類似度の大きい登録キーワードほど高い優先度を設定する。
【0057】
抽出部26は、共起の程度を示す共起尺度CSに基づいて検索した各登録キーワードに異なる優先度を設定してもよい。抽出部26は、一例として次の式(1)によって共起尺度CSを算出する。
【数1】
尚、式(1)において、#Bは、テキストコーパス中において、分類対象キーワード及び共起した登録キーワードの両方を含むテキスト、及び、共起した登録キーワードのみを含むテキストの個数である。
【0058】
図6は、テキストコーパス32の一例である。
図6に示すテキストコーパス32における共起尺度CSの算出方法を説明する。
図6に示すテキストコーパス32は、5個のテキストを含むとする。各テキストには、符号TX1からTX5を付与する。分類対象キーワードは、「インシュリン」とする。分類対象キーワード「インシュリン」と「胃がん」及び「糖尿病」が共起している。尚、「胃がん」及び「糖尿病」の両方は、カテゴリ辞書30に登録済みとする。
【0059】
まず、「インシュリン」に対する「胃がん」の共起尺度CSについて説明する。「胃がん」の場合、#Aは3、#Bは2、#Xは5、#(A∩B)は1となる。従って、「胃がん」の共起尺度CSは5/6となる。「インシュリン」に対する「糖尿病」の共起尺度CSでは、#Aは3、#Bは2、#Xは5、#(A∩B)は2となる。従って、「糖尿病」の共起尺度CSは5/3となる。このように共起尺度CSは、分類対象キーワードと登録キーワードが共起しているテキストが多く、登録キーワードのみのテキストが少ない方が大きくなる。
【0060】
抽出部26は、式(1)によって算出した共起尺度CSが大きい登録キーワードほど、優先度を大きく設定する。
【0061】
抽出部26は、登録キーワードの優先度に基づいて、抽出したカテゴリに重要度を設定してもよい。例えば、抽出部26は、各カテゴリに含まれる登録キーワードの優先度を全て足した合計を当該カテゴリの重要度として設定してもよい。また、抽出部26は、各カテゴリの組み合わせに基づいて重要度を算出する場合、組み合わせに含まれる登録キーワードを足した合計を組み合わせの優先度として算出すればよい。そして、抽出部26は、組み合わせの優先度に組み合わせの個数を掛けた値を当該組み合わせ及び組み合わせに含まれるカテゴリの重要度として設定すればよい。
【0062】
(検索方法の変形例)検索方法の他の例について説明する。抽出部26は、編集距離に基づく類似度及び共起以外の検索方法によって、登録キーワードを検索してもよい。
【0063】
例えば、抽出部26は、カテゴリ辞書30から分類対象キーワードを含む登録キーワードを更に検索して、検索された登録キーワードに割り当てられたカテゴリをカテゴリ辞書30から抽出して、当該カテゴリを検索された登録キーワードと関連付けて出力部28へと出力してもよい。
【0064】
具体的には、抽出部26は、分類対象キーワードが「左顔面麻痺」の場合、共通部分文字列を含む登録キーワード「突発性左顔面麻痺」をカテゴリ辞書30から検索する。例えば、カテゴリ辞書30に「突発性左顔面麻痺」が含まれている場合、抽出部26は、「突発性左顔面麻痺」に割り当てられているカテゴリを抽出する。ここでは、「突発性左顔面麻痺」にカテゴリ「病名」及び「顔面神経麻痺」が割り当てられているとする。抽出部26は、登録キーワード「突発性左顔面麻痺」にカテゴリ「病名」及び「顔面神経麻痺」を関連付けて出力部28へ出力する。
【0065】
図7は、共通部分文字列によって検索された登録キーワードを含む表示画像40の一例である。
図7に示すように、出力部28は、共通部分文字列によって検索された登録キーワード及びカテゴリを示す表示画像40を表示部16に表示させてユーザへ出力する。例えば、出力部28は、登録キーワード「突発性左顔面麻痺」に割り当てられているカテゴリ「病名」及び「顔面神経麻痺」に対応するセルに○を付与した表示画像40を出力する。
【0066】
(表示方法の変形例)他の表示画像40について説明する。出力部28は、表示部16に表示させる表示画像40を適宜変更してもよい。
【0067】
図8は、表示画像40を変更した一例である。例えば、出力部28は、抽出部26が検索した登録キーワードのうち、分類対象キーワードの一部からなる登録キーワードを他の登録キーワードと異なる表示で出力してもよい。例えば、分類対象キーワードが「左顔面麻痺」の場合、出力部28は、分類対象キーワードの一部である「顔面麻痺」からなる登録キーワードを他の登録キーワードと異なる表示とする。ここでいう異なる表示とは、白抜き且つ拡大である。これにより、情報処理装置10は、分類対象キーワードがカテゴリ辞書30に登録された場合、最長一致で抽出されない競合する登録キーワードをユーザに示すことができる。
【0068】
また、出力部28は、抽出部26が検索した登録キーワードのうち、分類対象キーワードを含む登録キーワードを他の登録キーワードと異なる表示で出力してもよい。例えば、分類対象キーワードが「左顔面麻痺」の場合、出力部28は、分類対象キーワードを含む登録キーワード「突発性左顔面麻痺」を他の登録キーワードと異なる表示とする。これにより、情報処理装置10は、分類対象キーワードをカテゴリ辞書30に登録しても、最長一致では当該分類対象キーワードが抽出されない原因となる競合する登録キーワードをユーザに示すことができる。
【0069】
上述の実施形態では、出力部28は、カテゴリ候補を含む全てのカテゴリを表示したが、カテゴリ候補のみを表示してもよい。また、出力部28は、各カテゴリの重要度に基づいて、カテゴリの表示順序を設定してもよい。
【0070】
(その他の変形例)更に、情報処理装置10を部分的に変更した例について説明する。抽出部26は、ユーザによる決定無しに、抽出したカテゴリ候補を登録キーワードに割り当ててカテゴリ辞書30に登録してもよい。この場合、キーワード入力部20は、抽出部26が抽出したカテゴリ候補からユーザが決定したカテゴリを合わせてカテゴリ辞書30に登録してもよい。この場合、抽出部26及びキーワード入力部20は、当該カテゴリが抽出部26によって抽出されたカテゴリか、ユーザによって決定されたカテゴリかを識別可能に登録してもよい。
【0071】
抽出部26は、学習機能を有してもよい。例えば、抽出部26は、カテゴリ候補をロジスティック回帰の問題として、学習してもよい。具体的には、抽出部26は、抽出したカテゴリ候補がユーザによってカテゴリ辞書30に登録されたか否かを目的変数とする。抽出部26は、編集距離に基づく類似度に応じた登録キーワードの個数を説明変数とする。例えば、抽出部26は、類似度を編集距離の逆数として、当該類似度が閾値よりも大きい登録キーワードの個数を説明変数としてもよい。尚、抽出部26は、共起尺度に応じた登録キーワードの個数と説明変数としてもよい。例えば、抽出部26は、共起尺度が閾値よりも高い登録キーワードの個数を説明変数としてもよい。これにより、抽出部26は、より精度よくカテゴリ候補を抽出できる。
【0072】
尚、上述の学習機能において、抽出部26は、抽出したカテゴリ候補をカテゴリ辞書30への登録の対象とするか否かを目的変数としてもよい。特に、抽出部26が、ユーザの決定を経ることなく、抽出したカテゴリ候補をカテゴリ辞書に登録する場合に有効である。
【0073】
図9は、本実施形態に係るコンピュータ1900のハードウェア構成の一例を示す。本実施形態に係るコンピュータ1900は、情報処理装置10の一例である。コンピュータ1900は、ホスト・コントローラ2082により相互に接続されるCPU2000、RAM2020、グラフィック・コントローラ2075、及び表示部2080を有するCPU周辺部と、入出力コントローラ2084によりホスト・コントローラ2082に接続される通信インターフェイス2030、及び、ハードディスクドライブ2040を有する入出力部と、入出力コントローラ2084に接続されるROM2010、メモリドライブ2050及び入出力チップ2070を有するレガシー入出力部とを備える。
【0074】
ホスト・コントローラ2082は、RAM2020と、高い転送レートでRAM2020をアクセスするCPU2000及びグラフィック・コントローラ2075とを接続する。CPU2000は、ROM2010及びRAM2020に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ2075は、CPU2000等がRAM2020内に設けたフレーム・バッファ上に生成する画像データを取得し、表示部2080上に表示させる。これに代えて、グラフィック・コントローラ2075は、CPU2000等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【0075】
入出力コントローラ2084は、ホスト・コントローラ2082と、比較的高速な入出力装置である通信インターフェイス2030、ハードディスクドライブ2040を接続する。通信インターフェイス2030は、ネットワークを介して他の装置と通信する。ハードディスクドライブ2040は、コンピュータ1900内のCPU2000が使用する表示プログラム等のプログラム及びデータを格納する。
【0076】
また、入出力コントローラ2084には、ROM2010と、メモリドライブ2050、及び入出力チップ2070の比較的低速な入出力装置とが接続される。ROM2010は、コンピュータ1900が起動時に実行するブート・プログラム、及び/又は、コンピュータ1900のハードウェアに依存するプログラム等を格納する。メモリドライブ2050は、メモリカード2090から例えば表示プログラム等のプログラム又はデータを読み取り、RAM2020を介してハードディスクドライブ2040に提供する。入出力チップ2070は、メモリドライブ2050を入出力コントローラ2084へと接続すると共に、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ2084へと接続する。
【0077】
RAM2020を介してハードディスクドライブ2040に提供されるプログラムは、メモリカード2090、又はICカード等の記録媒体に格納されて利用者によって提供される。表示プログラム等のプログラムは、記録媒体から読み出され、RAM2020を介してコンピュータ1900内のハードディスクドライブ2040にインストールされ、CPU2000において実行される。
【0078】
コンピュータ1900にインストールされ、コンピュータ1900を情報処理装置10として機能させるプログラムは、キーワード入力モジュール、辞書取得モジュール、テキスト取得モジュール、抽出モジュール、及び、出力モジュールを備える。これらのプログラム又はモジュールは、CPU2000等に働きかけて、コンピュータ1900を、キーワード入力モジュール、辞書取得モジュール、テキスト取得モジュール、抽出モジュール、及び、出力モジュールとしてそれぞれ機能させる。
【0079】
これらのプログラムに記述された情報処理は、コンピュータ1900に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段であるキーワード入力モジュール、辞書取得モジュール、テキスト取得モジュール、抽出モジュール、及び、出力モジュールとして機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ1900の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の情報処理装置10が構築される。
【0080】
一例として、コンピュータ1900と外部の装置等との間で通信を行う場合には、CPU2000は、RAM2020上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス2030に対して通信処理を指示する。通信インターフェイス2030は、CPU2000の制御を受けて、RAM2020、ハードディスクドライブ2040、又はメモリカード2090等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス2030は、DMA(ダイレクト・メモリ・アクセス)方式により記憶装置との間で送受信データを転送してもよく、これに代えて、CPU2000が転送元の記憶装置又は通信インターフェイス2030からデータを読み出し、転送先の通信インターフェイス2030又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
【0081】
また、CPU2000は、ハードディスクドライブ2040、メモリドライブ2050(メモリカード2090)等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をDMA転送等によりRAM2020へと読み込ませ、RAM2020上のデータに対して各種の処理を行う。そして、CPU2000は、処理を終えたデータを、DMA転送等により外部記憶装置へと書き戻す。このような処理において、RAM2020は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはRAM2020および外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、CPU2000は、RAM2020の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはRAM2020の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもRAM2020、メモリ、及び/又は記憶装置に含まれるものとする。
【0082】
また、CPU2000は、RAM2020から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、RAM2020へと書き戻す。例えば、CPU2000は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすかどうかを判断し、条件が成立した場合(又は不成立であった場合)に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。また、CPU2000は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。
【0083】
以上に示したプログラム又はモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、メモリカード2090の他に、DVD又はCD等の光学記録媒体、MO等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワーク又はインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ1900に提供してもよい。
【0084】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0085】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。