[머신러닝] 머신러닝의 기초

머신러닝 학습을 시작하기 위해 기본 개념들을 학습할 필요성을 느꼈다.

아는 만큼 보인다는 말이 있듯이 기본적인 용어들을 정리하며 학습해보고자 한다.


머신러닝의 기본 개념 및 방법론의 분류

머신러닝은 인공 지능(AI)의 한 분야로, 컴퓨터가 학습을 통해 스스로 성능을 향상시키는 능력을 갖추게 하는 기술이다. 이는 데이터를 통해 학습하고, 그 학습 결과를 바탕으로 예측, 분류, 군집화 등의 작업을 수행할 수 있다.

먼저 머신러닝의 방법론은 크게 세 가지로 분류할 수 있다.

  1. 지도 학습(Supervised Learning) : 지도 학습은 입력 데이터(input)와 그에 상응하는 출력 데이터(output) 쌍을 통해 학습하는 방법이다. 즉, 지도 학습의 목표는 새로운 입력 데이터가 들어왔을 때 이를 잘 예측하는 모델을 만드는 것이다. 예를 들어 스팸 메일 필터링, 집값 예측 등이 지도 학습의 예시이다.
  2. 비지도 학습(Unsupervised Learning) : 비지도 학습은 출력 데이터 없이 입력 데이터만을 가지고 학습하는 방법이다. 그러므로 비지도 학습의 목표는 데이터의 내재된 구조나 패턴을 찾는 것이다. 예를 들어, 고객 세분화, 이상치 탐지 등이 비지도 학습의 예시이다.
  3. 강화 학습(Reinforcement Learning) : 강화 학습은 환경과의 상호작용을 통해 학습하는 방법이다. 강화 학습의 목표는 보상을 최대화하는 일련의 행동을 학습하는 것이다. 예를 들어 체스 또는 바둑 AI, 자율주행 자동차 등이 강화 학습의 예시이다.

각각의 방법론은 다른 특성과 용도를 가지고 있으므로, 문제의 유형에 따라 적절한 방법론을 선택하는 것이 중요하다!

 


머신러닝 모델의 검증 및 평가

머신러닝 모델을 만들고 검증하는 과정은 복잡하고 주의를 요한다. 이를 이해하기 위해 몇 가지 핵심 개념을 살펴보고자 한다.

  1. 과대적합(Overfitting): 모델이 훈련 데이터에 과도하게 적합되어 새로운 데이터에 대한 예측력이 떨어지는 현상이다. 즉, 훈련 데이터의 오차는 작지만 테스트 데이터의 오차는 큰 경우를 말한다. 과대적합은 모델의 복잡도가 높아질수록 발생하기 쉽다
  2. 과소적합(Underfitting): 모델이 너무 단순하여 데이터의 패턴을 충분히 파악하지 못하는 현상이다. 이 경우 모델의 성능이 낮아진다.
  3. 편향-분산 트레이드오프(Bias-Variance Trade off): 모델의 복잡도가 증가하면 분산은 증가하고 편향은 감소한다. 반대로 모델의 복잡도가 감소하면 분산은 감소하고 편향은 증가한다. 이 둘 사이의 균형을 잘 맞추는 것이 중요하다.

과대적합을 막는 방법으로는 훈련 데이터를 많이 확보하거나, 모델의 복잡도를 낮추는 방법이 있다.

복잡도를 낮추는 방법으로는 특성 변수의 수를 줄이거나, 파라미터에 규제를 적용하는 방법이 있다.

 

모델 평가는 모델이 새로운 데이터에 얼마나 잘 일반화될 수 있는지를 파악하는 과정이다. 이를 위해 훈련 데이터와 평가 데이터를 구분하여 사용한다. 일반적으로 데이터를 훈련 데이터, 검증 데이터, 테스트 데이터 세 가지로 나눈다.

  1. 훈련 데이터 (Training data): : 모델을 학습시키는 데 사용된다.
  2. 검증 데이터 (Validation data) : 모델의 하이퍼파라미터를 조정하거나 변수 선택 등을 위해 사용된다.
  3. 테스트 데이터 (Test data) : 모델의 최종 성능을 평가하는 데 사용된다.

이때 데이터가 충분하지 않은 경우에는 K-fold 교차 검증 기법을 사용하여 모델의 성능을 평가한다. 이는 데이터를 K개의 그룹으로 나누고, 각 그룹을 테스트 데이터로 사용해 모델의 성능을 평가하는 방법이다. 이 과정을 K번 반복하여 얻은 예측 오차의 평균을 통해 모델의 성능을 평가한다.