본문 바로가기
스터디 복습

지도 학습

by 김복칠 2024. 3. 20.

1. 개념 정리

  • 지도 학습이란 정답이 주어진 데이터를 학습 한 뒤 입력된 데이터의 정답을 예측하는 방식 (회귀, 분류)
  • 피쳐(Feature)와 라벨 (label)을 같이 학습시킨다는 점이 가장 큰 특징
  • 지도 학습은 시간이 많이 사용되며 메모리 사용량도 높을 수 있음
  • 정해진 label을 같이 학습시키기 때문에 데이터셋의 신뢰도가 중요함
  • label을 지정해서 학습하기 때문에 결과가 고정적이며 그 이상을 벗어나지 않음

2. 분류

  • 말 그대로 분류를 뜻하며 지도학습의 일종
  • 데이터를 주어진 범주(class) 안에서 예측
  • 패턴 인식이 뛰어나 이미지 인식과 같은 분야에서 많이 사용 (ex. 개와 고양이 분)
  • 분류의 종류에는 이진분류(Binary Classification)와 다중분류(Muiti Classification)로 나뉨 

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

  • 이름은 회귀지만 분류의 한 요소
  • 둘 중의 하나를 결정하는 문제(이진 분류)를 풀기 위한 대표적인 알고리즘
  • 독립변수와 종속변수의 선형 관계성을 기반으로 만들어졌으며 이에 따른 결과를 0,1 사이의 확률값으로 변환(시그모이드 함수)
  • 학습 속도가 빠르기 때문에 대용량 데이터셋에 적용하기 쉬움
  • 분류모델이지만 확률을 구할 수 있음
  • 데이터가 복잡해지면 성능이 떨어진다는 단점이 있음

2-2. 서포트 벡터 머신(SVM)

  • 클래스들 간의 경계를 나타내는 결정 경계를 찾는 것
  • 이 결정 경계는 두 클래스 간의 최대 마진을 갖도록 함
  • 이때 마진은 경계와 가장 가까운 데이터 포인트(서포트 벡터)까지의 거리를 의미
  • 경계를 찾는 과정에서 최대 마진을 찾으므로 일반화 성능이 높음

2-3. 의사 결정 나무(Decision tree)

  • 데이터 특성에 따라 결정 규칙을 학습하고 이를 통해 입력 데이터를 분류 또는 예측하는 모델
  • 예측 과정 및 결과에 대한 설명이 가능하므로 근거를 이해하기 쉬움(해석력이 뛰어남)
  • 모델 구축이 비교적 빠르며 큰 데이터셋에도 적용 가능
  • 과적합 가능성이 높다는 단점이 있음
  • 휴리스트 알고리즘에 의해서 계산 순간에만 집중한다는 단점이 존재
  • 데이터 구성이 불균형 적이면(민감하면) 성능이 월등하게 떨어짐
  • 이를 방지하기 위해 적절한 하이퍼파라미터 튜닝 및 앙상블 기법을 같이 사용하는것이 좋음

의사결정 나무의 단점
의사결정 나무 알고리즘 중 하나인 CART에 대한 설명

2-4. 랜덤 포레스트

  • 분류와 회귀에 사용되는 지도학습 알고리즘으로 여러 개의 의사결정나무를 조합한 모델
  • 의사결정나무에 배깅(앙상블 기법 중 하나)을 적용하여 만들어진 앙상블 모델 중 하나로 가장 대표적인 모델
  • 사용된 배깅 기법은 Bootstrapping 으로 데이터를 반복복원추출 하여 데이터를 재구성 하였음
  • 작동 방식
    • 데이터의 부트스트랩 샘플 생성
    • 랜덤한 특성 선택
    • 결정 트리의 생성
    • 투표로 예측 수행
  • 장점
    • 다양한 종류의 데이터에 대해 뛰어난 성능을 보이며 과적합에 강함
    • 자체적인 피처 중요도를 알려주는 함수인 predict_proba 사용 가능
    • 랜덤 포레스트는 병렬 처리에 용이하며 대규모 데이터셋에 대해서도 효율적으로 처리가능
  • 단점
    • 여러 개의 결정 트리를 결하반 앙상블 모델이므로 각각의 결정 트리보다는 해석이 여러울 수 있음
    • 트리의 개수가 증가하면 모델이 복잡해지고 학습 데이터에 과적합될 가능성이 있음
    • Bootstrapping 으로 인해서 OOB 가 발생할 수 있으며 이 수치에 따라서 학습 과정을 재고해야함

3. 앙상블(Ensemble)

  • 여러 개의 기본 모델을 활용하여 하나의 새로운 모델을 만들어내는 개념
  • 기존 모델의 과적합을 감소시키며 학습 후의 성능이 향상되는 효과를 볼 수 있음
  • 대표적으로 보팅, 배깅, 부스팅, 스태킹이 있음

3-1. 보팅(Voting)

  • 여러 개의 분류기가 투표를 통해 최종 예측 결과를 결정하는 방식
  • 일반적으로 서로 다른 알고리즘을 가진 분류기를 결합하는 것
  • 하드 보팅 : 다수결 원칙으로 예측한 결과값들 중 다수의 분류기가 결정한 예측값을 최종 보팅의 결과값으로 선정하는 것
  • 소프트 보팅 : 분류기들의 레이블 값 결정 확률을 모두 더하고 이를 평균해서 이들 중 확률이 가장 높은 레이블 값을 최종 보팅 결과값으로 선정
  • 분류에서는 둘 다 사용하고 회귀에서는 소프트 보팅만 사용(분류도 일반적으로 소프트 보팅을 사용)

3-2. 배깅(Bagging)

  • 모델을 다양하게 만들기 위해 데이터를 재구성
  • 샘플을 여러 번 뽑아 각 모델을 학습시켜 결과물 집계
  • 학습 데이터가 충분하지 않더라도 충분한 학습효과를 주어 높은 bias(예측값과 실제값의 차이)나 underfitting 문제, 높은 variance로 인한 overfitting문제를 해결하는데 도움이 됨
  • 분류와 회귀 모두 사용 가능하며 주로 의사결정나무에서 많이 사용되지만 다른 알고리즘에서도 사용 가능

3-3. 부스팅(Boosting)

  • 앞에서 예측한 분류기에서 틀린 부분에 있어 가중치를 부여
  • 틀린 부분에 있어서 더 잘 맞출 수 있도록 하는 개념
  • 약 검출기들을 여러 개 모아 강 검출기를 생성하는 방법

부스팅과 배깅의 차이

4. 회귀

  • 시계열 데이터를 취급할 때 사용되는 기법
  • 입력 변수와 출력 변수(예측하려는 변) 사이의 관계를 모델링하는 기술
  • 분류와의 가장 큰 차이점은 연속형 출력 변수의 경우에는 회귀 기술을 사용하고, 범주형 출력 변수의 경우에는 분류 기술을 사용

※ 시계열 데이터  - 시간적인 변화를 연속적으로 관측한 데이터

4-1. 선형 회귀

  • 간단하면서도 강력한 통계 기법 중 하나로 주로 연속형 변수의 관계를 설명하고 예측하는데 사용
  • 종속 변수와 하나 이상의 독립 변수 간의 선형 관계를 모델링하며 관계를 직선으로 나타냄
  • 즉, 독립 변수의 값이 변함에 따라 종속 변수의 값도 일정한 비율로 변화
  • 사용되는 분야 : 주택 가격 예측, 광고 비용에 따른 매출액 예측, 기온에 따른 아이스크림 판매량을 예측 등
  • 평가 지표 : MSE, MAE, RMSE 중 RMSE를 가장 많이 사용

4-2. 논리 회귀

  • 주로 범주형 변수의 결과를 예측하는데 사용하며 이진 분류 문제 또는 다중 클래스 분류를 해결하는데 유용
  • 선형 회귀를 사용해서 분류를 예측한다면 제대로 예측하지 못할 경우가 생길 수 있어서 Sigmoid 함수를 사용하여 정확도를 높일 수 있음