Published on

BA025. 최적의 경계를 찾아서 — Grid Search와 Youden's J의 수학

BA025. 최적의 경계를 찾아서 — Grid Search와 Youden's J의 수학

BA024(BA024. EXAWin 베이지안 엔진의 진화: 데이터가 스스로 파라미터를 튜닝하는 날)에서 영업 본부장은 Auto-Tuner가 3,240개의 격자를 탐색하여 최적의 파라미터를 찾아내는 장면을 목격했다. 화면 위의 격자가 파란색에서 빨간색으로 물들어가는 30초 동안, 엔진 내부에서는 어떤 수학이 작동하고 있었을까?

이 글은 Auto-Tuner의 첫 번째 기둥 — Grid Search 최적화Youden's J 지수 — 의 수학적 원리를 비즈니스 의미와 함께 설명한다.


1. 문제의 정의: "좋은 파라미터"란 무엇인가?

EXAWin의 베이지안 엔진은 두 가지 핵심 파라미터에 의존한다.

T(Stage Weight, 단계 가중치): 각 영업 단계(Discovery, Qualification, Solution-Fit, Negotiation, Closing)에서 발생하는 시그널이 수주 확률에 미치는 영향력의 크기다. T값이 높을수록, 해당 단계에서의 시그널(긍정이든 부정이든)이 확률을 더 크게 움직인다.

k(Signal Sensitivity, 시그널 민감도): 시그널의 강도(약한 긍정, 강한 부정 등)를 Alpha/Beta 업데이트량으로 변환하는 계수다. k가 높으면 하나의 시그널에 엔진이 민감하게 반응하고, 낮으면 둔감하게 반응한다.

문제는 간단하다. T와 k를 어떻게 설정해야, 엔진이 '수주할 딜'과 '수주하지 못할 딜'을 가장 정확하게 구분할 수 있을까?

이 질문에 답하려면 먼저, "정확하게 구분한다"는 것이 수학적으로 무엇을 의미하는지 정의해야 한다.


2. 분류 문제로의 전환

영업 엔진의 본질은 이진 분류기(Binary Classifier)다.

모든 딜은 결국 두 가지 결과 중 하나로 끝난다 — 수주(Won) 또는 실패(Lost). 엔진은 각 딜에 대해 수주 확률 P(Win)을 계산하고, 이 확률이 특정 임계값(Threshold)을 넘으면 "수주 가능성 높음"으로, 넘지 못하면 "위험"으로 판정한다.

여기서 네 가지 시나리오가 발생한다.

실제 수주실제 실패
엔진: "된다"✅ True Positive (TP)❌ False Positive (FP)
엔진: "안 된다"❌ False Negative (FN)✅ True Negative (TN)

이 표는 혼동 행렬(Confusion Matrix)이라 불리며, 모든 분류기의 성능을 평가하는 출발점이다.

비즈니스 의미

각 칸이 영업 조직에 미치는 영향은 매우 다르다.

  • TP (진양성): 엔진이 "된다"고 했고, 실제로 됐다. → 정상 작동. 리소스가 올바르게 투입됨.
  • FP (위양성): 엔진이 "된다"고 했는데, 실패했다. → 가장 위험한 오류. 영업팀이 헛된 기대 속에서 리소스를 낭비하고, 다른 기회를 놓친다. BA024에서 본부장이 겪었던 "68%에서 실패한 딜"이 바로 이것이다.
  • FN (위음성): 엔진이 "안 된다"고 했는데, 실제로 됐다. → 기회를 포기하거나 리소스를 적게 투입하여, 더 큰 성공을 놓칠 수 있다.
  • TN (진음성): 엔진이 "안 된다"고 했고, 실제로 안 됐다. → 정상 작동. 불필요한 리소스 낭비를 방지.

이상적인 엔진은 TP와 TN을 극대화하고, FP와 FN을 최소화해야 한다. 하지만 현실에서는 이 둘이 트레이드오프 관계에 있다.


3. 민감도와 특이도: 영원한 줄다리기

이 트레이드오프를 정량화하는 두 가지 지표가 있다.

민감도 (Sensitivity, Recall, True Positive Rate)

Sensitivity=TPTP+FN\text{Sensitivity} = \frac{TP}{TP + FN}

"실제로 수주한 딜 중에서, 엔진이 '된다'고 맞힌 비율."

민감도가 높다는 것은 기회를 놓치지 않는다는 뜻이다. 실제 수주 건을 빠짐없이 포착한다. 하지만 민감도만 높이려고 하면, 엔진이 모든 딜에 대해 "된다"고 판정해 버리는 극단적 상황이 된다. 결과적으로 FP(위양성)가 폭증한다.

특이도 (Specificity, True Negative Rate)

Specificity=TNTN+FP\text{Specificity} = \frac{TN}{TN + FP}

"실제로 실패한 딜 중에서, 엔진이 '안 된다'고 맞힌 비율."

특이도가 높다는 것은 헛된 기대를 주지 않는다는 뜻이다. 실패할 딜을 정확히 걸러낸다. 하지만 특이도만 높이려고 하면, 엔진이 극도로 보수적이 되어 실제 수주 건도 "안 된다"고 판정한다. FN(위음성)이 폭증한다.

영업에서의 딜레마

이 줄다리기는 영업 현장에서 매일 벌어지는 딜레마와 정확히 대응한다.

  • 공격적 영업 전략 (민감도 우선): "조금이라도 가능성 있으면 모두 추진한다." → 기회를 놓치지 않지만, 리소스가 분산되고 헛수고가 많아진다.
  • 보수적 영업 전략 (특이도 우선): "확실한 건만 집중한다." → 효율적이지만, 숨은 기회를 놓친다.

최고의 영업 조직은 이 둘 사이의 최적 균형점을 찾는다. 그리고 그것이 바로 Youden's J가 하는 일이다.


4. Youden's J 지수: 최적 균형의 수학

Youden's J 지수는 1950년 역학자 William Youden이 진단 검사의 성능을 평가하기 위해 제안한 지표다. 그리고 그 수학은 놀라울 만큼 간결하다.

J=Sensitivity+Specificity1J = \text{Sensitivity} + \text{Specificity} - 1

또는 동일하게:

J=TPRFPRJ = \text{TPR} - \text{FPR}

여기서 FPR(False Positive Rate) = 1 - Specificity다.

직관적 해석

  • J = 0: 엔진이 동전 던지기 수준. 분류 능력 없음.
  • J = 1: 완벽한 분류기. 모든 수주 건을 맞히고, 모든 실패 건을 걸러냄.
  • J가 최대가 되는 지점: 민감도와 특이도가 동시에 가장 높은 균형점.

왜 J인가? — 정확도(Accuracy)의 함정

"그냥 정확도를 최대화하면 안 되나?"라는 질문이 나올 수 있다.

Accuracy=TP+TNTP+TN+FP+FN\text{Accuracy} = \frac{TP + TN}{TP + TN + FP + FN}

단순 정확도에는 치명적인 약점이 있다. 클래스 불균형(Class Imbalance)에 취약하다는 것이다.

예를 들어, 100건의 딜 중 90건이 수주이고 10건이 실패라고 하자. 엔진이 무조건 "된다"라고 외치면 — 아무런 분석 없이 — 정확도가 90%다. 하지만 Youden's J는?

  • Sensitivity = 90/90 = 1.0 (수주 건 전부 맞힘)
  • Specificity = 0/10 = 0.0 (실패 건 하나도 못 걸러냄)
  • J = 1.0 + 0.0 - 1 = 0.0

J 지수는 이런 '무능한 낙관론'에 0점을 매긴다. 정확도가 90%여도 J가 0이면, 그 엔진은 아무 가치가 없다.

이것이 Auto-Tuner가 정확도가 아닌 Youden's J를 최적화 목표로 사용하는 이유다.


5. Grid Search: 전수 조사의 힘

이제 Youden's J를 최대화하는 파라미터 조합(T, k)을 찾아야 한다. Auto-Tuner가 선택한 방법은 Grid Search(격자 탐색)다.

알고리즘

Grid Search의 원리는 단순하다. "모든 가능한 조합을 시도하고, 가장 좋은 것을 고른다."

  1. 파라미터 공간 정의: 각 T값을 0.1에서 1.0까지 0.05 단위로, k값을 0.5에서 2.5까지 0.1 단위로 설정한다.
  2. 격자 생성: 5개 Stage × 각 19개 T값 후보 × 21개 k값 후보 = 수천 개의 격자점(Grid Point)을 생성한다.
  3. 각 격자점 평가: 모든 격자점에 대해 과거 딜 데이터(Won/Lost)를 대입하고, 해당 파라미터로 계산된 P(Win)이 실제 결과와 얼마나 일치하는지 Youden's J를 산출한다.
  4. 최적점 선택: J가 최대인 격자점의 파라미터를 최적 후보로 반환한다.

수학적 절차 (한 격자점의 평가)

격자점 하나를 고정한다. 이를 θ = (T₁, T₂, ..., T₅, k)라 하자.

과거 N건의 딜에 대해:

Step 1. 각 딜의 모든 활동(Activity)에 θ의 T값과 k값을 적용하여 Alpha/Beta를 재계산한다.

αnew=αprior+iTstage(i)kimpact(i)1[impact(i)>0]\alpha_{\text{new}} = \alpha_{\text{prior}} + \sum_{i} T_{\text{stage}(i)} \cdot k \cdot \text{impact}(i) \cdot \mathbb{1}[\text{impact}(i) > 0] βnew=βprior+iTstage(i)kimpact(i)1[impact(i)<0]\beta_{\text{new}} = \beta_{\text{prior}} + \sum_{i} T_{\text{stage}(i)} \cdot k \cdot |\text{impact}(i)| \cdot \mathbb{1}[\text{impact}(i) < 0]

여기서 impact(i)는 i번째 시그널의 임팩트 점수다.

Step 2. 재계산된 Alpha/Beta로 최종 P(Win)을 산출한다.

P(Win)j=αjαj+βjP(\text{Win})_j = \frac{\alpha_j}{\alpha_j + \beta_j}

Step 3. 모든 딜의 P(Win)과 실제 결과(Won/Lost)를 비교하여, 다양한 임계값(예: 0.3, 0.4, 0.5, 0.6, ...)에서의 혼동 행렬을 생성한다.

Step 4. 각 임계값에서 Sensitivity와 Specificity를 계산하고, J를 산출한다.

Step 5. 해당 격자점 θ에서 달성 가능한 최대 J를 기록한다.

이 과정을 모든 격자점에 대해 반복하고, 가장 높은 J를 기록한 격자점을 최적 파라미터로 선택한다.


6. ROC 곡선과 최적 임계값

Grid Search 과정에서 각 격자점마다 ROC 곡선(Receiver Operating Characteristic Curve)이 그려진다.

ROC 곡선이란?

ROC 곡선은 임계값(Threshold)을 0에서 1로 연속적으로 변화시킬 때, 각 임계값에서의 (FPR, TPR) 쌍을 좌표평면에 찍은 곡선이다.

  • X축: False Positive Rate (1 - Specificity) — 위양성률
  • Y축: True Positive Rate (Sensitivity) — 민감도

곡선의 형태와 의미

  • 왼쪽 위 꼭짓점(0, 1): 완벽한 분류기의 위치. FPR=0, TPR=1.
  • 대각선(y=x): 무작위 추측. 분류 능력 없음.
  • 곡선이 왼쪽 위 꼭짓점에 가까울수록 좋은 분류기.

Youden's J와 ROC의 관계

Youden's J가 최대인 지점은, ROC 곡선 위에서 대각선(y=x)으로부터 수직 거리가 가장 먼 점에 해당한다.

J=TPRFPR=대각선으로부터의 수직 거리J = \text{TPR} - \text{FPR} = \text{대각선으로부터의 수직 거리}

이 점에서의 임계값이 해당 파라미터 조합의 최적 판정 기준이 된다.

비즈니스 의미

ROC 곡선은 영업 리더에게 매우 직관적인 도구다.

"임계값을 50%로 설정하면, 수주 딜의 82%를 포착하지만 실패 딜의 15%도 '된다'고 잘못 판정한다. 임계값을 60%로 올리면, 수주 딜 포착률이 71%로 떨어지지만 위양성은 6%로 줄어든다."

이런 트레이드오프를 시각적으로 보여주고, "우리 조직에 가장 적합한 경계선은 어디인가?"에 대한 수학적 답을 제공하는 것이 ROC + Youden's J의 역할이다.


7. Grid Search의 한계와 보완

Grid Search는 강력하지만, 두 가지 본질적 한계가 있다.

한계 1: 이산(Discrete) 탐색

Grid Search는 격자 위의 점만 평가한다. T값을 0.05 단위로 스캔하므로, 최적값이 0.223이라면 0.20과 0.25만 평가하고 그 사이는 놓친다. 해상도를 높이면 정밀도가 올라가지만, 계산량이 기하급수적으로 증가한다.

Auto-Tuner의 해법: Grid Search를 1차 필터로 사용한다. "대략적인 최적 영역"을 찾은 뒤, 2단계인 MCMC가 그 영역을 연속 공간에서 정밀 탐색한다.

한계 2: 점 추정(Point Estimate)

Grid Search는 "J가 0.74인 최적점"이라는 하나의 답만 준다. 하지만 그 주변의 파라미터들도 비슷한 J를 보여줄 수 있다. T(Discovery)가 0.22일 때 J=0.74이고, 0.21일 때 J=0.73이라면, 두 값의 차이는 통계적으로 의미 있는 것일까?

Auto-Tuner의 해법: MCMC가 최적점 주변의 확률 분포 전체를 탐색하여, "0.19~0.25 사이 어디든 95% 확률로 안전하다"라는 구간 추정(Interval Estimate)을 제공한다.

이것이 Auto-Tuner가 Grid Search에서 멈추지 않고, MCMC 앙상블 샘플링으로 넘어가는 이유다.


8. 비즈니스 시나리오: Before/After

BA024의 영업 본부장 사례로 돌아가 보자.

Before (수동 설정)

파라미터설정 근거
T(Discovery)0.30"초기 미팅이 좋으면 절반은 성공" → 과대평가
T(Solution-Fit)0.80"기술 검증이 중요하긴 하지" → 소극적 평가
k1.50"시그널 하나하나가 중요하다" → 과민 반응

이 설정에서의 Youden's J = 0.52. 100건 중 52건을 올바르게 분류한 수준이다.

파라미터데이터 근거
T(Discovery)0.22초기 반응은 실제 수주에 기여도 낮음
T(Solution-Fit)0.87기술 적합성이 수주의 핵심 결정요인
k1.34과도한 민감도 억제, 노이즈 감소

이 설정에서의 Youden's J = 0.74. 42% 향상.

실질적 차이

106건의 과거 딜 중, Before 설정에서 FP(위양성)였던 11건의 딜 — 엔진이 "된다"고 했지만 실패한 — 중 8건이 After 설정에서는 "위험"으로 정확히 재분류되었다.

이것이 의미하는 바: 8건의 딜에 투입된 영업 리소스(평균 3개월 × 2명 × 딜당)가 낭비되지 않았을 것이다. 그 리소스는 실제 수주 가능성이 높은 딜에 재배치되었을 것이다.

파라미터 하나의 소수점(0.30 → 0.22)이 만들어내는 차이는, 연간 수천 시간의 영업 리소스와 수억 원의 기회비용이다.

정리

Grid Search와 Youden's J는 Auto-Tuner의 첫 번째 기둥이다. 이 단계가 하는 일을 한 문장으로 요약하면:

"가능한 모든 파라미터 조합을 시도하고, '수주 딜을 놓치지 않으면서 동시에 실패 딜에 헛된 기대를 주지 않는' 최적 균형점을 수학적으로 찾는다."

하지만 Grid Search는 "이 언덕이 가장 높다"라는 점 추정만 제공한다. 다음 편에서는 MCMC 앙상블 샘플러가 "그리고 이 높이가 맞다고 256명의 탐험가가 합의했다"라는 구간 추정을 어떻게 생성하는지, 그리고 5-Fold 교차검증이 "이 결과가 미래에도 통할 것인가"를 어떻게 시험하는지 다룬다.


📡 다음 편

BA026. 입자들의 합의 — MCMC 앙상블과 교차검증의 수학

256개의 워커는 왜 하필 256개인가? R̂ 수렴 진단은 무엇을 보증하는가? HDI 95% 신뢰구간은 '신뢰구간'과 어떻게 다른가? 그리고 5-Fold 교차검증은 왜 '시험문제를 외운 학생'을 걸러내는 최고의 방법인가? Auto-Tuner의 두 번째, 세 번째 기둥을 해부한다.

Bayesian EXAWin-Rate Forecaster

매 미팅과 협상에서 포착되는 미세한 신호를 베이지안 업데이트로 실시간 분석하여 영업 성공 확률을 정교하게 예측합니다. EXAWin과 함께라면 직관의 영역이었던 영업이 가장 완벽한 데이터 과학으로 진화합니다.

Comments0

Deep Dive

More in Bayesian

Explore Archive
BA024. EXAWin 베이지안 엔진의 진화: 데이터가 스스로 파라미터를 튜닝하는 날
Bayesian
Auto-Tuner
EXA Intel

BA024. EXAWin 베이지안 엔진의 진화: 데이터가 스스로 파라미터를 튜닝하는 날

EXA 베이지안 엔진은 수주 확률을 계산해 주었지만, 그 정밀도는 사람이 설정한 초기 파라미터에 달려 있었다. 100개의 과거 딜 데이터가 쌓였을 때, 엔진은 스스로 진화할 준비를 마쳤다. Grid Search, MCMC 앙상블 샘플링, 교차검증 — 세 개의 수학적 도구가 협업하여 최적의 파라미터를 찾아가는 과정을 소설로 그립니다.

ANALYSIS
BA026. 입자들의 합의 — MCMC 앙상블과 교차검증의 수학
Bayesian
Auto-Tuner
EXA Intel

BA026. 입자들의 합의 — MCMC 앙상블과 교차검증의 수학

Grid Search가 '최적의 언덕'을 찾았다면, MCMC 앙상블 샘플러는 '그 언덕의 높이가 맞다'고 256명의 탐험가가 합의하는 과정이다. Emcee의 아핀 불변 워커, R̂ 수렴 진단, HDI 95% 신뢰구간, 그리고 5-Fold 교차검증과 Signal Lift 분석의 수학적 원리를 비즈니스 맥락과 함께 풀어낸다.

ANALYSIS
[BA03. On-Time Risk: 부록1] EXA Bayesian 엔진의 해부: 혼합 분포와 관측 편차
Bayesian
Gidds Sampling
EXA Intel

[BA03. On-Time Risk: 부록1] EXA Bayesian 엔진의 해부: 혼합 분포와 관측 편차

이 글은 소설 형식으로 연재된 [BA03 On-Time 자재입고: Bayesian MCMC]편에서 활약한 EXA 엔진의 작동 원리를 규명하는 기술 해설 시리즈의 첫 번째 글입니다. 이번 시리즈는 베이지안 추론 중에서도 고급 기법에 속하는 혼합분포(Mixture Distribution)와 MCMC(Markov Chain Monte Carlo) Gibbs Sampling을 다루는 만큼, 내용이 깊고 계산 과정이 다소 복잡할 수 있습니다. 따라서 이를 가능한 쉽게 소화할 수 있도록 단계별로 나누어 상세히 접근하고자 하며, 제법 긴 여정이 될 것으로 예상됩니다. 전체적인 맥락 이해를 위해 소설 원문을 먼저 일독을 권합니다. 아울러 베이지안 이론은 단계적으로 개념이 확장되므로, BA01 및 BA02의 에피소드와 수학 해설을 먼저 살펴본다면 이번 내용을 받아들이는 데 훨씬 도움이 될 것입니다. 앞선 수학적 개념과 논리들이 이어지고 있습니다.

ANALYSIS
BA025. 최적의 경계를 찾아서 — Grid Search와 Youden's J의 수학 | EXA Enterprise