머신러닝에는 지도학습과 비지도학습이 있다.
그 중 지도학습에 대해 다루어보겠다.
지도학습은 언제 사용할까?
데이터셋에 정답이 있는 경우 사용한다.
데이터(label)중 하나가 결괏값이 되는 데이터셋에 대하여 지도학습 알고리즘을 적용한다.
이러한 지도학습에는 "회귀"와 "분류"가 있다.
그림 출처: 생활코딩
분류란?
예측하고자 하는 값(종속변수)이 범주형 데이터일 때 주로 사용하는 머신러닝 방법이다.
이진분류, 다중분류가 있다.
▶ 대표적인 분류 알고리즘: 로지스틱 회귀, 나이브베이즈, 의사결정트리, 서포트 벡터 머신, k-최소 근접, 심층 신경망, 앙상블 학습(voting, bagging, boosting, stacking)
앙상블 학습?
> 보팅: 하나의 데이터 셋에서 "다양한 알고리즘의 분류기"를 사용해 예측한 값을 "결합"
> 배깅: 한 가지의 알고리즘 분류기를 통해 "다양한 데이터셋 각각"을 학습시켜 예측한 값을 "결합"
> 부스팅: 여러 개의 분류기를 학습하면서 앞서 예측을 진행한 분류기가 예측 틀린 데이터에 대해 "가중치(weight)"를 부여하여 다음 분류기의 학습을 진행
> 스태킹: 미리 다른 알고리즘 분류기로 예측한 값을 다시 학습용 데이터로 만들어 다른 분류기에 "재학습"시키는 방식
logistic regression 로지스틱 회귀
데이터가 특정 범주에 속할 확률을 0에서 1사이 값으로 예측하고, 그 확률에 따라 더 높은 범주에 속하는 것으로 분류해주는 2진 분류 알고리즘이다.
✔ 사이킷런(sklearn)에서의 학습
하이퍼 파라미터
linear regression 선형 회귀
✔ 특징
특징 1. 독립변수와 종속변수가 선형 관계이다.
특징 2. 데이터에 아웃라이어가 없다.
특징 3. 오차항은 평균이 0이고 분산이 일정한 정규분포를 갖는다.
특징 4. 오차항은 자기 상관성(시계열에서의 주기성 같이 일정한 패턴을 가진 경우)이 없다.
특징 5. 오차항과 독립변수는 서로 독립이다.
✔ 사이킷런(sklearn)에서의 학습
하이퍼 파라미터
decision tree 의사결정트리
"분류 규칙"을 통해 데이터를 분류 또는 회귀하는 모델이다.
random forest 랜덤 포레스트
앙상블 머신러닝 모델로 다수의 의사결정 트리를 만들고, 그 나무들의 분류를 집계해서 최종적으로 분류한다.
gradient boosting 그래디언트 부스팅
Support Vector Machine 서포트 벡터 머신
Neural Network 인공신경망
참고한 자료