머신러닝 손실함수(오차값)

seoungwoo·2025년 7월 18일

MachineLearning

목록 보기
5/6

머신러닝에서 모델을 학습시킬 때, 예측값과 실제값의 차이를 수치로 계산하는 함수가 바로 손실함수(Loss Function, Cost Function)입니다.
손실함수는 문제 유형(회귀/분류)에 따라 다르게 사용되며, 모델의 성능을 높이기 위해 반드시 이해해야 할 핵심 개념입니다.


1. 손실함수란?

  • 정의:
    모델의 예측값과 실제값의 차이를 수치로 계산해주는 함수
    → 이 값이 작아질수록 모델의 예측이 실제와 가까워짐
  • 역할:
    손실함수를 최소화하는 방향으로 모델의 파라미터(가중치)를 업데이트(학습)

2. 회귀(Regression)에서 사용하는 손실함수

1) 평균제곱오차(MSE, Mean Squared Error)

  • 공식:
    MSE = (1/n) × Σ(y_actual - y_predicted)²
  • 특징:
    오차를 제곱해서 평균, 이상치에 민감
    값이 작을수록 예측이 실제와 가까움
  • 사용 예시:
    집값 예측, 온도 예측 등 연속적인 값 예측

2) 평균절대오차(MAE, Mean Absolute Error)

  • 공식:
    MAE = (1/n) × Σ|y_actual - y_predicted|
  • 특징:
    오차의 절댓값 평균, 이상치에 덜 민감

3. 분류(Classification)에서 사용하는 손실함수

1) 크로스엔트로피(Cross Entropy)

  • 정의:
    실제 정답(label)과 예측 확률 분포의 차이를 계산
    → 예측이 정답에 가까울수록 값이 작아짐

(1) 이진분류(Binary Classification)

  • Binary Cross Entropy (BCE)
  • 공식:
    BCE = -[y·log(p) + (1-y)·log(1-p)]
    • y: 실제값(0 또는 1)
    • p: 예측 확률(0~1)
  • 특징:
    두 클래스(예: 스팸/비스팸) 분류에 사용

(2) 다중분류(Multi-class Classification)

  • Categorical Cross Entropy
  • 공식:
    CCE = -Σ y_i·log(p_i)
    • y_i: 실제값(원-핫 인코딩)
    • p_i: 각 클래스에 대한 예측 확률
  • 특징:
    3개 이상의 클래스 분류에 사용(예: 꽃 품종 분류)

4. 손실함수와 모델 학습의 관계

  • 손실함수 값이 작아질수록 모델의 예측이 실제와 가까워짐
  • 경사하강법(Gradient Descent) 등 최적화 알고리즘을 통해 손실함수를 최소화하는 방향으로 파라미터를 업데이트

5. 정리 표

문제 유형대표 손실함수공식/특징
회귀MSE, MAE연속값 예측, 오차의 평균/제곱/절댓값
분류(이진)Binary Cross Entropy두 클래스, 확률 기반
분류(다중)Categorical Cross Entropy여러 클래스, 원-핫 인코딩, 확률 기반

6. 참고

  • 손실함수 선택은 문제 유형에 따라 다르며, 잘못 선택하면 학습이 제대로 되지 않을 수 있음
  • 딥러닝에서는 손실함수와 활성화 함수(softmax, sigmoid 등)를 함께 고려해야 함

profile
공부해서 남주자

0개의 댓글