このプロトコルは、生成的敵対ネットワークを用いたデータ拡張、統計的およびメタヒューリスティックに基づく特徴選択、説明可能な人工知能を組み合わせた心臓病予測のための機械学習フレームワークを記述します。
Method Article
このプロトコルは、生成的敵対ネットワークを用いたデータ拡張、統計的およびメタヒューリスティックに基づく特徴選択、説明可能な人工知能を組み合わせた心臓病予測のための機械学習フレームワークを記述します。
心臓病は世界的に主要な死因であり、その早期予測は臨床的および計算的に重要な課題となっています。いくつかの研究では、データの希少性、特徴選択、モデル解釈可能性などの課題に個別に取り組んでいますが、これらの課題に相乗効果のある統合フレームワークを提案した研究は少ないです。本論文は、(1) 階級の不均衡とデータ不足に対処する生成的敵対ネットワーク(GAN)を用いる包括的な予測フレームワークを提示します。(2) ウェルチの t検定とコーエンのd効果サイズを用いた統計的前フィルタリングと、ハリス・ホーク最適化によるメタヒューリスティック最適化を組み合わせたハイブリッド特徴選択アプローチ;(3) SHAP、部分依存プロット、オッズ比などの様々な説明可能な人工知能手法。この枠組みはClevelandおよびStatlogデータセットで評価され、選択されたベースラインおよび既存手法と比較して高い精度、F1スコア、ROC-AUC値を得ました。このモデルは、機械学習の性能と臨床解釈可能性を結びつけ、心臓病予測のための堅牢で解釈可能な計算フレームワークを提供します。
心血管疾患は世界的に多くの罹患率と死亡率の主要な原因の一つであり、年間約1,790万人の死亡を生み出しています。心臓病の早期かつ正確な予測は、タイムリーな介入と患者の転帰改善に不可欠です。この文脈で、機械学習(ML)アルゴリズムを用いた心臓病予測は主に3つの課題に直面しています。高品質な医療データの限られた入手、冗長または無関係な変数を含む高次元特徴空間、そして臨床の信頼や採用を妨げる複雑なモデルのブラックボックス的な性質です。最近の研究では、心臓病予測のために機械学習と説明可能な人工知能(XAI)手法を組み合わせています。多くの研究者は心臓病の予測と検出にも機械学習を用いています。特に生成的敵対的ネットワーク(GAN)をはじめとする生成型人工知能の最近の発展は、医療におけるデータ拡張の可能性を秘めています。同時に、ハリスホーク最適化(HHO)やパーティクルスウォーム最適化(PSO)などのメタヒューリスティックアルゴリズムは特徴選択やモデル最適化に効果的であることが証明されています。SHAPや偏依存プロット(PDP)などのXAI技術も、複雑なモデル予測を解釈する重要なツールとして登場しています。心血管リスク予測のための機械学習モデルに関する多くの研究が行われています。
しかし、利用可能な文献ではこれらの問題を単独で論じることが多いです。一部の研究はGANs9を用いたデータ拡張に焦点を当て、他はメタヒューリスティックアルゴリズム10 やXAI手法11に基づくモデル解釈可能性を特化した特徴選択に焦点を当てています。SMOTEベースの増強は心不全の生存予測のために探求されています12。KNNに基づく心臓疾患の診断も報告されています。13件。これらの別々のアプローチは、データ希少性、特徴選択、モデルトレーニング、解釈可能性を統合したフレームワークを通じて得られる利点を完全には活用していません。
最近の研究では、関連するアプローチが探求されています。2026年のFrontiers in Medicine誌の研究では、パディング補間と中央値補完を用いたPSO最適化された異種分類器を心臓病診断に提案し、統合データセットで91.3%の精度を達成しました。その他の最近の研究では、医療画像セグメンテーション15に対するメタヒューリスティック最適化、脳卒中予測16に対するXAI、心臓不整脈分類17に対するハイブリッド最適化、SHAP強化臨床意思決定支援システム18の適用があります。しかし、これらの研究の多くは生成的拡張、二重基準の統計的特徴選択とHHO最適化、多手法XAIを単一の統合フレームワークに組み合わせているものは少ないです。
本論文は、データ増強、ハイブリッド特徴選択、モデル最適化と訓練、説明可能性分析を体系的に統合した心臓病予測フレームワークを提案することで、このギャップを埋めることを目的としています。データ増強段階では、GANが年齢、血圧、コレステロール値、心電図測定などの患者の特徴に基づく表状の臨床データを合成するために用いられます。GANは医療画像生成に広く使われていますが、本研究では、13の数値的およびカテゴリ的特徴を含むクリーブランド心疾患データセットにGANを適用し、サンプルサイズ(n = 303)とクラスの不均衡を解決しています。ハイブリッド特徴選択段階では、ウェルチの t検定とコーエンのd効果サイズをHHOと組み合わせて、統計的に堅牢で臨床的に関連性のある特徴サブセットを特定します。モデル最適化および訓練段階では、PSOを用いて人工ニューラルネットワークの重みを最適化し、ロジスティック回帰やランダムフォレストモデルは性能と説明可能性のバランスを考慮して訓練されます。説明可能性段階では、SHAP、PDP、オッズ比などの補完的なXAI手法が用いられ、グローバルおよび局所的なモデル解釈を提供します。
提案されたフレームワークの全体的なワークフローは 図1に示されています。 表1は 提案されたアプローチと既存の特徴選択手法との主な違いをまとめています[表1はこちら]。

図1:提案された心臓病予測フレームワークの概要。 ワークフローは主に4つのフェーズで構成されています:(1) GANを用いたデータ希少性へのデータ前処理と拡張;(2) 統計的フィルタリング(ウェルチの t検定とコーエンのd)とハリスホーク最適化を組み合わせたハイブリッド特徴選択;(3) ロジスティック回帰やランダムフォレストを含む解釈可能な分類器を用いたモデルトレーニング、およびPSO最適化されたANNを用いたもの;および(4)SHAP、部分依存プロット、オッズ比を用いた説明可能性分析。略称:GANs = 生成的敵対ネットワーク;PSO = 粒子群最適化;ANN = 人工ニューラルネットワーク。 この図の拡大版はこちらをクリックしてご覧ください。
| アプローチカテゴリー | 統計的検定(例:t検定) | 効果サイズ(例:コーエンのd) | メタヒューリスティック最適化(例:HHO/PSO) | 解釈可能性の焦点 |
| 伝統的な統計 | はい | めったにありません | いいえ | 中程度 |
| 純粋最適化 | いいえ | いいえ | はい | 低め |
| 既存のハイブリッド手法 | 時々 | めったにありません | はい | 可変 |
| 提案された枠組み | はい(ウェルチのt検定) | はい(コーエンのDは0.5≥) | はい(HHO) | ハイ(XAI積分) |
表1:心臓病予測における特徴選択手法の比較。 比較されるアプローチには、従来の統計的、純粋最適化、既存のハイブリッド手法、そして統計的検証、効果サイズ、メタヒューリスティック最適化、解釈可能性に焦点を当てた提案フレームワークが含まれます。
この研究の主な貢献は以下の通りです。まず、データの希少性とクラスの不均衡に対処するために、標準的なGANとバイナリクロスエントロピー損失とアダム最適化を実装し、TensorFlowが利用できない場合のガウス摂動フォールバックも備えています。次に、特徴冗長性に対処するため、統計的事前フィルタリングとV字型伝達関数を用いたHHOを組み合わせたハイブリッド特徴選択戦略が提案されます。この二重基準アプローチは、統計的に有意かつ臨床的に関連性のある特徴を選択することを目指しています。第三に、モデルの不透明性に対処するために、SHAP蜂群やウォーターフォールプロット、PDP、95%信頼区間のオッズ比を含むマルチメソッド説明可能性スイートが統合されています。臨床ユーザー向けに簡単な調整プロトコルが提供されています。PDPに非線形傾向が示された場合、SHAPの説明をロジスティック回帰係数よりも優先すべきです。第四に、再現性と構造化された検証を支援するために、このフレームワークには階層化されたクロスバリデーション、公平性監査、アブレーション研究、MIMIC-IIIの外部検証プロトコル、主要なハイパーパラメータの文書化が含まれています。
Access restricted. Please log in or start a trial to view this content.
倫理声明、データセット、ソフトウェア、データ準備
本研究の発見は、UCI機械学習リポジトリの心臓病データセットに基づいています。これは一般公開され匿名化されたリソースであるため、倫理委員会の承認は必要ありませんでした。著者たちはまた、この原稿の独自性を確認し、これまでに出版や他の学術誌への投稿がないことを確認しています。
クリーブランドの心臓病データセットは、トレーニングセットとテストセットに分かれており、80/20でした。データセットは通常303のインスタンスを含みます。したがって、約242サンプルが訓練に使用され、61サンプルがクリーンテストセットとして保持されました。GANまたはガウスのフォールバック法で生成された合成サンプルは、データ漏洩のリスクを減らすために訓練データにのみ追加されました。最終的な拡張訓練セットは約242の実サンプルと1,000の合成サンプルで構成され、合計1,242の訓練サンプルとなりました。固定的な静的検証セットは使用されませんでした。代わりに、モデルトレーニング中に階層化されたクロスバリデーションが適用され、各フォールドで拡張されたトレーニングデータをトレーニングおよび検証のサブセットに分割しました。
データセットはPandas DataFrameに読み込み、欠損値を検査しました。欠損値のある数値特徴は、scikit-learnのSimpleImputerクラスを用いた中央値補完を用いて、strategy = 'median'を用いて処理しました。欠損値のあるカテゴリカル特徴は、SimpleImputerのモード補完で処理され、戦略='most_frequent'を用いました。欠損メカニズムはdf.isnull().sum() / len(df)を用いて各特徴の欠損率を計算することで記録されました。非ランダム欠損パターンは、欠損データがあるサンプルとなしサンプル間の平均値を比較し、数値的特徴に対して t.検定、カテゴリ的特徴に対してカイ二乗検定を用いて評価しました。欠失は、該当する場合「ランダムに完全欠損(MCAR)、ランダム欠損(MAR)、またはランダムでない欠失(MNAR)」として記録されました。
著しい欠損があるデータセットでは、中央値/モード補完と連鎖方程式による多重補完(MICE)を比較し、ファンシインプートを用いた感度分析が推奨されました。max_iter = 10の反復補欠(ITERATIVEImputer)と、ファンシインプートを用いたKNN補正。k=5のKNN。精度差が0.03未満であれば、補完法12に対する堅牢性を示すものとみなされました。この感度分析は、欠損が限定的だったためクリーブランドデータセットでは任意とされましたが、欠損値が5%を超える他の臨床データセットには推奨されました。欠損パターンは、msno.matrix(df)を用いた欠損行列ヒートマップを生成することで、missingnoライブラリを用いて可視化されました。欠損パターンのクラスタリングを用いて、欠損値が体系的に共存しているかどうかを特定し、これはMNARメカニズムが臨床専門家の関与を必要とする可能性を示している可能性があります。
数値的特徴はzスコア正規化を用いて標準化されました。scikit-learnのStandardScalerをトレーニングデータに適用し、トレーニングセットとテストセットの両方に適用しました。カテゴリ変数はワンホット符号化で符号化されました。胸痛タイプ(cp)は4つのカテゴリーからなり、pandas.get_dummiesを用いて4つの二値指標カラムに変換されました。サラセミア(タル)は3つのカテゴリーから構成され、3つの二値指標カラムに変換されました。GANジェネレーターと判別器はワンホットエンコーディング前に元のデータセットに対応する13の特徴という固定の入出力次元を使用していたため、合成サンプルは元の13フィーチャー空間で生成され、実際のデータと同じワンホットエンコーディングパイプラインを通過しました。これによりGANアーキテクチャとの互換性を維持しつつ、エンコードされた特徴をモデルトレーニングに利用できるようになりました。
数学的定義と品質指標
フレシェ距離は実数と合成特徴分布の比較に用いられました。2つの分布FとG間のフレシェ距離Fr(F, G)は次のように定義されました。
Fr2(F,G)=minX,YE|X-Y|2 (1)
ここで E は期待値を表し、最小化は分布 F と G を持つすべての確率変数 X と Y に対して取られます。19。
メタヒューリスティック最適化手法としてハリスホーク最適化(HHO)が用いられました。HHOはハリスホーク20の協力的な狩猟行動に触発されています。探査と開発の段階の移行は脱出エネルギーEによって制御されていました。探索段階では、|E|≥ 1、更新は次のように定義されました:
X(t+1) = Xrand (t) - r1 |Xrand (t) - 2r2X (t)|
利用段階では、ここで|E|< 1 では、脱出エネルギー E = 2E(1 − t/T) とジャンプ強度 J = 2(1 − r5) によって更新が決定されました。ソフト包囲条件では、≥ 0.5 および |E|0.5≥、更新は次のように定義されました。
X(t+1) = ΔX(t) - E|JXラビット (t) - X(t)|
ハード包囲条件では、≥ 0.5、|E|0.5<、アップデートは次のように定義されました:
X(t+1) = Xウサギ(t) - E|ΔX(t)|
公平性は、Hardtら20 およびLimaら21に従った統計的パリティおよび誤差率バランスを用いて評価されました。人口統計学的均衡差、均等オッズ差、年齢に基づく校正誤差が公平性指標として用いられました。

ΔEO = max(|TPRA - TPRB |,|FPRA - FPRB |)
ΔBS=|BS年齢<50 - BS年齢>50 |
ここでBSはブライアスコアです:

ダッシュボードの解釈可能性は、連合ゲーム理論を用いて計算されるSHAP値に基づいています18。

ここで Φi は特徴 i の SHAP 帰属を表し、F はすべての特徴の集合を表し、 は特徴 S の部分集合に対するモデル予測を表します。
GANベースのデータ拡張
データの希少性とクラスの不均衡に対処するため、生成的敵対ネットワーク(GAN)を用いて合成サンプルを生成しました。ジェネレーターアーキテクチャはTensorFlow/Kerasで構成されました。標準正規分布N(0,1)からサンプリングされた100次元ノイズベクトルを受け取り、その後ReLU活性化を用いて128、256、512ユニットの濃い層を受け入れました。出力層は元の特徴寸法に対応する13ユニットで構成され、シグモイド活性化が使用されました。
判別器アーキテクチャは13次元の特徴ベクトルを入力として受け入れていました。これは512、256、128ユニットの高密度層で構成され、α = 0.2のLeakyReLU活性化を用いました。出力層には、実物と合成サンプルの二値分類のためのシグモイド活性化ユニットが1つ含まれていました。
GANは64のバッチサイズで100エポックにわたり訓練されました。アダム最適化器は学習率0.0002、β1 = 0.5、β2 = 0.999で使用されました。各時代ごとに、判別器は交互に実際のバッチと合成バッチで訓練され、ジェネレーターは識別器を欺くように訓練されました。訓練後、1,000個のランダムノイズベクトルを生成器に入力し、1,000個の合成サンプルを作成し、これらは訓練セットにのみ加算されました。
モード崩壊はGANトレーニング中に、10エポックごとに生成された100サンプル間で各合成特徴の分散を測定することで監視されました。もし任意の特徴量の分散が3回連続で対応する実データ分散の10%未満に落ちた場合、モード崩壊が疑われました。緩和策としては、学習率を1×10⁻4に減らす、バッチサイズを128に増やす、異なるウェイト初期化でトレーニングを再開、またはArjovskyら17が述べたような、標準GANを勾配付きWASSERSTEIN GANに置き換える(WGAN-GP)などが含まれていました。この実装では、TensorFlowが利用できない場合に合成データ生成を保証するために、ガウス摂動フォールバックを備えた標準GANを使用しました。
合成データ品質は、実特徴分布と合成特徴分布間のフレシェ距離をカスタム実装で計算することで評価されました。ロジスティック回帰のような分類器も、実サンプルと合成サンプルを区別するために訓練されました。ほぼ偶然の分類精度は高精度を示すものとして扱われました。精度・呼び戻しAUCが計算され、0.9を超える値は良好な分布捕捉を示すと考えられました。実データセットと合成データセットにおける特徴ペア間のピアソン相関も比較され、0.05未満の差は相関構造の許容範囲の保持とみなされました。
TensorFlow/Kerasが利用できない場合やGANトレーニングが失敗した場合、ガウス摂動のフォールバック法が用いられました。各クラスごとに、各特徴の平均(μ)と標準偏差(σ)を訓練セットから計算しました。その後、合成サンプルは次のように生成されました。
X合成 = μ + ε × σ × 0.05、ここで ε ~ N(0,1)
クラスラベルは元のクラス分布に比例して生成されました。このフォールバックは、ディープラーニング依存関係のない環境間での再現性を支援するために含まれました。
ハイブリッド特徴選択
2段階のハイブリッド特徴選択戦略が適用されました。第1段階では、統計的事前フィルタリングが行われました。特徴集合Xの各特徴xiについて、値は二値の結果変数に従って2つのグループに分けられました。y=0の場合はG0は病気なし、G1はy=1で疾病の存在を示しました。ウェルチの2標本 t.検定は、equal_var = 偽のscipy.stats.ttest_indを用いて実施されました。コーエンのd効果サイズは次のように計算されました。
d = (平均1 − 平均2) / pooled_std
ここで:
pooled_std = sqrt((std12 + std22)/2)
特徴名、p値、コーエンのd値は結果表に格納されました。特徴は両方の条件を満たす場合に選ばれました:p値<0.05および|コーエンのd|≥ 0.5。その結果、この特徴セットはXfilteredとして定義されました。
ウェルチの t検定が用いられたのは、年齢、タラッハ、オールドピークなどの連続的な数値特徴に適しているからです。性別やエザングのような二項カテゴリー的特徴に対しては、 t.検定は2つのグループを比較する比率検定と同等の結果を生み出します。cpやthalのような多カテゴリ特徴はワンホットエンコードされ、各バイナリ指標は個別に結果変数に対してテストされました。このアプローチは、クリーブランドのデータセットが30以上のサンプルを持ち、特徴が分析前に標準化され、equal_var = グループ間の分散の不均等さを誤って説明しているため適切と考えられました。正則性の重大な違反を持つ特徴に対しては、マン・ホイットニーU検定が代替の非パラメトリック検定として検討されました。
閾値p<0.05は従来の統計的有意性に従い、コーエンのd|≥0.5は中等度から大きな効果量に対応しました。サンプルサイズが小さいまたはまれなアウトカムのデータセットでは、ブートストラップベースの調整、ヘッジズのg補正、または緩和した探索閾値を専門家の臨床指導のもと推奨しました。例えば、1,000件のブートストラップ再サンプルを用いてコーエンのd信頼区間を計算でき、ヘッジズのgを適用して小サンプルバイアスを補正できます。0.03から0.08のp値や|d|0.4から0.6の値は除外前に臨床専門家による検討のために記録されました。
第2段階では、統計的にフィルタリングされた特徴セットにハリスホーク最適化(HHO)を適用しました。HHOの人口サイズは20に設定され、最大反復回数は50に設定されました。各解はXfilteredの特徴数に等しい長さの二進ベクトルとして表され、1は特徴が選択されたこと、0は選択されなかったことを示しました。連続的なHHO位置はV字型伝達関数を用いて二項ベクトルにマッピングされました。
T(x) = |tanh(x)|
2進数はT(x)が0.5>、そうでなければ0に設定されました。V字型関数が選ばれたのは、バイナリ変換時のバランスの取れた探索と活用をサポートするためです。
各解の適応度関数はロジスティック回帰を用いて定義されました。ロジスティック回帰モデルはバイナリベクトルで選択された特徴のみを用いて訓練され、scikit-learnのcross_val_scoreを用いて5分割のクロス検証が行われました。適応度は次のように計算されました。
適応度 = 1 − 平均精度
鷹の位置の集団は、numpy.random.uniform(−1, 1, (population_size, n_features))を用いて[−1, 1]の範囲で一様に初期化され、再現性のために固定されたランダムシード42を適用しました。各反復で、すべてのタカの適応度が評価され、最適なタカ位置はウサギが特定され、脱出エネルギーに基づくHHO探査・利用方程式を用いてタカの位置が更新されました。収束後、最も性能の良いバイナリベクトルが最終の特徴部分集合として選ばれました。
選ばれた特徴は、固定されたランダムシードを用いた単一のHHO最適化実行から記録されました。より高い統計的信頼度を必要とするアプリケーションでは、異なるランダムシードを用いた30回の独立実行が推奨され、少なくとも80%の実行でコンセンサス特徴が現れるものを選択することができました。報告された実装は単一の代表的な実行に基づいており、予備テストでは一貫した収束が示されました。
モデルトレーニングと最適化
3つのモデルが検討されました:ロジスティック回帰、ランダムフォレスト、そしてPSO最適化された人工ニューラルネットワーク(ANN)。ロジスティック回帰はクラス分布を維持するために階層化された5分割クロス検証を用いて訓練されました。正則化強度Cは探索空間C
[0.001, 0.01, 0.1, 1, 10]を用いて最適化されました。各フォールドとCの各値に対して、モデルはトレーニングフォールド上で訓練され、検証フォールド上で評価されました。折りたたみ間で平均検証精度を最大化するCの値が選ばれました。
ランダムフォレストモデルはハイパーパラメータチューニングを用いて訓練されました。探索空間にはmax_depth = [5, 10, 15, None]とmin_samples_split = [2, 5, 10]が含まれていました。5分割クロスバリデーションを用いたグリッド探索は、GridSearchCVを最適化指標としてROC-AUCを用い、スコアリング='roc_auc'で実施されました。選ばれたランダムフォレストモデルはmax_depth = 10、min_samples_split = 5を用いました。アウトオブバッグ(OOB)スコア推定はoob_score = Trueを用いて有効化されました。
過適合は、訓練精度とOOBスコアのギャップを計算することで評価されました。
overfitting_gap = training_accuracy − oob_score
0.05未満の過学習ギャップは良好な一般化の指標とされ、0.10を超えるギャップはmax_depthを減らすか増min_samples_splitの必要性を示しました。OOBスコアは0.9296、典型的な訓練精度は0.94から0.96の間で、差はおよそ0.01〜0.03でした。
また、粒子群最適化(PSO)を用いてANN分類器も最適化されました。ANNアーキテクチャは、入力層、ReLU活性化を用いた64個のニューロンを持つ隠れ層、そしてシグモイド活性化を用いた1つのニューロンを持つ出力層で構成されていました。PSOは50個のパーティクルと50回の反復で初期化され、初期ネットワークの重みを最適化するために使用されました。ANNは標準的な逆伝播で訓練されました。PSO最適化は同じトレーニングデータに対してネストされたクロス検証なしで行われたため、このコンポーネントは慎重に扱われました。将来の応用では、外部の10分割ループとPSOハイパーパラメータ選択の内側10分割ループを組み合わせたネスト式クロス検証が推奨されました。一般化ギャップが0.08未満であれば許容範囲とされ、ギャップが0.15を超える場合は過学習の可能性を示し、モデルの簡略化が必要でした。
モデル評価
モデル評価は最終特徴セットXfinalに対して階層化された10分割クロス検証を用いて実施されました。各フォールドでは、ロジスティック回帰モデルとランダムフォレストモデルが訓練データを基に訓練され、検証データ上で評価されました。正確さ、正確さ、想起率、F1スコア、ROC-AUCはscikit-learnのclassification_reportとroc_auc_scoreを用いて算出されました。すべての指標の平均および標準偏差は10のフォールドにわたって計算されました。
一般化ギャップは各折り目ごとに次のように計算されました。
generalization_gap = training_accuracy − validation_accuracy
10重の平均一般化ギャップが報告されました。平均ギャップが0.08未満なら過学習が最小限とされ、0.15を超える場合は過学習と正則化やモデル複雑さの削減の必要性が示唆されました。ウィルコクソン署名順位検定を用いて、提案された枠組みを10のフォールドでベースライン手法と比較してα = 0.01を用いました。
説明可能性分析
説明可能性分析は、モデル固有の手法およびモデルに依存しない手法を用いて実施されました。ロジスティック回帰では、最終モデルを適合させ、選択した各特徴量の係数値を抽出しました。オッズ比は経験値(係数)として計算され、95%信頼区間は係数の標準誤差を用いて算出されました。
ランダムフォレストでは、feature_importances_属性を用いて訓練済みモデルからジニ重要度スコアを抽出し、合計を1に正規化しました。SHAPの説明はSHAPライブラリを用いて生成されました。KernelExplainerオブジェクトは、訓練済みのモデルと背景データセット(例えば100個のランダムに選ばれた訓練サンプル)を用いて作成されました。テストセット内のすべてのインスタンスに対してSHAP値はshap_valuesを用いて計算されました。蜂群のまとめプロットはshap.summary_plotを用いて生成され、平均絶対SHAP値の棒状プロットはshap.bar_plotを用いて生成されました。
SHAP解析で特定された上位の特徴に対して部分依存プロット(PDP)が作成されました。選択した各特徴に対して、特徴範囲にわたる値の列が作成されました。各値は特徴欄に代入され、他の特徴は一定のままにされ、すべてのインスタンスで平均予測確率が計算されました。特徴値はmatplotlibを用いて平均予測値とプロットしました。100回のブートストラップ再サンプリング反復を用いて、95%の信頼区間を追加しました。
特徴値の変化に伴い、個々のインスタンスの予測軌跡をプロットすることで、選択された特徴に対して個別の条件付き期待(ICE)プロットが作成されました。PDPの路線はICEのプロットに重ねられました。説明手法は、scipy.stats.spearmanrを用いてロジスティック回帰オッズ比とランダムフォレストSHAP値のスピアマンのランク相関を計算することで比較されました。説明方法間の不一致は臨床解釈のために記録されました。SHAPとロジスティック回帰係数が矛盾した場合、その特徴のPDPが検討されました。もしPDPが非線形傾向を示した場合、ランダムフォレストは線形モデルでは捉えない非線形関係を捉えられるため、ロジスティック回帰係数よりもSHAPの説明が優先されました。
MIMIC-IIIを用いた外部検証のためのフレームワーク一般化プロトコル
MIMIC-IIIデータベースへのフレームワーク適用のための外部検証プロトコルが概説されました。MIMIC-IIIへのアクセスにはPhysioNetの承認と、必要な被験者訓練の完了が必要です。提案されたコホートには、18歳以上の成人患者で初めてICU入院し、急性心筋梗塞の場合はICD-9コード410–414、虚血性心疾患の場合はICD-10コードI20–I25が含まれます。除外基準には、対象特徴の欠損が30%以上、滞在期間が24時間未満、90歳以上の年齢、過去の心臓手術歴、または先天性心疾患が含まれます。
提案されたアウトカムは、入院後72時間以内の重大有害な心臓イベント(MACE)であり、入院死亡率、心原性ショック、または介入が必要な心室不整脈の複合と定義されました。心拍数や血圧などの時系列特徴は、ICU入院後の最初の24時間に平均、中央値、最小値、最大値、トレンドを用いて集約され、傾向は線形回帰からの時間的傾きとして推定されます。最大心拍数はタラッハのマッピング版として使われます。
クリーブランドのデータセットの特徴はMIMIC-III変数にマッピングされます。例えば、タラッハはICU入院後最初の24時間に記録された最大心拍数にマッピングされ、CPは構造化された痛み評価やNLPで抽出された胸痛の言及にマッピングされ、オールドピークは心電図報告からのSTセグメント逸脱にマッピングされます。すべての特徴のアラインメントを記録するためのマッピングテーブルが作成されます。
フルパイプラインを適用する前に、オールドピークのNLP抽出は100件のランダムに選ばれた心電図レポートで検証されます。正確さ、想起率、F1スコアは2名の臨床医による手動注釈と照合して計算されます。F1スコアが0.85未満の場合は、正則表現パターンを修正するか、チャートイベントの構造化心電図データを代替として使用しました。その後、抽出されたMIMIC-IIIデータに対して前処理パイプラインを繰り返し、GANを拡張用に再学習し、ハイブリッド特徴選択を再適用し、モデルを再訓練し、説明を生成し、パフォーマンス指標をクリーブランドデータセットの結果と比較します。
臨床ダッシュボードの実装
FlaskやDjangoのようなフレームワークを用いてウェブベースの臨床ダッシュボードプロトタイプが設計されました。HL7/FHIR APIエンドポイントはEHR統合のために計画され、認証および認可は機関のセキュリティポリシーに従って設定されました。データマッピング機能はEHRデータをモデル入力形式に変換するために設計されました。
ユーザーインターフェースには3つの主要なビューがありました。事前スクリーニングビューでは、患者の人口統計と計算されたリスクスコアを色分けしたリスクレベルが表示されました。意思決定支援ビューでは、特定の患者の主要な寄与要因を示すSHAPウォーターフォールプロットが表示されました。介入計画ビューでは、変更可能なリスク要因を調整し、最新のリスク予測を表示することで「もしも」分析が可能となりました。レポートをPDFファイルとして保存したり、EHRドキュメントシステムと統合したりするためのエクスポート機能も含まれていました。
将来の臨床導入には、少なくとも5名の臨床医によるダッシュボードのユーザビリティ評価が計画されていました。評価では、システムユーザビリティスケールを用い、目標スコアが68を超える、タスク完了時間(EHR単独と比較して少なくとも20%の目標削減)、説明の明確さと信頼性のための5点満足度尺度が用いられます。このユーザビリティ評価は将来のステップとして計画されていましたが、本研究では実施されていません。
Access restricted. Please log in or start a trial to view this content.
実験環境とパフォーマンス指標
すべての実験はPython 3.9で、scikit-learn、TensorFlow、SHAPのライブラリを用いて実施されました。層別化10折のクロスバリデーションを用いました。評価指標には、正確さ、精度、リコール、F1スコア、ROC-AUCが含まれていました。
選択されたベースライン手法との性能比較
| 方法 | 精度 | 精密さ | リコール | F1スコア | 中華民国-アウク |
| ロジスティック回帰 | 0.9... |
Access restricted. Please log in or start a trial to view this content.
ここで示す枠組みは、解釈可能な心臓病予測モデルを開発するための再現可能なアプローチを提供します。これらの説明を統合したプロトタイプ臨床ダッシュボードは 図4に示されており、事前スクリーニング、SHAPによる意思決定支援、介入計画の3段階のワークフローを実装しています[図4はこちら]。この枠組みの成功を確実にするためには、いくつかの重要なステップに細心の注意を払う必要があります。
表5に示されているように、既存の心臓病予測研究の比較は、3つの重要な次元にわたる方法論的ギャップを示唆しています。まず、データ拡張に関しては、いくつかの研究では拡張が用いられていませんが、Ishaqら12はSMOTEを、Sahooら9はGAN/VAEなどの生成手法を実装しています。次に、特徴選択に関してはこのステップを省略する研究もありますが、VijayashreeとSultana
Access restricted. Please log in or start a trial to view this content.
著者には利益相反を主張するものはありません。
著者らは、研究施設提供に関してキャピタル(ヘルワン)大学およびアラブオープン大学の支援に感謝します。本研究は、公共、商業、非営利部門の資金提供機関から特定の助成金を受けていません。
Access restricted. Please log in or start a trial to view this content.
| Name | Company | Catalog Number | Comments |
|---|---|---|---|
| クリーブランド心臓病データセット | UCI機械学習リポジトリ | https://archive.ics.uci.edu/ml/datasets/heart+disease | モデル開発・評価に使用されるベンチマーク心臓病データセット |
| ジャンゴ | ジャンゴ・ソフトウェア財団 | 該当なし | ダッシュボード実装のための代替ウェブフレームワーク |
| ファンシーインプテ | ファンシーインプテ開発者 | 該当なし | オプションのMICEおよびKNN補完感度解析 |
| フラスコ | パレットプロジェクト | 該当なし | ダッシュボード実装のためのウェブフレームワーク |
| HL7/FHIR API標準 | HL7インターナショナル | 該当なし | EHR/ダッシュボード統合の計画標準 |
| ケラス | Keras開発者 | 該当なし | GANアーキテクチャでTensorFlow/Kerasで使用されるニューラルネットワークAPI |
| matplotlib | Matplotlib 開発者 | 該当なし | プロッティングライブラリ |
| MIMIC-IIIデータベース | フィジオネット | https://physionet.org/content/mimiciii/1.4/ | 計画的な外部検証のための集中治療データベース |
| ミッシングノー | ミッシンノー・デベロッパーズ | 該当なし | 欠損行列の可視化 |
| NumPy | NumPy 開発者 | 該当なし | 数値計算 |
| パンダ | パンダス開発者 | 該当なし | データ操作 |
| フィジオネット | フィジオネット | https://physionet.org/ | MIMIC-IIIへのアクセスプラットフォーム/ソース |
| パイソン | Pythonソフトウェア財団 | 該当なし | バージョン 3.9/3.9.7 |
| scikit-learn | Scikit-Learn 開発者 | 該当なし | 機械学習ライブラリには、前処理、モデルトレーニング、クロスバリデーション、メトリクスが含まれます |
| サイピー | SciPy 開発者 | 該当なし | ウェルチを含む統計的検証sのt検定とスピアマン相関 |
| シャップ | SHAP開発者 | 該当なし | 説明可能なAIライブラリ |
| Statlog心臓病データセット | UCI機械学習リポジトリ | https://archive.ics.uci.edu/ml/datasets/statlog+(ハート) | ベンチマーク心臓病データセット |
| テンソルフロー | グーグル | 該当なし | GAN実装のためのディープラーニングフレームワーク |
| UCI機械学習リポジトリ | カリフォルニア大学アーバイン校 | https://archive.ics.uci.edu/ | クリーブランドおよびStatlogデータセットのリポジトリソース |
Request permission to reuse the text or figures of this JoVE article
Request Permission