본문 바로가기
Study/NLP

[NLP] 분류 평가 기준&ConfusionMatrix&Regression(Linear, Logistic)

by kimdaepa 2026. 1. 10.

분류 평가 기준

  • Accuracy, Recall, Precision, F1-Score

Accuracy(정확도)

  • 올바르게 예측한 횟수 / 전체 예측 횟수
  • 대상 클래스의 균형이 잡혀 있을 때 유용. 균형이 맞지 않으면 좋은 평가 기준이 아님

Recall(재현율)

  • 데이터셋에서 모든 적절한 경우

Precision(정밀도)

  • 분류모델이 적절한 데이터만 찾아내는 경우

F1-Score

  • 재현율과 정밀도 사이의 균형을 맞추기 위한 지표

  • 조화 평균을 쓰는 이유: 극값을 반영하기 위해
  • ex) Precision = 1, Recall = 0 단순 평균 = 0.5 = F1-Score 조화 평균 = 0 = F1-Score

Confusion Matrix(혼동 행렬)

분류의 다양한 평가 기준

  • 총 4가지로 분류
    • SPAM / HAM 분리 한다고 했을 때
      1. Correct / TRUE, SPAM
      2. Correct / TRUE, HAM
      3. Incorrect / FALSE, SPAM
      4. Incorrect / FALSE, HAM
  • 표로 나타낸다면
    • TP : True Positive
    • TN : True Negative
    • FP : False Positive
    • FN : False Negative
  Prediction Condition
Condition Positive Condition Negative
True Condition Condition Positive TP FN
Condition Negative FP TN

Accuracy(정확도)

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

  • 모든 사례 중 얼마나 올바르게 분류 했는지
  • FN을 최소화 하는 것이 제일 중요

Error Rate(오류율)

\[\text{Error Rate} = \frac{FP + FN}{TP + TN + FP + FN}\]

  • FP : 제 1종 오차 FN : 제 2종 오차
  • ex) FP = 불합격자는 합격을 받을 수 없다. | FN = 합격자는 합격을 받을 수 없다.

 

Regression

  • Regression Model : 어떤 연속형 변수 y를 y의 원인이라고 추정되는 x와의 관계를 통해 추정하는 것.
    \[ y = f(x), \quad y \in \mathbb{R} \]
  • 하지만 y와 f(x)가 같다고는 할 수 없다.
    1. 추정은 원래 target과 완벽히 같을 수 없음
    2. noise
  • 그렇기에 에러(Error)가 발생하고, 이를 고려하면 \[y = f(x) + \varepsilon, \quad y \in \mathbb{R}\] 라고 표현할 수 있다.
  • 이 Error는 Residual(잔차)라고 부른다.
    • 하지만 통계학적으로 봤을 땐 완벽히 같은 의미는 아님
      \[\varepsilon = y- f(x), \quad y \in \mathbb{R}\]
    • IID(Indepedent, Identically Distributed)
      1. 잔차의 분포는 정규 분포여야 한다.
      2. 잔차는 독립변수 X와 상관관계가 없고, 잔차끼리도 상관관계가 없어야 한다. (독립)
      3. 잔차의 분포가 일정해야 한다.
  • 회귀는 residual이 기댓값 0으로 회귀하는 것을 말한다. 여기서 전제 조건이 있는데, residual은 IID를 만족해야 한다.

Linear Regression

  • 선형으로 모델의 관계식을 모델링
  • 1-Dimension인 x데이터 * 가중치 W + Bias W0
    \[y = W \cdot x + W_0\]
  • 이를 그림으로 그리면 직선 형태로 그려지는데, 사실 데이터는 그렇지 않다. x를 h(x)로 변환하면h(x) 함수는 basis function(기저 함수)라고 부른다.
    • 포물선으로 그려지는데 왜 Linear Regression? ⇒ 관계식 자체는 basis function과 Weight를 사용하여 Target을 예측하기 때문
  • basis function이 바뀌면 데이터는 여러 모양으로 표현되는데, Polynomial(다항식) 같은 경우는 포물선으로도 그려진다.
    \[y = W \cdot h_1(x) + W_0\]

Logistic Regression

  • discriminative(판별함수를 만들어 활용하는 방식) 중 하나
    • 분류를 회귀로 한다? ⇒ 확률을 회귀로 한다.
  • 이해하기 전에 2가지를 먼저 알아야 한다.
    • Logistic function
      \[f(x) = \frac{L}{1 + e^{-k(x - x_0)}}\]
      x0 = mid-point(=0), L = curve’s height(=1), k = steepness of the curve(=1) 로 설정하면
      \[S(x) = \frac{1}{1 + e^{-x}}\] ⇒ sigmoid 함수가 된다.이해하기 전에 2가지를 먼저 알아야 한다.
    • odd
      • 사건이 발생하지 않을 확률과 발생할 확률 사이의 비
        \[\text{Odds} = \frac{P(A)}{P(A^c)} = \frac{P(A)}{1 - P(A)}\]
  • 이제 Logistic Regression을 정의 해보자.
    \[y = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \cdots + \beta_p x_p + \varepsilon, \quad y \in \mathbb{R} \]
    다중선형회귀에서 y를 실수값이 아닌 확률값을 가지게 설계하면
    \[P(Y = 1 \mid X = \vec{x}) = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \cdots + \beta_p x_p = \vec{\beta}^{\top}\vec{x}, \quad \vec{\beta}^{\top}\vec{x} = \text{weight sum} \]
    아직 우변은 [-∞, ∞] 이므로 좌변에 odd를 넣으면
    \[\frac{P(Y = 1 \mid \vec{X} = \vec{x})}{1 - P(Y = 1 \mid \vec{X} = \vec{x})} = \vec{\beta}^{\top}\vec{x}\]
    아직도 [0, ∞] ≠ [-∞, ∞] 이므로 log를 취하면
    \[\log(\text{odds}) = \log\!\left(\frac{P(Y = 1 \mid \vec{X} = \vec{x})}{1 - P(Y = 1 \mid \vec{X} = \vec{x})}\right) = \vec{\beta}^{\top}\vec{x}\] 마지막으로 양변에 exponential을 취하면 \[P(Y = 1 \mid \vec{X} = \vec{x}) = \frac{1}{1 + e^{-\vec{\beta}^{\top}\vec{x}}}\] Logistic Function이 등장한다.
  • 이제 Classification의 Decision Boundary는 어떻게 정하는가?
    \[P(Y = 1 \mid \vec{X} = \vec{x}) >P(Y = 0 \mid \vec{X} = \vec{x})\]\[\Rightarrow\;p(x) > 1 - p(x)\]\[\Rightarrow\;\frac{p(x)}{1 - p(x)} > 1\]\[\Rightarrow\;\log\!\left(\frac{p(x)}{1 - p(x)}\right) > 0\]\[\therefore\;\vec{\beta}^{\top}\vec{x} > 0\] 결국 weight sum이 0보다 크면 1, 작으면 0으로 정할 수 있다.

'Study > NLP' 카테고리의 다른 글

[NLP] Feature Extraction From Text(TF-IDF, BM25)  (0) 2026.01.27
[NLP] Stopward&NER  (0) 2026.01.07
[NLP] Tokenization, Stemming & Lemmatization  (0) 2026.01.06