気になったこと
世間ではコロナ騒動で検査が効く/効かない、効果は?などと疑心暗鬼になっていますが、
正確に捉えるために、いろんな指標が何を指すのか、今一度確認してみます。
ある病気Aに対して、検査結果が陽性(その病気)、陰性(大丈夫そう)という結果が次の結果だとします。1
検査陽性 | 検査陰性 | Total | |
---|---|---|---|
病気Aあり | 85 | 15 | 100 |
病気Aなし | 1,284 | 8,415 | 9,900 |
Total | 1,570 | 8,430 | 10,000 |
上記の混同行列(confusion matrix)2に対して、
検査結果を元にする指標
適合率、精度(Precision): 検査結果が陽性の時だった時に、実際に病気である確率(=陽性適中率)。つまり、検査結果をどれだけ真摯に受け入れるか、という指標
- 85 / 1,284 = 5.4%
陰性適中率: 上記精度の陰性の方の指標、つまり結果が陰性だとして本当に陰性か、という指標
8,415 / (8,415 + 15) = 99.8%
適合率(=陽性適中率)、陰性適中率ともに、検査結果が○○だとして、という指標なので患者に立った時の指標と解釈出来ますね。
実際に病気だった結果を元にする指標
検出率(Recall), 感度(Sensitivity): 病気Aだった人がどの程度検査で的中出来ているか
- 85 / (85 + 15) = 85%
特異度(Speciality): 病気Aでない人が検査で陰性だった割合、つまり病気Aでない人を正しく除外できる割合
- 8,415 / (1,284 + 8,415) = 85%
全体を俯瞰する系の指標
正解率(accuracy): 全体の中でどの程度正解してるか(検査結果と実際の病気有無が一致しているか)を示します。
- (85 + 8,415) / (85 + 15 + 1,284 + 8,430) = 85%
F値: 精度(precision)、適合率(recall)のアイノコではないですが、全体的な分類精度を考えたい時なんかによく使われます
- (2 precision recall ) / (precision + recall) = (2 0.054 0.85) / (0.054 + 0.85) = 10.2%
使い方
「有効な薬が出たよ」なんて広告とかニュースを見た時に、「どの指標で測ってるのか?」は確実に理解したいものですね。
1 機械学習モデルの文脈なら、検査結果が予測結果、病気A有無は実測値のように読み替えられます:
2 いつ見てもネーミングがアレに感じるのは私だけでしょうか、、: