머신러닝을 공부하다 보면 자주 등장하는 개념들이 있습니다. 처음엔 어려울 수 있지만 한 번 이해하고 나면 공부가 훨씬 더 쉬워질 것입니다. 그럼 지금부터 머신러닝 필수 개념 몇 가지를 소개해드리도록 하겠습니다. 먼저, 소개해드릴 것은 분류와 회귀입니다.

분류와 회귀의 차이점은 데이터가 입력되었을 때 분류는 분리된 값으로 예측합니다. 회귀는 연속된 값으로 예측한다는 데 차이가 있습니다. 날씨를 예로 들어보면 분류는 덥다와 춥다 같이 분리된 값으로 예측을 합니다. 회귀는 30도, 31도처럼 연속된 수치로 예측합니다.
1. 분류와 회귀
분류는 데이터가 입력됐을 때 지도학습을 통해 미리 학습된 레이블 중 하나 혹은 여러 개의 레이블로 예측하는 것입니다. 이진분류라는 것이 있습니다. 예, 아니오와 같이 둘 중 하나의 값으로 분류하는 경우를 말합니다. 빨간색, 노란색, 파란색 중 하나의 색으로 분류한다거나 0에서 9까지 손글씨 숫자 중 하나의 숫자로 분류하기처럼 여러 개의 분류값 중 하나의 값으로 예측하는 문제를 다중분류라고 합니다. 데이터가 입력됐을 때 두 개 이상의 레이블로 분류할 경우 다중 레이블 분류라고 합니다.
회귀는 입력된 데이터에 대해서 연속된 값으로 예측합니다. 앞서 예를 들었던 날씨를 더움과 추움으로 예측하는 분류와 다르게 회귀는 35도, 36도와 같이 정해진 레이블이 아닌 연속성을 가진 수치로 예측합니다.
2. 과대적합과 과소적합
머신러닝 모델 학습에 영향을 주는 것은 데이터입니다. 데이터에서 충분히 특징을 찾아내지 못하고 머신러닝 모델을 학습할 경우 모델이 과소적합되기 쉽고 필요 이상의 특징으로 학습할 경우 모델이 과대적합 되기 쉽습니다. 수학적으로 데이터에서 특징을 필요 이상으로 추출할 경우 분산이 높아지고 반대로 필요이하로 추출하면 편향이 높아집니다. 분산과 편향을 기준으로 과대적합과 과소적합을 표현합니다. 최적의 모델은 분산과 편향이 균형된 모델입니다.
2.1. 과소적합
과소적합은 모델 학습 시 충분한 데이터의 특징을 활용하지 못했을 때 발생합니다. 예를 들어보겠습니다. 사물을 보고 공을 구분하는 머신러닝 모델을 만든다고 해보겠습니다. 야구공과 농구공을 분류값 공으로 두고 생김새는 동그라미로 설정했습니다. 그리고 포도알은 분류값을 과일로 하고 생김새를 동그라미로 했습니다. 데이터 특징으로 생김새 밖에 없기 때문에 동그라미라면 공이라는 간단한 머신러닝 분류기를 만들 수 있습니다. 그런데 이 분류기는 학습 데이터에 대해서도 높은 정확도를 가지지 못합니다.
공을 구별할 수 있는 특징이 너무 적기 때문입니다. 현재 가지고 있는 데이터에 대해서도 정확도가 낮게 측정됩니다. 다가올 실제 데이터에 대해서도 높은 정확도를 예상하기 어렵습니다. 충분하지 못한 특징만으로 학습되어 특정 특징에만 편향되게 학습된 모델을 과소적합된 모델이라고 합니다.
2.2. 과대적합
학습 데이터에 필요 이상으로 특징을 발견해 학습 데이터에 대한 정확도는 상당히 높지만 테스트 데이터 혹은 학습 데이터 외의 데이터에는 정확도가 낮게 나오는 모델을 과대적합이라고 합니다. 과대적합 데이터를 피하기 위한 방법은 간단하고 확실한 답은 더 많은 데이터를 확보해 부족한 학습 데이터를 충분히 채우는 것입니다. 데이터가 충분하지 않고 모델이 과대적합됐을 경우 학습에 사용된 특징을 줄여보는 것도 좋은 방법입니다. 특징들의 수치값을 정규화함으로써 특정 특징에 의한 편향을 줄이는 것도 과대적합을 피하는 좋은 방법 중 하나입니다.