지도학습이란?

  • 컴퓨터에게 입력과 출력을 주고, 입력과 출력 간 관계를 학습하여 새로운 입력에 대해 적절한 출력을 내도록 하는 기계학습의 한 분야이다
  • 입력을 특징(feature) 혹은 특징 벡터(feature vector)라고 하며, 출력을 라벨(label)이라고 한다
  • 라벨이 범주형 변수면 분류라고 하며, 연속형 변수면 예측이라고 한다

과적합이란?

  • 지도학습 모델은 학습 데이터를 분류하고 예측하는 수준으로, 학습에 사용되지 않은 데이터도 정확히 분류하고 예측하리라 기대하며, 이러한 기대가 충족되는 경우 일반화되었다고 한다
  • 모델이 너무 복잡해서 학습 데이터에 대해서만 정확히 분류하고 예측하는 모델을 과적합되었다고 하며, 반대로 너무 단순해서 어떠한 데이터에 대해서도 부적합한 모델을 과소적합되었다고 한다
  • 과적합과 과소적합에 영향을 끼치는 주요 인자로는 모델의 복잡도, 샘플 수, 차원의 크기 등이 있다

차원의 크기가 클수록(특징이 많을수록) 가지고 있는 학습 데이터를 잘 설명하기에 좋기 때문에 학습 오차는 계속해서 줄어든다. 그러나 평가 오차는 어느정도 잘 설명하다가 새로운 데이터를 설명하는 과정에서 과적합이 일어날 위험이 크다.
정리하면 특징이 너무 적으면 과소적합이 일어나기 좋고 특징이 너무 많으면 과적합이 일어나기 좋다.

샘플 수는 많으면 많을수록 과적합에서 벗어난다. 샘플 수가 너무 많아서 생기는 문제는 계산량 문제를 제외하고는 없다.
샘플 수가 적으면은 가지고 있는 데이터로만 설명하기 때문에 학습 오차는 작고 평가 오차는 크다. 하지만 샘플 수가 많을수록 적정 적합이 되어서 평가 오차와 학습 오차가 거의 같아지는 지점이 오고, 어느 지점부터는 샘플 수가 더 늘어나도 평가 오차와 학습 오차가 크게 감소하지 않는 그런 패턴을 볼 수 있다.


데이터 분할

  • 과적합된 모델을 좋게 평가하는 것을 방지하기 위해서, 데이터를 학습 데이터와 평가 데이터로 분할한다

  • 학습 데이터와 평가 데이터가 지나치게 유사하거나 특정 패턴을 갖지 않도록 분할해야 한다

파라미터와 하이퍼 파라미터
하이퍼 파라미터(hyper parameter)는 일종의 사용자 옵션으로, 모델 성능에 직접적으로 영향을 끼치므로 자세한 데이터 탐색 결과를 바탕으로 선택해야 한다


이진 분류 모델 평가 : 혼동 행렬

  • 이진 분류:클래스 변수의 상태 공간이 크기가 2인 분류
  • 혼동 행렬:분류 모델을 평가하는데 사용하는 표

▶Positive class:분석의 관심 대상(보통 1로 설정)
▶Negative class:분석 관심 대상 외(보통 0이나 -1로 설정)
->학습 데이터인 x_train, y_train으로 모델을 학습한 후 평가 데이터인 x_test를 사용해서 예측 값을 구하고 실제 값인 y_test와 비교를 한 것

  • 각 지표의 한계 때문에, 가능한 여러 지표를 사용하여 모델을 평가해야 한다
이진 분류 모델 평가:대표적인 지표

다중 분류 모델 평가

  • 다중 분류:클래스 변수의 상태 공간이 크기가 3이상인 분류
  • 각 클래스를 긍정으로 간주하여 평가 지표를 계산한 뒤, 이들의 산술 평균(macro average), 가중 평균(micro average, weighted average)으로 평가한다


예측 모델 평가

  • 대표적인 예측 모델 평가 지표로 루트 평균 제곱 오차(root mean squared error; RMSE)와 평균 절대 오차(mean absolute error; MAE)가 있으며, 두 지표 모두 값이 작을수록 좋다

RMSE와 MAE를 정확히 평가하려면, 해당 분야의 도메인 지식이나 클래스 변수의 스케일을 고려해야 한다고 한다. 예를 들어, 코스피 지수를 예측하는 모델의 MAE가 1010이라면 무의미한 수준의 모델이지만, 전세계 인구 수를 예측하는 모델의 MAE가 1010이라면 매우 우수한 모델이라고 나타나있는데 이게 정확히 무슨 의미인지는 잘 모르겠다...

+ Recent posts