(57)【特許請求の範囲】
【請求項１】
着目する事象に関する表現についての情報を予め記憶した表現情報記憶手段を参照し、処理対象の文字列であって自然言語で記述された対象文字列において、前記着目する事象に関する表現に相当する文字列である事象文字列を特定する特定ステップと、
前記着目する事象と当該事象が生じた時間を表す時間情報とを含む履歴情報を記憶した履歴情報記憶手段において、前記特定ステップで特定された事象文字列のそれぞれが表す事象を含む前記履歴情報を検索する検索ステップと、
前記特定された事象文字列のそれぞれと、当該事象文字列について前記検索ステップで検索された履歴情報に含まれる前記時間情報と、を対応付けて出力する出力ステップと、
をコンピュータに実行させるためのプログラム。
【請求項２】
前記表現情報記憶手段は、さらに、時間を表す表現についての情報を記憶し、
前記特定ステップにおいて、さらに、前記対象文字列において、時間を表す表現に相当する文字列である時間文字列を特定し、
１つの前記事象文字列に対して複数の前記履歴情報が前記検索ステップで検索された場合に、前記出力ステップにおいて、
前記対象文字列において前記時間文字列が当該１つの前記事象文字列よりも前に出現していれば、検索された複数の前記履歴情報のそれぞれに含まれる複数の前記時間情報のうち、前記特定ステップで特定された時間文字列が表す時間よりも後の時間を表す時間情報のみを当該１つの前記事象文字列と対応付けて出力し、
前記対象文字列において前記時間文字列が当該１つの前記事象文字列よりも後に出現していれば、検索された複数の前記履歴情報のそれぞれに含まれる複数の前記時間情報のうち、前記特定ステップで特定された時間文字列が表す時間よりも前の時間を表す時間情報のみを当該１つの前記事象文字列と対応付けて出力する、
ことを特徴とする請求項１に記載のプログラム。
【請求項３】
前記出力ステップにおいて、前記特定された事象文字列のうち、前記検索ステップにおける前記履歴情報の検索に失敗した事象文字列に対応付けて、前記対象文字列において当該事象文字列よりも前に現れる前記時間文字列が表す時間の情報、または前記対象文字列において当該事象文字列よりも前に現れる事象文字列について検索された前記履歴情報に含まれる前記時間情報を出力する、
ことを特徴とする請求項２に記載のプログラム。
【請求項４】
着目する事象に関する表現についての情報を予め記憶した表現情報記憶手段を参照し、処理対象の文字列であって自然言語で記述された対象文字列において、前記着目する事象に関する表現に相当する文字列である事象文字列を特定する特定手段と、
前記着目する事象と当該事象が生じた時間を表す時間情報とを含む履歴情報を記憶した履歴情報記憶手段において、前記特定手段で特定された事象文字列のそれぞれが表す事象を含む前記履歴情報を検索する検索手段と、
前記特定された事象文字列のそれぞれと、当該事象文字列について前記検索手段で検索された履歴情報に含まれる前記時間情報と、を対応付けて出力する出力手段と、
を備えることを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムおよび情報処理装置に関する。
【背景技術】
【０００２】
何らかの事象についての記録を自然言語で記述したテキストから、着目する事象に関する情報を抽出する技術がある。例えば、電子カルテ等の臨床医療のテキストから医療処置等の医療イベントを表す情報を抽出する技術については、”Third i2b2 Shared-Task and Workshop: Challenges in Natural Language Processing for Clinical Data: Medication Extraction Challenge”（参考ＵＲＬ：https://www.i2b2.org/NLP/Medication/）等の国際的なワークショップが開催されている。
【０００３】
また、非特許文献１には、医療のテキストに含まれる個人情報を特定し、特定された個人情報を当該テキストから削除する匿名化技術が開示されている。非特許文献１には、医療テキストに含まれる患者の名前や日付を表す情報を個人情報として特定する技術が開示されている。
【０００４】
非特許文献２には、電子カルテ等のテキストにおいて、日付を表す表現と、入退院や検査、症状、身体の部位等、医療処置に関連する表現とを特定し、当該テキストにおける各表現の出現の順番や各表現の周囲の文字列等を参照して、当該テキストに記述された医療イベント（処置や検査等）を時系列で表示させる技術が開示されている。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Uzuner O, Luo Y, Szolovits P., “Evaluating the State−of−the−Art in Automatic De−identification” Journal of the American Medical Information Association, ２００７年, Volume 14, Number 5, p. 550〜563
【非特許文献２】外池昌嗣，大熊智子，荒牧英治，三浦康秀，増市博，大江和彦，「自然言語表現の現病歴情報を時系列表形式で表示するシステムとその評価」，第２９回医療情報学連合大会，２００９年
【発明の概要】
【発明が解決しようとする課題】
【０００６】
自然言語のテキストにおいて記述された各事象について、各事象が生じた順番を特定するだけでなく、各事象がいつ生じたかを特定することが望まれる場合がある。
【０００７】
本発明の目的は、自然言語のテキストに記述された各事象がいつ生じたかを特定することを支援するプログラムおよび情報処理装置を提供することである。
【課題を解決するための手段】
【０００８】
請求項１に係る発明は、着目する事象に関する表現についての情報を予め記憶した表現情報記憶手段を参照し、処理対象の文字列であって自然言語で記述された対象文字列において、前記着目する事象に関する表現に相当する文字列である事象文字列を特定する特定ステップと、前記着目する事象と当該事象が生じた時間を表す時間情報とを含む履歴情報を記憶した履歴情報記憶手段において、前記特定ステップで特定された事象文字列のそれぞれが表す事象を含む前記履歴情報を検索する検索ステップと、前記特定された事象文字列のそれぞれと、当該事象文字列について前記検索ステップで検索された履歴情報に含まれる前記時間情報と、を対応付けて出力する出力ステップと、をコンピュータに実行させるためのプログラムである。
【０００９】
請求項２に係る発明は、請求項１に係る発明において、前記表現情報記憶手段は、さらに、時間を表す表現についての情報を記憶し、前記特定ステップにおいて、さらに、前記対象文字列において、時間を表す表現に相当する文字列である時間文字列を特定し、１つの前記事象文字列に対して複数の前記履歴情報が前記検索ステップで検索された場合に、前記出力ステップにおいて、前記対象文字列において前記時間文字列が当該１つの前記事象文字列よりも前に出現していれば、検索された複数の前記履歴情報のそれぞれに含まれる複数の前記時間情報のうち、前記特定ステップで特定された時間文字列が表す時間よりも後の時間を表す時間情報のみを当該１つの前記事象文字列と対応付けて出力し、前記対象文字列において前記時間文字列が当該１つの前記事象文字列よりも後に出現していれば、検索された複数の前記履歴情報のそれぞれに含まれる複数の前記時間情報のうち、前記特定ステップで特定された時間文字列が表す時間よりも前の時間を表す時間情報のみを当該１つの前記事象文字列と対応付けて出力する。
【００１０】
請求項３に係る発明は、請求項２に係る発明において、前記出力ステップにおいて、前記特定された事象文字列のうち、前記検索ステップにおける前記履歴情報の検索に失敗した事象文字列に対応付けて、前記対象文字列において当該事象文字列よりも前に現れる前記時間文字列が表す時間の情報、または前記対象文字列において当該事象文字列よりも前に現れる事象文字列について検索された前記履歴情報に含まれる前記時間情報を出力する。
【００１１】
請求項４に係る発明は、着目する事象に関する表現についての情報を予め記憶した表現情報記憶手段を参照し、処理対象の文字列であって自然言語で記述された対象文字列において、前記着目する事象に関する表現に相当する文字列である事象文字列を特定する特定手段と、前記着目する事象と当該事象が生じた時間を表す時間情報とを含む履歴情報を記憶した履歴情報記憶手段において、前記特定手段で特定された事象文字列のそれぞれが表す事象を含む前記履歴情報を検索する検索手段と、前記特定された事象文字列のそれぞれと、当該事象文字列について前記検索手段で検索された履歴情報に含まれる前記時間情報と、を対応付けて出力する出力手段と、を備えることを特徴とする情報処理装置である。
【発明の効果】
【００１２】
請求項１または４に係る発明によると、自然言語のテキストに記述された各事象がいつ生じたかを特定することを支援できる。
【００１３】
請求項２に係る発明によると、対象文字列中の事象文字列について、着目する事象の発生の履歴を検索して得られた複数の時間情報をより少ない数の時間情報に絞り込むことができる。
【００１４】
請求項３に係る発明によると、着目する事象の発生の履歴の検索によっては時間情報が得られなかった事象文字列に対しても、時間情報を対応付けて出力できる。
【図面の簡単な説明】
【００１５】
【図１】情報処理装置の内部構成の概略の例を示すブロック図である。
【図２】正規化ルール記憶部のデータ内容の例を示す図である。
【図３Ａ】処置履歴ＤＢに記憶される検査の履歴の例を示す図である。
【図３Ｂ】処置履歴ＤＢに記憶される投薬の履歴の例を示す図である。
【図４】情報処理装置が行う処理の手順の例を示す図である。
【図５】対象文字列における医療表現を特定した結果の例を示す図である。
【図６】時間情報を正規化する処理の結果の例を示す図である。
【図７】医療表現に対応する履歴レコードから時間情報を取得した結果の例を示す図である。
【図８】時間情報修正部が行う処理の手順の一部の例を示す図である。
【図９】時間情報修正部が行う処理の手順の他の一部の例を示す図である。
【図１０】時間情報修正部が行う処理の手順のさらに他の一部の例を示す図である。
【図１１】時間情報修正部が行う処理の手順のさらに他の一部の例を示す図である。
【図１２】図９の例の手順の処理を行った結果の例を示す図である。
【図１３】図１０の例の手順の処理を行った結果の例を示す図である。
【図１４】図１１の例の手順の処理を行った結果の例を示す図である。
【図１５】出力処理部が出力する情報の例を示す図である。
【図１６】形態素解析の結果の例を示す図である。
【図１７】正規化ルール記憶部のデータ内容の他の例を示す図である。
【図１８】コンピュータのハードウエア構成の例を示す図である。
【発明を実施するための形態】
【００１６】
以下では、医療テキストを処理対象とする場合を例にとり、本発明の実施の形態を説明する。以下の説明において処理対象とする医療テキストは、患者に関する記録を記述した文書であり、例えば、医療機関における患者の診療記録が記載されたカルテや、患者の入院から退院までの処置および症状等を記録した退院時要約等であってよい。本発明の各種の実施形態の例では、医療テキストにおいて、着目すべき事象として予め設定された「医療イベント」を表す表現を特定し、特定した医療イベントのそれぞれについて、当該医療イベントの発生の時期を表す時間情報を決定する。時間情報の決定は、医療テキストとは別に記録された、患者に対して行われた医療処置等の履歴情報を参照して行われる。
【００１７】
なお、以下の説明において、「文字列」とは、文字または記号の列を表すものとする。また、「表現」とは、何らかの意味を表す「文字列」であるとする。
【００１８】
図１に、本発明の一実施形態の例による情報処理装置の内部構成の概略の例を示す。図１の例の情報処理装置１０は、対象文字列取得部１００、医療表現特定部１１０、コーパス１２０、時間情報正規化部１３０、正規化ルール記憶部１４０、履歴対応部１５０、処置履歴ＤＢ（データベース）１６０、時間情報修正部１７０、および出力処理部１８０を備える。
【００１９】
対象文字列取得部１００は、処理対象の文字列である対象文字列を取得する。本実施形態の例では、医療テキストに含まれる文字列を対象文字列とする。対象文字列取得部１００は、例えば、電子文書の形式で医療テキストが記憶された文書データベース（図示しない）から、入力装置（図示しない）を用いてユーザが指定した医療テキスト中の文字列を対象文字列として取得する。あるいは、キーボード等の入力装置を用いてユーザが入力した医療テキストを対象文字列として取得してもよい。また、本実施形態の例では、対象文字列取得部１００は、取得した対象文字列の医療テキストがどの患者の記録であるかを示す情報も取得する。例えば、対象文字列を文書データベース中の医療テキストから取得する場合、当該医療テキストに関連付けて文書データベースに記憶された患者の識別情報を対象文字列と共に文書データベースから取得すればよい。入力装置を用いてユーザが入力した医療テキストを対象文字列として取得する場合、例えば、当該医療テキストに係る患者の識別情報の入力をユーザに促す情報を表示装置（図示しない）に表示させ、この表示に応じてユーザが入力した患者の識別情報を取得すればよい。対象文字列取得部１００は、取得した対象文字列および患者の識別情報を医療表現特定部１１０に渡す。
【００２０】
医療表現特定部１１０は、対象文字列において、医療に関する表現として予め設定された種類の表現である医療表現を特定する処理を行う。本実施形態の例において予め設定される医療表現の種類は、「日付」、「医薬品名」、「医薬品投与量」、「検査名」、「検査値」、「症状」、および「治療」であるとする。医療表現特定部１１０は、医療表現にタグ付けした医療テキストを記憶するコーパス１２０を参照して、対象文字列に含まれる医療表現を特定する。コーパス１２０を参照した医療表現の特定は、例えば、参考文献１（Andrew McCallumおよびWei Li.，「Early results for named entity recognition with conditional random fields, feature induction and web-enhanced lexicons」，２００３年，In Seventh Conference on Natural Language Learning (CoNLL)）に記載された固有名認識の手法を医療テキストに対して調整した手法により行えばよい。医療表現特定部１１０は、対象文字列に含まれる医療表現を特定した結果および患者の識別情報を時間情報正規化部１３０に渡す。
【００２１】
コーパス１２０は、複数の医療テキストを収集して、前述の各種の医療表現をその種類に応じたタグで囲んだデータベースである。本実施形態の例のコーパス１２０に含まれる医療テキストにおいて、医療表現に該当する文字列は、医療表現の種類を表すタグによって囲まれる。例えば、医療表現の一種である日付を表す文字列「２０１０年１０月２５日」，「３／１８」等は、コーパス１２０において、タグ「TIME」により囲まれ、「<TIME>２０１０年１０月２５日</TIME>」，「<TIME>３／１８</TIME>」等と表される。また、本例のコーパス１２０において、「医薬品名」のタグは「DRUG」、「医薬品投与量」のタグは「DRUG VALUE」、「検査名」のタグは「TEST」、「検査値」のタグは「TEST VALUE」、「症状」のタグは「SYMPTOM」、および「治療」のタグは「REMEDY」であるとする。
【００２２】
時間情報正規化部１３０は、医療表現特定部１１０によって対象文字列において特定された医療表現のうち、時間を表す表現について、その表現形式を正規化する処理を行う。時間を表す表現は、例えば、年月日等の日付を表す表現、ある時刻を表す表現、および日付と時刻とを表す表現等である。本例では、時間を表す医療表現は、対象文字列において「日付」として特定された表現である。日付の表現は、例えば、上述の例の「２０１０年１０月２５日」，「３／１８」等のように、様々な態様で対象文字列中に出現し得る。時間情報正規化部１３０は、後述の正規化ルール記憶部１４０に予め記憶されたルール（規則）に従って、対象文字列中の各種の態様の日付の表現を正規化して、同じ形式で日付の情報を表す。
【００２３】
正規化ルール記憶部１４０は、時間情報の表現形式の正規化のために予め設定されたルールを記憶する。図２に、正規化ルール記憶部１４０に記憶されるルールの内容の例を示す。図２の例の表の１行は、１つのルールを表す。図２の表に例示するルールは、正規表現で記述されており、対象文字列中の日付の表現が当該ルールの正規表現に一致すれば、当該日付の表現が表す情報を用いて、当該ルールに対応する「結果」の形式の情報が生成される。図２の例の「結果」に示す「Ｙ」は「年」を表し、「Ｍ」は「月」を表し、「Ｄ」は「日」を表す。図２の例の表における「優先順位」は、正規表現のルールとの一致を評価する順番を表す。図２の例では、対象文字列中の日付の表現のそれぞれについて、優先順位「１」，「２」の順で、各ルールと一致するか否かが評価される。
【００２４】
正規化ルール記憶部１４０が図２に例示するルールを記憶する場合に、時間情報正規化部１３０において、日付の表現の例「２０１０年１０月２５日」を正規化すると、優先順位「１」のルールに一致すると判定され、結果として、例えば「Ｙ：２０１０，Ｍ：１０，Ｄ：２５」が得られる。また、日付の表現の例「３／１８」を正規化すると、優先順位「２」のルールに一致すると判定され、結果として、例えば「Ｙ：不明，Ｍ：３，Ｄ：１８」が得られる。
【００２５】
時間情報正規化部１３０は、対象文字列において医療表現特定部１１０により特定された医療表現および患者の識別情報に加えて、上述のように正規化した時間情報を履歴対応部１５０に渡す。
【００２６】
履歴対応部１５０は、対象文字列において特定された医療表現のうち、時間を表す表現の他の表現について、処置履歴ＤＢ１６０に登録された履歴レコードとの対応を取る。
【００２７】
処置履歴ＤＢ１６０は、各患者に対して行われた医療処置の履歴を登録したデータベースである。医療処置の例として、検査および投薬が挙げられる。処置履歴ＤＢ１６０には、例えば、患者ごとに、当該患者に対して行われた医療処置の種類、その医療処置に関する数値、当該医療処置が行われた時間を表す情報を含む履歴が登録される。処置履歴ＤＢ１６０への履歴の登録は、例えば、医師や看護師等、医療機関の職員によって行われる。また、本実施形態の例の処置履歴ＤＢ１６０は、患者に対する検査および投薬の履歴を記憶するものとする。
【００２８】
図３Ａおよび図３Ｂに、処置履歴ＤＢ１６０に記憶される履歴の内容の例を示す。図３Ａは、検査の履歴の内容の例であり、図３Ｂは、投薬の履歴の内容の例である。図３Ａ，３Ｂの各例の表の１行は、ある患者に対して行われた１回の検査または投薬の履歴を表す履歴レコードである。図３Ａの例の表には、患者ＩＤ、検査履歴ＩＤ、検査項目、検査値、および日付の各項目が示される。図３Ａにおいて、患者ＩＤは、患者の識別情報を表し、検査履歴ＩＤは、１回の検査の識別番号、つまり検査の履歴レコードの識別番号を表す。検査項目は、検査の種類を表し、検査値は、対応する検査項目の検査結果の数値を表す。日付は、検査が行われた日付を表す。また、図３Ｂの例の表には、患者ＩＤ、投薬履歴ＩＤ、医薬品名、投与量、および日付の各項目が示される。患者ＩＤは、図３Ａの例と同様、患者の識別情報を表す。投薬履歴ＩＤは、１回の投薬の識別番号（投薬の履歴レコード）の識別番号を表す。医薬品名は、投与された医薬品の名称を表し、投与量は、当該医薬品の投与量を表す。日付は、投薬が行われた日付を表す。
【００２９】
再び図２を参照し、本実施形態の例の履歴対応部１５０は、処置履歴ＤＢ１６０中の履歴レコードに含まれる特定の項目に対応する種類の医療表現が対象文字列中に存在するか否かを確認する。本例では、検査の履歴レコードの項目「検査項目」および「検査値」ならびに投薬の履歴レコードの項目「医薬品名」および「投与量」に対応する種類の医療表現「検査名」、「検査値」、「医薬品名」、および「医薬品投与量」が、対象文字列中に存在するか否かを確認する。履歴レコードに含まれる特定の項目に対応する医療表現が対象文字列中に存在する場合、履歴対応部１５０は、処置履歴ＤＢ１６０中の履歴レコードのうち、当該医療表現に対応する項目の値が当該医療表現の文字列に一致する履歴レコードを検索する。なお、ここで検索対象とする履歴レコードは、対象文字列取得部１００が取得した患者の識別情報を患者ＩＤの値として含む履歴レコードである。対象文字列中の１つの医療表現について検索された履歴レコードを、履歴対応部１５０は、当該医療表現に対応付ける。本例の場合、対象文字列中の「検査名」、「検査値」、「医薬品名」、または「医薬品投与量」の医療表現のそれぞれについて、検索対象の患者ＩＤを含む履歴レコード中の対応する項目「検査項目」、「検査値」、「医薬品」、および「投与量」の値が当該医療表現の文字列に一致する履歴レコードを検索する。
【００３０】
履歴対応部１５０が行う上述の履歴レコードの検索において、医療表現の文字列と履歴レコード中の項目の値の文字列とが「一致する」とは、両者の文字列が「完全に」一致する場合だけでなく、表記揺れを考慮した検索アルゴリズムを用いて検索した結果、「同じ文字列である」と判断される場合も含む概念である。表記揺れを考慮した検索アルゴリズムとしては、従来から知られているアルゴリズムを用いればよい。例えば、参考文献２（E. Aramaki，T. Imai，K. Miyo，および K. Ohe，「Orthographic Disambiguation Incorporating Transliterated Probability」，２００８年，IJCNLP 2008）等の文献に記載のアルゴリズムを用いればよい。また例えば、参考文献３（Levenshtein V.I.， 「Binary codes capable of correcting deletions, insertions, and reversals」，Soviet Physics Doklady，１９９６年，Vol. 10，No. 8，p. 707−710）で定義される編集距離（レーベンシュタイン距離とも呼ばれる）を用いて、医療表現の文字列に対する編集距離が一定値以下である文字列を、当該医療表現の文字列と同じ文字列であるとしてもよい。以下では、文字列が「完全に」一致することも、表記揺れを考慮した検索アルゴリズムを用いて検索すると同じ内容を表す文字列であると判定されることも、単に、「文字列が一致する」と記載する。
【００３１】
履歴対応部１５０は、対象文字列中の医療表現の種類に対応する項目の文字列が当該医療表現と一致する履歴レコードが検索されると、検索された履歴レコードを当該医療表現に対応する履歴レコードとして処置履歴ＤＢ１６０から取得する。さらに、各医療表現に対応する履歴レコードに含まれる日付の値の文字列を、時間情報正規化部１３０に依頼して正規化させる。履歴対応部１５０の処理の結果は、医療表現特定部１１０および時間情報正規化部１３０の処理の結果と共に時間情報修正部１７０に渡される。
【００３２】
時間情報修正部１７０は、対象文字列中で特定された全ての医療表現のそれぞれについて、正規化された時間情報を対応付ける処理を行う。対象文字列中の時間を表す医療表現（本例では、「日付」の医療表現）と、履歴対応部１５０によって処置履歴ＤＢ１６０中の履歴レコードに対応付けられた医療表現と、に対しては、時間情報修正部１７０の処理の開始の時点で、正規化された時間情報がすでに対応付けられている。時間情報修正部１７０は、すでに医療表現に対応付けられている正規化された時間情報を用いて、未だ時間情報が対応付けられていない医療表現のそれぞれに対する時間情報を決定する。また、本例の時間情報修正部１７０は、さらに、医療表現に対応付けられた時間情報のうち、その一部が不明であるものについて、当該一部を確定させる処理を行う。時間情報修正部１７０の処理内容の詳細は後述する。
【００３３】
出力処理部１８０は、時間情報修正部１７０による処理の結果を出力する処理を行う。出力処理部１８０は、例えば、図示しない表示装置に処理の結果を表示させる。また例えば、図示しないプリンタにより処理の結果を印刷させてもよい。あるいは、図示しない記憶装置に処理の結果を保存させてもよいし、情報処理装置１０にネットワークを介して接続された他の情報処理装置に処理の結果を送信してもよい。出力処理部１８０は、以上で挙げた出力態様の例の１つだけを実行してもよいし、複数を実行してもよい。
【００３４】
以下、情報処理装置１０で行われる処理の手順の例を説明する。
【００３５】
図４は、情報処理装置１０が行う処理の全体的な流れの例を示すフローチャートである。情報処理装置１０は、例えば、ユーザが図示しない入力装置を用いて処理の開始を指示した場合に、図４の例の手順の処理を開始する。
【００３６】
図４を参照し、まず、対象文字列取得部１００が対象文字列を取得する（ステップＳ１０）。ここでは、説明のための具体例として、文字列「2010年8月31日にはO2offに成功し，病棟歩行後のBGA，夜間モニタリングにて酸素化の改善も見られ，HOTの適応はないと判断し， 9月6日退院。」を含む対象文字列がステップＳ１０で取得されたとする。また、本例では、対象文字列取得部１００は、ステップＳ１０で、さらに、当該対象文字列に係る患者の識別情報として患者ＩＤ「患者0001」を取得したとする。
【００３７】
医療表現特定部１１０は、コーパス１２０を参照して、対象文字列中の医療表現を特定する（ステップＳ１２）。図５に、医療表現特定部１１０による処理の結果の例を示す。図５を参照すると、日付（TIME）の医療表現として「2010年8月31日」および「9月6日」、検査名（TEST）の医療表現として「BGA」および「夜間モニタリング」、症状（SYMPTOM）の医療表現として「酸素化」、ならびに治療（REMEDY）の医療表現として「HOT」が特定されている。
【００３８】
時間情報正規化部１３０は、時間の医療表現を正規化する（ステップＳ１４）。図５を参照する本例では、日付の医療表現「2010年8月31日」，「9月6日」に対して、正規化ルール記憶部１４０に記憶されたルールに従って正規化が行われる。時間情報正規化部１３０は、正規化した結果の時間情報を日付の医療表現に対応付ける。例えば、当該正規化された時間情報と日付の医療表現とを図示しない一時記憶装置に対応付けて記憶させておくことで、両者を対応付ける。図５に例示する対象文字列中で特定された各医療表現と、図４のステップＳ１４を行った時点で各医療表現に対応付けられた正規化後の時間情報との例を図６に示す。図６の例の表は、各医療表現について、その種類と正規化後の時間情報とを示す。また、図６の例の表では、上の行から下の行に向かって、対象文字列において出現する順番に、各医療表現を示す。日付の医療表現「2010年8月31日」，「9月6日」のそれぞれについて、時間情報正規化部１３０が正規化した時間情報「Ｙ：２０１０，Ｍ：８，Ｄ：３１」，「Ｙ：？，Ｍ：９，Ｄ：６」が対応付けられている。なお、医療表現「9月6日」に対応する時間情報における「Ｙ：？」は、年の情報が不明であることを表す。ステップＳ１４までの処理が終了した時点で、対象文字列中で特定された医療表現のそれぞれに対応付けられる時間情報は、完全に確定済の時間情報（例：図６の「2010年8月31日」の「Ｙ：２０１０，Ｍ：８，Ｄ：３１」）、一部だけ確定済の時間情報（例：図６の「9月6日」の「Ｙ：？，Ｍ：９，Ｄ：６」）、および未定（例：図６の「BGA」から「HOT」までは時間情報なし）のいずれかとなる。
【００３９】
再び図４を参照し、履歴対応部１５０は、処置履歴ＤＢ１６０から、時間を表す医療表現以外の医療表現に対応する履歴レコードを取得する（ステップＳ１６）。本例の履歴対応部１５０は、検査の履歴レコードの項目「検査項目」および「検査値」ならびに投薬の履歴レコードの項目「医薬品名」および「投与量」に対応する種類の医療表現「検査名」、「検査値」、「医薬品名」、および「医薬品投与量」の少なくとも１つが対象文字列中で特定されている場合に、当該医療表現のそれぞれについて、対応する履歴レコードを処置履歴ＤＢ１６０から取得する。図５および図６を参照する本例の場合、対象文字列において、履歴レコードの項目「検査項目」に対応する「検査名」を表す医療表現「BGA」，「夜間モニタリング」が存在する。よって、履歴対応部１５０は、医療表現「BGA」，「夜間モニタリング」のそれぞれについて、処置履歴ＤＢ１６０に登録された検査の履歴レコードのうち、患者ＩＤがステップＳ１０で取得された「患者0001」であって文字列「BGA」または「夜間モニタリング」と一致する文字列を「検査項目」として有する履歴レコードを検索する。図３Ａに例示する検査の履歴が処置履歴ＤＢ１６０に登録されている場合、検査項目「ＢＧＡ（ＰａＯ２）」である検索履歴ＩＤ「５」，「６」の２つの履歴レコードが、医療表現「BGA」に対応する検索結果として得られる。図３Ａの例では、文字列「夜間モニタリング」を検査項目の値とする履歴レコードは存在しないため、対象文字列中の医療表現「夜間モニタリング」については、該当する履歴レコードは検索されない。
【００４０】
医療表現に対応する履歴レコードが取得されると、履歴対応部１５０は、ステップＳ１６で取得した履歴レコードに含まれる時間の情報を、時間情報正規化部１３０に依頼して正規化させる（ステップＳ１８）。図３Ａの例の表の検索履歴ＩＤ「５」，「６」の２つの履歴レコードが医療表現「BGA」に対応する検索結果として取得される本例では、これら各履歴レコード中の日付「2010/8/30」，「2010/9/5」が正規化される。正規化された時間情報は、医療表現「BGA」に対応付けられる。ステップＳ１８が終了した時点で、図５の例の対象文字列中の各医療表現に対応付けられた時間情報の例を図７に示す。図７の例の表において破線で囲んだ部分は、ステップＳ１８で正規化された時間情報を表す。図７を参照すると、医療表現「BGA」に、２つの時間情報「Ｙ：２０１０，Ｍ：８，Ｄ：３０」および「Ｙ：２０１０，Ｍ：９，Ｄ：５」が対応付けられている。ステップＳ１８までの処理が終了した時点で、対象文字列中で特定された医療表現のそれぞれに対応付けられる時間情報は、完全に確定済の時間情報、一部だけ確定済の時間情報、複数の時間情報（例：図７の「BGA」参照）、および未定のいずれかとなる。
【００４１】
ステップＳ１８の後、時間情報修正部１７０により、時間情報の修正が行われる（ステップＳ２０）。ステップＳ２０で、時間情報修正部１７０は、時間情報が未定である医療表現と、一部だけ確定済の時間情報が対応付けられている医療表現と、に対し、可能な範囲で、完全に確定済の時間情報を対応付ける処理を行う。例えば、図７を参照し、ステップＳ１８が終了した時点で時間情報が未定の医療表現「夜間モニタリング」、「酸素化」、および「HOT」に時間情報を対応付ける処理がステップＳ２０で行われる。また、年の情報が不明である（一部だけ確定済の）時間情報に対応付けられた医療表現「9月6日」に対し、年の情報を確定させる処理もステップＳ２０で行われる。さらに、本例の時間情報修正部１７０は、複数の時間情報に対応付けられた医療表現について、当該医療表現の前後の医療表現に対応付けられた時間情報を参照して、複数の時間情報から、より少ない数の時間情報に絞り込む処理を行う。図７の例では、２つの時間情報に対応付けられた医療表現「BGA」について、時間情報の数を絞り込む処理がステップＳ２０で行われる。以下、ステップＳ２０の詳細な手順の例を説明する。
【００４２】
図８〜図１１は、図４のステップＳ２０の時間情報修正処理の詳細な手順の例を表すフローチャートである。ステップＳ２０が開始されると、時間情報修正部１７０は、図８の例の手順の処理を開始する。
【００４３】
図８を参照し、時間情報修正部１７０は、対象文字列中の医療表現のうち、時間情報が一部だけ確定済の医療表現が存在するか否かを判定する（ステップＳ２００）。図７を参照する上述の例では、医療表現「9月6日」に対応付けられた時間情報「Ｙ：？，Ｍ：９，Ｄ：６」は、年の情報が不明であるため、一部だけ確定済の時間情報であると判定される。時間情報が一部だけ確定済の医療表現が存在する場合（ステップＳ２００でＹＥＳ）、処理は図９のステップＳ２０２に進む。図９の例の手順の処理の内容は後述する。
【００４４】
時間情報が一部だけ確定済の医療表現が存在しない場合（ステップＳ２００でＮＯ）、時間情報修正部１７０は、複数の時間情報に対応付けられた医療表現が存在するか否かを判定する（ステップＳ２０６）。図７を参照する上述の例では、医療表現「ＢＧＡ」に２つの時間情報「Ｙ：２０１０，Ｍ：８，Ｄ：３０」および「Ｙ：２０１０，Ｍ：９，Ｄ：５」が対応付けられていることから、ステップＳ２０６でＹＥＳと判定される。複数の時間情報に対応付けられた医療表現が存在する場合（ステップＳ２０６でＹＥＳ）、処理は図１０のステップＳ２０８に進む。図１０の例の手順の処理の内容は後述する。
【００４５】
複数の時間情報に対応付けられた医療表現が存在しない場合（ステップＳ２０６でＮＯ）、時間情報修正部１７０は、時間情報が未定の医療表現が存在するか否かを判定する（ステップＳ２１２）。時間情報が対応付けられていない医療表現が存在すればステップＳ２１２でＹＥＳと判定される。図７を参照する上述の例では、医療表現「夜間モニタリング」、「酸素化」、および「HOT」に時間情報が対応付けられていないので、時間情報が未定の医療表現が存在すると判定される。時間情報が未定の医療表現が存在すると判定された場合（ステップＳ２１２でＹＥＳ）、処理は図１１のステップＳ２１４に進む。図１１の例の手順の処理の内容は後述する。
【００４６】
時間情報が未定の医療表現が存在しない場合（ステップＳ２１２でＮＯ）、時間情報修正処理は終了し、処理は、図４のステップＳ２２に進む。
【００４７】
図９を参照し、図８のステップＳ２００で、時間情報が一部だけ確定済の医療表現が存在すると判定された場合の処理の例を説明する。図９の例の手順の処理は、一部だけ確定済の時間情報を完全に確定済の時間情報にするための処理である。時間情報修正部１７０は、まず、時間情報が一部だけ確定済の医療表現のうちの１つを選択する（ステップＳ２０２）。該当する医療表現が１つしか存在しなければ、その１つを選択する。複数存在する場合、本例では、対象文字列の先頭に最も近い位置に現れる医療表現から順に１つ選択する。各医療表現に対応付けられた時間情報が図７に例示する状態の場合、ステップＳ２０２で医療表現「9月6日」（時間情報のうち年（Ｙ）が不明）が選択される。
【００４８】
次に、ステップＳ２０２で選択した医療表現から前に遡って最初に発見される、完全に確定済の時間情報の一部を継承する（ステップＳ２０４）。本実施形態の例では、１つの医療表現に対して１つの時間情報が対応付けられており、かつ、当該時間情報において、年（Ｙ）、月（Ｍ）、および日（Ｄ）のうち不明のものが存在しない場合、当該時間情報を「完全に確定済」であると言う。ステップＳ２０４で、時間情報修正部１７０は、例えば、各医療表現を対象文字列における出現の順番に並べた場合に、ステップＳ２０２で選択した医療表現を基点に１つずつ前の順番の医療表現に対応付けられた時間情報を確認していって最初に発見される、完全に確定済の時間情報を、継承元とする。図７の例の医療表現「9月6日」がステップＳ２０２で選択される本例では、医療表現「9月6日」から前に遡って最初に発見される、完全に確定済の時間情報は、医療表現「2010年8月31日」に対応付けられた時間情報「Ｙ：２０１０，Ｍ：８，Ｄ：３１」である。時間情報修正部１７０は、ステップＳ２０２で選択した医療表現に対応付けられた時間情報において未確定である部分を、当該完全に確定済の時間情報から継承（つまり、複製）して、当該選択した医療表現に対応付けられた時間情報を完成させる。本例では、医療表現「9月6日」の年（Ｙ）が不明であるため、医療表現「2010年8月31日」に対応付けられた、完全に確定済の時間情報「Ｙ：２０１０，Ｍ：８，Ｄ：３１」の「Ｙ：２０１０」を継承させる。これにより、「9月6日」の時間情報は、「Ｙ：２０１０，Ｍ：９，Ｄ：６」となり、完全に確定済の時間情報となる。この結果の例を図１２に示す。図１２は、ステップＳ２０４を行った時点での、対象文字列中の各医療表現に対応付けられた時間情報の例を示す。なお、ステップＳ２０４で、処理対象の医療表現より前の医療表現のうち、完全に確定済の時間情報に対応付けられた医療表現が存在しない場合は、その旨を表す情報を処理対象の医療表現に対応付けておけばよい。ステップＳ２０４の後、処理は図８のステップＳ２００に戻り、時間情報が一部だけ確定済の医療表現が他にも存在するか否か判定される。各医療表現に対応付けられた時間情報が図１２に例示する状態の場合、時間情報が一部だけ確定済の医療表現は存在しないことから、ステップＳ２００でＮＯ判定されて、ステップＳ２０６に進む。
【００４９】
図１０を参照し、図８のステップＳ２０６で、複数の時間情報に対応付けられた医療表現が存在すると判定された場合の処理の例を説明する。図１０の例の手順の処理は、１つの医療表現に対応付けられた複数の時間情報をより少ない数の時間情報に絞り込むための処理である。時間情報修正部１７０は、まず、複数の時間情報に対応付けられた医療表現を１つ選択する（ステップＳ２０８）。該当する医療表現が１つしか存在しなければ、その１つを選択する。複数存在する場合、本例では、対象文字列の先頭に最も近い位置に現れる医療表現から順に１つ選択する。各医療表現に対応付けられた時間情報が図１２に例示する状態の場合、ステップＳ２０８で、２つの時間情報に対応付けられた医療表現「BGA」が選択される。
【００５０】
次に、ステップＳ２０８で選択した医療表現の前後の医療表現において完全に確定済の時間情報を参照し、選択した医療表現に対する時間情報を絞り込む（ステップＳ２１０）。例えば、時間情報修正部１７０は、ステップＳ２０８で選択した医療表現から前に遡って最初に発見される、完全に確定済の時間情報と、選択した医療表現より後で最初に発見される、完全に確定済の時間情報と、によって表される期間内に該当しない時間情報を、ステップＳ２０８で選択した医療表現に対応付けられた複数の時間情報から削除する。図１２の例の医療表現「BGA」が選択される本例の場合、医療表現「BGA」から前に遡って最初に発見される、完全に確定済の時間情報は、医療表現「2010年8月31日」に対応付けられた「Ｙ：２０１０，Ｍ：８，Ｄ：３１」である。また、医療表現「BGA」の後で最初に発見される、完全に確定済の時間情報は、医療表現「9月６日」に対応付けられた「Ｙ：２０１０，Ｍ：９，Ｄ：６」である。前後で発見された時間表現が表す期間は、２０１０年８月３１日から２０１０年９月６日であり、医療表現「BGA」に対応付けられた２つの時間情報のうち、「Ｙ：２０１０，Ｍ：８，Ｄ：３０」は、当該期間内に該当せず、「Ｙ：２０１０，Ｍ：９，Ｄ：５」は、当該期間内に該当する。よって、本例では、ステップＳ２１０で、時間情報修正部１７０は、医療表現「BGA」に対応する時間情報として、前述の期間内の「Ｙ：２０１０，Ｍ：９，Ｄ：５」のみを残して、「Ｙ：２０１０，Ｍ：８，Ｄ：３０」を削除する。この結果の例を図１３に示す。図１３を参照し、医療表現「BGA」には、時間情報「Ｙ：２０１０，Ｍ：９，Ｄ：５」のみが対応付けられている。
【００５１】
なお、ステップＳ２１０で時間情報を絞り込んだ結果、複数の時間情報が残ってもよい。また、処理対象の医療表現の前後のいずれか一方でのみ、完全に確定済の時間情報に対応付けられた医療表現が発見されることもあり得る。この場合、例えば、処理対象の医療表現の前の医療表現で完全に確定済の時間情報に対応付けられたものがあれば、処理対象の医療表現に対応付けられた複数の時間情報のうち、当該確定済の時間情報以前の時間を表す時間情報を削除すればよい。処理対象の医療表現の後の医療表現でのみ完全に確定済の時間情報に対応付けられたものが発見されたときは、処理対象の医療表現に対応付けられた複数の時間情報のうち、当該確定済の時間情報以降の時間を表す時間情報を削除すればよい。また、処理対象の医療表現の前後のいずれにおいても完全に確定済の時間情報に対応付けられた医療表現が発見されなかった場合は、その旨を表す情報を処理対象の医療表現に対応付けておけばよい。
【００５２】
ステップＳ２１０の後、処理は図８のステップＳ２０６に戻り、複数の時間情報に対応付けられた医療表現が他にも存在するか否か判定される。各医療表現に対応付けられた時間情報が図１３に例示する状態の場合、複数の時間情報に対応付けられた医療表現は存在しないことから、ステップＳ２０６でＮＯ判定されて、ステップＳ２１２に進む。
【００５３】
図１１を参照し、図８のステップＳ２１２で、時間情報が未定の医療表現が存在すると判定された場合（ステップＳ２１２でＹＥＳ）の処理の例を説明する。図１１の例の手順の処理は、時間情報が未定である医療表現に時間情報を対応付けるための処理である。時間情報修正部１７０は、まず、時間情報が未定の医療表現のうちの１つを選択する（ステップＳ２１４）。該当する医療表現が１つしか存在しなければ、その１つを選択する。複数存在する場合、本例では、対象文字列の先頭に最も近い位置に現れる医療表現から順に１つ選択する。各医療表現に対応付けられた時間情報が図１３に例示する状態の場合、時間情報が未定である３つの医療表現「夜間モニタリング」、「酸素化」、および「HOT」のうち、最も先頭に近い「夜間モニタリング」がステップＳ２１４で選択される。
【００５４】
次に、時間情報修正部１７０は、ステップＳ２１４で選択した医療表現から前に遡って最初に発見される、完全に確定済の時間情報を継承する（ステップＳ２１６）。ステップＳ２１６で、時間情報修正部１７０は、発見された時間情報の全体を複製して、ステップＳ２１４で選択した医療表現に対応付ける。図１３の例の医療表現「夜間モニタリング」がステップＳ２１４で選択される本例の場合、「夜間モニタリング」の直前の医療表現「BGA」に対応付けられた時間情報「Ｙ：２０１０，Ｍ：９，Ｄ：５」が複製されて医療表現「夜間モニタリング」に対応付けられる。なお、処理対象の医療表現から前に遡っても完全に確定済の時間情報が発見されなかった場合、その旨を表す情報を処理対象の医療表現に対応付けておけばよい。
【００５５】
ステップＳ２１６の後、処理は図８のステップＳ２１２に戻り、時間情報が未定の医療表現が他にも存在するか否か判定される。図１３を参照する上述の例において医療表現「夜間モニタリング」に時間情報「Ｙ：２０１０，Ｍ：９，Ｄ：５」をステップＳ２１６で対応付けた後、医療表現「酸素化」および「HOT」の時間情報が未定であるため、ステップＳ２１２でＹＥＳ判定されて再び図１１のステップＳ２１４，Ｓ２１６が実行される。ステップＳ２１４，Ｓ２１６の処理により、医療表現「夜間モニタリング」を参照して上記で説明したのと同様に、医療表現「酸素化」について、その直前の完全に確定済の時間情報「Ｙ：２０１０，Ｍ：９，Ｄ：５」（医療表現「夜間モニタリング」に対応）が継承される。その後、さらに、時間情報が未定の医療表現「HOT」に関し、図８のステップＳ２１２でＹＥＳ判定されて、図１１のステップＳ２１４，Ｓ２１６が同様に実行される。すると、医療表現「HOT」には、その直前の完全に確定済の時間情報「Ｙ：２０１０，Ｍ：９，Ｄ：５」（医療表現「酸素化」に対応）が継承される。この時点で各医療表現に対応付けられた時間情報の例を図１４に示す。図１４を参照し、破線の矢印は、医療表現「夜間モニタリング」が医療表現「BGA」から時間情報「Ｙ：２０１０，Ｍ：９，Ｄ：５」を継承したこと、および、医療表現「酸素化」が医療表現「夜間モニタリング」から、医療表現「HOT」が医療表現「酸素化」から、それぞれ時間情報を継承したことを示す。図１１の例のステップＳ２１４，Ｓ２１６の処理が医療表現「HOT」に対して行われた後、時間情報が未定の医療表現は存在しないことから、図８のステップＳ２１２でＮＯ判定され、処理は図４のステップＳ２２に進む。
【００５６】
以上、図８から図１４を参照し、図４の例の手順におけるステップＳ２０の時間情報修正処理の例を説明した。以上で説明した時間情報修正処理の結果、ステップＳ２０の開始の時点ですでに時間情報に対応付けられた医療表現が１つでもあれば、少なくとも、その医療表現より後に出現する対象文字列中の医療表現については、それぞれ、正規化された時間情報が対応付けられる。
【００５７】
出力処理部１８０は、ステップＳ２０までの処理の結果を出力する（ステップＳ２２）。本実施形態の例では、ステップＳ２２で、対象文字列中の医療表現のうち、出力の対象として予め設定された種類の医療表現と、ステップＳ２０までの処理によって当該医療表現に対応付けられた時間情報と、の組を出力する。本例で出力の対象として設定される医療表現の種類は、医療の現場で行われた行為または生じた事象のうち、着目する行為または事象として予め設定された種類の医療表現であるとする。ここでは、出力の対象として設定された種類の医療表現を「医療イベント」と呼ぶ。また、本例では、出力対象の医療イベントとして、「検査名」、「症状」、および「医薬品名」が設定されているとする。図１５に、ステップＳ２２での出力の態様の例を示す。図１５の例では、医療イベントと、各医療イベントに対応する時間情報とを対応付ける表が出力される。なお、図１５の例では、１つの医療イベントに対して１つの時間情報が対応付けられているけれども、ステップＳ２０までの処理の結果、複数の時間情報に対応付けられた医療イベントが残っている場合は、当該医療イベントと当該複数の時間情報とを対応付けてステップＳ２２で出力してよい。ステップＳ２２の後、図４の例の手順の処理は終了する。
【００５８】
以上で説明した実施形態の例では、医師等の医療機関の職員が自由記述形式で記述した医療テキストにおいて、着目すべき事象または行為として予め設定された医療イベントおよび時間を表す表現が特定される。さらに、医療テキスト中の時間を表す表現と共に、医療イベントの発生（実行）の履歴を記録した処置履歴ＤＢ１６０も参照して、医療テキスト中で特定された各医療イベントが発生したと考えられる時間を表す時間情報が求められ、各医療イベントとその時間情報とが対応付けられて出力される。
【００５９】
以上で説明した実施形態の例では、予め収集した医療テキストにおける医療表現にタグ付けしたコーパス１２０を参照して、対象文字列中の医療表現を特定する。他の実施形態の例では、コーパスを利用する代わりに、形態素解析を行うことで医療表現を特定してもよい。形態素解析は、対象文字列を形態素（単語）に分解し、各形態素の文法上の役割（例えば、品詞）を特定する処理である。形態素解析は、例えば、単語と当該単語の品詞を表す情報とを対応付けて記憶すると共に、処理対象のテキストが記述された言語（本例では日本語）の文法規則を記憶した解析辞書を参照して行われる。よって、本実施形態の例では、図１の例の情報処理装置１０において、コーパス１２０の代わりに解析辞書を設ければよい。また、解析辞書において、一般的な単語と共に、医療表現に該当する用語を登録しておき、医療表現に該当する用語の品詞として、医療表現の種類（検査名、医薬品名等）を登録しておけばよい。さらに、日付等の時間を表す医療表現を特定するため、例えば、正規化ルール記憶部１４０において、時間を表す表現を特定するためのルールとして、形態素の連続に基づいて予め定義されたルールを登録しておけばよい。
【００６０】
図１６に、図５に例示する対象文字列と同じ対象文字列を形態素解析した結果の一部の例を示す。図１６の例の表の１行は、形態素解析の結果として得られた各単語の情報を表す。図１６の例の表において、表層は、当該単語が対象文字列で現れるときの文字列を表し、原形は、当該単語が表層において活用している場合の原形の文字列を表す。また、品詞は、当該単語について特定された品詞を表す。図１６を参照し、破線で囲んだ単語「BGA」の品詞は、「名詞−医療−検査」である。「名詞−医療−検査」は、当該品詞の単語が、医療表現の名詞であり、かつ、その医療表現の種類が「検査」であることを表す。解析辞書において、単語「BGA」の品詞を「名詞−医療−検査」と登録しておくことで、形態素解析の結果、当該単語についてこのような品詞が得られる。
【００６１】
図１７に、形態素の連続に基づいて定義される時間情報の正規化のルールの例を示す。図１７の例の表において、優先順位「１」のルールは、品詞「名詞−数」の単語（＄１）の次に表層「年」、品詞「名詞−数」の単語（＄２）の次に表層「月」、さらに、品詞「名詞−数」の単語（＄３）の次に表層「日」が連続して現れる場合に、＄１の単語を年（Ｙ）、＄２の単語を月（Ｍ）、および＄３の単語を日（Ｄ）として、正規化された日付の情報を生成することを表す。また、優先順位「２」のルールは、品詞「名詞−数」の単語（＄１）の次に表層「／」、さらに品詞「名詞−数」の単語（＄２）が連続して現れる場合に、＄１の単語を月（Ｍ）および＄２の単語を日（Ｄ）として、正規化された日付の情報を生成することを表す。例えば、図１６の例の表の表層「８」から表層「日」までの部分が図１７の例の優先順位「１」のルールに合致し、日付の情報「Ｙ：２０１０，Ｍ：８，Ｄ：３１」が生成され得る。
【００６２】
形態素解析の結果、医療表現であることを表す品詞の単語として特定された単語を、各種の医療表現として扱い、かつ、図１７の例のルールを適用した結果、生成された日付の情報を時間の医療表現として扱って、上述の履歴対応部１５０、時間情報修正部１７０、および出力処理部１８０の処理を同様に実行してよい。
【００６３】
なお、以上で説明した実施形態の例および変形例では、医療テキストを処理対象とするが、本発明の他の実施の形態では、医療分野の他の分野の文書を処理対象としてもよい。例えば、何らかの事象に関する記録を自然言語で記述した文書を処理対象とし、着目する事象の種類と当該種類の事象が生じた時間とを含む履歴情報を記憶した履歴データベースを予め用意しておく。そして、処理対象の文書において、予め構成したコーパスを用いた解析または形態素解析によって、着目する種類の事象を表す表現および時間を表す表現を特定し、事象を表す表現に対応する履歴データベース中の履歴レコードを検索して、図８〜図１１を参照して上記で説明した例と同様の手順により、対象文字列中で特定された各事象の表現に時間情報を対応付ける処理を行えばよい。
【００６４】
以上に例示した情報処理装置１０は、典型的には、汎用のコンピュータにて上述の情報処理装置１０の各部の機能または処理内容を記述したプログラムを実行することにより実現される。コンピュータは、例えば、ハードウエアとして、図１８に示すように、ＣＰＵ（中央演算装置）８０、メモリ（一次記憶）８２、各種Ｉ／Ｏ（入出力）インタフェース８４等がバス８６を介して接続された回路構成を有する。また、そのバス８６に対し、例えばＩ／Ｏインタフェース８４経由で、ハードディスクドライブ（ＨＤＤ）８８やＣＤやＤＶＤ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体を読み取るためのディスクドライブ９０が接続される。このようなドライブ８８または９０は、メモリに対する外部記憶装置として機能する。実施形態の処理内容が記述されたプログラムがＣＤやＤＶＤ等の記録媒体を経由して、またはネットワーク経由で、ＨＤＤ８８等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがメモリに読み出されＣＰＵにより実行されることにより、実施形態の処理が実現される。
【００６５】
なお、以上では、情報処理装置１０を１台のコンピュータにより実現する例の実施形態を説明したが、情報処理装置１０の上述の例の各種の機能を複数のコンピュータに分散させて実現してもよい。
【符号の説明】
【００６６】
１０  情報処理装置、８０  ＣＰＵ、８２  メモリ、８４  Ｉ／Ｏインタフェース、８６  バス、８８  ＨＤＤ、９０  ディスクドライブ、１００  対象文字列取得部、１１０  医療表現特定部、１２０  コーパス、１３０  時間情報正規化部、１４０  正規化ルール記憶部、１５０  履歴対応部、１６０  処置履歴ＤＢ、１７０  時間情報修正部、１８０  出力処理部。
【図１】
0005630353.tif 000002
【図２】
0005630353.tif 000003
【図３Ａ】
0005630353.tif 000004
【図３Ｂ】
0005630353.tif 000005
【図４】
0005630353.tif 000006
【図５】
0005630353.tif 000007
【図６】
0005630353.tif 000008
【図７】
0005630353.tif 000009
【図８】
0005630353.tif 000010
【図９】
0005630353.tif 000011
【図１０】
0005630353.tif 000012
【図１１】
0005630353.tif 000013
【図１２】
0005630353.tif 000014
【図１３】
0005630353.tif 000015
【図１４】
0005630353.tif 000016
【図１５】
0005630353.tif 000017
【図１６】
0005630353.tif 000018
【図１７】
0005630353.tif 000019
【図１８】
0005630353.tif 000020