SHAP(SHapley Additive exPlanations)은 게임 이론의 Shapley value를 ML 예측에 적용해 각 피처가 개별 예측에 기여한 정도를 값으로 산출한다. Feature Importance가 "모델이 학습 중에 이 피처를 얼마나 썼는가"의 총량 지표라면, SHAP은 "이 피처의 값이 커질수록 예측이 어느 방향으로 밀렸는가"의 방향·크기 지표다.
분석 조건
- 대상 모델: 프로덕션 LightGBM (550 트리, 40 피처)
- 샘플링: 테스트셋에서 2,000건 무작위 추출 (고정 seed = 42)
- 설명기:
TreeExplainer(트리 모델 전용 정확 계산) - 표시: Top 15 피처의 beeswarm
요약 플롯

가로축은 SHAP value — 양수면 예측 확률을 위(승)로, 음수면 아래(패)로 미는 기여도. 점 하나가 테스트셋 샘플 한 건이고, 색은 해당 샘플에서의 피처 값의 크기(빨강 = 높음, 파랑 = 낮음)다.
읽는 법 — 전형적 해석 패턴
- BT 기반 승률: 값이 클수록 빨간 점이 오른쪽에, 파란 점이 왼쪽에 분포 → 실력이 높으면 이길 확률이 올라간다는 모델의 "기저 신념"이 그대로 드러난다. BT가 제공하는 기대승률이 LGBM 출력의 축을 잡고 있음을 시각적으로 확인할 수 있다.
- 최근 폼 관련 피처: 최근 N경기 승률이 높으면(빨강) 오른쪽으로, 낮으면(파랑) 왼쪽으로 — 단 분산이 커서 BT만큼 단조롭지는 않다.
- 상대 전적(H2H): 샘플 수가 적은 쌍에서는 노이즈가 크지만, 누적된 맞대결이 있는 쌍에서는 양방향 기여가 뚜렷하게 갈린다.
- 맵 효과: 특정 맵의 종족·선수 적합도가 확률에 기여. 점들이 좌우로 넓게 퍼진 피처는 "맥락에 따라 강하게 양방향으로 작용"한다는 뜻.
SHAP이 Feature Importance와 어떻게 보완되는가
- Feature Importance(gain 기반)는 모델 학습 전반의 평균적인 사용량이다. "이 피처가 없으면 나무가 잘 자라지 못함"의 전체 점수.
- SHAP은 개별 예측마다 그 피처가 얼마나, 어느 방향으로 기여했는지 본다. 같은 피처라도 어떤 샘플에서는 크게, 어떤 샘플에서는 거의 기여하지 않을 수 있고, 그 분포가 beeswarm에 그대로 드러난다.
- 두 지표가 서로 다른 상위 피처를 지목하면 주의 신호다 — Feature Importance는 높은데 SHAP 기여가 고르게 작다면 "분할 기준으로는 유용하나 예측 방향성은 약한" 피처라는 뜻이다.
세부 순위는 Feature Importance 페이지에서 비교 가능.
주의할 점
- SHAP value는 조건부 기여다. 피처 간 상관이 강하면(예: 선수 실력과 BT 스코어) 한쪽에 기여가 몰려 보일 수 있다.
- 2,000건 샘플링은 시각화 속도를 위한 선택이다. 전체 테스트셋으로 계산하면 정확도는 같지만 그림이 과밀해진다.
- beeswarm 상의 "극단값 꼬리"는 소수 샘플이 크게 기여한 것으로, 해당 피처 전체의 평균적 행태로 해석해선 안 된다. 평균 절대 SHAP이 궁금하면 막대 형식의 요약이 더 적절하다.