ROC曲線で探る最適なスクリーニング評価【ChatGPT統計解析】
ROC曲線を用いたスクリーニング検査の評価では、検査結果が陽性と陰性に明確に分類できない場合、どのように病気の有無を判断するかが課題となります。ROC曲線は、感度(病気を正しく検出する確率)と特異度(健康を正しく検出する確率)の関係を示すグラフで、横軸に1-特異度、縦軸に感度をとります。スクリーニング検査の評価はROC曲線下の面積(AUC)を用い、AUCが大きいほど検査精度が高いとされます。カットオフ値の選定では、(0,1)点からの距離が最も近い点が適切とされ、感度と特異度のバランスを考慮します。例として50人のデータに基づき感度と特異度を計算し、各カットオフ値でプロットを行うことでROC曲線を描きます。この手法によりスクリーニング検査の性能を視覚的かつ定量的に評価できる点が特徴です。
▼▼▼▼▼▼▼▼
チャンネル登録はこちら
ROC曲線によるスクリーニング検査の評価
ROC曲線
スクリーニング結果は、陽性(病気あり)、陰性(病気なし)といった2分類には必ずしもならない場合があります。
このような場合、スクリーニング検査の評価をどのようにすればいいのでしょうか。
また、どこから「病気がある(陽性)」と判断したらよいのでしょうか。
ROC曲線によるスクリーニング検査の評価
ROCはreceiver operating characteristic(日本語で、受信者特性動作曲線)の頭文字をとったものです。
ROC曲線が何なのかをみるために、スクリーニング検査の評価が次の5段階でなされる場合を考えてみましょう。
スクリーニング検査の評価
絶対に病気ではない
たぶん病気ではない
わからない
たぶん病気である
絶対に病気である
例えば、50人の人にこのスクリーニング検査(SC)と精密検査を受けてもらった結果、次の結果が得られたとしましょう。
@SCで絶対に病気である:精密検査で病気あり8人、病気なし1人
ASCでたぶん病気である:精密検査で病気あり7人、病気なし1人
BSCでわからない: 精密検査で病気あり6人、病気なし4人
CSCでたぶん病気でない:精密検査で病気あり3人、病気なし9人
DSCで絶対に病気でない:精密検査で病気あり1人、病気なし10人
合計 25人 25人
このとき、各番号の直前のところをカットオフ値(陽性か陰性かを決めるポイント)として、それぞれについて感度と特異度を計算します。
例えばカットオフ値を@の直前のところにしたとすると、たとえ「絶対に病気である」と判定されたとしても陰性になるので、スクリーニング検査では全員陰性とみなされます。
そうすると、感度は0%、特異度は100%になります。
一方、Aの直前のところでは、スクリーニング検査で「絶対に病気である」と判定された人のみを陽性とみなして、その他の人を陰性とみなします。
そうすると、感度は8/25=32%、特異度は24/25=96%になります。
この作業をすべて行うと、次の表が得られます。
カットオフ値@:感度0%、特異度100%、1―特異度:0%
カットオフ値A:感度32%、特異度96%、1―特異度:4%
カットオフ値B:感度60%、特異度92%、1―特異度:8%
カットオフ値C:感度84%、特異度76%、1―特異度:24%
カットオフ値D:感度96%、特異度40%、1―特異度:60%
カットオフ値E:感度100%、特異度0%、1―特異度:100%
この表を、横軸に「1―特異度」、縦軸に「感度」をとって、カットオフ値@―Eで、「1−特異度」と「感度」の値をプロットして線でつないだものがROC曲線です。
スクリーニング検査の評価は、このROC曲線の下の部分の面積で行います。この面積のことを、area under the curveの頭文字をとってAUCといいます。
感度が大きくてかつ特異度が大きい(1−特異度が小さい)ほどAUCの値は大きくなります。つまり、
AUCの値が大きいほど、そのスクリーニング検査の精度は高い
ことになります。
カットオフ値の推定
スクリーニング検査でどこから「病気がある(陽性)」と判定したらいいのか、ですが、これにはいくつか方針があります。
もっともシンプルな方法としては、精度の高いスクリーニング検査であれば、感度が1に近くて特異度も1に近い(1−特異度が0に近い)はずです。すると、カットオフ値の、点(0,1)からの距離が最も近い点をカットオフ値とすればいいことになります。
ROC曲線を用いたスクリーニング検査の評価は、検査結果が必ずしも陽性(病気あり)や陰性(病気なし)の二分類に分かれるわけではない場合において、検査精度を評価するための重要な方法です。このような場合、スクリーニング検査がどの程度正確に病気を検出できるか、あるいは健康な人を正しく判定できるかを理解する必要があります。スクリーニング検査は、感度(病気を正しく検出する確率)と特異度(健康を正しく検出する確率)の二つの指標によって評価されますが、これらは相反する関係にあるため、検査結果の閾値(カットオフ値)の選定が極めて重要です。ROC曲線(Receiver Operating Characteristic curve、受信者特性動作曲線)は、感度と特異度の関係を視覚的に示すもので、横軸に1-特異度、縦軸に感度をとり、様々なカットオフ値におけるこれらの値をプロットして得られる曲線です。例えば、スクリーニング検査が次の5段階で評価される場合を考えます。「絶対に病気ではない」、「たぶん病気ではない」、「わからない」、「たぶん病気である」、「絶対に病気である」という評価を基準に50人に検査を行い、その結果を精密検査と比較したとします。この例では、精密検査による実際の病気の有無とスクリーニング検査の判定結果を基に感度と特異度を計算します。それぞれの結果として、スクリーニング検査で「絶対に病気である」と判定された場合、精密検査で病気と判定された人が8人、病気ではなかった人が1人であるとします。同様に、「たぶん病気である」と判定された場合には病気ありが7人、病気なしが1人、「わからない」とされた場合には病気ありが6人、病気なしが4人、「たぶん病気ではない」とされた場合には病気ありが3人、病気なしが9人、「絶対に病気ではない」とされた場合には病気ありが1人、病気なしが10人といった結果が得られたと仮定します。これらのデータを基に各カットオフ値の直前を境に感度と特異度を計算します。例えば、最も厳しいカットオフ値である「絶対に病気である」の直前を基準にすると、スクリーニング検査で全ての人を陰性と判定することになり、感度は0%ですが特異度は100%となります。一方で、「たぶん病気である」の直前をカットオフ値とした場合、「絶対に病気である」と判定された人のみを陽性、それ以外を陰性とみなすことで感度が8/25=32%、特異度が24/25=96%となります。この作業を全てのカットオフ値について繰り返すと、感度と特異度の変化を示す表が得られます。さらに、この表の値を基に、横軸に1-特異度、縦軸に感度をとり、各カットオフ値における点をプロットして線で結ぶことでROC曲線が作成されます。このROC曲線の下の面積がスクリーニング検査の評価指標として使用され、これをAUC(Area Under the Curve)と呼びます。AUCが大きいほど検査の精度が高いことを意味し、感度が高く特異度も高い(1-特異度が小さい)場合、曲線は(0,1)に近い形状となり、面積が広がります。AUCの値が1に近いほど理想的で、例えばAUCが0.9を超える場合は非常に高い精度を持つ検査と評価されます。一方、AUCが0.5に近い場合は、ランダムに判定した場合と同程度の精度しか持たないことを示します。では、どのように適切なカットオフ値を選定すべきかという問題について考えます。最もシンプルな方法としては、ROC曲線上で(0,1)点に最も近い点を選ぶ方法があります。この方法では、感度と特異度のバランスが良い点を自動的に選択できるため、一般的に用いられる手法です。ただし、スクリーニング検査の目的によっては、感度を優先すべき場合や特異度を優先すべき場合があり、目的に応じた選定基準を設ける必要があります。例えば、生命に関わる重大な疾患を早期発見するための検査では、偽陽性を許容してでも感度を高めることが重要とされる一方、リソース制約のある環境では特異度を高めて偽陽性を減らすことが求められる場合もあります。このように、ROC曲線とAUCは単なる評価指標ではなく、スクリーニング検査の目的や制約条件に基づいて最適な運用を導くための重要なツールとなります。また、ROC曲線の評価は単一の検査精度だけでなく、複数の検査方法の比較にも利用されます。異なる検査方法間でAUCを比較することで、どの検査がより高い精度を持つかを定量的に判断できます。さらに、ROC曲線を用いた検査評価は医療分野だけでなく、機械学習やデータ分析の分野でも広く応用されています。例えば、分類モデルの性能評価において、ROC曲線はモデルの予測精度を可視化し、適切な閾値の選定を支援します。このように、ROC曲線は幅広い分野で利用されており、その理解と応用はスクリーニング検査を含むあらゆる分類問題において重要です。
関連記事