[머신러닝] 예측함수

Taegang Yun·2023년 12월 15일
1

[머신러닝]

목록 보기
4/5

예측함수의 성능평가

  • 예측함수가 뽑아내는 출력 값이 실제 값에 가까운 경우가 자주 있을수록, 좋은 모델이라 할 수 있음.

  • 예측함수 모델을 개선시키기 위해선 6가지를 해볼 수 있음
    1) 더 많은 데이터를 수집
    2) 더 적은 특징 값을 수집(overfitting 방지)
    3) 더 많은 특징 값을 사용
    4) 새로운 수학적 특징 값 추가
    5) 정규화 파라미터 줄이기 (underfitting 방지)
    6) 정규화 파라미터 늘리기 (overfitting 방지)

  • 성능 향상을 위해 어떤 방법을 사용할 지 정하기 위해 Diagnostic Algorithm을 사용함.

  • 예측함수 그래프 그려보기, 샘플 데이터 셋의 70%는 학습에 사용, 30%는 검증에 사용

  • Misclassification Rate (잘못 분류된 데이터의 개수 / 전체 데이터 개수)

최적 모델의 선택

  • 일반화 오류 : 학습할 때 사용된 데이터에 관한 오차는 적지만, 새로운 데이터에 대해선 적절한 결과를 도출하지 못하는 문제
  • 그래서 예측함수의 모델을 적절하게 정하는 것이 중요
  • 따라서 주어진 학습 데이터를 training, Cross Validation, Test로 나눔
  • Training set을 이용해 w를 구하고, Cross validation을 이용해 비용함수가 제일 적게 나오는 모델을 선택.
  • Test set을 이용해서 일반화 성능을 확인.

Bias와 Variance

  • Bias : 모델이 나타내는 예측 값과 실제 값과의 차이
  • Variance : 주어진 데이터에 대해서 모델의 예측 값이 얼마나 변동성이 있는지 나타낸 값
  • High Bias (Underfitting), High Variance (Overfitting)
  • Variance와 Bias를 동시에 줄여야만 전체 오차 값이 감소함
  • 이를 위해선 적절한 정규화 파라미터(람다) 의 선정이 필요함

학습곡선

  • 학습 곡선은 학습 알고리즘이 잘 동작하고 있는지 체크하는데 직관적인 도움을 줌
  • 가로축은 데이터의 개수, 세로축은 에러
  • 데이터가 많아질수록, Cross Validation 비용함수의 에러는 줄어들고, Training 비용함수의 에러는 늘어남.
  • High Bias(underfitting) 이 발생하면 데이터 개수를 늘려도 training 에러가 줄어들지 않음
  • High Variance(overfitting) 이 발생하면 데이터 개수를 늘리는 것이 도움이 됨.

머신러닝 시스템 설계시 고려사항

  • 정확도로는 머신러닝이 얼마나 잘 구현되었는지 판단 불가
  • 스팸 메일인지 아닌지를 판단하는 classification 수행 모델을 예로 듦
  • Honeypot Project : 가짜 이메일 주소, 스팸 메일 모델 학습

오차 분석 방법

  • Classification 모델이 잘 못 분류를 했을 때, 어떤 형태가 어떻게 잘 못 분류되었는지 분석해 볼 필요가 있음
  • 수치로 된 평가 척도 -> 알고리즘이 얼마나 잘 작동하고 있는지 알 수 있게 함

불균형 데이터의 경우 오차 척도

  • 불균형 데이터 : 데이터의 부류 별로 데이터의 개수가 크게 차이 나는 경우
  • 숫자적인 척도가 아닌, 다른 척도를 사용해서 학습 모델의 성능을 평가해야 할 필요가 있다.
  • Precision : 참이라고 판단한 케이스 중, 진짜 참인 케이스의 비율
  • Recall : 실제 참인 케이스 중, 참이라고 판단한 케이스의 비율
  • Error Rate : 모든 케이스 중, 잘못 판단한 케이스의 비율
  • Accuracy : 1 - Error Rate
  • Specificity : 실제 거짓인 케이스 중, 거짓이라고 판단한 케이스의 비율
  • False Positive Rate : 실제 거짓인 케이스 중, 거짓을 참이라고 판단한 케이스의 비율
  • Threshold : 1과 0을 구분하는 기준

Threshhold가 커지면 Precision이 1에 가까워짐. 작아지면 recall 이 1에 가까워짐

조화평균을 사용해서 threshold..

학습 데이터가 많을수록 학습 모델의 정확도가 상승.

profile
언젠간 전문가가 되겠지

0개의 댓글