(57)【特許請求の範囲】
【請求項１】
目的変数に対応する説明変数群を決定する、システムであって、
プロセッサと記憶装置とを含み、
前記記憶装置は、
１以上の階層を有する１以上の木構造と、複数の説明変数候補それぞれが前記１以上の木構造のノードのいずれかであることを示す対応関係と、を示す概念構造情報と、
前記複数の説明変数候補それぞれの測定値及び前記目的変数の測定値を示す測定値情報と、を保持し、
前記１以上の木構造のノードそれぞれは、概念であり、
前記１以上の木構造において、親ノードは子ノードの上位概念であり、
前記プロセッサは、説明変数候補群から、前記説明変数群に含める説明変数を決定する決定処理を繰り返し、
初回の前記決定処理における前記説明変数候補群は、前記複数の説明変数候補であり、
前記プロセッサは、前記決定処理において、
前記測定値情報に基づいて、前記説明変数候補群の説明変数候補それぞれと、前記目的変数と、の第１関連度を算出し、
前記第１関連度それぞれに基づいて、前記説明変数群に含める説明変数候補を前記説明変数候補群から選択し、
前記選択した説明変数候補を、前記説明変数群に含め、
前記選択した説明変数候補を、前記説明変数候補群から除外し、
前記概念構造情報を参照して、前記説明変数候補群から、前記選択した説明変数候補の上位概念である説明変数候補を特定し、
前記特定した説明変数候補それぞれを、当該説明変数候補の前記概念構造情報が示す下位概念から前記選択した説明変数候補を除外した説明変数候補に変更する変更処理を実施し、
前記選択した説明変数候補の前記概念構造情報が示す兄弟ノードの測定値を前記測定値情報から取得し、
前記取得した測定値に基づいて、前記変更処理における変更後の説明変数候補それぞれの測定値を算出し、
前記算出した測定値を、前記測定値情報に含める、システム。
【請求項２】
請求項１に記載のシステムであって、
前記プロセッサは、２回目以降の前記決定処理において、
前記測定値情報に基づいて、前記説明変数群と、前記説明変数候補群の説明変数候補それぞれと、の第２関連度を算出し、
前記第１関連度それぞれに基づいて、前記説明変数群に含める説明変数候補を、前記第２関連度が閾値以下である前記説明変数候補群の説明変数候補から選択する、システム。
【請求項３】
請求項１に記載のシステムであって、
前記プロセッサは、前記決定処理において、
前記概念構造情報を参照して、前記説明変数候補群から、前記選択した説明変数候補の下位概念である説明変数候補、を特定し、
前記特定した下位概念である説明変数候補を、前記説明変数候補群から除外する、システム。
【請求項４】
請求項１に記載のシステムであって、
前記複数の説明変数候補に含まれる第１説明変数候補は、複数の木構造に属する、システム。
【請求項５】
請求項１に記載のシステムであって、
前記記憶装置は、第１概念と前記第１概念の上位概念である第２概念と、を示す知識情報を保持し、
前記プロセッサは、
前記概念構造情報に含まれる全ての木構造が、前記第１概念及び前記第２概念が含まない場合、前記第２概念が前記第１概念の親ノードである木構造を、前記概念構造情報に含め、
前記概念構造情報に含まれる第１木構造が、前記第１概念と前記第１概念の上位概念である第３概念とを含む場合、前記第２概念又は前記第３概念の一方が他方の親ノードであり、前記他方が前記第１概念の親ノードである木構造を、前記概念構造情報に含める、システム。
【請求項６】
請求項１に記載のシステムであって、
前記プロセッサは、
前記決定処理の繰り返しによって決定した説明変数群と、前記決定した説明変数群の説明変数それぞれと前記目的変数との前記第１関連度と、を示す変数情報を、前記記憶装置に格納し、
前記目的変数に対応する説明変数群を再決定する再決定処理を実施し、
前記再決定処理は、前記決定処理の繰り返しからなり、
前記再決定処理における初回の前記決定処理において、
前記変数情報が示す第１関連度それぞれに基づいて、前記変数情報が示す説明変数であって、前記変更処理によって変更された説明変数、を前記説明変数群に含める説明変数候補として選択し、
前記概念構造情報を参照して、前記選択した説明変数の前記変更処理による変更前の説明変数候補を特定し、
前記特定した変更前の説明変数候補を、前記説明変数候補群から除外する、システム。
【請求項７】
請求項１に記載のシステムであって、
前記プロセッサは、前記決定処理において、前記第１関連度が最大である前記説明変数候補群の説明変数候補を、前記説明変数群に含める説明変数候補として、選択する、システム。
【請求項８】
請求項１に記載のシステムであって、
表示装置に接続され、
前記プロセッサは、
前記説明変数群と、前記変更処理における変更後の説明変数候補と、を前記表示装置に出力する、システム。
【請求項９】
システムが、目的変数に対応する説明変数群を決定する、方法であって、
前記システムは、
１以上の階層を有する１以上の木構造と、複数の説明変数候補それぞれが前記１以上の木構造のノードのいずれかであることを示す対応関係と、を示す概念構造情報と、
前記複数の説明変数候補それぞれの測定値及び前記目的変数の測定値を示す測定値情報と、を保持し、
前記１以上の木構造のノードそれぞれは、概念であり、
前記１以上の木構造において、親ノードは子ノードの上位概念であり、
前記方法は、前記システムが、説明変数候補群から、前記説明変数群に含める説明変数を決定する決定処理を繰り返し、
初回の前記決定処理における前記説明変数候補群は、前記複数の説明変数候補であり、
前記方法は、前記システムが、前記決定処理において、
前記測定値情報に基づいて、前記説明変数候補群の説明変数候補それぞれと、前記目的変数と、の第１関連度を算出し、
前記第１関連度それぞれに基づいて、前記説明変数群に含める説明変数候補を前記説明変数候補群から選択し、
前記選択した説明変数候補を、前記説明変数群に含め、
前記選択した説明変数候補を、前記説明変数候補群から除外し、
前記概念構造情報を参照して、前記説明変数候補群から、前記選択した説明変数候補の上位概念である説明変数候補を特定し、
前記特定した説明変数候補それぞれを、当該説明変数候補の前記概念構造情報が示す下位概念から前記選択した説明変数候補を除外した説明変数候補に変更する変更処理を実施し、
前記選択した説明変数候補の前記概念構造情報が示す兄弟ノードの測定値を前記測定値情報から取得し、
前記取得した測定値に基づいて、前記変更処理における変更後の説明変数候補それぞれの測定値を算出し、
前記算出した測定値を、前記測定値情報に含める、方法。
【請求項１０】
請求項９に記載の方法であって、
前記システムが、２回目以降の前記決定処理において、
前記測定値情報に基づいて、前記説明変数群と、前記説明変数候補群の説明変数候補それぞれと、の第２関連度を算出し、
前記第１関連度それぞれに基づいて、前記説明変数群に含める説明変数候補を、前記第２関連度が閾値以下である前記説明変数候補群の説明変数候補から選択する、方法。
【請求項１１】
請求項９に記載の方法であって、
前記システムが、前記決定処理において、
前記概念構造情報を参照して、前記説明変数候補群から、前記選択した説明変数候補の下位概念である説明変数候補、を特定し、
前記特定した下位概念である説明変数候補を、前記説明変数候補群から除外する、方法。
【請求項１２】
請求項９に記載の方法であって、
前記複数の説明変数候補に含まれる第１説明変数候補は、複数の木構造に属する、方法。
【請求項１３】
請求項９に記載の方法であって、
前記システムは、第１概念と前記第１概念の上位概念である第２概念と、を示す知識情報を保持し、
前記方法は、前記システムが、
前記概念構造情報に含まれる全ての木構造が、前記第１概念及び前記第２概念が含まない場合、前記第２概念が前記第１概念の親ノードである木構造を、前記概念構造情報に含め、
前記概念構造情報に含まれる第１木構造が、前記第１概念と前記第１概念の上位概念である第３概念とを含む場合、前記第２概念又は前記第３概念の一方が他方の親ノードであり、前記他方が前記第１概念の親ノードである木構造を、前記概念構造情報に含める、方法。
【請求項１４】
請求項９に記載の方法であって、
前記システムが、
前記決定処理の繰り返しによって決定した説明変数群と、前記決定した説明変数群の説明変数それぞれと前記目的変数との前記第１関連度と、を示す変数情報を、前記システムに格納し、
前記目的変数に対応する説明変数群を再決定する再決定処理を実施し、
前記再決定処理は、前記決定処理の繰り返しからなり、
前記再決定処理における初回の前記決定処理において、
前記変数情報が示す第１関連度それぞれに基づいて、前記変数情報が示す説明変数であって、前記変更処理によって変更された説明変数、を前記説明変数群に含める説明変数候補として選択し、
前記概念構造情報を参照して、前記選択した説明変数の前記変更処理による変更前の説明変数候補を特定し、
前記特定した変更前の説明変数候補を、前記説明変数候補群から除外する、方法。
【請求項１５】
請求項９に記載の方法であって、
前記方法は、前記システムが、前記決定処理において、前記第１関連度が最大である前記説明変数候補群の説明変数候補を、前記説明変数群に含める説明変数候補として、選択する、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、目的変数に対応する説明変数群を決定するシステム及び方法に関する。
【背景技術】
【０００２】
近年、医療分野において、蓄積されたデータから、複数の説明変数（例えば病名や処方薬など）の測定値からなるデータセットに対して、機械学習や統計解析などを用いた分析を行うことにより、目的変数が示す事象の予測等が行われている。
【０００３】
当該予測等を実行するためにデータセットに含める説明変数を選択する、背景技術として、特開２０００−２０５０４号公報（特許文献１）がある。特許文献１には、「候補説明変数に基づいて説明変数を生成する説明変数合成部Ｓ1〜Ｓnと、説明変数合成部Ｓ1〜Ｓnが生成した説明変数に基づいて目的変数の変化を説明する関係式を生成する回帰分析実行部１と、回帰分析実行部１が生成した関係式の適切度を定量的に評価する適切度判定部２と、適切度が最も高い説明変数と回帰式を探索する最良回帰式決定部３とを備える。説明変数合成部Ｓ1〜Ｓnに入力される候補説明変数は、最良回帰式決定部３から出力される説明変数生成パラメータにより設定される。説明変数合成部Ｓ1〜Ｓnは、候補説明変数それ自体だけでなく、候補説明変数の組み合わせや、候補説明変数に対して何らかの演算処理を施した結果を説明変数として出力できる。」と記載されている（要約参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−２０５０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載の技術が、国際疾病分類に含まれる病名から上述のデータセットに含める説明変数を選択する例を考える。国際疾病分類は、複数の病名からなり、各病名は、大分類、中分類、又は小分類のいずれかに属する。また、国際疾病分類は、上位概念から下位概念への木構造で定義されている。つまり、小分類に含まれる各病名は中分類に含まれるいずれかの病名の下位概念であり、中分類に含まれる各病名は大分類に含まれるいずれかの病名の下位概念である。
【０００６】
国際疾病分類のような木構造で定義された、説明変数候補から説明変数を選択する場合、当該説明変数候補間の木構造上のつながりを考慮する必要がある。しかし、特許文献１に記載の技術は、当該つながりを考慮していない。
【０００７】
例えば、小分類「病名Ａ」、「病名Ｂ」、「病名Ｃ」を下位概念として含む中分類「病名群α」が存在する例を考える。例えば、「病名Ｂ」による目的変数への影響力が強い場合、「病名Ａ」及び「病名Ｃ」による目的変数への影響力が弱かったとしても、「病名Ｂ」の上位概念である「病名群α」による目的変数への影響力が強い可能性が高い。
【０００８】
このとき、特許文献１に記載の技術は、「病名Ｂ」に加え、「病名群α」を説明変数に選択する可能性が高い。しかし、「病名Ｂ」と「病名群α」とが説明変数に選択された場合、ユーザは、「病名Ａ」及び「病名Ｃ」による目的変数への影響力があるか否かを判断することができない。
【０００９】
また、「病名Ｂ」と「病名群α」とが説明変数に選択された場合、目的変数の値の予測において説明変数「病名Ｂ」が二重に影響するため、目的変数の値の予測精度が低下するおそれがある。従って、このような場合、木構造上のつながりを考慮して、説明変数候補である「病名群α」を、「病名群α」の下位概念から「病名Ｂ」を除外した新たな説明変数候補である病名群、即ち「病名Ａ」及び「病名Ｃ」からなる新たな説明変数候補である病名群として、再生成することが望ましい。
【００１０】
また、例えば医療分野では、病名、処方薬、及び検査項目などの、数千から数万種類の説明変数候補が存在する。従って、特許文献１に記載の技術において、説明変数の選択、再生成対象の説明変数候補の決定、及び説明変数の再生成方法等を、ユーザが適切に手動で指定することは困難である。
【課題を解決するための手段】
【００１１】
上記の課題を解決するために、本発明の一態様は、以下の構成を採用する。目的変数に対応する説明変数群を決定する、システムであって、プロセッサと記憶装置とを含み、前記記憶装置は、１以上の階層を有する１以上の木構造と、複数の説明変数候補それぞれが前記１以上の木構造のノードのいずれかであることを示す対応関係と、を示す概念構造情報と、前記複数の説明変数候補それぞれの測定値及び前記目的変数の測定値を示す測定値情報と、を保持し、前記１以上の木構造のノードそれぞれは、概念であり、前記１以上の木構造において、親ノードは子ノードの上位概念であり、前記プロセッサは、説明変数候補群から、前記説明変数群に含める説明変数を決定する決定処理を繰り返し、初回の前記決定処理における前記説明変数候補群は、前記複数の説明変数候補であり、前記プロセッサは、前記決定処理において、前記測定値情報に基づいて、前記説明変数候補群の説明変数候補それぞれと、前記目的変数と、の第１関連度を算出し、前記第１関連度それぞれに基づいて、前記説明変数群に含める説明変数候補を前記説明変数候補群から選択し、前記選択した説明変数候補を、前記説明変数群に含め、前記選択した説明変数候補を、前記説明変数候補群から除外し、前記概念構造情報を参照して、前記説明変数候補群から、前記選択した説明変数候補の上位概念である説明変数候補を特定し、前記特定した説明変数候補それぞれを、当該説明変数候補の前記概念構造情報が示す下位概念から前記選択した説明変数候補を除外した説明変数候補に変更する変更処理を実施し、前記選択した説明変数候補の前記概念構造情報が示す兄弟ノードの測定値を前記測定値情報から取得し、前記取得した測定値に基づいて、前記変更処理における変更後の説明変数候補それぞれの測定値を算出し、前記算出した測定値を、前記測定値情報に含める、システム。
【発明の効果】
【００１２】
本発明の一態様によれば、目的変数に対する説明力のある説明変数を選択することができ、かつ当該選択した説明変数が有する意味の重複を避けることができる。
【００１３】
上記以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００１４】
【図１】実施例１における変数最適化システムの構成例を示すブロック図である。
【図２】実施例１における概念構造テーブルの例である。
【図３】実施例１における患者情報テーブルの例である。
【図４】実施例１における検査情報テーブルの例である。
【図５】実施例１における処方情報テーブルの例である。
【図６】実施例１における説明変数候補テーブルの例である。
【図７】実施例１におけるデータセット格納テーブルの例である。
【図８】実施例１における、説明変数抽出処理及び再生成処理が実行された後のデータセット格納テーブルの例である。
【図９】実施例１における関連度テーブルの例である。
【図１０】実施例１における、説明変数抽出処理及び再生成処理が実行された後の関連度テーブルの例である。
【図１１】実施例１における変数最適化処理の一例を示すフローチャートである。
【図１２】実施例１における関連度算出処理の一例を示すフローチャートである。
【図１３】実施例１における説明変数抽出処理及び説明変数再生成処理の一例を示すフローチャートである。
【図１４】実施例１における各種分析オプション受付画面の一例である。
【図１５】実施例１における分析処理結果表示画面の一例である。
【発明を実施するための形態】
【００１５】
以下、添付図面を参照して本発明の実施形態を説明する。本実施形態は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。各図において共通の構成については同一の参照符号が付されている。
【００１６】
本実施形態は、変数最適化システムを説明する。変数最適化システムは、複数の説明変数候補から、目的変数に対応する１以上の説明変数を選択する。当該複数の説明変数候補それぞれは、１以上の階層を有する木構造のノードのいずれかとして定義されている。
【実施例１】
【００１７】
＜システム構成＞
図１は、本実施例の情報システムの構成例を示すブロック図である。本実施例は、変数最適化システムが、病院情報に適用された例を説明する。本実施例の情報システムは、例えば、ネットワーク１４０を介して、互いに接続された、変数最適化システム１００、病院情報システム１２０、及び入出力端末１３０、を含む。
【００１８】
ネットワーク１４０は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）ケーブルによる有線通信、又は無線ＬＡＮによる無線通信を利用する。また、ネットワーク１４０は、インターネット、ＶＰＮ、携帯電話通信網、ＰＨＳ通信網など、他の広域ネットワークを利用することもできる。
【００１９】
変数最適化システム１００は、蓄積された目的変数及び説明変数候補の測定値を用いて、各説明変数候補と目的変数との関連度を算出し、関連度に基づいて説明変数候補から抽出対象の説明変数を決定する。また、抽出対象の説明変数に基づいて選択した説明変数候補を再生成する。
【００２０】
病院情報システム１２０は、例えば、患者情報データベース１２１、検査情報データベース１２２、及び処方情報データベース１２３、を格納する記憶装置を有する計算機である。病院情報システム１２０に含まれる各データベースは、変数の測定値を格納する。
【００２１】
患者情報データベース１２１は、病院の患者毎の基本情報等を格納する。検査情報データベース１２２は、患者毎の検査情報を格納する。処方情報データベース１２３は、患者毎の処方情報を格納する。病院情報システム１２０に含まれるデータベースに格納される情報は、ネットワーク１４０を介して、変数最適化システム１００に提供される。
【００２２】
入出力端末１３０は、例えば、キーボード、マウス、又はタッチパネルなどの入力装置（図示省略）と、ディスプレイなどの出力装置（図示省略）と、変数最適化システム１００などと通信する通信部（図示省略）と、を含む１又は複数のパーソナルコンピュータである。また、入出力端末１３０は、例えば、ボタン又はタッチパネルなどの入力装置と、ディスプレイなどの出力装置と、変数最適化システム１００などと通信する通信部とを含むＰＤＡ、ＰＨＳ、携帯電話、スマートフォン、又はタブレット端末などの可搬型端末であってもよい。
【００２３】
入出力端末１３０は、例えば、病院又は診療所などの医療機関（ヘルスケアプロバイダ）に設置される。変数最適化システム１００は、例えば、データセンターに設置される。変数最適化システム１００がデータセンターに設置されることで、患者の個人情報及び患者から収集されるデータなどのプライバシー情報を一元管理できるので、情報漏洩防止等のセキュリティ管理を簡易化できる。変数最適化システム１００は、運用の形態によってはヘルスケアプロバイダに設置されてもよい。
【００２４】
医療機関の医師、分析担当者、薬剤師、管理者及び経営責任者は、入出力端末１３０の利用者（以下ユーザと記載する）の一例である。変数最適化システム１００は、ユーザからの入出力端末１３０からの指示に従って、目的変数に対応する説明変数を抽出し、抽出した説明変数と目的変数の測定値を含むデータセットを出力する。
【００２５】
変数最適化システム１００は、例えば、相互に接続された、制御部１０１、出力部１０２、メモリ１０３、通信部１０４、補助記憶装置１１６を含む計算機によって構成される。制御部１０１は、例えばメモリ１０３に格納されたプログラムを実行するプロセッサであり、変数最適化システム１００を制御する。
【００２６】
メモリ１０３は、不揮発性の記憶素子であるＲＯＭ及び揮発性の記憶素子であるＲＡＭを含む。ＲＯＭは、不変のプログラム（例えば、ＢＩＯＳ）などを格納する。ＲＡＭは、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）のような高速かつ揮発性の記憶素子であり、制御部１０１が実行するプログラム及びプログラムの実行時に使用されるデータを一時的に格納する。
【００２７】
補助記憶装置１１６は、例えば、磁気記憶装置（ＨＤＤ）、フラッシュメモリ（ＳＳＤ）等の大容量かつ不揮発性の記憶装置であり、制御部１０１が実行するプログラム及びプログラムの実行時に使用されるデータを格納する。すなわち、プログラムは、補助記憶装置１１６から読み出されて、メモリ１０３にロードされて、制御部１０１によって実行される。なお、補助記憶装置１１６に格納されるデータの一部又は全部がメモリ１０３に格納されてもよい。また、メモリ１０３に格納されているデータの一部又は全部が補助記憶装置１１６に格納されてもよい。
【００２８】
補助記憶装置１１６は、例えば、統合データベース１１３、概念構造データベース１１４、及び分析データ格納データベース１１５を格納する。統合データベース１１３は、病院情報システム１２０に含まれるデータベースから取得された情報を格納する。
【００２９】
具体的には、統合データベース１１３は、例えば、抽出対象の説明変数の候補となり得る変数、及び当該変数の測定値を格納する。以下、抽出対象の説明変数の候補を説明変数候補と呼ぶ。なお、本実施形態において、測定値は、実測値、予測値、及び推定値等を含む概念である。概念構造データベース１１４は、当該変数が属する階層構造を示すデータを格納する。分析データ格納データベース１１５は、例えば、変数最適化処理の処理結果を示すデータを格納する。
【００３０】
制御部１０１は、例えば、それぞれ変数最適化システム１００の機能を実現するための処理を実行する処理部である、表示画面生成部１０５、データ抽出部１０６、目的変数生成部１０７、説明変数生成部１０８、データセット作成部１０９、関連度算出部１１０、説明変数再生成部１１１、概念構造編集部１１２、及び蓄積データ取得部１１９を含む。
【００３１】
例えば、制御部１０１は、メモリ１０３にロードされた表示画面生成プログラムに従って動作することで、表示画面生成部１０５として機能し、メモリ１０３にロードされたデータ抽出プログラムに従って動作することで、データ抽出部１０６として機能する。制御部１０１に含まれる他の部についても同様である。なお、制御部１０１に含まれる部それぞれが専用のハードウェアによって実現されてもよい。
【００３２】
表示画面生成部１０５は、後述する分析オプション及び分析処理結果を出力部１０２に表示するための情報を生成し、生成した情報を、出力部１０２を介してディスプレイ装置等に、又は通信部１０４を介して入出力端末１３０等に出力する。
【００３３】
データ抽出部１０６は、補助記憶装置１１６に格納されたデータベースからデータを抽出する。目的変数生成部１０７は、例えばユーザからの指示と概念構造データベース１１４に格納されている情報とに基づいて、目的変数を生成する。説明変数生成部１０８は、例えばユーザからの指示と概念構造データベース１１４に格納されている情報とに基づいて、抽出対象の説明変数の候補を生成する。
【００３４】
データセット作成部１０９は、分析データ格納ベースに格納されるデータセット格納テーブルを作成する。データセット格納テーブルの詳細は後述する。関連度算出部１１０は、変数間の関連度を算出する。説明変数再生成部１１１は、抽出された説明変数の上位概念である説明変数候補を再生成する。概念構造編集部１１２は、概念構造データベース１１４に格納される概念構造テーブルを編集する。概念構造テーブルの詳細は後述する。
【００３５】
蓄積データ取得部１１９は、患者情報データベース１２１、検査情報データベース１２２、処方情報データベース１２３、に格納されたデータを取得し、取得したデータを統合データベース１１３に含まれる後述する各テーブルに格納する。蓄積データ取得部１１９は、例えば、入出力端末１３０からの指示に従って、又はユーザが予め指定した時刻に自動的に、当該データを取得する。また、病院情報システム１２０が、患者情報データベース１２１、検査情報データベース１２２、又は処方情報データベース１２３、のデータを更新した時に、例えば病院データベースからの通知に従って、蓄積データ取得部１１９は、データを取得してもよい。
【００３６】
出力部１０２は、ディスプレイ装置やプリンタなどが接続され、プログラムの実行結果をオペレータが視認可能な形式で出力するインターフェースである。なお、変数最適化システム１００は、さらに入力部を含んでもよい。入力部は、キーボードやマウスなどが接続され、オペレータからの入力を受けるインターフェースである。
【００３７】
通信部１０４は、ネットワーク１４０に接続され、所定のプロトコルに従って、他の装置との通信を制御するネットワークインターフェース装置である。また、通信部１０４は、例えば、ＵＳＢ等のシリアルインターフェースを含む。
【００３８】
制御部１０１が実行するプログラムは、リムーバブルメディア（ＣＤ−ＲＯＭ、フラッシュメモリなど）又はネットワークを介して変数最適化システム１００に提供され、非一時的記憶媒体である不揮発性の補助記憶装置１１６に格納される。このため、変数最適化システム１００は、リムーバブルメディアからデータを読み込むインターフェースを有するとよい。
【００３９】
なお、変数最適化システム１００、入出力端末１３０、及び病院情報システム１２０は、物理的に一つの計算機上で、又は、論理的又は物理的に構成された複数の計算機上で構成される計算機システムであり、同一の計算機上で別個のスレッドで動作してもよく、複数の物理的計算機資源上に構築された仮想計算機上で動作してもよい。
【００４０】
以下、統合データベース１１３を構成するテーブルの一例を説明する。なお、本実施形態において、変数最適化システム１００が使用する情報は、データ構造に依存せずどのようなデータ構造で表現されていてもよい。以下では、テーブルが情報を格納する例を示しているが、例えば、リスト、データベース又はキューから適切に選択したデータ構造体が、情報を格納することができる。
【００４１】
統合データベース１１３は、例えば、患者毎の基本情報等を管理する患者情報テーブル、患者毎の検査情報を格納する検査情報テーブル、及び患者毎の処方情報を格納する処方情報テーブルを格納する。なお、本実施形態における複数のテーブルに含まれる情報は１つのテーブルに含まれてよい。例えば、統合データベース１１３は、患者情報テーブル、検査情報テーブル、及び処方情報テーブルを統合した１つのテーブルを用いて情報を管理してもよい。
【００４２】
図３は、患者情報テーブルの例である。患者情報テーブル３００は、例えば、患者を識別する患者ＩＤを格納するフィールド３０１と、患者の性別を格納するフィールド３０２と、対応するレコードが入院のデータであるか又は外来のデータであるかを示す入院フラグを格納するフィールド３０３と、医療機関への外来の診断日を格納するフィールド３０４と、医療機関への入院年月日を格納するフィールド３０５と、医療機関からの退院年月日を格納するフィールド３０６と、罹患した疾患名を格納するフィールド３０７〜３０９と、を含む。
【００４３】
入院フラグが「１」であるレコードは入院患者のデータであり、診断日を示すフィールド３０４には「０」が格納される。入院年月日を示すフィールド３０５と退院年月日を示すフィールド３０６それぞれには当該入院患者に入院年月日及び退院年月日それぞれが格納される。なお、未退院の患者の退院年月日を示すフィールド３０６には「０」が格納される。一方、入院フラグが「０」であるレコードは外来患者のデータであり、診断日を示すフィールド３０４には当該外来患者に対応する値、入院年月日を示すフィールド３０５と退院年月日を示すフィールド３０６には「０」が格納される。
【００４４】
患者情報テーブル３００の各レコード（患者情報レコード）に、一人の患者の１入院ないし１診断に関する情報が格納される。つまり、１人の患者の１回の入院又は１回の外来の診断、が１レコードに対応する。
【００４５】
例えば、図３の例では、患者情報レコード３１０は、患者ＩＤ「＃１」の患者が、性別「男」、入院フラグ「１」、診断日「０」、入院年月日「２０１４／０４／０１」、退院年月日「２０１４／０４／２６」であり、病名１が「病名Ａ」、病名２が「病名Ｂ」、病名３は何も情報が登録されていない事を示す「ＮＵＬＬ」であることを示す。即ち、患者情報レコード３１０は、患者ＩＤ「＃１」で識別される男性の患者が、病名Ａと病名Ｂのために２０１４年４月１日から２０１４年４月２６日まで入院したことを示す。また、患者情報テーブル３００は、病名を格納するフィールドを４つ以上含んでもよい。
【００４６】
なお、患者情報テーブル３００に含まれるフィールドは図面に例示したものに限られない。また、患者情報テーブル３００は、図面に例示したフィールドの一部を含まなくてもよい。その他のテーブルについても同様である。
【００４７】
図４は、検査情報テーブル４００の例である。検査情報テーブル４００は、例えば、患者ＩＤを格納するフィールド４０１と、検査項目を識別する情報を格納するフィールド４０２と、検査日を格納するフィールド４０３と、検査結果（例えば検査値）を格納するフィールド４０４と、を含む。
【００４８】
図４の例は、患者ＩＤ「＃１」の患者の「検査項目Ｘ」の値が、「２０１４／０４／１」に「４１」、「２０１４／０４／７」に「６２」、「２０１４／０４／１３」に「１８０」、「２０１４／０４／１５」に「２２０」、「２０１４／０４／１８」に「１９６」、及び「２０１４／０４／２５」に「１２０」であったこと、かつ検査項目「検査項目Ｙ」の値が「２０１４／０４／１」に「３８」であったことを示す。
【００４９】
また、検査値を格納するフィールド４０４は、例えば、画像検査（例えばＣＴ画像検査）による検査結果である画像情報を格納してもよい。また、フィールド４０４は、例えば、「吐き気」又は「嘔吐」といった患者の自覚症状に関する情報等の文字列を格納してもよい。
【００５０】
図５は、処方情報テーブル５００の例である。処方情報テーブル５００は、例えば、患者ＩＤを格納するフィールド５０１と、薬剤を識別する情報（例えば薬剤名）を格納するフィールド５０２と、各薬剤の処方開始日を格納するフィールド５０３と、各薬剤の処方終了日を格納するフィールド５０４と、を含む。
【００５１】
図５の例は、患者ＩＤ「＃１」の患者に、薬剤名「薬剤Ａ」が「２０１４／０４／０１」から「２０１４／０４／０７」まで及び「２０１４／０４／０８」から「２０１４／０４／１４」まで処方され、薬剤名「薬剤Ｂ」が「２０１４／０４／０３」から「２０１４／０４／８」まで処方され、薬剤名「薬剤Ｄ」が「２０１４／０４／１６」から「２０１４／０４／２０」まで処方され、かつ薬剤名「薬剤Ｔ」が「２０１４／０４／１４」から「２０１４／０４／１８」まで処方されたことを示す。
【００５２】
また、処方情報テーブル５００は、例えば、各薬剤の処方の用法を格納するフィールド、及び各薬剤の処方の用量を格納するフィールドをさらに含んでもよい。以下、概念構造データベース１１４を構成するテーブルの一例を説明する。概念構造データベース１１４は、例えば、概念構造の名称と概念構造に対応する概念レベルを管理する概念構造テーブルを含む。
【００５３】
図２は、概念構造テーブルの例である。概念構造テーブル２００は、１以上の木構造、及び当該１以上の木構造それぞれのノードである概念を特定する情報を格納する。概念構造テーブル２００に格納された各概念は、いずれも説明変数候補となり得る。
【００５４】
概念構造テーブル２００は、例えば、概念構造の名称の情報を格納するフィールド２０１と、概念構造名称に対応する概念構造の最上位の階層である概念レベル１に属する概念の情報を格納するフィールド２０２と、概念レベル１の１つ下の階層である概念レベル２に属する概念の情報を格納するフィールド２０３と、概念レベル２の１つ下の階層である概念レベル３に属する概念の情報を格納するフィールド２０４と、を含む。
【００５５】
概念構造テーブル２００は、予め定められていてもよいし、概念構造編集部１１２による後述する処理によって作成されてもよい。ある概念の（親ノードを含む）先祖ノードに相当する概念は、当該ある概念の上位概念である。また、ある概念の（子ノードを含む）子孫ノードに相当する概念は、当該ある概念の下位概念である。
【００５６】
図２における概念構造テーブル２００のレコードである概念構造レコード２００Ａ、概念構造レコード２００Ｂ、及び概念構造レコード２００Ｃは、概念構造「病名概念１」の概念レベル１に「病名群１」が属し、概念レベル２に属する「病名群α」は「病名群１」の下位概念であり、概念レベル３に属する「病名Ａ」、「病名Ｂ」、及び「病名Ｃ」が「病名群α」の下位概念であることを示す。
【００５７】
概念構造テーブル２００は、概念レベル３のさらに下位の概念レベル、即ち概念レベル４以下に属する概念の情報を格納するフィールドをさらに含んでもよい。即ち、概念構造は、４つ以上の階層を含んでもよい。
【００５８】
また、１つの概念が、複数の概念構造に含まれていてもよい。図２の例において、概念構造レコード２００Ｄ及び概念構造レコード２００Ｅは、「薬剤群θ」が概念構造「薬剤概念１」と概念構造「知識概念１」の双方に含まれることを示す。また、図２の例のように、複数の概念構造に１つの概念が属する場合において、当該複数の概念構造に含まれる概念構造において当該１つの概念が属する概念レベルと、当該複数の概念構造に含まれる他の概念構造において当該１つの概念が属する概念レベルと、は互いに異なってもよい。
【００５９】
以下、分析データ格納データベース１１５を構成するテーブルの一例を説明する。分析データ格納データベース１１５は、例えば、説明変数候補テーブルと、データセット格納テーブルと、関連度テーブルと、を含む。
【００６０】
図６は、説明変数候補テーブルの例である。説明変数候補テーブル６００は、例えば、説明変数候補の名称を格納するフィールド６０１と、説明変数候補が抽出対象の説明変数となったか否かを示す抽出フラグを格納するフィールド６０２と、説明変数候補が再生成対象となったか否かを示す再生成フラグを格納するフィールド６０３と、説明変数候補が再生成の対象となった際に当該説明変数候補から除外すべき下位概念の変数情報を格納するフィールド６０４と、説明変数候補が抽出の対象外となったか否かを示す対象外フラグを格納するフィールド６０５と、を含む構成される。
【００６１】
フィールド６０２と、フィールド６０３と、フィールド６０５と、に格納される初期値は「０」であり、フィールド６０４に格納される初期値は「ＮＵＬＬ」である。説明変数候補が抽出対象の説明変数に決定された場合、フィールド６０２の当該説明変数候補に対応するセルの値が「１」に変更される。
【００６２】
説明変数候補が再生成の対象となった場合、フィールド６０３の当該説明変数候補に対応するセルの値が「１」に変更され、フィールド６０４の当該説明変数候補に対応するセルの値が再生成の原因となった説明変数を示す値に変更される。説明変数候補が抽出の対象外となった場合、フィールド６０５の当該説明変数候補に対応する値が「１」に変更される。
【００６３】
図６の例は、説明変数候補「病名Ｂ」及び「病名Ｚの治療薬剤」が抽出対象の説明変数に決定され、概念構造において、抽出対象となった説明変数「病名Ｂ」を下位概念に含む説明変数候補「病名群α」が再生成対象であることを意味する。また、図６の例は、説明変数「病名群α」は、病名Ｂを含まない説明変数として再生成されることを意味する。
【００６４】
また、図６の例は、抽出対象に決定された説明変数「病名Ｚの治療薬剤」の下位概念である説明変数候補「薬剤群θ」が抽出対象外となり、抽出対象外となった説明変数候補「薬剤群θ」の下位概念である説明変数候補「薬剤Ａ」も抽出対象外となったことを示す。
【００６５】
図７は、データセット作成部１０９により作成されたデータセットを格納するデータセット格納テーブル７００の例である。データセット格納テーブル７００は、例えば、レコードの識別子を格納するフィールド７０１と、説明変数生成部１０８により生成された１以上の説明変数の値を格納するフィールド７０２と、目的変数生成部１０７により生成された目的変数の値を格納するフィールド７０３と、を含む。図７の例における、レコード識別子は患者ＩＤであり、説明変数は「病名Ａ」、「病名Ｂ」、「病名Ｃ」、「病名群α」、及び「病名Ｚの治療薬剤」を含む。
【００６６】
図８は、説明変数候補の再生成処理及び説明変数の抽出処理が実施された後のデータセットを格納するデータセット格納テーブル７００の例である。図８において、フィールド７０２は抽出対象に決定した１以上の説明変数の値を格納する。図８における、説明変数「病名群α（病名Ｂを除く）」は、概念構造テーブル２００が示す病名群αから病名Ｂを除いた病名群を示し、説明変数再生成部１１１により「病名群α」から再生成された説明変数である。
【００６７】
図９は、関連度算出部１１０により算出された説明変数間の関連度を格納する関連度テーブル９００の例である。関連度テーブル９００は、例えば、未抽出の説明変数候補の名称を格納するフィールド９０１と、未抽出の説明変数候補と目的変数との関連度を格納するフィールド９０２と、未抽出の説明変数候補と既抽出の説明変数との関連度を格納するフィールド９０３と、を含む。なお、既抽出の説明変数が存在しない場合には、図９の例のように、フィールド９０３は「ＮＵＬＬ」を格納する。
【００６８】
図１０は、説明変数再生成部１１１により説明変数「病名Ｂ」が抽出され、「病名Ｂ」の上位概念である説明変数候補が「病名群α」が「病名群α（病名Ｂを除く）」として再生成された後に、関連度算出部１１０が算出した関連度を格納する関連度テーブル９００の例である。
【００６９】
図１０の例において、関連度テーブル９００は、既抽出の説明変数「病名Ｂ」に対応するレコードを含まない。また、図１０の関連度テーブル９００の例は、説明変数候補「病名群α」が、再生成された説明変数候補「病名群α（病名Ｂを除く）」に変更されている点において、図９の関連度テーブル９００の例と異なる。図１０の例において、フィールド９０３は、関連度算出部１１０により算出された、各説明変数候補と既抽出の説明変数「病名Ｂ」との関連度を格納する。
【００７０】
以下、本実施例の変数最適化システム１００の動作例を説明する。図１１は、本実施例の変数最適化システム１００の動作例を示すフローチャートである。まず、データ抽出部１０６は、統合データベース１１３に蓄積された患者データをメモリ１０３に読み出す（Ｓ１１０１）。患者データとは、例えば、患者を識別する情報、患者に対応する処方薬の情報、及び患者に対応する検査結果の情報等の患者に関するデータの総称である。
【００７１】
なお、以下、データ抽出部１０６は、患者情報テーブル３００、検査情報テーブル４００、及び処方情報テーブル５００を患者データとして用いる例を説明する。データ抽出部１０６は、ステップＳ１１０１において、統合データベース１１３に含まれる全患者データを読み出してもよいし、ユーザによって指定された患者の患者データのみを読み出してもよい。
【００７２】
次に、データ抽出部１０６は、概念構造データベース１１４から概念構造データとして、例えば、概念構造テーブル２００を読み出し、メモリ１０３に記憶する（Ｓ１１０２）。データ抽出部１０６は、ステップＳ１１０２において、概念構造データベース１１４に含まれる全データを読み出してもよいし、一部の概念構造を読み出してもよい。次に、表示画面生成部１０５は、例えば、通信部１０４を介して入出力端末１３０に分析オプション受付画面を表示し、各種分析オプションの入力を受け付ける（Ｓ１１０３）。
【００７３】
図１４は、分析オプション受付画面の例である。分析オプション受付画面１４００は、例えば、使用する概念構造を選択するためのエリア１４０１と、抽出対象に含まれる説明変数をユーザが指定するためのエリア１４０２と、関連度の算出方式を設定するためのエリア１４０３と、説明変数の抽出・再生成方式を設定するためのエリア１４０４と、目的変数の作成方式を設定するためのエリア１４０５と、抽出する説明変数の数を設定するためのエリア１４０６と、知識データを用いた概念構造を作成するためのボタン１４０７と、概念構造を編集するためのボタン１４０８と、分析実行ボタン１４０９と、を含む。
【００７４】
エリア１４０１内のチェックボックスは、エリア１４０１に表示される複数の概念構造から使用する概念構造を選択するために用いられる。エリア１４０２内のラジオボタンは、関連度の値に関わらず、再生成後のデータセットに強制的に含める説明変数の有無を指定するために用いられる。エリア１４０１内のプルダウンリスト１４０２１は、「あり」のラジオボタンが選択された場合において、ユーザが指定したい説明変数が含まれる概念構造を選択するためのプルダウンリストである。
【００７５】
エリア１４０１内の説明変数検索ボックス１４０２２は、検索対象の説明変数名の入力を受け付け、検索された説明変数を指定するための検索ボックスである。エリア１４０２内の説明変数リスト表示エリア１４０２３のチェックボックスは、指定する説明変数を決定するために用いられる。図１４に示した例は、「病名Ａ」と「病名群β」が抽出対象の説明変数として指定されていることを示す。なお、例えば、エリア１４０２においてある説明変数が指定された場合、当該説明変数の下位概念である説明変数は選択不可能になるよう、エリア１４０２は構成されている。
【００７６】
エリア１４０３内のプルダウンリスト１４０３１は、関連度の算出方法を選択するためのプルダウンリストである。図１４の例は、相関係数を用いて関連度が算出されることを示す。エリア１４０３内のラジオボタンは、既抽出の説明変数との関連度の算出及び既抽出の説明変数との関連度が閾値以上となった説明変数を除外する処理、の実施有無を指定するために用いられる。エリア１４０３に含まれるエリア１４０３２内のアップダウンボタンは、ラジオボタン「あり」が選択された場合において、除外処理を実施する際の関連度の閾値を設定するために用いられる。また、エリア１４０３２は、に閾値の入力を直接受け付けてもよい。
【００７７】
エリア１４０４内のチェックボックスそれぞれは、「抽出された説明変数の下位概念を対象外とする」処理を実施するか否か、及び「抽出された説明変数の上位概念は再生成された説明変数のみを対象とする」処理を実施するか否か、それぞれを指定するために用いられる。
【００７８】
「抽出された説明変数の下位概念を対象外とする」のチェックボックスが有効である場合、抽出された説明変数の下位概念に属する説明変数候補は抽出対象外となる。例えば、「病名群Ｚの治療薬剤」が抽出された場合、「病名群Ｚの治療薬剤」の下位概念である「薬剤群θ」及び「薬剤群ψ」、「薬剤群θ」の下位概念である「薬剤Ａ」及び「薬剤Ｂ」、並びに「薬剤群ψ」の下位概念が抽出対象外となる。
【００７９】
「抽出された説明変数の上位概念は再生成された説明変数のみを分析対象とする」のチェックボックスが有効でない場合、抽出された説明変数を含む上位概念の説明変数と、抽出された説明変数を含まない説明変数候補として再生成された説明変数候補と、の両方が説明変数候補に含まれる。
【００８０】
例えば、説明変数「病名Ｂ」が抽出されたとき、再生成された説明変数「病名群α（病名Ｂを除く）」と、もとの説明変数「病名群α」、の両方が説明変数候補となる。一方、当該チェックボックスが有効である場合に、説明変数「病名Ｂ」が抽出されたとき、説明変数候補群は「病名群α」を含まない。
【００８１】
エリア１４０４内のラジオボタンは、説明変数の抽出優先度を選択するために用いられる。「目的変数との関連度」に対応するラジオボタンが選択された場合、目的変数との関連度が高い説明変数が優先的に抽出される。「既抽出の説明変数との関連度」に対応するラジオボタンが選択された場合、既抽出の説明変数との関連度が低い説明変数が優先的に抽出される。
【００８２】
エリア１４０６内のアップダウンボタンは、抽出対象の説明変数の数を設定するために用いられる。なお、エリア１４０６が、抽出対象の説明変数の数の入力を直接受け付けてもよい。なお、エリア１４０６で指定される抽出対象の説明変数の数は、エリア１４０２で指定された説明変数の数を含む数であってもよいし、含まない数であってもよい。
【００８３】
エリア１４０５内のラジオボタンは、作成する目的変数の種類を指定するために用いられる。目的変数の種類は、例えば、２値変数、カテゴリ変数、及び量的変数等である。２値変数は、例えば、分析目的のイベントの発生有無を「０」又は「１」で表す変数のように、２つの値のいずれかをとる変数である。
【００８４】
カテゴリ変数は、例えば、分析目的のイベントの重要度などを「低」、「中」、「高」又は「１」、「２」、「３」で表す変数のように、複数のカテゴリ値をとり得る変数である。量的変数は、分析目的のイベントに関する量的な情報を「１」、「１０」、「１００」等の値で表す変数である。例えば、カテゴリ変数は順序尺度又は名義尺度であり、カテゴリ変数を目的変数としたとき、カテゴリ変数の値域は３つ以上の値を含む。また、例えば、量的変数は間隔尺度又は比例尺度であり、量的変数を目的変数としたとき、量的変数の値域は３つ以上の値を含む。
【００８５】
カテゴリ変数又は量的変数が目的変数として指定された場合、関連度算出部１１０は、説明変数と目的変数の関連度を算出する際に、例えば値域が０以上１以下である所定の関数を用いて、目的変数の値を「０」から「１」の範囲に標準化してもよい。
【００８６】
エリア１４０５内の複数のプルダウンは、作成する目的変数の種類が指定された後に、作成する目的変数の詳細な設定を行うために用いられる。図１４の例では、３つのプルダウンを指定することで、「退院後の３０日以内におけるイベントＸＸの有無」を示す目的変数を作成する例を示しており、イベントＸＸがある場合には目的変数として「１」を、それ以外の場合には目的変数として「０」を格納する事を示している。
【００８７】
なお、エリア１４０５内のプルダウン１４０５１において選択可能な項目は、エリア１４０５内のラジオボタンで指定された目的変数の種類に対応する。つまり、例えば、２値変数に対応するラジオボタンが選択された場合、プルダウン１４０５１において、２値変数を示す項目のみが選択可能である。また、２値変数に対応するラジオボタンが選択された場合のみ、エリア１４０５内の入力エリア１４０５２は「イベントあり時」の状態を示す値の入力を受け付ける。
【００８８】
ボタン１４０７は、概念構造編集部１１２に、知識データを用いた概念構造テーブル２００の作成を実行させるためのボタンである。医学論文、薬剤の添付文書、薬剤や病名などのマスタ情報、及び各種ガイドラインは、いずれも知識データの例である。知識データは、例えば、補助記憶装置１１６、病院情報システム１２０、又は変数最適化システム１００に接続された外部のデータベース等に格納されている。
【００８９】
以下、「病名Ｚの治療行為として薬剤Ｚを使用した」という記述が含まれる医学文献を知識データとして用いた、概念構造編集処理の一例を説明する。概念構造編集部１１２は、例えば、当該記述に対して所定のルールに基づく構文解析を実行して、当該記述中の名詞句を特定する。概念構造編集部１１２は、例えば、所定の辞書に含まれる表現が当該記述に含まれるか否か等の所定のルールに基づいて、当該記述中の複数の名詞句が上位概念と下位概念の関係にあるかを判定する。当該所定の辞書及び当該所定のルールは、例えばメモリ１０３又は補助記憶装置１１６に予め格納されている。概念構造編集部１１２は、当該記述の例においては、「病名Ｚの治療行為」が「薬剤Ｚ」の上位概念であると判定する。
【００９０】
概念構造編集部１１２は、例えば、概念構造名称を、例えば、ユーザからの指示に従って決定し、決定した概念構造名称をフィールド２０１に、概念「病名Ｚの治療行為」をフィールド２０２に、概念「病名Ｚの治療行為」をフィールド２０３に、概念「薬剤Ｚ」をフィールド２０４に、それぞれ格納する。当該処理により、概念構造テーブル２００において、「病名Ｚの治療行為」の下位概念として「病名Ｚの治療薬剤」、「病名Ｚの治療薬剤」の下位概念として「薬剤Ｚ」が生成される。
【００９１】
また、概念構造編集部１１２は、例えば、概念構造テーブル２００を参照して、「薬剤Ｚ」が特定の薬剤群に属すると判定した場合、「病名Ｚの治療薬剤」と「薬剤Ｚ」の間に、例えば概念「薬剤群Ｚ」を含む概念構造を作成してもよい。知識データとして添付文書を用いた場合には、概念構造編集部１１２は、例えば、添付文書から薬効分類名と薬剤の名称を抽出することにより、「薬効分類ＸＸ」の下位概念として「薬剤名ＸＸ」を生成する。
【００９２】
なお、例えば、概念構造テーブル２００において、例えば「病名Ｚの治療行為」が「薬剤Ｚ」の下位概念として既に登録されている場合のように、知識データが示す概念の上位下位の関係と、概念構造テーブル２００が示す概念の上位下位の関係と、が異なる場合、概念構造編集部１１２は、例えば、ユーザの指示に従って概念構造テーブル２００を編集してもよいし、「薬剤Ｚ」が「病名Ｚの治療行為」の下位概念となるように概念構造テーブル２００を編集してもよい。
【００９３】
図１４の説明に戻る。ボタン１４０８は、例えば、概念構造テーブル２００の内容を含む概念構造編集画面を、表示画面生成部１０５に作成させ、入出力端末１３０等に表示させるためのボタンである。ユーザは、例えば、概念構造編集画面を介して、概念構造中の各概念レベルに含まれる概念の編集や、概念構造の追加及び削除などを行う。
【００９４】
図１１の説明に戻る。目的変数生成部１０７は、入出力端末１３０から分析実行ボタン１４０９が選択された旨の通知を受信すると、ステップＳ１１０３で受け付けた各種分析オプションにと、ステップＳ１１０１で読み出した患者データとに基づいて、目的変数を生成する（Ｓ１１０４）。
【００９５】
エリア１４０５において、「退院後の３０日以内におけるイベントＸＸの有無」を示す２値変数である目的変数を作成すること、及びイベントＸＸがある場合の当該２値変数の値が「１」であることが指定されている場合における、ステップＳ１１０４の処理の例を説明する。
【００９６】
まず、目的変数生成部１０７は、患者情報テーブル３００から退院経験のある患者の退院日の情報を取得する。次に、目的変数生成部１０７は、患者情報テーブル３００、検査情報テーブル４００、及び処方情報テーブル５００などを参照して、各患者の退院日から３０日以内にイベントＸＸの発生の有無を検証することにより、各患者の目的変数の値を決定する。
【００９７】
なお、エリア１４０５で指定され得る目的変数それぞれに対する、各患者における当該目的変数の値を決定するために目的変数生成部１０７が参照する患者データの情報、及び当該目的変数の値の決定方法は、例えば、予め定められている。
【００９８】
目的変数生成部１０７は、各患者の患者ＩＤをフィールド７０１に格納する。また、目的変数生成部１０７は、各患者について、当該患者の退院日から３０日以内にイベントＸＸが発生している場合には当該フィールド７０３の当該患者に対応するセルに「１」を、当該患者の退院日から３０日以内にイベントＸＸが発生していない場合にはフィールド７０３の当該患者に対応するセルに「０」を格納する。目的変数の作成において、前述したテーブル以外の情報が利用されてもよい。
【００９９】
次に、説明変数生成部１０８は、説明変数候補を生成する（ステップＳ１１０５）。具体的には、例えば、説明変数生成部１０８は、エリア１４０１において選択された概念構造に含まれる概念を概念構造テーブル２００から取得する。説明変数生成部１０８は、取得した概念のうち、ステップＳ１１０１で読み出した患者データの項目に含まれる各概念を説明変数候補に決定する。説明変数生成部１０８は、説明変数候補の名称を、説明変数候補テーブル６００のフィールド６０１、及び関連度テーブル９００のフィールド９０１にそれぞれ格納する。
【０１００】
次に、データセット作成部１０９は、データセットを作成し、データセット格納テーブル７００に作成したデータセットを登録する（Ｓ１１０７）。具体的には、例えば、データセット作成部１０９は、説明変数候補の変数の名称それぞれをデータセット格納テーブルのフィールド７０２の項目名欄に格納する。データセット作成部１０９は、当該変数それぞれに対応する各患者の値を患者データから取得し、フィールド７０２の対応するセルに格納する。
【０１０１】
次に、関連度算出部１１０は、ステップＳ１１０４で作成した目的変数と、ステップＳ１１０５で作成した説明変数候補それぞれと、の関連度を算出する（Ｓ１１０７）。
【０１０２】
図１２は、関連度算出部１１０による関連度算出処理、即ちステップＳ１１０７の処理の詳細の一例を示すフローチャートである。関連度算出部１１０は、データセット格納テーブル７００、説明変数候補テーブル６００、をメモリ１０３上に読み出す（Ｓ１２０１）。次に、関連度算出部１１０は、全ての説明変数候補について目的変数との関連度を算出したか否かを判定する（Ｓ１２０２）。
【０１０３】
関連度算出部１１０は、目的変数との関連度が算出されていない説明変数候補があると判定した場合（Ｓ１２０２：未処理あり）、当該説明変数候補から１つの説明変数候補を選択し、選択した説明変数候補と目的変数との関連度を算出する（Ｓ１２０３）。
【０１０４】
関連度算出部１１０は、例えば、データセット格納テーブル７００から当該選択した説明変数候補に対応する列の値をそのまま抽出することにより生成した列ベクトルと、データセット格納テーブル７００から目的変数に対応する列の値をそのまま抽出することにより生成した列ベクトルと、の相関係数を、関連度として算出する。また、関連度算出部１１０は、例えば、当該２つの列ベクトルの非線形相関係数（Ｍａｘｉｍｕｍ  ｉｎｆｏｒｍａｔｉｏｎ  ｃｏｅｆｆｉｃｉｅｎｔ）等を、関連度して算出してしてもよい。
【０１０５】
次に、関連度算出部１１０は、ステップＳ１２０３において選択した説明変数候補と、ステップＳ１２０３にて算出した関連度と、を紐付けて、関連度テーブル９００のフィールド９０１及びフィールド９０２に格納する（Ｓ１２０４）。関連度算出部１１０は、全ての説明変数候補について目的変数との関連度を算出と判定した場合（Ｓ１２０２：全て終了）、図１２の処理を終了し、図１１のステップＳ１１０８に遷移する。
【０１０６】
図１１の説明に戻る。説明変数再生成部１１１は、作成したデータセットと、ステップＳ１１０４で作成した目的変数と、ステップＳ１１０５で作成した説明変数候補と、ステップＳ１１０７で算出した関連度と、ステップＳ１１０２で読み出した概念構造と、に基づき、説明変数候補の抽出及び再生成を行う（Ｓ１１０８）。
【０１０７】
図１３は、説明変数再生成部１１１による、説明変数抽出及び再生成処理、即ちステップＳ１１０８の処理の詳細、の一例を示すフローチャートである。説明変数再生成部１１１は、概念構造テーブル２００、データセット格納テーブル７００、及び関連度テーブル９００をメモリ１０３に読み出す（Ｓ１３０１）。
【０１０８】
次に、説明変数再生成部１１１は、ステップＳ１１０３の各種分析オプションの受付において、エリア１４０２の説明変数の抽出指定があるか否かを判定する（Ｓ１３０２）。説明変数再生成部１１１は、説明変数の抽出指定があると判定した場合（Ｓ１３０２：Ｙｅｓ）、エリア１４０２で指定された説明変数を抽出対象に設定し（Ｓ１３０３）、ステップＳ１３０８に遷移する。
【０１０９】
説明変数再生成部１１１は、説明変数の抽出指定がないと判定した場合（Ｓ１３０２：Ｎｏ）、既抽出の説明変数があるか否か、即ちステップＳ１３０８の処理が少なくとも１回行われたか否かを判定する（Ｓ１３０４）。以下、説明変数候補テーブル６００において、抽出フラグ及び対象外フラグが共に０である説明変数候補を、抽出説明変数候補と呼ぶ。
【０１１０】
説明変数再生成部１１１は、既抽出の説明変数がないと判定した場合（Ｓ１３０４：Ｎｏ）、説明変数候補テーブル６００と関連度テーブル９００とを参照して、例えば、ステップＳ１１０７で算出した目的変数との関連度が最大の抽出説明変数候補を抽出対象の説明変数に決定し（Ｓ１３０５）、ステップＳ１３０８に遷移する。
【０１１１】
ステップＳ１３０５において関連度が最大の複数の抽出説明変数候補が存在した場合、説明変数再生成部１１１は、例えば、当該複数の抽出説明変数候補からランダムに選択した１つの抽出説明変数候補を抽出対象に決定する。また、表示画面生成部１０５が、当該複数の抽出説明変数候補を、入出力端末１３０に出力し、ユーザに抽出対象を選択させてもよい。
【０１１２】
説明変数再生成部１１１は、既抽出の説明変数があると判定した場合（Ｓ１３０４：Ｙｅｓ）、既抽出の説明変数と抽出説明変数候補それぞれとの関連度を算出し、フィールド９０３に格納する（Ｓ１３０６）。複数の既抽出の説明変数が存在する場合には、説明変数再生成部１１１は、例えば、各既抽出の説明変数と抽出説明変数候補との関連度の総和を、当該複数の既抽出の説明変数と当該抽出説明変数候補との関連度として算出する。また、総和の代わりに、平均、中央値、などの統計値が用いられてもよい。
【０１１３】
次に、説明変数再生成部１１１は、ステップＳ１３０６で算出した関連度が所定の閾値以下であり、かつ目的変数と関連度が最大である抽出説明変数候補を、抽出対象の説明変数に決定する（Ｓ１３０７）。なお、ステップＳ１３０７において、ステップＳ１３０６で算出した関連度が所定の閾値以下である抽出説明変数候補が存在しない場合、説明変数再生成部１１１は、例えば、処理を終了する。
【０１１４】
ステップＳ１３０７において、ステップＳ１３０６で算出した関連度が所定の閾値以下であり、かつ関連度が最大である、複数の抽出説明変数候補が存在した場合、説明変数再生成部１１１は、例えば、当該複数の抽出説明変数候補からランダムに選択した１つの抽出説明変数候補を抽出対象に決定する。また、表示画面生成部１０５が、当該複数の抽出説明変数候補を、入出力端末１３０に出力し、ユーザに抽出対象を選択させてもよい。
【０１１５】
なお、エリア１４０３内の「なし」に対応するラジオボタンが選択されている場合は、説明変数再生成部１１１は、ステップＳ１３０６における関連度を算出せず、ステップＳ１３０７において、目的変数と関連度が最大である抽出説明変数候補を、抽出対象の説明変数に決定する。
【０１１６】
次に、説明変数再生成部１１１は、説明変数候補テーブル６００の、抽出対象に決定した説明変数の抽出フラグの値を「１」に変更する、即ち抽出対象に決定した説明変数を抽出説明変数候補から除外する（Ｓ１３０８）。このとき、説明変数再生成部１１１は、関連度テーブル９００から、抽出対象に決定した説明変数の情報を除外してもよい。また、説明変数再生成部１１１は、抽出対象に決定した説明変数の、抽出された順番を示す情報を説明変数候補テーブル６００に格納してもよい。
【０１１７】
次に、説明変数再生成部１１１は、説明変数候補の再生成処理を実行する（Ｓ１３０９）。具体的には、説明変数再生成部１１１は、例えば、概念構造テーブル２００を参照し、抽出対象の説明変数の上位概念である全ての説明変数候補を再生成対象の説明変数候補に決定し、説明変数候補テーブル６００の再生成対象の説明変数候補に対応する再生成フラグの値を１に変更する。
【０１１８】
説明変数再生成部１１１は、再生成対象の説明変数候補それぞれを、抽出対象の説明変数を含まない説明変数として再生成する。具体的には、説明変数再生成部１１１は、関連度テーブル９００のフィールド９０１における再生成対象の説明変数候補の名称を、再生成された説明変数の名称に変更する。また、説明変数再生成部１１１は、説明変数候補テーブル６００のフィールド６０４の、再生成対象の説明変数候補に対応するセルに抽出対象の説明変数の名称を格納する。
【０１１９】
また、説明変数再生成部１１１は、データセット格納テーブル７００のフィールド７０２に再生成後の説明変数候補の列を追加する。説明変数再生成部１１１は、例えば、概念構造テーブル２００が示す概念構造を参照して、再生成対象の説明変数の下位概念であって、かつ抽出対象に決定した説明変数候補の兄弟ノードである、説明変数候補を特定する。説明変数再生成部１１１は、例えば、フィールド７０２に格納された当該特定した説明変数候補の値に基づいて、追加した列の値を決定する。
【０１２０】
なお、エリア１４０４内の「抽出された説明変数の上位概念は再生成された説明変数のみを分析対象とする」のチェックボックスが有効でない場合、説明変数再生成部１１１は、説明変数候補テーブル６００のフィールド６０４の、再生成対象の説明変数候補に対応する再生成フラグ及び除外変数の値を変更しない。また、このとき、説明変数再生成部１１１は、再生成対象の説明変数候補に対応するレコードを説明変数候補テーブル６００に追加し、当該レコードのフィールド６０２〜６０５に初期値を格納する。
【０１２１】
以下、「病名Ｂ」が抽出対象に決定した場合における、説明変数候補の再生成処理の例を説明する。説明変数再生成部１１１は、概念構造テーブル２００を参照し、「病名Ｂ」の上位概念である説明変数候補「病名群α」及び「病名群１」を再生成対象の説明変数候補に決定する。説明変数再生成部１１１は、「病名群α」から「病名Ｂ」を除いた説明変数候補「病名群α（病名Ｂを除く）」、及び「病名群１」から「病名Ｂ」を除いた説明変数候補「病名群１（病名Ｂを除く）」を再生成する。
【０１２２】
説明変数再生成部１１１は、関連度テーブル９００のフィールド９０１の、「病名群α」を「病名群α（病名Ｂを除く）」に、「病名群１」を「病名群α（病名Ｂを除く）」に変更する。また、説明変数再生成部１１１は、説明変数候補テーブル６００の「病名群α」及び「病名群１」に対応するフィールド６０４のセルそれぞれに、抽出対象の説明変数である「病名Ｂ」を格納する。
【０１２３】
また、説明変数再生成部１１１は、データセット格納テーブル７００のフィールド７０２に「病名群α（病名Ｂを除く）」、「病名群１（病名Ｂを除く）」の列を追加する。説明変数再生成部１１１は、概念構造テーブル２００を参照して、「病名群α」の下位概念であって、「病名Ｂ」の兄弟ノードである、「病名Ａ」及び「病名Ｃ」を特定する。
【０１２４】
説明変数再生成部１１１は、データセット格納テーブル７００から、各患者の「病名Ａ」及び「病名Ｃ」の値を取得する。説明変数再生成部１１１は、当該患者の「病名Ａ」及び「病名Ｂ」の値が全て０であった場合に当該患者の「病名群α（病名Ｂを除く）」の値を０に決定し、その他の場合は１に決定する。説明変数再生成部１１１は、同様の方法で、各患者の「病名群１（病名Ｂを除く）」の値を決定する。
【０１２５】
次に、説明変数再生成部１１１は、ステップＳ１３０９で再生成された説明変数候補それぞれと目的変数との関連度を算出し、関連度テーブル９００の再生成された説明変数候補それぞれに対応するフィールド９０２のセルに登録する（Ｓ１３１０）。
【０１２６】
次に、説明変数再生成部１１１は、概念構造テーブル２００を参照して、抽出対象の説明変数の下位概念の全ての説明変数候補を特定し、特定した説明変数候補を抽出対象外とする（Ｓ１３１１）。具体的には、例えば、説明変数再生成部１１１は、説明変数候補テーブル６００の特定した説明変数候補の対象外フラグを「１」に変更する。なお、エリア１４０４の「抽出された説明変数の下位概念を対象外とする」のチェックボックスが有効でない場合、説明変数再生成部１１１は、ステップＳ１３１１の処理を実行しない。
【０１２７】
次に、説明変数再生成部１１１は、説明変数候補テーブル６００に対象外フラグが「０」の説明変数候補が存在するか否かを判定する（Ｓ１３１２）。説明変数再生成部１１１は、対象外フラグが「０」の説明変数候補が存在しないと判断した場合（Ｓ１３１２：Ｎｏ）、図１３の処理を終了し、ステップＳ１１０９に遷移する。説明変数再生成部１１１は、対象外フラグが「０」の説明変数候補があると判定した場合（１３１２：Ｙｅｓ）、ステップＳ１３１３に遷移する。
【０１２８】
説明変数再生成部１１１は、既抽出の説明変数の数がエリア１４０６の設定値未満であるか否かを判定する（Ｓ１３１３）。説明変数再生成部１１１は、既抽出の説明変数の数が設定値以上であると判定した場合（Ｓ１３１３：Ｎｏ）、図１３の処理を終了し、ステップＳ１１０９に遷移する。説明変数再生成部１１１は、既抽出の説明変数の数が設定値未満であると判定した場合（Ｓ１３１３：Ｙｅｓ）、ステップＳ１３０４に戻る。
【０１２９】
なお、エリア１４０２において複数の説明変数が抽出対象に指定されている場合、説明変数再生成部１１１は、例えば、ステップＳ１３０３及びステップＳ１３０８〜Ｓ１３１３の処理を、当該複数の説明変数それぞれに対して順に実行する。
【０１３０】
図１１の説明に戻る。データセット作成部１０９は、説明変数候補テーブル６００に基づきデータセットの再作成を行い、データセット格納テーブル７００に、再作成したデータセットを登録する（Ｓ１１０９）。具体的には、例えば、データセット作成部１０９は、フィールド７０２が、説明変数候補テーブル６００における抽出フラグが１である説明変数の情報からなる、データセット格納テーブル７００を作成する。
【０１３１】
次に、表示画面生成部１０５は、例えば、概念構造テーブル２００及び説明変数候補テーブル６００の情報に基づいて、分析処理結果を表示する表示画面を生成する（Ｓ１１１０）。表示画面の詳細については後述する。表示画面生成部１０５は、ステップＳ１１１０で生成した画面を、出力部１０２を介して入出力端末１３０に表示する（Ｓ１１１１）。
【０１３２】
なお、データセット作成部１０９は、ステップＳ１１０９で再作成したデータセットに含まれる目的変数及び抽出された説明変数と、当該抽出された説明変数それぞれと当該目的変数との関連度と、を含む変数セットを、例えば、メモリ１０３又は補助記憶装置１１６に記憶してもよい。
【０１３３】
次回以降の図１１の処理におけるステップＳ１１０４において、変数セットに含まれる目的変数と同一の目的変数が指定された場合、説明変数再生成部１１１は、例えば、当該変数セットにおける関連度が所定の閾値以上である説明変数を、ステップＳ１３０３における抽出指定の説明変数に含めてもよい。
【０１３４】
即ち、説明変数再生成部１１１は、当該変数セットにおける関連度が所定の閾値以上である説明変数については、新たに関連度を算出することなく抽出対象の説明変数に決定する。なお、当該変数セットにおける関連度が所定の閾値以上である説明変数が再生成された説明変数を含む場合、ステップＳ１３０８において当該再生成された説明変数に対応する元の説明変数候補の抽出フラグを１に変更する。
【０１３５】
これにより、説明変数再生成部１１１は、同じ目的変数に対応する説明変数を再度抽出する処理において、当該目的変数に対する説明力の高い説明変数を抽出することができ、かつ当該処理を高速に実行することができる。
【０１３６】
図１５は、ステップＳ１１１１で入出力端末１３０に表示される分析処理結果表示画面の例である。表示画面１５００は、例えば、抽出説明変数の一覧を表示するエリア１５０１と、抽出説明変数と概念構造の関係図を表示するエリア１５０２と、を含む。
【０１３７】
エリア１５０１は、例えば、抽出された説明変数（即ち抽出フラグが１である説明変数）、当該説明変数それぞれの抽出された順番、当該説明変数それぞれと目的変数との関連度と、を表示する。図１５の例では、エリア１５０１は、抽出された説明変数として、抽出された順番に「病名Ｂ」、「病名Ｚとの治療薬剤」、「病名群α（病名Ｂを除く）」を表示している。
【０１３８】
エリア１５０２は、例えば、抽出された説明変数と、当該説明変数が抽出されたために再生成された説明変数と、除外対象である説明変数と、を含む概念構造を表示する。エリア１５０２において、点線は、再生成された説明変数に対応する再生成前の説明変数と、当該再生成前の説明変数と同一の概念構造に属し、かつ隣接する階層に属する説明変数と、を結ぶ。また、エリア１５０２において、実線は、同一の概念構造に属し、かつ隣接する階層に属する説明変数同士、を結ぶ。
【０１３９】
ユーザは、表示画面１５００を参照することにより、表示されている抽出説明変数が、概念構造のどの位置に含まれる説明変数であるか、どの説明変数が除外対象となったか、どの説明変数が再生成されたか等を容易に把握できる。ひいては、ユーザは、説明変数の抽出及び再生成が妥当であったかどうか等の検証を容易に行うことができる。
【０１４０】
以上のように、変数最適化システム１００は、目的変数との関連度が高い説明変数を抽出対象に決定することにより目的変数に対する説明力が高い説明変数を抽出することができる。また、変数最適化システム１００は、抽出対象の上位概念の説明変数候補を、抽出対象の説明変数を含まない説明変数候補として再生成する。当該処理により、変数最適化システム１００は、新たな概念を自動的に生成し、生成した新たな概念を説明変数候補とすることができる。
【０１４１】
また、再生成された説明変数候補は、抽出対象の説明変数を含まない概念であるため、変数最適化システム１００が、再生成された説明変数候補を抽出対象に選択した場合であっても、抽出された説明変数が持つ意味の重複を抑制できる。また、再生成された説明変数候補は、特定の病名を含まない病名群のように、ユーザにとって医学的意味の把握が容易な変数である。
【０１４２】
また、変数最適化システム１００は、抽出対象の説明変数の下位概念を抽出対象外とすることで、抽出処理の効率化が行えるだけでなく、同一の意味を含む説明変数を除外することが可能できる。ひいては、変数最適化システム１００は、同一の意味を持つ異なる説明変数がデータセットから除外することができる、つまり医学的意味の把握が容易なデータセットを作成することができる。
【０１４３】
また、変数最適化システム１００は、既抽出の説明変数との関連度が高い説明変数を除外することで、多重共線性が発生しにくい説明変数の抽出を行うことが可能となり、目的の事象を予測及び検証に適したデータセットを生成することができる。つまり、変数最適化システム１００は、目的の事象の予測精度及び検証精度を向上させるための、説明変数を選択することができる。
【０１４４】
なお、本発明は上述した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１４５】
上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によってハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによってソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスクドライブ、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置、又は、ＩＣカード、ＳＤカード、ＤＶＤ等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
【０１４６】
また、図面には、実施例を説明するために必要と考えられる制御線及び情報線を示しており、必ずしも、本発明が適用された実際の製品に含まれる全ての制御線及び情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１４７】
１００  変数最適化システム、１０１  制御部、１０２  出力部、１０３  メモリ、１０４  通信部、１０５  表示画面生成部、１０６  データ抽出部、１０７  蓄積データ取得部、１０８  説明変数生成部、１０９  データセット作成部、１１０  関連度算出部、１１１  説明変数再生成部、１１２  概念構造編集部、１１３  統合データベース、１１４  概念構造データベース、１１５  分析データベース、１１６  補助記憶装置、１１９  蓄積データ取得部
【図１】
0006506201.tif 000002
【図２】
0006506201.tif 000003
【図３】
0006506201.tif 000004
【図４】
0006506201.tif 000005
【図５】
0006506201.tif 000006
【図６】
0006506201.tif 000007
【図７】
0006506201.tif 000008
【図８】
0006506201.tif 000009
【図９】
0006506201.tif 000010
【図１０】
0006506201.tif 000011
【図１１】
0006506201.tif 000012
【図１２】
0006506201.tif 000013
【図１３】
0006506201.tif 000014
【図１４】
0006506201.tif 000015
【図１５】
0006506201.tif 000016