본문 바로가기

취준/FRM part1

part1. Reading 26: Machine Learning and Prediction

 

FRM Part I – Reading 26
머신러닝과 예측 (Machine Learning and Prediction)

EXAM FOCUS

핵심 학습 목표

이 Reading은 머신러닝 모델이 어떻게 예측(Prediction)을 생성하는지에 초점을 맞춥니다. 기본 선형회귀(Linear Regression)부터 로지스틱 회귀(Logistic Regression), 신경망(Neural Networks)에 이르기까지 다양한 모델 유형의 예측 방법을 다룹니다. 각 모델 유형은 서로에 대해 상대적인 장단점을 가지고 있습니다.

시험에서 반드시 할 수 있어야 하는 것

  • 범주형 변수 인코딩: 원-핫 인코딩(One-Hot Encoding)과 서열형 인코딩(Ordinal Encoding) 구분 및 적용
  • 정규화(Regularization): Ridge 회귀(L2)와 LASSO(L1)의 벌점항 비교, Elastic Net 이해
  • 로지스틱 회귀(Logistic Regression): 시그모이드 함수, MLE 추정, 임계값 Z 설정 원리
  • 결정트리(Decision Tree): 지니계수(Gini Impurity)와 엔트로피(Entropy)를 이용한 정보이득 계산
  • 앙상블 학습(Ensemble Learning): 배깅(Bagging), 랜덤 포레스트(Random Forest), 부스팅(Boosting) 비교
  • KNN과 SVM: K-최근접 이웃 알고리즘과 서포트 벡터 머신의 분류 원리
  • 신경망(Neural Networks): 피드포워드 네트워크, 역전파, 경사하강법, 학습률
  • 혼동행렬(Confusion Matrix): 정확도(Accuracy), 정밀도(Precision), 재현율(Recall), 오류율(Error Rate), ROC/AUC 해석

이 Reading은 정량적 계산과 개념적 이해가 혼합되어 있습니다. 특히 Ridge vs LASSO 비교, 임계값 Z와 비용 비대칭, 혼동행렬 지표 계산, 정보이득 계산이 시험에 매우 자주 출제됩니다.


MODULE 26.1: 범주형 변수, 정규화, 로지스틱 회귀

LO 26.c: 범주형 변수 인코딩 방법

1. 범주형 변수 인코딩(Encoding)의 필요성

머신러닝 모델과 회귀 모델은 기본적으로 숫자(Numerical) 입력만을 처리할 수 있습니다. 그러나 현실 세계의 데이터에는 "거주 지역", "직업군", "신용등급" 등과 같은 질적 정보(Qualitative Information), 즉 범주형 변수(Categorical Variable)가 빈번하게 존재합니다. 이러한 비수치적 데이터를 모델이 이해할 수 있는 숫자로 변환하는 과정을 매핑(Mapping) 또는 인코딩(Encoding)이라고 합니다.

범주형 변수는 크게 두 가지 유형으로 나뉘며, 각 유형에 따라 적절한 인코딩 방법이 달라집니다.

2. 명목형 변수 (Nominal Variable) — 원-핫 인코딩

명목형 변수란 범주들 사이에 자연스러운 순서(Natural Order)가 없는 변수를 의미합니다. 예를 들어 "거주 지역"이 서울, 부산, 대구, 인천의 4개 카운티로 구성되어 있다면, 이들 사이에 크기나 순서 관계는 존재하지 않습니다.

이 경우 원-핫 인코딩(One-Hot Encoding)을 적용합니다. 각 범주마다 별도의 더미 변수(Dummy Variable)를 만들고, 해당 범주에 속하면 1, 그렇지 않으면 0을 부여합니다.

예시: 원-핫 인코딩

대출 심사에서 거주 지역이 A, B, C, D 4개 카운티인 경우:

거주지 \(x_A\) \(x_B\) \(x_C\) \(x_D\)
카운티 A 1 0 0 0
카운티 B 0 1 0 0
카운티 C 0 0 1 0
카운티 D 0 0 0 1

3. 서열형 변수 (Ordinal Variable) — 순서 인코딩

서열형 변수란 범주들 사이에 자연스러운 순서가 존재하는 변수를 의미합니다. 예를 들어 소득 구간(Income Range)은 "5만 달러 미만 < 5만~10만 달러 < 10만 달러 초과"처럼 명확한 순서를 가집니다. 이 경우 더미 변수에 0과 1만 사용하는 것이 아니라, 순서를 반영하는 값(0, 1, 2, ...)을 부여할 수 있습니다.

예시: 서열형 인코딩

소득구간이 $25,000 단위로 나뉘어 있을 때:

소득 구간 인코딩 값
$0 ~ $25,000 0
$25,000 ~ $50,000 1
$50,000 ~ $75,000 2
$75,000 ~ $100,000 3
$100,000 ~ $125,000 4
$125,000 ~ $150,000 5
$150,000 ~ $175,000 6
$175,000 ~ $200,000 7
$200,000 초과 8

가구 소득이 $85,000이면 "$75,000~$100,000" 구간에 해당하므로, 더미 변수 값은 3이 됩니다.

시험 함정 주의 — 더미 변수 함정(Dummy Variable Trap):

절편(Intercept)이 있는 선형 모델에서 원-핫 인코딩의 모든 더미 변수를 그대로 넣으면 완전 다중공선성(Perfect Multicollinearity)이 발생합니다. 이는 어느 한 더미 변수가 나머지 더미 변수들의 선형 결합으로 완벽히 표현될 수 있기 때문입니다. 이를 방지하려면 기준 범주(Reference Category) 하나를 제외하고 나머지만 모델에 포함시켜야 합니다. 예를 들어 4개 범주라면 3개의 더미 변수만 사용합니다.

또한, 명목형 변수에 0, 1, 2, 3 같은 숫자를 부여하면 모델이 "2는 1보다 두 배 크다"는 가짜 순서/거리 정보를 학습하게 되어 결과가 왜곡됩니다. 명목형에는 반드시 원-핫 인코딩을 사용해야 합니다.

LO 26.d: 정규화(Regularization) — Ridge와 LASSO

1. 정규화의 필요성

모델이 너무 복잡해지면, 훈련 데이터(Training Data)에는 매우 잘 맞지만 새로운 테스트 데이터(Test Data)에 대해서는 성능이 크게 떨어지는 과적합(Overfitting) 현상이 발생합니다. 과적합은 모델이 훈련 데이터의 "진정한 패턴"뿐만 아니라 "잡음(Noise)"까지 학습해버리기 때문에 발생합니다.

정규화(Regularization)는 이 문제를 해결하기 위한 핵심 기법입니다. 정규화는 모델의 손실 함수(Loss Function)에 계수(Coefficient)의 크기에 비례하는 벌점항(Penalty Term)을 추가하여, 계수가 지나치게 커지는 것을 억제합니다. 이를 통해 모델을 단순화하고 일반화(Generalization) 성능을 높입니다.

2. 기본 설정

데이터셋에 \(n\)개의 관측치, \(m\)개의 피처(특징), 그리고 단일 출력변수 \(y\)가 있다고 가정합니다. 선형회귀 모델의 파라미터는 절편 \(\alpha\)와 기울기 계수 \(\beta\)이며, 정규화 강도를 조절하는 하이퍼파라미터(Hyperparameter) \(\lambda\)를 사용합니다. 하이퍼파라미터는 최적의 모델을 선택하기 위해 사용되지만, 모델 자체의 파라미터는 아닙니다.

선형회귀 예측식: $$\hat{y} = \alpha + \sum_{j=1}^{m} \beta_j x_j$$ 잔차제곱합 (Residual Sum of Squares, RSS): $$RSS(\alpha, \beta) = \sum_{i=1}^{n} \left( y_i - \alpha - \mathbf{x}_i^\top \boldsymbol{\beta} \right)^2$$

3. Ridge 회귀 (L2 정규화)

Ridge 회귀는 기울기 계수 \(\beta\)의 제곱합(Sum of Squares)을 벌점항으로 사용합니다. 이 방법의 목표는 기울기 계수를 0에 가깝게 축소(Shrink)하는 것이지만, 일반적으로 정확히 0으로 만들지는 않습니다. 따라서 모든 피처가 모델에 남아있게 됩니다.

Ridge 회귀 손실 함수: $$L(\alpha, \beta) = \underbrace{\sum_{i=1}^{n} \left( y_i - \alpha - \mathbf{x}_i^\top \boldsymbol{\beta} \right)^2}_{\text{RSS (잔차제곱합)}} + \underbrace{\lambda \sum_{j=1}^{m} \beta_j^2}_{\text{L2 벌점항}}$$

Ridge 회귀는 해석적(Analytical) 방법으로 \(\alpha\)와 \(\beta\)를 결정할 수 있습니다:

$$\hat{\boldsymbol{\beta}}_{\text{Ridge}} = (\mathbf{X}^\top \mathbf{X} + \lambda \mathbf{I})^{-1} \mathbf{X}^\top \mathbf{y}$$

Ridge 회귀의 중요한 실용적 장점은 \(\mathbf{X}^\top \mathbf{X}\)가 거의 특이 행렬(Singular Matrix)일 때, 즉 다중공선성(Multicollinearity)이 심한 경우에도 \(\lambda \mathbf{I}\)가 추가되어 행렬을 안정화시킨다는 점입니다.

4. LASSO (L1 정규화)

LASSO(Least Absolute Shrinkage and Selection Operator)는 Ridge 회귀와 구조적으로 유사하지만, 벌점항으로 계수의 제곱합 대신 절대값의 합(Sum of Absolute Values)을 사용합니다. LASSO의 가장 큰 특징은 중요하지 않은 피처의 계수를 정확히 0으로 만든다는 것입니다. 이는 LASSO가 자동으로 피처 선택(Feature Selection)을 수행한다는 의미이며, 이 때문에 LASSO를 "피처 선택 접근법"이라고 부릅니다.

LASSO 손실 함수: $$L(\alpha, \beta) = \underbrace{\sum_{i=1}^{n} \left( y_i - \alpha - \mathbf{x}_i^\top \boldsymbol{\beta} \right)^2}_{\text{RSS (잔차제곱합)}} + \underbrace{\lambda \sum_{j=1}^{m} |\beta_j|}_{\text{L1 벌점항}}$$

LASSO는 Ridge와 달리 닫힌 형태의 해(Closed-form Solution)가 존재하지 않으므로, 수치적(Numerical) 최적화 방법으로 파라미터를 추정합니다. 또한, 하이퍼파라미터 \(\lambda\)가 커질수록 더 많은 피처가 모델에서 제거됩니다.

5. LASSO가 정확히 0을 만드는 기하학적 직관

Ridge와 LASSO의 차이를 기하학적으로 이해할 수 있습니다. 벌점항에 의한 제약 영역(Constraint Region)의 형태가 다르기 때문입니다.

기하학적 해석:

Ridge 제약 영역: \(\sum \beta_j^2 \leq t\) → 원(Circle) 형태
LASSO 제약 영역: \(\sum |\beta_j| \leq t\) → 마름모(Diamond) 형태

RSS의 등고선(Contour)이 제약 영역과 만나는 점이 최적해가 됩니다. 마름모의 꼭짓점(Vertex)은 좌표축 위에 있으므로, 최적해가 꼭짓점에 위치할 확률이 높아 일부 \(\beta_j = 0\)이 자연스럽게 발생합니다. 반면 원 형태에서는 등고선이 좌표축이 아닌 곡면에서 만날 가능성이 높아 계수가 정확히 0이 되기 어렵습니다.

6. Elastic Net

Elastic Net은 Ridge 회귀와 LASSO의 혼합(Hybrid) 접근법입니다. 두 벌점항을 합산하여 손실 함수에 적용합니다. Ridge의 안정성과 LASSO의 피처 선택 기능을 동시에 활용할 수 있는 장점이 있습니다.

Elastic Net 손실 함수: $$L(\alpha, \beta) = RSS(\alpha, \beta) + \lambda_1 \sum_{j=1}^{m} |\beta_j| + \lambda_2 \sum_{j=1}^{m} \beta_j^2$$

7. Ridge, LASSO, Elastic Net 비교 요약

구분 Ridge (L2) LASSO (L1) Elastic Net
벌점항 \(\lambda \sum \beta_j^2\) \(\lambda \sum |\beta_j|\) L1 + L2 합산
계수 축소 0에 가깝게 축소 정확히 0으로 만듦 혼합
피처 선택 X (모든 피처 유지) O (자동 피처 선택) O (부분적)
해법 해석적(Analytical) 수치적(Numerical) 수치적(Numerical)
다중공선성 대응 우수 제한적 우수
제약 영역 형태 원(Circle) 마름모(Diamond) 중간 형태
시험 함정 주의:

- Ridge의 벌점항은 계수의 제곱합이고, LASSO의 벌점항은 계수의 절대값의 합입니다. 이 두 가지를 서로 바꿔 출제하는 함정이 빈출됩니다.
- Ridge/LASSO 모두 피처를 표준화(Standardize)한 후 적용해야 합니다. 표준화 없이 벌점을 부여하면 단위가 큰 변수가 과도하게 벌점의 영향을 받습니다.
- LASSO에서 \(\lambda\)가 커질수록 더 많은 피처가 제거됩니다.

LO 26.a: 로지스틱 회귀 (Logistic Regression)

1. 이항 분류 문제에서 선형회귀의 한계

금융 분야에서는 모델의 출력이 두 가지 가능한 결과만을 갖는 이항 분류(Binary Classification) 문제가 빈번합니다. 예를 들어 "대출자가 채무불이행(Default)을 할 것인가(1) 말 것인가(0)?", "개인이 은퇴 계획이 있는가(1) 없는가(0)?", "건강보험에 가입했는가(1) 아닌가(0)?" 등의 문제입니다.

이러한 문제에 일반 선형회귀를 적용하면, 예측값이 0 미만이거나 1을 초과하는 비현실적인 결과가 나올 수 있습니다. 확률은 반드시 [0, 1] 범위 안에 있어야 하므로, 선형회귀는 이 유형의 모델링에 적합하지 않습니다.

2. 로지스틱 함수 (시그모이드 함수)

로지스틱 회귀(Logistic Regression)는 이 문제를 해결합니다. 선형결합(Linear Combination)을 누적 로지스틱 함수(시그모이드 함수, Sigmoid Function)에 통과시켜, 출력을 항상 0에서 1 사이의 확률값으로 변환합니다.

로지스틱 함수 (시그모이드): $$\sigma(z) = \frac{1}{1 + e^{-z}}$$

여기서 \(m\)개의 피처가 있을 때:

$$z_j = \alpha + \sum_{k=1}^{m} \beta_k x_{jk}$$

시그모이드 함수의 핵심 특성은 다음과 같습니다: 입력 \(z\)가 매우 크면 출력은 1에 수렴하고, \(z\)가 매우 작으면(음의 방향) 출력은 0에 수렴합니다. 그리고 \(z = 0\)일 때 출력은 정확히 0.5가 됩니다. 이 S자형 곡선(S-Shaped Curve) 덕분에 어떤 입력이 들어와도 출력이 [0, 1] 범위 안에 머물게 됩니다.

3. 최대우도추정 (Maximum Likelihood Estimation, MLE)

로지스틱 회귀 모델은 비선형(Non-linear)이므로, 일반최소제곱법(OLS)으로 추정할 수 없습니다. 대신 최대우도추정법(MLE)을 사용하여 훈련 데이터 세트의 발생 확률을 최대화하는 파라미터 \(\alpha\)와 \(\beta\)를 선택합니다.

실무에서는 우도 함수(Likelihood Function) 자체를 최대화하는 것보다 로그우도 함수(Log-Likelihood Function)를 최대화하는 것이 계산상 더 용이합니다. 로그 변환은 곱셈을 덧셈으로 바꾸어 최적화를 단순화합니다.

로그우도 함수 (Log-Likelihood Function): $$\ell(\alpha, \beta) = \sum_{i=1}^{n} \left[ y_i \ln p_i + (1 - y_i) \ln(1 - p_i) \right]$$

여기서 \(p_i = P(y_i = 1 \mid \mathbf{x}_i) = \sigma(\alpha + \mathbf{x}_i^\top \boldsymbol{\beta})\)

4. 임계값 Z와 분류 규칙

파라미터 \(\alpha\)와 \(\beta\)가 추정되면, 모델은 각 관측치에 대해 \(y = 1\)일 확률 \(p\)를 산출합니다. 이 확률을 실제 0/1 분류로 변환하기 위해 임계값(Threshold) Z를 설정합니다.

분류 규칙: $$\hat{y}_j = \begin{cases} 1, & \text{if } p_j \geq Z \\ 0, & \text{if } p_j < Z \end{cases}$$

임계값 Z의 설정은 양측 오분류 비용(Misclassification Cost)에 따라 결정됩니다.

임계값 Z 설정의 핵심 원리:

Z = 0.5: 양측 오분류 비용이 동일(Symmetric)할 때의 기본값. \(y = 0\)을 1로 잘못 분류하는 비용과 \(y = 1\)을 0으로 잘못 분류하는 비용이 같다고 가정합니다.

Z < 0.5 (예: 0.1): \(y = 1\)을 놓치는 비용(False Negative)이 매우 클 때. 예를 들어 대출 채무불이행(\(y = 1\))을 놓치는 것이 건전한 차입자에게 대출을 거부하는 것보다 훨씬 비용이 크다면, Z를 낮추어 더 많은 관측치를 "디폴트"로 분류합니다.

Z > 0.5: \(y = 0\)을 놓치는 비용(False Positive)이 더 클 때. 예를 들어 실제 무죄인 사람을 유죄로 잘못 판결하는 비용이 매우 큰 상황에서는 Z를 높여 "양성" 판정을 보수적으로 내립니다.

예시: 임계값 Z에 따른 분류 변화

가정: \(\alpha = -1.2\), \(\boldsymbol{\beta} = (0.6, -0.8)\), \(\mathbf{x} = (1, 0.5)\)

$$z = -1.2 + 0.6 \times 1 + (-0.8) \times 0.5 = -1.2 + 0.6 - 0.4 = -1.0$$ $$p = \sigma(-1.0) = \frac{1}{1 + e^{1}} = \frac{1}{1 + 2.718} \approx 0.269$$

Z = 0.5일 때: \(p = 0.269 < 0.5\) → \(\hat{y} = 0\) (디폴트 아님으로 분류)

Z = 0.1일 때: \(p = 0.269 \geq 0.1\) → \(\hat{y} = 1\) (디폴트로 분류)

동일한 확률값이라도 Z를 낮추면 "디폴트"로 잡히는 범위가 넓어져, 디폴트를 놓칠 위험(FN)이 줄어듭니다.

5. 연속형 예측 성능 평가: MSFE와 MAE

모델의 출력이 확률이 아닌 수익률 같은 연속 변수인 경우, 예측 성능을 평가하기 위해 평균제곱예측오차(MSFE)평균절대예측오차(MAE)를 사용합니다.

MSFE (Mean Squared Forecast Error): $$MSFE = \frac{1}{n_{\text{test}}} \sum_{i=1}^{n_{\text{test}}} (y_i - \hat{y}_i)^2$$ MAE (Mean Absolute Forecast Error): $$MAE = \frac{1}{n_{\text{test}}} \sum_{i=1}^{n_{\text{test}}} |y_i - \hat{y}_i|$$

Module Quiz 26.1

문제 1. 한 금융회사가 대출 신청을 모델링하기 위해 가구 소득 구간을 사용합니다. 구간은 $25,000 단위로 $200,000까지 나뉘고, 마지막 구간은 $200,000 초과입니다. 가구 소득이 $85,000인 가정의 더미 변수 값은?

A. 0
B. 1
C. 2
D. 3

문제 2. 정규화의 축소 벌점항(Shrinkage Penalty Term)에 대한 다음 설명 중 가장 정확한 것은?

A. 모델 정규화에서 벌점항은 적용되지 않는다.
B. 기울기 계수의 제곱합은 LASSO의 벌점항이다.
C. Elastic Net은 Ridge 회귀와 LASSO에서 발견되는 벌점항을 합산한다.
D. 기울기 계수의 절대값의 합은 Ridge 회귀의 벌점항이다.

문제 3. 로지스틱 회귀 모델에서 디폴트(Default)에 1, 비디폴트(No Default)에 0이 할당됩니다. 은행이 상환을 기대하는 대출의 디폴트 비용이 매우 높으므로, 합리적인 임계값 Z는?

A. 0.00
B. 0.10
C. 0.50
D. 0.90


MODULE 26.2: 결정트리, 앙상블 학습, KNN, SVM

LO 26.e: 결정트리(Decision Tree)의 구성과 해석

1. 결정트리의 개념

결정트리(Decision Tree)지도 학습(Supervised Learning) 기반의 머신러닝 기법으로, 나무(Tree) 구조를 시각적으로 표현하며 순차적인 입력 피처들과 함께 작동합니다. 트리의 각 노드(Node)는 관측치를 반영하는 질문을 가지고 있으며, 가지(Branch)에 의해 다른 노드(잎, Leaf)와 연결됩니다.

결정트리는 분류(Classification) 문제와 연속 변수 추정에 모두 유용하며, 이 때문에 CART(Classification and Regression Tree)라고도 불립니다. CART는 해석이 용이하여 "화이트박스 모델(White-Box Model)"이라고 불리는 반면, 신경망은 내부 작동 방식이 불투명하여 "블랙박스 모델(Black-Box Model)"이라고 불립니다.

결정트리의 구조 용어:

루트 노드(Root Node): 트리의 최상단에 위치한 시작 노드. 전체 데이터셋에 대한 첫 번째 분할 질문을 포함합니다.

결정 노드(Decision Node) / 내부 노드(Internal Node): 루트 노드와 터미널 노드 사이에 위치한 중간 노드. 추가적인 분할 질문을 포함합니다.

터미널 노드(Terminal Node) / 리프 노드(Leaf Node): 트리의 최하단에 위치한 끝 노드. 최종 분류 결과 또는 예측값을 담고 있습니다.

2. 정보이득 (Information Gain)

정보이득(Information Gain)은 주어진 피처에 대한 정보를 얻음으로써 불확실성(Uncertainty)을 얼마나 줄일 수 있는지를 측정합니다. 각 노드에서 우리는 정보이득을 최대화하는 피처를 찾습니다. 정보이득을 측정하는 대표적인 방법은 엔트로피(Entropy)지니계수(Gini Coefficient)입니다.

3. 엔트로피 (Entropy)

엔트로피는 데이터셋의 무질서도(Disorder)를 측정하는 지표로, 값은 0에서 1 사이입니다. 모든 데이터가 하나의 클래스에 속하면 엔트로피는 0(완전 질서)이고, 클래스가 균등하게 분포되면 엔트로피는 최대값(최대 무질서)입니다.

엔트로피 (Entropy): $$H = -\sum_{k=1}^{K} p_k \log_2 p_k$$

여기서 \(K\)는 가능한 결과의 수, \(p_k\)는 각 결과의 확률

4. 지니 불순도 (Gini Impurity)

지니 불순도(Gini Impurity)는 엔트로피의 대안으로, 데이터셋에서 임의로 선택된 원소가 잘못 분류될 확률을 측정합니다. 값이 0이면 완전히 순수(Pure)한 노드이고, 값이 클수록 불순도가 높습니다.

지니 불순도 (Gini Impurity): $$G = 1 - \sum_{k=1}^{K} p_k^2$$

5. 정보이득 계산 과정

정보이득은 부모 노드의 불순도에서 분할 후 자식 노드들의 가중 불순도를 뺀 값으로 계산합니다. 정보이득이 가장 큰 피처가 해당 노드의 분할 기준으로 선택됩니다.

정보이득 (지니 기준): $$IG = G(\text{부모}) - \sum_{b \in \text{branches}} w_b \cdot G(b)$$

여기서 \(w_b\)는 각 가지(Branch)의 데이터 비중

예시: 지니계수를 이용한 정보이득 계산

한 금융 분석가가 기업이 다음 회계연도에 이자 의무를 충족할지 예측하는 모델을 구축합니다. 16개 기업 중 10개가 이자 의무를 충족(\(y = 1\))하고 6개가 미충족(\(y = 0\))입니다.

Step 1: 기준 지니계수 계산

$$G_{\text{base}} = 1 - \left(\frac{10}{16}\right)^2 - \left(\frac{6}{16}\right)^2 = 1 - 0.3906 - 0.1406 = 0.46875$$

Step 2: "매출 변동" 피처에 의한 분할 후 지니계수

매출 증가 기업 9개 중: 충족 5개, 미충족 4개

$$G_{\text{increase}} = 1 - \left(\frac{5}{9}\right)^2 - \left(\frac{4}{9}\right)^2 = 1 - 0.3086 - 0.1975 = 0.4938$$

매출 감소 기업 7개 중: 충족 5개, 미충족 2개

$$G_{\text{decrease}} = 1 - \left(\frac{5}{7}\right)^2 - \left(\frac{2}{7}\right)^2 = 1 - 0.5102 - 0.0816 = 0.4082$$

Step 3: 가중 지니계수

$$G_{\text{weighted}} = \frac{9}{16} \times 0.4938 + \frac{7}{16} \times 0.4082 = 0.2777 + 0.1786 = 0.45635$$

Step 4: 정보이득

$$IG = 0.46875 - 0.45635 = 0.0124$$

이 과정을 모든 피처에 대해 반복하여, 정보이득이 가장 큰 피처를 루트 노드로 선택합니다.

6. 연속형 변수의 처리

매출의 신용비율(Credit Sales Percentage)처럼 0에서 100 사이의 어떤 값이든 취할 수 있는 연속 변수의 경우, 가능한 모든 분할 지점(Threshold)에 대해 정보이득을 계산하고, 정보이득을 최대화하는 분할 지점을 선택합니다.

7. 과적합과 가지치기 (Pruning)

결정트리의 주요 위험은 과적합(Overfitting)입니다. 트리가 너무 깊어지면 훈련 데이터의 잡음까지 학습하게 됩니다. 이를 방지하기 위해 다음 두 가지 가지치기(Pruning) 방법을 사용합니다.

방법 영문 설명
사전 가지치기 Pre-Pruning 노드에 관련된 훈련 세트 관측치 수가 특정 수 미만이면 분할을 중단. 최대 가지 수(Maximum Branches)를 설정하는 중지 규칙(Stopping Rule)을 적용합니다.
사후 가지치기 Post-Pruning 먼저 큰 트리를 완전히 구축한 후, 예측력이 약한 약한 노드(Weak Nodes)를 제거합니다.
완성 조건: 결정트리는 (1) 모든 피처가 사용되었거나, (2) 리프 노드가 순수 집합(Pure Set)에 도달했을 때 완성됩니다. 순수 집합이란 해당 노드의 모든 데이터가 동일한 클래스에 속하는 상태를 말합니다.

LO 26.f: 앙상블 학습 (Ensemble Learning)

1. 앙상블 학습의 개념

앙상블 학습(Ensemble Learning)은 여러 다른 모델의 출력을 하나의 모델로 결합하여 예측을 수행하는 방법입니다. 앙상블의 두 가지 핵심 목표는 다수의 예측을 평균하는 군중의 지혜(Wisdom of Crowds) 효과와 과적합에 대한 보호입니다.

2. 세 가지 앙상블 기법

기법 영문 핵심 메커니즘 주요 특징
배깅 Bootstrap Aggregation (Bagging) 훈련 샘플에서 복원추출(Sampling with Replacement)로 여러 결정트리를 생성한 후, 분류/예측 결과를 집계 모든 배깅 트리의 평균을 취하면 모델의 분산(Variance)이 감소합니다. 복원추출이므로 일부 관측치는 한 번도 선택되지 않을 수 있으며, 이를 OOB(Out-of-Bag) 관측치라 하여 모델 성능 평가에 활용합니다.
랜덤 포레스트 Random Forest 피처 또는 관측치를 비복원추출로 샘플링하여 결정트리의 앙상블(숲) 생성. 이 과정을 수백 번 반복 배깅 기법을 적용하되, 트리 간 상관관계를 감소시켜 개선합니다. 사용되는 피처 수는 보통 전체 피처 수의 제곱근(\(\sqrt{m}\))입니다. 트리 간 상관이 낮을수록 앙상블 성능이 극대화됩니다.
부스팅 Boosting 이전에 구축된 트리의 성능을 기반으로 모델을 순차적으로 개선 그래디언트 부스팅(Gradient Boosting): 이전 모델의 잔차(Residuals)를 이용해 새 모델 구축
에이다부스트(AdaBoost): 모든 관측치에 동일한 가중치를 부여한 후, 오분류된 출력에 순차적으로 가중치를 증가
배깅(Bagging) vs 페이스팅(Pasting) 구분:

배깅은 복원추출(일부 관측치가 중복 선택될 수 있음)을 사용하지만, 페이스팅(Pasting)비복원추출을 사용합니다. 예를 들어 500개 항목의 훈련 세트에서 25개씩 비복원 추출하면 정확히 20개의 하위 표본이 만들어집니다.

LO 26.g: KNN과 SVM

1. K-최근접 이웃 (K-Nearest Neighbors, KNN)

KNN은 목표 변수의 값을 분류하거나 예측하는 데 사용되는 지도 학습 모델입니다. 다른 접근법들이 데이터셋의 관계를 "학습"하는 반면, KNN은 관계를 학습하지 않고 단순히 가장 가까운 데이터 포인트들의 정보를 참조하므로 "게으른 학습자(Lazy Learner)"로 간주됩니다.

KNN의 구현 과정은 다음과 같습니다: (1) K 값과 거리 척도를 선택하고, (2) 예측하려는 각 데이터 포인트에 대해 피처 공간에서 가장 가까운 K개의 관측치를 식별하며, (3) 목표 변수를 이웃들의 평균(회귀)이나 다수결(분류)로 예측합니다.

K 값의 중요성:

K 값은 모델 성능에 결정적인 영향을 미칩니다:

K가 너무 큰 경우: 지나치게 많은 이웃을 평균하므로 높은 편향(High Bias)낮은 분산(Low Variance) → 과소적합(Underfitting) 경향

K가 너무 작은 경우: 소수의 이웃에 과도하게 의존하므로 낮은 편향(Low Bias)높은 분산(High Variance) → 과적합(Overfitting) 경향

경험칙: K는 보통 훈련 샘플 크기의 제곱근으로 설정합니다.
$$K \approx \sqrt{n}$$ 예를 들어 \(n = 400\)이면 \(K = \sqrt{400} = 20\)

2. 서포트 벡터 머신 (Support Vector Machine, SVM)

SVM피처 수가 많은 상황에서 특히 유용한 지도 학습 모델입니다. SVM의 핵심 아이디어는 서로 다른 클래스의 관측치들을 분리하는 가장 넓은 경로(Widest Path)를 찾는 것입니다.

가장 단순한 2-피처 예시에서(예: 신용점수와 소득을 이용한 차입자 디폴트 평가), SVM은 디폴트와 비디폴트 그룹을 그래프 상에서 분리하는 선을 찾습니다. 이때 두 개의 평행선을 사용하여 가장 넓은 통로를 만듭니다.

SVM 핵심 용어:

서포트 벡터(Support Vectors): 경로의 가장자리(Edge)에 위치한 데이터 포인트. 이 점들이 분리 경계의 위치를 결정합니다.

분리 경계(Separation Boundary): 경로의 중심(Center). 이 경계를 기준으로 양쪽의 클래스가 분류됩니다.

마진(Margin): 두 평행선 사이의 너비. SVM은 이 마진을 최대화하려고 합니다.

확장: 2-피처 이상의 모델에서는 출력이 초평면(Hyperplane)이 되며, 차원 수는 "피처 수 - 1"입니다. 피처가 많아지면 경로 너비와 경로에 의한 오분류 사이의 트레이드오프가 발생합니다.

Module Quiz 26.2

문제 1. 모델의 지니계수가 0.375이고, 한 피처의 가중 지니가 0.329라면 정보이득은?

A. 0.046
B. 0.352
C. 0.704
D. 0.750

문제 2. 앙상블 학습에서 "군중의 지혜(Wisdom of Crowds)"를 가장 잘 설명하는 것은?

A. 대중은 결코 틀리지 않는다.
B. 결정트리를 사용할 때만 나타난다.
C. 과적합이나 과소적합에 대한 보호를 제공한다.
D. 많은 예측을 평균하는 이점을 제공한다.

문제 3. 2-피처 서포트 벡터 머신에서 분리 경계(Separation Boundary)는?

A. 경로의 중심이다.
B. 경로의 하한이다.
C. 경로의 상한이다.
D. 경로의 양쪽 가장자리에 있는 모든 데이터 포인트이다.


MODULE 26.3: 신경망과 모델 성능 평가

LO 26.h: 신경망(Neural Networks)의 구성과 가중치 결정

1. 인공신경망(ANN)의 개념

인공신경망(Artificial Neural Networks, ANNs)은 인간의 뇌가 계산을 수행하는 방식과 유사하게 작동하는 머신러닝 접근법입니다. 가장 일반적인 유형은 역전파(Backpropagation)가 적용된 피드포워드 네트워크(Feedforward Network)입니다. 역전파란 모델 반복(Iteration)을 통해 편향(Bias)과 가중치(Weight)가 지속적으로 업데이트되는 과정을 설명합니다.

2. 신경망의 구조

기본적인 피드포워드 네트워크는 다음과 같은 구조를 가집니다:

신경망 구조 요소:

입력 층(Input Layer): 피처(입력 변수)를 받아들이는 층. 예를 들어 3개의 피처가 있다면 3개의 입력 노드가 존재합니다.

은닉 층(Hidden Layer): 입력과 출력 사이에 위치한 중간 층. 하나 이상의 은닉 층이 존재할 수 있으며, 각 층에는 여러 개의 노드가 포함됩니다.

출력 층(Output Layer): 최종 예측값 \(y\)를 산출하는 층.

3. 가중치와 편향

은닉 층 노드의 값을 결정하기 위해, 입력에 가중치(Weights, w)를 적용합니다. 그런 다음 상수 편향(Constant Bias)이 추가됩니다. 이 편향은 활성화 파라미터(Activation Parameter)라고도 하며, 노드가 "발화(Fire)"하여 출력 1을 생성하기가 얼마나 쉬운지를 나타냅니다.

은닉 노드의 출력: $$h_k = f\left( \sum_{j=1}^{m} w_{jk} \cdot x_j + b_k \right)$$

여기서 \(f\)는 활성화 함수, \(w_{jk}\)는 입력 \(j\)에서 은닉 노드 \(k\)로의 가중치, \(b_k\)는 편향

4. 활성화 함수 (Activation Function)

각 층에는 고유한 활성화 함수(Activation Function)가 있습니다. 신경망에서 일반적으로 사용되는 활성화 함수 중 하나가 앞서 논의한 로지스틱 함수(시그모이드)입니다. 신경망의 목표는 비선형 관계(Non-Linear Relationships)를 식별하는 것이며, 활성화 함수는 입력과 출력의 관계에 비선형성(Non-Linearity)을 도입하는 역할을 합니다. 만약 활성화 함수가 없다면 신경망은 아무리 많은 층을 쌓아도 단순한 선형 변환에 불과하게 됩니다.

5. 경사하강법 (Gradient Descent Algorithm)

최적의 파라미터 값을 선택하기 위한 해석적 공식이 존재하지 않으므로, 경사하강법(Gradient Descent Algorithm)을 적용하여 목적 함수(손실 함수)를 최소화합니다. 이 알고리즘의 작동 방식은 다음과 같습니다: 파라미터의 시행 값(Trial Values)을 선택한 후, 목적 함수 값을 개선하기 위해 값이 변화해야 하는 방향을 결정합니다. 이를 함수의 "계곡(Valley)에서 가장 가파른 하강선(Line of Steepest Descent)"을 따라 내려가는 것에 비유합니다.

학습률(Learning Rate)의 영향:

학습률은 경사하강 시 각 단계의 크기를 결정하는 하이퍼파라미터입니다:

학습률이 너무 큰 경우: 계곡의 양쪽 사이를 크게 왔다 갔다 하며(진동/발산), 최솟값을 건너뛰어 수렴하지 못합니다.

학습률이 너무 작은 경우: 경사하강법이 전역 최솟값(Global Minimum)을 찾는 데 너무 오래 걸립니다.

6. 과적합과 조기 종료 (Early Stopping)

신경망에서 은닉 층의 수층당 노드 수가 많으면 과적합의 위험이 커집니다. 이를 방지하기 위해 검증 데이터셋(Validation Dataset)훈련 데이터셋(Training Dataset)에 대한 계산을 동시에 수행할 수 있습니다.

계곡을 따라 내려가면 두 데이터셋의 목적 함수 값이 모두 개선됩니다. 그러나 특정 지점을 지나면 훈련 세트의 목적 함수 값은 계속 개선되지만 검증 세트의 목적 함수 값은 오히려 악화되기 시작합니다. 이 지점이 바로 경사하강법을 멈춰야 하는 지점입니다. 이 현상은 모델이 훈련 데이터의 잡음(Noise)까지 외우기 시작하여 일반화 성능이 저하되는 전형적인 과적합 신호이기 때문입니다.

시험 함정 주의 — 조기 종료의 정확한 표현:

경사하강법을 멈추는 시점은 "검증 세트의 목적 함수 값이 악화되기 시작할 때(비록 훈련 세트에서는 계속 개선되더라도)"입니다. 시험에서 "훈련 세트의 목적 함수 값이 악화될 때 멈춘다"는 선택지가 나오면 오답입니다. 훈련 손실은 일반적으로 계속 감소하므로 과적합의 신호가 될 수 없습니다.

LO 26.b: 모델 예측 성능 평가 — 혼동행렬

1. 혼동행렬 (Confusion Matrix)

모델의 출력이 이항 범주형(0 또는 1)인 경우, 혼동행렬(Confusion Matrix)을 사용하여 모델을 평가할 수 있습니다. 혼동행렬은 일반적으로 2 x 2 형식이며, 예측의 정확도를 반영하는 가능한 결과를 보여줍니다.

구분 영문 약어 의미
진양성 True Positive TP 모델이 양성(1)으로 예측했고, 실제로도 양성(1)인 경우
가양성 False Positive FP 모델이 양성(1)으로 예측했지만, 실제로는 음성(0)인 경우 (제1종 오류)
진음성 True Negative TN 모델이 음성(0)으로 예측했고, 실제로도 음성(0)인 경우
가음성 False Negative FN 모델이 음성(0)으로 예측했지만, 실제로는 양성(1)인 경우 (제2종 오류)

2. 성능 지표 (Performance Metrics)

정확도 (Accuracy): — 전체 예측 중 올바른 예측의 비율 $$\text{Accuracy} = \frac{TP + TN}{TP + FP + TN + FN}$$ 오류율 (Error Rate): — 전체 예측 중 잘못된 예측의 비율 $$\text{Error Rate} = \frac{FP + FN}{TP + FP + TN + FN}$$ 정밀도 (Precision): — 양성으로 예측한 것 중 실제 양성의 비율 $$\text{Precision} = \frac{TP}{TP + FP}$$ 재현율 (Recall): — 실제 양성 중 올바르게 양성으로 예측한 비율 $$\text{Recall} = \frac{TP}{TP + FN}$$
핵심 관계: 정확도(Accuracy)와 오류율(Error Rate)의 합은 반드시 100%입니다. 정확도의 분자는 TP + TN이고, 오류율의 분자는 FP + FN이며, 두 분모는 동일합니다(전체 관측치 수). 따라서 두 지표를 합산하면 분자가 모든 결과(TP + FP + TN + FN)가 되어 100%가 됩니다.

예시: 혼동행렬 성능 지표 계산

기업 인수 예측 모델(500개 기업: 인수 150개, 비인수 350개)에서 다음 혼동행렬 결과를 얻었다고 가정합니다:

TP = 35, FN = 28, FP = 12, TN = 25 (총 100개 테스트 관측치)

$$\text{Accuracy} = \frac{35 + 25}{100} = \frac{60}{100} = 60\%$$ $$\text{Error Rate} = \frac{12 + 28}{100} = \frac{40}{100} = 40\%$$ $$\text{Precision} = \frac{35}{35 + 12} = \frac{35}{47} \approx 74.5\%$$ $$\text{Recall} = \frac{35}{35 + 28} = \frac{35}{63} \approx 55.6\%$$

검증: Accuracy + Error Rate = 60% + 40% = 100%

3. ROC 곡선과 AUC

ROC(Receiver Operating Characteristic) 곡선진양성률(True Positive Rate, = Recall)가양성률(False Positive Rate) 간의 관계를 시각적으로 나타내는 도구입니다. 임계값 Z를 변화시키면서 두 비율이 어떻게 변하는지를 그래프로 표현합니다.

AUC (Area Under the ROC Curve) 해석:

ROC 곡선 아래의 면적(AUC)이 클수록 모델의 예측 성능이 우수합니다.

AUC = 1.0: 완전히 정확한 예측 (완벽한 모델)
AUC = 0.5: 모델이 예측 가치가 없음 (무작위 모델과 동일)
AUC < 0.5: 모델이 역방향(Negative) 예측 가치를 가짐 (예측을 뒤집으면 더 나음)
클래스 불균형(Class Imbalance) 주의:

Accuracy만으로 모델을 평가하면 클래스 불균형 상황에서 착시가 발생합니다. 예를 들어 전체 대출 중 디폴트가 1%뿐이라면, 모든 대출을 "비디폴트"로 예측하기만 해도 정확도 99%를 달성합니다. 그러나 이 모델은 디폴트를 전혀 예측하지 못하므로 실무적으로 무가치합니다. 따라서 반드시 Precision, Recall, ROC/AUC를 함께 확인해야 합니다.

LO 26.i: 로지스틱 회귀와 신경망 비교

로지스틱 회귀와 신경망 모델을 동시에 적용하여 비교할 때, 혼동행렬은 두 모델의 차이를 보여주는 유용한 도구가 됩니다. 하나의 모델이 한 샘플에서 더 많은 디폴트를 예측할 수 있고, 다른 모델이 다른 샘플에서 더 많은 디폴트를 예측할 수 있습니다. 따라서 가장 높은 진양성률과 진음성률을 가진 모델은 두 모델 간에 다를 수 있습니다.

일반적인 관찰 결과는 다음과 같습니다:

관찰 사항 설명
훈련 vs 검증 성능 격차 모델의 적합도(Fit)는 훈련 데이터에서 검증 데이터보다 일반적으로 더 강하며, 이는 약간의 과적합을 반영합니다.
지표 간 모순 한 모델이 정확도와 정밀도에서 우월하고 다른 모델이 재현율에서 우월한 경우, 어느 모델이 더 나은지에 대한 명확한 결론을 도출할 수 없습니다. 이를 "모순적 지표(Contradictory Indicators)"라고 합니다.
혼동행렬의 원시 데이터 활용 요약 지표만으로는 두 모델의 차이가 명확히 드러나지 않을 수 있으므로, 혼동행렬의 원시 데이터(Raw Data)를 직접 비교하는 것이 두 모델 간의 실질적 차이를 더 잘 반영합니다.

Module Quiz 26.3

문제 1. 신경망 모델에서 경사하강법을 멈춰야 하는 시점에 대한 설명으로 가장 적절한 것은?

A. 검증 세트와 훈련 세트 모두에서 목적 함수 값이 증가할 때
B. 검증 세트와 훈련 세트 모두에서 목적 함수 값이 감소할 때
C. 훈련 세트에서 목적 함수 값이 감소하지만 검증 세트에서 개선될 때
D. 검증 세트에서 목적 함수 값이 악화되지만 훈련 세트에서 계속 개선될 때

문제 2. 로지스틱 회귀 모델의 혼동행렬에서 합이 반드시 100%가 되는 두 성능 지표는?

A. 정밀도와 재현율
B. 재현율과 오류율
C. 정확도와 오류율
D. 정확도와 정밀도

문제 3. 로지스틱 회귀 모델의 혼동행렬에서 TP = 35, FN = 28, FP = 12, TN = 25일 때, 정밀도(Precision)는?

A. 40%
B. 56%
C. 60%
D. 74%


MODULE QUIZ 정답 및 해설

문제 정답 해설
26.1-1 D 소득 구간은 자연스러운 순서가 있는 서열형 변수이므로, 0부터 시작하는 순서값을 부여합니다. $0~$25k=0, $25~$50k=1, $50~$75k=2, $75~$100k=3. $85,000은 $75,000~$100,000 구간에 해당하므로 더미 변수 값은 3입니다.
26.1-2 C Elastic Net은 Ridge 회귀(계수의 제곱합)와 LASSO(계수의 절대값의 합)의 벌점항을 모두 합산하는 정규화 기법입니다. 선택지 B는 Ridge의 벌점항을 LASSO로, D는 LASSO의 벌점항을 Ridge로 잘못 기술한 함정입니다.
26.1-3 B 디폴트 비용이 매우 높으므로 디폴트(1)를 놓치는 위험(FN)을 줄여야 합니다. Z를 낮추면 더 많은 관측치를 "디폴트"로 분류하여 FN을 줄일 수 있습니다. Z=0은 비현실적이고, Z=0.50은 비용 대칭을 가정하므로, Z=0.10이 가장 적절합니다.
26.2-1 A 정보이득 = 기준 지니 - 가중 지니 = 0.375 - 0.329 = 0.046
26.2-2 D 군중의 지혜는 여러 다른 모델의 예측을 만들고 이를 평균하여 최선의 추정치를 도출하는 앙상블 학습의 핵심 원리입니다. 개별 모델은 각각 오류에 취약하지만, 다수 모델의 평균이 최선의 추정치를 제공합니다.
26.2-3 A 2-피처 SVM에서 두 평행선으로 관측치를 분리하는 가장 넓은 경로가 생성됩니다. 서포트 벡터는 경로의 가장자리에 있는 데이터 포인트이고, 분리 경계는 경로의 중심입니다.
26.3-1 D 과적합 방지를 위해 검증/훈련 데이터셋 계산을 동시에 수행합니다. 경사하강법을 멈추는 시점은 검증 세트의 목적 함수 값이 악화되기 시작할 때입니다(훈련 세트에서는 계속 개선되더라도).
26.3-2 C 정확도 분자는 TP+TN, 오류율 분자는 FP+FN이며, 두 분모는 동일(전체 관측치)입니다. 합산하면 분자가 모든 결과를 포함하므로 반드시 100%가 됩니다.
26.3-3 D Precision = TP / (TP + FP) = 35 / (35+12) = 35/47 ≈ 74%

KEY CONCEPTS (핵심 개념 정리)

LO 26.a 핵심

  • 이항 분류에서 선형회귀는 예측값이 [0,1] 범위를 벗어나므로 부적합
  • 로지스틱 회귀는 시그모이드 함수를 통해 출력을 [0,1] 확률로 변환
  • MLE로 파라미터 추정, 로그우도 함수 최대화가 실무적으로 용이
  • 임계값 Z: 비용 대칭이면 0.5, FN 비용이 크면 Z를 낮춤, FP 비용이 크면 Z를 높임

LO 26.b 핵심

  • 혼동행렬: TP, FP, TN, FN의 4가지 요소로 구성
  • 성능 지표: Accuracy, Error Rate, Precision, Recall
  • Accuracy + Error Rate = 100% (반드시 성립)
  • ROC 곡선: TPR(=Recall)과 FPR의 관계 시각화, AUC가 클수록 우수

LO 26.c 핵심

  • 명목형 변수(순서 없음): 원-핫 인코딩 (각 범주마다 0/1 더미)
  • 서열형 변수(순서 있음): 0, 1, 2, ... 순서값 부여 가능
  • 명목형에 숫자 라벨을 부여하면 가짜 순서/거리 정보가 학습되는 오류 발생

LO 26.d 핵심

  • 정규화: 과적합 방지를 위해 손실 함수에 벌점항 추가
  • Ridge(L2): 계수의 제곱합 벌점, 해석적 해법, 계수를 0에 가깝게 축소
  • LASSO(L1): 계수의 절대값 합 벌점, 수치적 해법, 계수를 정확히 0으로 (피처 선택)
  • Elastic Net: Ridge + LASSO 벌점항 합산

LO 26.e 핵심

  • 결정트리: 순차적 분기로 데이터를 점점 순수하게 분리하는 지도학습 기법
  • 정보이득 = 부모 불순도 - 가중 자식 불순도 (지니 또는 엔트로피 기준)
  • 연속 변수는 정보이득 최대화 임계값 선택
  • 과적합 방지: 사전 가지치기(Pre-Pruning), 사후 가지치기(Post-Pruning)

LO 26.f 핵심

  • 앙상블 학습: 군중의 지혜(예측 평균) + 과적합 보호
  • 배깅: 복원추출, 분산 감소, OOB 평가
  • 랜덤 포레스트: 배깅 + 피처 샘플링으로 트리 간 상관 감소, 피처 수 ≈ \(\sqrt{m}\)
  • 부스팅: 이전 모델의 잔차/오분류를 순차적으로 보정

LO 26.g 핵심

  • KNN: 게으른 학습자, K=\(\sqrt{n}\) 경험칙, K 크면 편향↑분산↓
  • SVM: 최대 마진의 분리 경계 탐색, 서포트 벡터는 경로 가장자리, 분리 경계는 경로 중심

LO 26.h 핵심

  • ANN: 가중치, 편향, 활성화 함수로 비선형 관계 학습
  • 역전파(Backpropagation): 반복을 통한 가중치/편향 업데이트
  • 경사하강법: 학습률이 너무 크면 진동, 너무 작으면 수렴 지연
  • 조기 종료: 검증 손실이 악화되기 시작하면 학습 중단

LO 26.i 핵심

  • 로지스틱 회귀와 신경망 비교: 혼동행렬로 차이를 평가
  • 하나의 모델이 모든 지표에서 우월하지 않을 수 있음 (모순적 지표)
  • 요약 지표뿐 아니라 혼동행렬의 원시 데이터를 직접 비교하는 것이 중요

시험 대비 한 줄 암기 체크리스트

주제 암기 포인트
명목형 인코딩 원-핫 인코딩: 순서 없는 범주마다 별도 0/1 더미 변수
서열형 인코딩 순서 있으면 0, 1, 2, ... 값 부여 가능
Ridge(L2) 벌점항 \(\lambda \sum \beta_j^2\) (계수의 제곱합) → 0에 가깝게 축소
LASSO(L1) 벌점항 \(\lambda \sum |\beta_j|\) (계수의 절대값 합) → 정확히 0 (피처 선택)
Elastic Net Ridge + LASSO 벌점항 합산
Ridge 해법 / LASSO 해법 Ridge = 해석적(Analytical) / LASSO = 수치적(Numerical)
로지스틱 회귀 추정법 MLE (OLS 불가, 비선형이므로)
임계값 Z = 0.5 양측 오분류 비용이 동일(Symmetric)할 때
FN 비용 > FP 비용 Z를 낮게 설정 (더 많은 양성 예측)
정보이득 공식 \(IG = G_{\text{부모}} - \sum w_b \cdot G_b\)
가지치기 2종류 사전(Pre): 분할 중단 / 사후(Post): 약한 노드 제거
배깅 vs 페이스팅 배깅 = 복원추출 / 페이스팅 = 비복원추출
랜덤 포레스트 피처 수 보통 \(\sqrt{m}\) (전체 피처의 제곱근)
KNN의 K 경험칙 \(K \approx \sqrt{n}\), K 크면 편향↑분산↓
SVM 분리 경계 경로의 중심 (서포트 벡터는 경로 가장자리)
신경망 조기 종료 검증 손실이 악화되기 시작하면 학습 중단
학습률 과대/과소 과대 = 진동/발산 / 과소 = 수렴 지연
Accuracy + Error Rate 반드시 100%
Precision 공식 \(TP / (TP + FP)\)
Recall 공식 \(TP / (TP + FN)\)
AUC 해석 1.0 = 완벽 / 0.5 = 무작위 / <0.5 = 역방향