본문 바로가기

공부/데이터

지도학습(Supervised Learning) 알고리즘 이해와 주요 알고리즘 정리

지도학습(Supervised Learning)이란?

지도학습(Supervised Learning)은 머신 러닝의 중요한 범주 중 하나로, 주어진 입력에 대해 정확한 출력(레이블)을 예측하는 과정이다. 이 방식에서는 학습 데이터(Training Data)와 함께 정답 레이블(Label)이 제공되며, 이를 통해 알고리즘이 데이터의 패턴을 학습하고 미래 데이터에 대한 예측을 수행한다. 

 

각 변수들을 간단하게 표현하면 다음과 같다. 

  • 레이블(Label): 각 데이터 포인트에 대한 정답 혹은 결과값
  • 특성(Feature): 데이터의 입력 변수들
  • 학습(Training): 모델이 데이터로부터 학습하는 과정
  • 예측(Prediction): 학습된 모델을 사용하여 미지의 데이터에 대한 결과를 예측

지도학습의 주요 알고리즘

1. 선형 회귀(Linear Regression)

선형 회귀는 지도학습에서 가장 기본적인 알고리즘 중 하나로, 연속적인 값을 예측하는 데 사용된다. 이 방법은 독립 변수(입력 변수)와 종속 변수(예측하고자 하는 값) 간의 선형 관계를 모델링한다. 선형 회귀는 데이터 포인트들 사이에서 최적의 선형 관계를 찾아내기 위해 최소제곱법을 사용하여 오차를 최소화하는 선을 찾는 방식이다.

이러한 알고리즘을 적용할 수 있는 예시로, 주택의 크기와 가격 사이의 관계를 분석하여 주택 가격을 예측하거나 기온 변화에 따른 에너지 소비량을 예측하는 데 사용된다.

2. 로지스틱 회귀(Logistic Regression)

로지스틱 회귀는 분류 문제, 특히 이진 분류 문제에 주로 사용되는 알고리즘이다. 이름은 회귀라고 되어 있지만, 실제로는 분류를 수행한다. 로지스틱 회귀는 선형 회귀와 유사하지만, 출력값을 로지스틱 함수를 통해 0과 1 사이의 값으로 제한하여, 특정 클래스에 속할 확률을 모델링한다.

이를 이용한 예로는 이메일이 스팸인지 아닌지를 분류하거나, 환자가 특정 질병을 가지고 있는지 예측하는 데 사용된다.

3. 결정 트리(Decision Tree)

결정 트리는 데이터를 여러 기준에 따라 나누어 분류하거나 값을 예측하는 모델이다. 이 알고리즘은 데이터를 잘게 쪼개는 결정 규칙을 학습한다고 생각하면 된다. 결정 트리는 데이터를 분할하는 데 가장 유용한 속성을 선택하여, 트리 구조의 분기점을 형성한다. 각 분기점에서 데이터는 더 작은 하위 집합으로 나누는 방식을 취한다.

이 예로는 고객의 소득 수준, 구매 이력 등을 기반으로 신용 점수를 평가하거나 고객 세분화에 사용된다.

4. 랜덤 포레스트(Random Forest)

랜덤 포레스트는 여러 개의 결정 트리를 조합하여 사용하는 앙상블 학습 방법으로 단일 결정 트리의 한계를 극복하고 더 강력한 모델을 만들기 위해 사용된다. 랜덤 포레스트는 다수의 결정 트리를 생성하고, 각 트리의 예측을 결합하여 최종 결정을 내린다. 이 과정에서 각 트리는 무작위로 선택된 데이터 샘플과 특성을 사용하여 학습한다.

예로는 주식 시장의 가격 변동 예측, 의료 분야에서 질병의 위험도 평가 등에 사용된다.

5. 서포트 벡터 머신(Support Vector Machine, SVM)

서포트 벡터 머신은 복잡한 분류 문제에 적합한 강력한 알고리즘으로, 이는 특히 고차원 데이터에서 잘 작동한다. SVM은 데이터 포인트를 고차원 공간에 매핑하고, 이들을 가장 잘 분리하는 경계(결정 경계)를 찾는다. 이 경계는 서포트 벡터라고 하는 가장 가까운 데이터 포인트에 의해 결정된다.

예로는 이미지 인식, 바이오인포매틱스 데이터 분석 등 복잡한 분류 문제에 사용된다.

6.최근접 이웃(K-Nearest Neighbors, KNN)

KNN 알고리즘은 가장 가까운 'K'개의 이웃 데이터를 기반으로 분류하거나 회귀를 수행하며, 이는 이웃의 다수결 또는 평균을 통해 예측을 결정한다.

예로는 소비자의 구매 경향 예측, 영화 추천 시스템 등에 사용된다.

7. 나이브 베이즈(Naive Bayes)

나이브 베이즈는 베이즈 정리를 기반으로 하며, 특성들이 서로 독립적임을 가정하여 각 클래스의 조건부 확률을 계산하여 분류를 수행하는 방식이다.

예로는 스팸 이메일 필터링, 감정 분석 등에 적용할 수 있다.

8. 인공 신경망(Artificial Neural Networks, ANN)

인공 신경망은 뇌의 신경망을 모방한 구조로, 여러 층의 노드(뉴런)들로 구성되는데, 이 노드들은 가중치와 활성화 함수를 통해 신호를 처리하고 전달하는 역할을 한다.

이는 손글씨 인식, 음성 인식, 이미지 분류 등에 활용된다.

 

 

지도학습은 머신 러닝에서 가장 널리 사용되는 방법 중 하나이다. 다양한 알고리즘을 통해 복잡한 문제를 해결하고, 실제 세계의 데이터를 이해하는 데 도움을 준다. 이러한 알고리즘들은 문제와 데이터 유형에 따라 적절한 알고리즘을 선택하는 것이 중요하다.