本発明の実施例では、ヘルスケアデータを分析するヘルスケアデータ分析システムの一例である疾病予防支援装置を説明する。
将来の疾病リスクを低減するためには、将来の疾病リスクを分析し、リスク低減効果によって予防施策を比較し評価する必要がある。検査値の値や、年齢、身長、体重等の基本情報、生活習慣などの属性によって、疾病発症のリスクが変動することが知られており、診療行為の情報(例えばレセプト情報)や健診情報を含むヘルスケアデータを用いた機械学習によって予測モデルを構築する方法が考えられる。しかし、将来、検査値が大きく悪化する人や、実際に疾病を発症する人の割合は全体からみると少ない場合があり、大多数の人の傾向に合わせて予測モデルを学習する従来の機械学習技術では、低確率で発生する検査値の悪化や疾病のリスクを分析するためのモデル構築が難しい場合がある。
例えば、HbA1cの値が糖尿病リスクに関連するという医学的知見を用いて、HbA1cの経年変化量から糖尿病リスクを予測する方法が考えられる。しかし、大多数のデータはHbA1cの経年変化量が小さく、HbA1cの経年変化量が大きいデータは少数である。機械学習では多くのデータに良く適合する予測モデルを学習するため、HbA1cの経年変化量が大きい少数のデータの傾向に基づいた糖尿病のリスク予測が困難である。
しかし、いくら少数とはいえ、例えば、10万人の母集団の数%である数千人のデータの傾向を分析し、母集団の平均的傾向とは異なるリスクモデルを人手で構築する作業は困難であり、機械学習のように大量のデータを処理するための手法を用いる必要がある。
そこで、本実施例では、母集団のうちリスクの高い少数のデータの特徴を学習することによって、低確率で発生する疾病のリスクを分析する疾病予防支援装置について説明する。
以下の実施例では、疾病リスクを分析し、疾病の予防を支援するシステムについて説明する。なお、本実施例で例示するデータは、実際の個人のデータではなく、本発明の方法を説明する目的で作成した仮想的なデータである。
図1は、本実施例の疾病予防支援装置101の構成例を示すブロック図である。
本実施例の疾病予防支援装置101は、入力装置102、表示装置103、通信装置104、演算装置105、メモリ106、及び補助記憶装置107を含む計算機によって構成される。
入力装置102は、ユーザからのコマンド等の入力を受け付ける、例えば、キーボードや、マウスや、タッチパネル等である。入力装置102は、演算装置105が実行するプログラムの制御、及び疾病予防支援装置101に接続された機器の制御のために実行されるコマンド等の入力を受け付ける。
表示装置103は、液晶表示装置やCRTなどで構成されるディスプレイ装置である。通信装置104は、例えば、所定のプロトコルに従って、疾病予防支援装置101による処理内容を外部機器に送信したり、外部機器から情報を受信したりする。
演算装置105は、プロセッサを含み、メモリ106に格納されたプログラムを実行する。メモリ106は、不揮発性の記憶素子であるROM及び不揮発性の記憶素子であるRAMを含む。ROMは、不変のプログラム(例えば、BIOS)などを格納する。RAMは、DRAM(Dynamic Random Access Memory)のような高速かつ揮発性の記憶素子であり、演算装置105が実行するプログラム及びプログラムの実行時に使用されるデータを一時的に格納する。
補助記憶装置107は、例えば、磁気記憶装置(HDD)、フラッシュメモリ(SSD)等で構成される大容量かつ不揮発性の記憶装置であり、演算装置105が実行するプログラム及びプログラムの実行時に使用されるデータを格納する。例えば、補助記憶装置107は、分析用データ110を保持する。すなわち、プログラムは、補助記憶装置107から読み出されて、メモリ106にロードされて、演算装置105によって実行される。
演算装置105が実行するプログラムは、リムーバブルメディア(CD-ROM、フラッシュメモリなど)又はネットワークを介して疾病予防支援装置101に提供され、非一時的記憶媒体である不揮発性の補助記憶装置107に格納される。このため、疾病予防支援装置101は、リムーバブルメディアからデータを読み込むインタフェースを有するとよい。
疾病予防支援装置101は、物理的に一つの計算機上で、又は、論理的又は物理的に構成された複数の計算機上で構成される計算機システムであり、同一の計算機上で別個のスレッドで処理してもよく、複数の物理的計算機資源上に構築された仮想計算機上で処理してもよい。
なお、演算装置105がプログラムを実行して行う処理の一部を、他の演算装置(例えば、FPGA(Field Programable Gate Array)やASIC(Application Specific Integrated Circuit)などのハードウェア)で実行してもよい。
演算装置105は、メモリ106にロードされたリスク分析処理プログラムに従って処理を実行することで、リスク分析処理部108として機能する。
次に、分析用データ110の例について説明する。まず、人の年齢、性別などの基本情報、各種検査値、および投薬情報などの受診情報等を予め収集する。図2A、図2B、図2Cは、それぞれ、基本情報201、検査値情報202、受診情報203の構成例を示す図である。
図2Aに示すように、基本情報201は、個人の性別、年齢、所属など、各人の属性を示すプロファイルデータを記録する。IDは、個人に一意に割り当てられた数字等の文字列である。記録年は、当該情報が記録された年である。基本情報201は、例えば、年齢、性別ごとにリスクを分析したり、予防施策を策定したりするために用いられる。基本情報201に示すように、所属ごとにリスクを分析する場合や、所属ごとに予防施策を策定する場合などには、企業などの組織内での所属の情報を含んでもよい。また、目的に応じて他の属性情報を含んでもよい。さらに、既往歴など、問診等で得られる情報を含んでもよい。
図2Bに示すように、検査値情報202は、個人の身長、体重、血液検査の結果など、各種検査値を記録する。特に、本実施例では、脂質異常症、高血圧症、糖尿病など、分析対象となる疾病に関連する検査値などを記録するとよい。例えば、HbA1cは、血糖状態を示す指標である。これらの検査値は、例えば、毎年実施される健康診断などで測定された値を用いるとよい。
図2Cに示すように、受診情報203は、個人の医療機関での受診状況などを記録する。受診情報203は、例えば、レセプトに含まれる情報から生成できる。レセプトは、各個人が医療機関を受診した傷病名、診療行為、処方された医薬品などの情報を含む。受診情報203に記録される値は、各人が当該記録年に、該当する傷病名の診断、医薬品の処方、診療行為を受けた場合には1、受けていない場合には0を記録している。例えば、図2Cに示す例では、IDが13812の人が2012年に糖尿病経口薬Aの処方を受けたことを示している。なお、図2Cに示した糖尿病経口薬A、糖尿病経口薬B、傷病名A等の項目は、レセプト等に記載される特定の傷病名、医薬品、医療行為名でもよいし、複数の傷病名、医薬品、医療行為をまとめたものでもよい。例えば、糖尿病経口薬Aは、2つの医薬品XとYをまとめたものであるとすると、いずれかの医薬品の処方を受けた場合は1、いずれも受けていない場合には0を記録する。これらは、分析の目的に応じて分類を定義しておく。図2Cでは、0と1の二値で示すが、診断、処方、医療行為を受けた回数を記録してもよい。また、当該治療行為にかかる推定医療費等を記録してもよい。
基本情報201、検査値情報202及び受診情報203は、予め各人に割り当てられたIDで関連付けられる。また、図2Aから図2Cに示す例では、2012年のデータのみを示したが、複数年分のデータが保持される。
これらのデータをIDで突合し、分析用データを作成する。図3Aに例示する分析用説明変数生成用データ301は、基本情報201、検査値情報202及び受診情報203を突合して作成される。また、同様にして、図3Bに例示する目的変数生成用データ302に示すように、2016年のデータも作成できる。
本実施例の疾病予防支援装置101は、疾病リスクを分析するために、疾病リスクの指標となる値を目的変数として用いる。糖尿病の場合には、その指標としてHbA1cの変化量を用いる。図3Cに例示する分析用目的変数データ303は、HbA1cの変化量として、2016年のHbA1cと2012年のHbA1cの差分を記録している。HbA1cは、血糖状態を示す指標の一つであり、HbA1cが大きく増加すれば、糖尿病リスクが増大していることが推定される。また、高血圧症の場合には収縮期血圧値や拡張期血圧値を用い、脂質異常症の場合にはLDLコレステロール値やHDLコレステロール値を用い、肝機能の場合にはγ-GTPなどを用いてもよい。
糖尿病リスクを測る指標としてHbA1cの変化量の他の指標を用いてもよい。例えば、HbA1cの変化量ではなく、2016年のHbA1c値そのものを用いてもよく、空腹時血糖を用いてもよい。また、糖尿病経口薬の処方量、インスリンの処方量、又は糖尿病に関係する医療費などを用いてもよい。また、高血圧症、脂質異常症、肝機能などの他の疾病の場合にも同様に、疾病や分析したいリスクに応じて適切な指標を設定するとよい。
分析用説明変数生成用データ301に示す変数と、目的変数生成用データ302と、分析用目的変数データ303に示す目的変数とを含む分析用データを作成して、分析用データ110に保存する。
本実施例では、分析用説明変数生成用データ301に示す2012年の基本情報201、検査値情報202及び受診情報203から、分析用目的変数データ303に示す将来のHbA1cの変化量を予測することによって、疾病のリスクを分析する方法を説明する。
以下、図5を参照しながら、本発明のリスク分析処理108の処理の流れを説明する。
まず、図5Aに示すように、分析用データA501は、分析用説明変数生成用データ301、目的変数生成用データ302、分析用目的変数データ303の一部又は全部のIDのデータを抽出して生成される。例えば、特定の年齢層、性別、所属などに限定して分析したい場合には、該当するデータを抽出する。また、分析の目的に応じて、項目の一部のみを用いてもよい。例えば、特定の疾病(例えば、糖尿病)に関連する項目のみを用いる、所属が不要の場合には所属は削除するなどとしてもよい。
次に、予測モデル生成処理502によって、分析用データA501から予測モデル503を生成する。予測モデル503には、生成された予測モデル503のパラメータの情報を記録する。
予測モデル生成処理502では、分析用説明変数生成用データ301の基本情報201、検査値情報202及び受診情報203の一部又は全部を説明変数として、分析用目的変数データ303のHbA1c変化量を予測するモデルを、これらのデータを用いて学習する。モデルの学習には、公知の機械学習技術を用いることができる。
例えば、線形回帰モデルの場合には、説明変数をx1、x2、…、xnとして、目的変数をyとすると、モデルは、y=α1x1+α2x2+…+αmxmで表され、パラメータα1、α2、…、αmが生成される。このパラメータを予測モデル503として保存する。なお、このモデルには、多項式、SVR(Support Vector Regression)、ニューラルネットワークなど、公知の技術を用いることができる。このようにして、予測モデル生成処理502では、説明変数xに基づいて目的変数yを予測する関数f(x)が生成され、その関数のパラメータが予測モデル503として記録される。通常は、SVRを用いるとよい。
図7A、図7Bを用いて、予測モデル503について説明する。図7A、図7Bは、予測モデル生成処理502を説明するための模式図である。実際には、より多くのデータを用いるとよい。以下では、疾病として糖尿病を想定し、指標としてHbA1cを用いるが、他の疾病及び指標の場合にも同様の処理が適用できる。
図7A、図7Bは、その横軸701が分析用説明変数生成用データ301の2012年のHbA1cを表し、縦軸702が分析用目的変数データ303のHbA1c変化量を表しており、各人の値をプロットした様子を示す散布図である。図では簡単化のために、一つの変数(2012年のHbA1c)を用いて説明をするが、他の変数でも同様である。
図7Aに示す例では、HbA1c(横軸)の値が線704を超えたあたりから、HbA1c変化量の増大リスクが大きくなっている。すなわち、線704の左側と比較し、線704の右側には、HbA1c変化量が大きい領域(楕円705)にデータ点の数が多い。本実施例の疾病予防支援装置101は、このような状況において、リスクの変化(HbA1cの増加量の変化)の分析を目的の一つとする。
予測線703は、予測モデル生成処理502において作成されるHbA1cからHbA1c変化量を予測する回帰曲線について説明するための例である。これは、4年後の平均的なHbA1c変化量を予測するモデルと考えられる。例えば、この予測モデル503の入力として、図4Aに示す予測分析対象説明変数生成用データ401の2017年のデータ用いて、4年後(2021年)の平均的なHbA1c変化量を予測できる。
図7Aでは、HbA1c値が線704を超えたあたりから、楕円705に示すようにHbA1cの増大リスクが大きくなっている。しかし、予測線703は、線704の前後で、大きな変化が見られない。
これについて説明する。図7Aでは、HbA1c値が線704を超えても、大多数のデータ点が、HbA1c変化量が小さい楕円706の領域にあり、楕円705の領域にあるデータ点は少数である。機械学習では、多くのデータに良く適合する予測モデル503を学習する。そのため、楕円705にあるデータ点の数が、楕円706にあるデータ点の数に比べて少ない場合には、楕円705にあるデータの影響は小さくなり、予測線703に示すように、楕円705内のデータ点に示すリスクの増大を予測することは難しい。
図7Aに示すように、検査値の値や属性(生活習慣など)によって、疾病発症のリスクが増大することがある。しかし、検査値が大きく悪化する人や、実際に疾病を発症する人の割合は全体からみると少ないという状況が、疾病リスクの解析において生じることがある。このように、大多数の人に対する予測モデル503を学習する従来の機械学習技術では、低確率で発生する疾病のリスクを分析するモデルの構築が困難である。
そこで、本実施例では、このような低確率で発生する疾病のリスクを分析する方法を提供する。図5Aを参照して、本実施例の方法を説明する。
予測モデル生成処理502では、目的変数として分析用目的変数データ303の例のように、各人のHbA1cの変化量など、人ごとに算出される値を用いている。これに対して、本実施例では、分析用データA501から上位リスク値算出処理504によって、リスク分析用の新たな目的変数を生成し、生成されたリスク分析用目的変数(図4B参照)を用いることによって、少数派に対するリスク分析を可能とする。
以下では、上位リスク値算出処理504とリスク分析用データA505について説明する。上位リスク値算出処理504では、各人に対して、類似したN人の集合を生成し、その集合内で、HbA1c変化量が大きい上位X%に位置する値を上位リスク値として、リスク分析用データA505に記録する。なお、上位リスク値算出処理504では、分析用説明変数生成用データ301の一部の変数のみを説明変数として用いてもよいし、全ての変数を用いてもよい。
例えば、N=100、X=5とした場合を説明する。上位リスク値算出処理504では、分析用説明変数生成用データ301のIDが22813のデータと、2012年のHbA1c値が近い100件(N=100)のIDを抽出する。抽出された各IDについて、分析用目的変数データ303のHbA1c変化量が大きい順に、c1、c2、…、c100とする。このとき、上位5%(X=5)に位置する値は、c5となるため、その値をIDが22813のHbA1c上位変化量(上位リスク値)として、リスク分析用目的変数データ402(図4B)に記録する。他のIDについても、同様の処理を行い、リスク分析用目的変数データ402を生成する。なお、リスク分析用目的変数データ402の表では、式(c5)で示したが、実際には算出された数値が記録される。なお、上位5%に位置する値c5ではなく、上位X%の値の平均値(c1+c2+c3+c4+c5)/5を用いるなど、上位X%を特徴づける他の値(上位X%の値の集合に基づいて算出される値)を用いてもよい。
リスク分析用データA505は、分析用説明変数生成用データ301と、上位リスク値算出処理504で生成されたリスク分析用目的変数データ402とを含む。
次に、リスク予測モデル生成処理506では、分析用説明変数生成用データ301の基本情報201、検査値情報202及び受診情報203の一部又は全部を説明変数とし、リスク分析用目的変数データ402のHbA1c上位変化量を目的変数として予測するモデルを、これらのデータを用いて学習する。モデルの学習には、公知の機械学習技術を用いることができる。なお、予測モデル生成処理502で用いる方法と同じ方法を用いても、異なる方法を用いてもよい。また、リスク予測モデル生成処理506で用いる説明変数の集合は、上位リスク値算出処理504で用いる説明変数の集合と同じでも、異なってもよい。
リスク予測モデル生成処理506で生成したモデルのパラメータが、リスク予測モデル507として記録される。
図7Aに示すリスク予測線707は、リスク予測モデル生成処理506で生成されるリスク予測モデルについて説明するための例である。リスク予測線707は、HbA1c変化量が上位となる値を目的変数としているため、予測線703のように、全体の平均的な値を予測するのではなく、楕円705の領域にある高リスク群のデータ分布を反映する。これによって、大多数の平均的な予測値ではなく、低確率で発生する検査値の大きな悪化や疾病リスクを分析できる。例えば、リスク予測線707のように、線704を超えた辺りから、楕円705内のデータ点のようなリスクの上昇を予測するモデルを生成できる。
なお、上位リスク値算出処理504では、各IDの類似集合を生成し、そのHbA1c変化量の上位X%を算出した。このXの値は、分析したいリスクの発生確率と同じか、それに近い値を設定することによって、分析対象となるリスクの発生率に沿ったリスク予測線を生成しやすい。また、分析対象となる母集団の人数が大きく、Nが十分大きく取れる場合には、Xはリスク発生確率よりも小さい値に設定してもよい。糖尿病の場合には、Nが十分大きくとれる場合(Nが100以上程度)、X=5程度にするとよい。リスク発生確率が比較的大きい母集団の場合には、Xは15以下程度で設定するとよい。
Xの値の算出例を説明する。例えば、2012年のHbA1cが特定の基準値(例えば、6.5)を超えるIDの割合をリスク発生確率Rとして、例えば、X=Rと設定してもよい。また、別の方法として、受診情報(例えば、レセプト)には、傷病名が含まれている。レセプトに記載されている傷病名を用いて、全IDのうち傷病名が糖尿病に関係する受診情報を含むIDの割合をリスク発生確率Rとして、例えば、X=Rと設定してもよい。なお、どの傷病名が糖尿病に関係するかは、国際疾病分類(ICD10)などの傷病名の分類情報を用いてもよいし、予め人手で分類を作成してもよい。これらの割合は、組織や年齢など、分析対象となる母集団によって変わる。そのため、分析対象である分析用データA501のデータに基づいてXの値を算出するとよい。Xの値として、上記ではX=Rとしたが、X≦2Rとなる範囲を目安に選択、調整するとよい。
なお、上記では、本実施例の方法を説明するために、比較として、従来方法による予測モデルの構築方法を説明したが、図5Eに示すように、本発明の方法のみを実施する場合には、予測モデル生成処理502や予測モデル503はなくてもよい。
なお、HbA1cは、値が増加すると糖尿病リスクが高くなる指標であるため、上位X%を算出した。検査値によっては、値が低くなることでリスクが高くなる指標の場合には、下位X%を算出するとよい。
このように、分析対象となるリスクの発生率に基づいて設定したXを用いてリスク分析用目的変数データ402を生成し、リスク予測モデルを構築することによって、低確率で発生するリスクの変化を予測するリスク予測線707を生成できる。
ここまで説明を簡単にするために、説明変数がHbA1cの一つである場合を説明した。この場合、上位リスク値算出処理504において、各人に類似するN人の集合を生成するためには、HbA1c値が近いN人を選定する。説明変数が二つ以上の場合も同様に、説明変数の数の次元を有する説明変数空間におけるユークリッド距離(各変数の差分の自乗和の平方根)を用いてもよい。
しかし、本実施例で扱う説明変数は種類が異なるのため、各変数の単位を変更することによってユークリッド距離が変わる。また、分析したい対象(目的変数)に応じて、類似尺度も変更した方が良い場合がある。
例えば、図6Aに示す分類601では、体重、身長の二次元空間上に、四つのデータ点が存在する状況を示している。これを、ユークリッド距離により、二つの集合に分類した場合、分類601のように左右二つの点同士が類似することになる。次に、身長の単位をcmからmに変更すると、図6Bに示す単位変更後分類602のように、上下二つの点同士が類似することになる。このように、変数の種類が異なる場合には、単位の変更によって、類似尺度が変わってくる。また、糖尿病リスクは、BMIのように、身長と体重のバランスが関係しているため、糖尿病リスクを分析する場合には、身長と体重のバランスを考慮して、図6Cに示すバランス分類603のような斜め方向の点同士が類似していると判定できる類似尺度を用いるとよい。
そこで、以下では、説明変数が二次元以上の場合に、図8を用いて、ユークリッド距離とは異なる、目的変数の分析に適した方法で、説明変数空間内の類似集合を算出する方法を説明する。
バランス分類603(図6C)を用いて説明したように、類似集合を算出するための類似尺度を決める際には、分析対象となる疾病の進行度の指標となるリスク絶対指標(本実施例の場合には、例えば、HbA1cの値)との関連性を考慮するのが望ましい。本実施例では、類似尺度として、マハラノビス距離を用いる。
説明変数空間におけるマハラノビス距離について、図6D、図6Eを参照して説明する。図6Dに示すユークリッド距離604の場合には、原点から同じ距離にある点の集合は破線で示す円上に位置する。これに対して、図6Eに示すマハラノビス距離605の場合には、原点から同じ距離にある点の集合は破線で示す楕円上に位置する。また、楕円の軸は、実線で描かれた座標ではなく、破線で描かれた軸608と軸609となる。ユークリッド距離で測ると、データ点607は、データ点606よりも、原点からの距離が大きい位置にあるが、マハラノビス距離では、同一楕円上にあり、原点からの距離は同一である。
説明変数空間内で、リスク絶対指標の増減が小さい方向では、座標軸608のように、楕円軸の長さを大きくし、リスク絶対指標の増減が大きい方向では、座標軸609のように、楕円軸の長さを小さくする。すなわち、リスク絶対指標の増減が小さい方向では距離尺度を大きくし、リスク絶対指標の増減が大きい方向では距離尺度を小さくしたマハラノビス距離を用いて類似集合を生成できる。
図6Cに示す例のように、説明変数が身長と体重の場合に、糖尿病のリスク絶対指標HbA1cとの関連が大きい方向として、例えば、BMIの変化量が大きい方向が考えられる。この場合には、例えば、平均的身長や体重を示す点で、BMIの等高線に沿った方向に近い方向が座標軸608、それに垂直なBMIの変動が大きくなる軸が座標軸609となるマハラノビス距離をとることができれば、リスク絶対指標との関連性を考慮した類似尺度の例となる。
以下では、図8を参照し、このようなマハラノビス距離を算出し、類似集合を計算する方法について説明する。
まず、リスク絶対指標算出801において、分析対象となる疾病の進行度の指標となる値を取得または算出する。本実施例の場合には、分析用データA501より、2016年のHbA1cの値を取得し、それをリスク絶対指標として用いるとよい。なお、本実施例では、目的変数としてHbA1cの変化量を用いているが、これは、進行度の相対的な変化と考えられるため、この値の大小で疾病の進行度を推定するのは難しい。例えば、HbA1c変化量が小さくとも、HbA1cの値そのものが大きい場合には、疾病は進行している可能性がある。一方で、HbA1c変化量が大きくとも、HbA1cの値そのものが小さい場合には、進行度は低いと推定できる。この場合のように、HbA1c変化量よりも、HbA1cの値そのもののほうが、疾病の進行度の指標として適切と考えられる場合には、リスク絶対指標としてHbA1cの値を用いるのがよい。
なお、疾病の進行度と相関のある他の指標をリスク絶対指標として用いることも考えられる。例えば、図2Cで示したように、糖尿病に関連する診断、処方、医療行為の有無や、診断、処方、医療行為を受けた回数など、診断、処方、医療行為の回数や内容から生成した値を用いてもよい。また、当該治療行為にかかる推定医療費等を用いてもよい。
次に、距離尺度算出802では、図6Eを用いて説明したように、リスク絶対指標の増減が大きい方向では、距離尺度を小さくなり、リスク絶対指標の増減が小さい方向では、距離尺度を大きくなるようなマハラノビス距離を算出する。すなわち、座標軸608、609、及び楕円軸長610、611を算出する。図6Eに示す例では、座標軸609が、リスク絶対指標の増減が大きい方向、座標軸608が、リスク絶対指標の増減が小さい方向である。この距離尺度では、リスク絶対指標の増減が小さい方向(座標軸608の方向)に分布する説明変数空間の点同士は、距離が小さくなる(類似度が大きくなる)。
この距離尺度を算出する方法として、リスク絶対指標と説明変数を用いた正準相関分析(Canonical Correlation Analysis)を用いるとよい。これにより、リスク絶対指標と説明変数が互いに相関が高くなるような距離尺度を求めることができる。また、正準相関分析の他に、MLKR(Metric Learning for Kernel Regression)、SCCA(Sparse Canonical Correlation Analysis)など、距離尺度を求める他の方法を用いてもよい。また、非線型正準相関分析など、それらの非線型版を用いてもよい。この場合には、距離尺度は、説明変数空間のマハラノビス距離ではなくなるが、処理は同様にして適用できる。
次に、説明変数変換803では、距離尺度802で算出した距離尺度に基づいて、説明変数を変換する。直感的には、図6Eのマハラノビス距離の楕円形の等高線を円形に変換し、楕円の軸である座標軸608、座標軸609を座標軸とするような変換である。説明変数をx、変換関数をgとし、変換後のベクトルをg(x)とおく。正準変換のような線形変換の場合には、ある行列Aとベクトルbを用いてg(x)=Ax+bと表すことができる。なお、楕円軸長610、611の短い順(距離尺度の大きい順)に座標軸を選択することでg(x)の次元数nは、xの次元数m以下に設定することができる。例えば、n=1とすれば、g(x)は1次元となる。この変換後の次元数は予め定めておく。なお、このときの変換関数gのパラメータは、距離変換モデル508に記録しておく。
次に、類似集合算出804では、変換後の説明変数空間において、ユークリッド距離を用いて各IDに対するN人の類似集合を算出する。Nは予め定めておく。例えば、N=100やN=200などを用いるとよい。上位リスク値算出処理504と同様の処理を進め、リスク予測モデルを生成する。以上のようにして、リスク予測モデル507を生成できる。
なお、距離尺度算出802では、HbA1c変化量のような相対指標ではなく、リスク絶対指標算出801で求めたリスク絶対指標を用いる。これにより、疾病リスクと関連した距離尺度を選択することができる。例えば、説明変数のひとつである2012年のHbA1cは、糖尿病のリスク分析予測において重要な変数であるため、2012年のHbA1cの値の差が小さい人同士は距離が近く、大きい人同士は距離が遠くなるような距離尺度が望ましい。2012年のHbA1cとリスク絶対指標算出801で求めたリスク絶対指標(例えば、2016年のHbA1c)は、相関が強いと想定できるため、距離尺度算出802では、このような距離尺度が算出できると期待される。一方で、HbA1cの変化量(2016年のHbA1c-2012年のHbA1c)のような相対指標を用いた場合には、2012年のHbA1cとの相関が弱く、リスク絶対指標を用いる場合と比べて2012年のHbA1cが距離尺度として小さくなる。
以上のことから、HbA1c変化量のような相対指標は、リスク分析の際には、リスクの相対的な増減を分析できるため、分かりやすく、可視化して分析するのには有用であるが、類似集合を求めるための距離尺度の算出においては、リスク絶対指標を用いるのがよい。なお、目的変数をHbA1c変化量ではなく、2016年のHbA1cの値そのものとした場合には、目的変数とリスク絶対指標は同一のものとしてもよい。このような処理を行うことで、可視化に有用な相対指標で分析しつつ、類似集合を求めるための適切な距離尺度を求めることができる。
前述したように、上位リスク値算出処理504で距離尺度生成に用いる説明変数は、リスク予測モデル生成処理506で用いる説明変数と異なっていてもよいし、距離尺度生成に用いる目的変数(リスク絶対指標)はリスク予測モデル生成処理506で用いる目的変数と異なっていてもよい。これにより、上位リスク値を算出するための適切な距離尺度、類似集合を求めることができる。
次に、図5Bを参照して、前述した方法を用いたリスク分析処理108における応用例を説明する。
予測対象データ509に、予測分析対象説明変数生成用データ401(図4A)に示すデータを保持する。本実施例では、2012年のデータから、2016年(4年後)の状態を予測する例を用いて説明している。そこで、ここでは、2017年のデータである予測分析対象説明変数生成用データ401から4年後の状態を予測する問題を想定して説明する。リスク予測処理510では、リスク予測モデル507に、リスク予測モデル507の説明変数に対応する変数のデータを入力として適用することで、予測結果を得る。例えば、リスク予測モデル507が2012年のHbA1c値を説明変数とするモデルの場合、2017年のHbA1c値を入力として適用することで、2021年(4年後)の上位リスク値を予測する。予測結果出力処理511では、予測結果を表示装置103に表示する、補助記憶装置107に保存する、などによって予測結果を出力する。
また、図5Cを参照して、別の方法によりリスク予測結果を得る方法を説明する。
まず、予測対象データ509に、予測分析対象説明変数生成用データ401(図4A)に示すデータを保持する。次に、上位リスク値算出処理512では、予測対象データ509の各IDに対して、分析用データAの中から類似集合を算出し、上位リスク値を算出する。予測結果出力処理511では、この上位リスク値を予測結果として出力する。
なお、この場合には、図5Aの距離変換モデル508のみを用いるため、図5Gに示すように、予測モデル生成処理502、予測モデル503、リスク分析用データA505、リスク予測モデル生成処理506、リスク予測モデル507はなくてもよい。すなわち、図5Gの処理と図5Cの処理をセットで用いることができる。
ここでは、分析用データA501を学習データとみなし、予測対象データ509の将来の状態を予測している。図5Aの上位リスク値算出処理504では、分析用データAの各IDに対して、分析用データAの中から類似集合を算出したが、上位リスク値算出処理512では、予測対象データ509の各IDに対して、予測対象データ509とは異なる分析用データA501から、類似集合を算出する。これは、過去のデータである分析用データA501のモデルに基づいて、2017年のデータである予測対象データ509の将来の状態を予測するためである。この方法では、過去データで類似した人のうちリスクが高い上位X%の人を特徴づける値をリスク予測結果としている。
上記、図5B,図5Cで目的変数がHbA1c変化量の場合には、予測結果としてHbA1c変化量の上位リスク値が得られる。それに現在のHbA1cの値を加えることで、将来のHbA1c値の上位リスク値が得られる。これらのHbA1c変化量や将来のHbA1c値などの上位リスク値の予測値は、将来、HbA1c値が高くなるリスクが大きい人を抽出するなどに、用いてもよい。例えば、現在、HbA1cが一定の基準値(例えば、5.5以上、6.0以下)の人の中から、予測値が高い人を順番に抽出するなどとして、将来のリスクを推定し、保健指導の優先度の高い人を推定するための参考にする、などの応用例が考えられる。
次に、リスクを可視化して分析する応用例について、説明する。
まず、すでに説明したように、従来方法による予測モデル生成処理502で生成される回帰曲線を可視化すると、図7Aの予測線703のような曲線が得られる。これは、2012年のHbA1cを説明変数xとし、HbA1c変化量を目的変数とした回帰曲線h(x)である。
一方、本実施例の方法を用いたリスク予測モデル生成処理506で生成される回帰曲線も、すでに説明したように可視化すると、図7Aのリスク予測線707のようになる。すなわち、HbA1c変化量の増加リスクが高いデータに敏感なリスク予測線が得られる。このようにして、二つのモデルの予測線703とリスク予測線707を表示装置103に表示して、全体の傾向(予測線703)と、リスク曲線(リスク予測線707)を比較可能に表示し、分析できる。
なお、従来方法による予測モデル生成処理502では、図7Aのように、2012年のHbA1cとHbA1c変化量を軸に可視化する場合、この二つの変数で回帰曲線を生成するため、分析用説明変数生成用データ301の他の変数の情報はモデル生成の際に、考慮されない。
それに対して、本実施例の方法では、リスク分析用データA505に2012年のHbA1c以外の変数の情報も含まれるため、2012年のHbA1c以外の変数の情報も考慮された回帰曲線が得られる。
このことについて説明する。本実施例の方法でも、図7Aのように可視化する場合、リスク予測モデル生成処理506において、2012年のHbA1cを説明変数とする回帰曲線を生成するが、その回帰曲線の目的変数には、上位リスク値算出処理504で算出したリスク分析用データA505を用いる。
すでにリスク予測モデル生成処理506の処理の説明で述べたように、上位リスク値算出処理504で用いる説明変数とリスク予測モデル生成処理506で用いる説明変数は異なっていてもよい。上位リスク値算出処理504では、2012年のHbA1c以外の変数も考慮して、類似集合をとり、上位リスク値を算出してもよく、このように処理することによって、他の説明変数の影響は、リスク分析用データA505に含まれることになる。これによって、2012年のHbA1c以外の変数も考慮したリスクを可視化できる。
また、リスク予測線は、疾病リスクに影響のある因子を比較、分析するための利用できる。例えば、保健指導の有無や、BMIが高い場合と低い場合、でのリスクの高低を比較することができる。他にも、保健指導の種類による比較、年齢、投薬治療や薬の種類の比較により、リスク変化を分析することが考えられる。以下、図5Dを参照して説明する。
分析用データ110のうち、生活習慣改善のための保健指導を実施した人のデータを分析用データX513、保健指導を実施しなかった人のデータを分析用データY514とする。また、上位リスク値算出処理504及びリスク予測モデル生成処理506を実行し、分析用データX513及び各分析用データY514から、リスク予測モデルX515及びリスク予測モデルY516を生成する。可視化結果出力処理517では、例えば図7Bに示すように、保健指導を実施した場合のリスク予測線708と保健指導を実施しなかった場合のリスク予測線709を表示することによって、施策の有無によるリスク低減効果や施策の効果を分析できる。これによって、保健指導を実施する場合と実施しない場合のリスクの変化を比較、分析できる。
また、予測結果も分析したい場合には、リスク予測処理510において、二つのリスク予測モデル515、516に予測対象データ509を適用し、予測結果出力処理518において両方の予測結果を出力してもよい。なお、予測結果が必要ない場合には、図5Fに示すように、リスク予測処理510、予測対象データ509、予測結果出力処理518はなくてもよい。
なお、上位リスク値算出処理504において、上位X%に位置する値を取得したが、X=50として、中心値を算出する、または、類似集合全体の平均値を算出する、などとすれば、全体の平均的傾向の予測線が得られるので、リスク予測線707や、リスク予測線708、リスク予測線709の他に、これを同時に示してもよい。平均的傾向を示す予測線を表示することで、全体的な傾向とあわせて、リスクを比較、分析できる。
BMIの高低によって比較する場合には、例えば、BMIが高い(例えば、25.0以上)の人のデータを分析用データX513、BMIが低い(例えば、22.0以下)の人のデータを分析用データY514として、前述した処理を行う。
従来の方法を用いた予測方法による予測線703では、多数派データの影響が大きくなり、施策によるリスク低減の差異を表現しにくい。これに対し、本実施例の予測方法によるリスク予測線708では、リスク低減の差異を分析しやすくなる。
また、施策の有無や施策同士の比較ではなく、年齢層や組織によるリスクも比較できる。例えば、組織Xに所属する人のデータを分析用データXとし、組織Yに所属する人のデータを分析用データYとすることによって、組織ごとのリスクの違いを分析できる。また、他の様々な属性で比較してもよい。このように様々な属性で比較することにより、各々の因子がリスクに与える影響を分析したり、属性ごとのリスクの違いなどを分析したりすることができる。
なお、図5B、図5C、図5Dの構成において、リスクを予測することなく、リスク予測モデルを生成するためのデータ(図7A、図7Bにおけるグラフ中の点)を表示してもよい。データと共に回帰曲線を表示してもよい。このように構成する際には、図5Bにおいて、リスク予測処理510が不要となる、又は、リスク予測処理510において出力処理を実行するとよい。また、図5Cにおいて、上位リスク値算出処理512が不要となる、又は、上位リスク値算出処理512において出力処理を実行するとよい。また、図5D及び図5Fにおいて、上位リスク値算出処理504及びリスク予測モデル生成処理506が不要となる、又は、上位リスク値算出処理504及びリスク予測モデル生成処理506において可視化結果出力処理517を実行するとよい。
なお、上記では、2012年のデータに基づいて、4年後の2016年の状態を分析する想定で説明した。また、2017年のデータを用いて、その4年後の状態を分析する応用例を示した。上記では、説明のために、これらの年を例示したが、この例とは異なる年でもよく、また、年の単位でなくてもよい。例えば、2011年のデータと2014年のデータを用いて、3年後の状態を分析するモデルを構築する、などとできる。
以上に説明したように、本発明の実施例によると、上位リスク値算出処理504が、入力されたヘルスケアデータの少なくとも1項目のデータを用いて、各データに類似するN個のデータの集合を生成し、生成された集合内で、他の1項目のヘルスケアデータ(分析用データA501)が大きい又は小さい方から所定割合(X%)に位置する値を目的変数とするリスク分析用データA505を生成しリスク予測モデル生成処理506が、入力されたヘルスケアデータの一部又は全部を説明変数とし、リスク分析用データA505に含まれる目的変数を予測するリスク予測モデル507を、これらのデータの学習によって生成し、リスク予測処理510が、リスク予測モデル507にヘルスケアデータ(予測対象データ509)を入力して、前記目的変数によって表されるリスクを予測するので、類似集合内の分布に基づいて分析対象者のヘルスケアデータの目的変数を分析する。そのため、大多数の平均的な傾向ではなく、低確率で発生する疾病リスクの変動を分析できる。
また、所定割合(X%)は、分析対象のリスクの発生確率と同じ(X=R)又は2倍以下(X≦2R)の値とするので、分析対象となるリスクの発生確率に沿ったリスク予測線を生成できる。
また、目的変数は、糖尿病の発症リスクを分析するための、HbA1c値の変化量であり、リスク予測処理510では、リスク予測モデル507に前記ヘルスケアデータを入力して、将来のHbA1c値の変化量の増大リスクを予測するので、低確率で発症する糖尿病のリスクに関する分析ができる。
また、リスク予測処理510は、HbA1cが5.5以上かつ6.0以下である範囲内から、前記予測されたリスクが高い人を抽出するので、低確率で発症する糖尿病のリスクを的確に分析できる。
また、所定割合は15%以下(望ましくは5%)とするので、HbA1c値の変化量を用いて低確率で発症する糖尿病のリスクに関する分析ができる。
また、上位リスク値算出処理504が、入力されたヘルスケアデータの一部又は全部の変数(リスク予測モデル生成処理506が用いる説明変数と異なってもよい)が配置される空間内において、分析対象となる疾病の進行度を示すリスク絶対指標の値の変化が少ない方向では距離尺度を大きくし、リスク絶対指標の値の変化が大きい方向では距離尺度を小さくしたマハラノビス距離を用いて、類似するデータの集合を生成するので、疾病の進行に関するリスクの分析に適した方法で説明変数空間内の類似集合を算出できる。
また、予測モデル生成処理502が、入力されたヘルスケアデータの一部又は全部を説明変数とし、リスク分析用データA505に含まれる目的変数と同一項目のデータを目的変数とする予測モデル503を、これらのデータの学習によって生成し、予測結果出力処理511が、リスク予測モデル507にヘルスケアデータ(予測対象データ509)を入力して予測された、目的変数によって表されるリスクを表すリスク予測線707と、予測モデル503にヘルスケアデータ(予測対象データ509)を入力して予測された、目的変数によって表されるリスクを表す予測線703と、を比較可能に出力するので、複数のモデルの予測結果を表示装置103に表示して、全体の傾向(予測線703)とリスク傾向(リスク予測線707)とを比較し、分析できる。
また、上位リスク値算出処理504、リスク予測モデル生成処理506が、複数のリスク予測モデル515、516を生成し、可視化結果出力処理517が、複数のリスク予測線708、709を比較可能に出力するので、異なる母集団(例えば、保健指導の実施の有無やBMI値の高低など)のリスクの違いを比較することができ、属性ごとのリスクの実態に関する分析や、リスク低減に対する各施策の効果に関する分析ができる。
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加・削除・置換をしてもよい。
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウエアで実現してもよい。
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記憶装置、又は、ICカード、SDカード、DVD等の記録媒体に格納することができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。