S
Smarter Business

医療ビッグデータ分析における国際的標準データ・モデルの活用|疾患モデル構築フレームワーク

post_thumb

片山 博之
日本アイ・ビー・エム
IBMコンサルティング事業本部
ヘルスケア・ライフサイエンス・サービス

 

小牧 美保
日本アイ・ビー・エム
IBMコンサルティング事業本部
ヘルスケア・ライフサイエンス・サービス

 

古関 聰
日本アイ・ビー・エム
東京基礎研究所

本ブログでは医療データ分析向けの標準データ・モデルとしてグローバルのコミュニティーで開発されているOHDSI※1 OMOP CDM※2を取り上げ、その活用や普及に向けた方法を複数回にわたって紹介しています。前回はOHDSI OMOP CDMについて、その目的やツール群、研究事例などを紹介しました。第2回となる今回は、OHDSI OMOP CDMを活用した疾患モデル構築を容易にするためのIBMの取り組みとして「IBM Disease Progression Workbench 360 (DPM360)」を紹介します。オープンソースとして公開しておりますので、ご興味を持たれましたら是非お使いください。

※1The Observational Health Data Sciences and Informatics

※2The Observational Medical Outcomes Partnership Common Data Model

DPM360とIBMの関わり

OHDSI OMOP CDMによって標準化されたデータ・モデルとOHDSIから提供されているツール(Atlasなど)を用いて、ある期間1つまたは複数の基準を満たした患者の集合(コホート)の抽出が容易になってきています。しかし現状では、抽出されたコホートを用いての疾患進行のモデル開発とその利用に関するIT環境はまだ完全に整備されているとはいえません。DPM360はOHDSI OMOP CDMデータを対象とした疾患進行モデリング(Disease Progression Modeling)を加速するためのPythonベースの機械学習フレームワークで、識別問題、生存分析、状態空間モデリングなど、様々な病気の進行をモデリングするための分析ツールを提供することが目的となります。

DPM360は、IBMにおける日本と米国ヨークタウンの研究所(リサーチ)のメンバーが開発・維持に携わり、IBMリサーチが運営する医療向けオープンソースのGitHubサイトで公開されています。

DPM360の構成

DPM360の構成について紹介します。詳細はGitHub DPM360サイト(IBM外のWebサイトへ)にてアーキテクチャー図と共に説明されておりますのでご参照ください。

DPM360は「Installer」「Service Builder」「Cohort Connector」「Lightsaber」と呼ばれる4つのモジュールから構成されています。「Installer」モジュールによって、OHDSIのコホート定義ツールであるAtlasおよびOHDSI OMOP CDMデータベース、統計解析ツールなどがクラウド上に配備されます。関心のある病理を熟知した専門家(SME)がAtlasを用いて、解くべき問題として分析対象となるコホートの条件、および予測対象となる結果や効果(アウトカム)の条件ロジックをデータ・モデル(OHDSI OMOP CDM)とデータ・モデルで使用される語彙(ボキャブラリー)を使って決定します。

コホートに対する特徴量抽出とアウトカムを予測する機械学習のトレーニングは、研究者やデータサイエンティストが持つ個別のVM環境で行われます。研究者やデータサイエンティストは、VM環境に構成された「Cohort Connector」モジュールを用いて宣言的な特徴量抽出を行い、「Lightsaber」モジュールを用いて機械学習モデル作成を行います。

更に「Installer」モジュールによってクラウド上に「Service Builder」モジュールが配備され、学習済みの機械学習モデルにアクセスするためのWebサービスを構成します。WebサービスへのURLを用いて、ユーザが機械学習モデルを使った予測や推定などを行います。

DPM360を使った一連のモデル・トレーニングの流れ図を図1に示します。まずAtlasを用いたコホートの作成を行った後、コホートを利用して特徴量(feature)を抽出します。このステップは、上記で説明したOHDSI OMOP CDMのデータ・モデルとボキャブラリーを使用して標準的に行われます。抽出した特徴量は、機械学習パイプラインの入力となり、データ処理のバッチ化、モデルによる予測値と損失関数の計算、損失を最小化するためのモデルパラメータの更新などを行います。最後に、学習後のモデルの予測結果の分析や、学習されたモデルの可視化を行います。

図1 DPM360を用いたモデル・トレーニングの流れ図1 DPM360を用いたモデル・トレーニングの流れ

一例として、DPM360のレポジトリにバンドルされているサンプルコード(IBM外のWebサイトへ)を紹介します。DPM360では、OHDSI OMOP CDMに基づいたデータを入力としますが、ここでは、MIMIC III(IBM外のWebサイトへ)というICUの公開データをOHDSI OMOP CDMのデータ・モデルに変換したものを使用しています。MIMIC IIIはICUに運ばれてきた患者の48時間のラボ・テストデータなどが蓄積されています。このサンプルコードでは、患者の48時間のラボ・テストデータの時系列データを使い、患者が48時間の集中治療の後、病院滞在中に生存するかどうかの識別問題を、深層学習モデルによって解いています。ご興味のある方は是非お試しください。

おわりに

今回はOHDSI OMOP CDMを活用する方法の1つとして、IBMリサーチが開発しているDPM360を紹介しました。DPM360ではOHDSI OMOP CDMから作成されたコホートからの特徴量の抽出、機械学習モデルの作成、作成したモデルのWebサービス化をサポートすることで、OHDSI OMOP CDMのデータを用いた疾患進行モデリングの作成からユーザに利用してもらうまでの一貫した環境をOHDSIで提供されている各種ツールと共に容易に構築することが可能です。

GitHub DPM360サイト(IBM外のWebサイトへ)では、デモ動画もアップロードされておりますので、ご覧ください。気に入られましたら「スター・マーク」をつけていただければ幸いです。よろしくお願いいたします!