일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Machine Learning
- lime
- deep learning
- data science
- Explainable AI
- Gradient Boosting Machine
- XGBoost
- Gradient Tree Boosting
- Back-propagation
- Today
- Total
Kicarussays
Calibration Plot 설명 본문
논문을 읽던 중에 Calibration Plot이라는 그래프를 처음 보고 공부한 내용을 정리해보았습니다.
먼저 Calibration Plot 예시를 하나 봅시다. (출처: https://www.sciencedirect.com/science/article/pii/S1098301519300737)
현재 상황은, Logistic Regression을 활용한 분류기(Classifier)를 하나 만들고, 분류기의 성능을 평가하는 상황입니다.
평가를 위해 Accuracy, AUROC 등을 사용할 수 있을 텐데, Calibration Plot은 분류기의 예측이 실제를 얼마나 잘 반영하는지를 평가하는 용도로 사용됩니다.
예를 들어, 분류기에서 어떤 Event의 발생 확률을 0.8이라고 예측했다면, 이 0.8이 정말 합당한 확률인지 평가해볼 수 있을 것입니다. 이제 평가과정이 어떻게 Calibration Plot에서 나타나는지 살펴봅시다.
1. X축 설정
우리가 구축한 모델 $f$에 데이터셋 $X$를 통과시켜 나온 확률 $f(X)$가 있다고 합시다.
$f(X)$는 $\left\{ 0.1, 0.2, 0.23, 0.39, 0.41, \cdots \right\}$과 같은 Predicted Probability들의 집합이 될 것입니다.
- $f(X)$를 오름차순이나 내림차순으로 정렬하고, 10등분을 합니다.
- 각 등분에 속한 확률들의 평균값을 X축에 찍습니다.
2. Y축 설정
각 등분에 속한 확률들에 대응되는 (0 또는 1의 값을 갖는)Label이 있을 것입니다.
현재 예시로 보려고 하는 빨간색 동그라미 친 부분에 3개의 데이터가 포함되어 있고, 각 확률값과 실제값이 위 그림과 같다고 해봅시다. 그렇다면 확률값의 평균(Average Predicted Probability; X축)은 0.3이 되고, 이 확률값에 대응되는 실제값들은 확률이 1/3이고, 시행 횟수가 3번인 이항분포를 따르는 형태가 됩니다. (그렇기 때문에 Calibration Plot에 y축 방향의 신뢰구간의 형태로 그래프에 찍히게 됩니다)
(예시 설명이라 실제 데이터 값들과는 다릅니다)
점만 찍은 그래프들도 있고, 위의 예시처럼 신뢰구간을 보여주는 그래프들도 있습니다. 어떤 그래프든, 기준선(기울기 45도의 검은 점선)에 가까울수록 예측값이 실제를 잘 반영하는 것이라고 판단할 수 있습니다.
'Statistics (R)' 카테고리의 다른 글
(R) Odds ratio 메타분석 실습 (코드 리뷰) (0) | 2022.02.03 |
---|---|
Odds ratio & Confidence interval 계산 방법 (0) | 2021.10.22 |
(Statistics, R) 기술적 통계분석 루틴 (2) : 연속형 종속변수 (0) | 2020.12.28 |
(Statistics, R) 기술적 통계분석 루틴 (1) : 범주형 종속변수 (0) | 2020.11.25 |
(R) rread_csv 파라미터 정리 및 parsing failure 해결 방법 (0) | 2020.08.26 |