4장 분류
1 분류(Classification)의 개요
- 지도학습은 label, 명시적인 정답이 있는 데이터가 주어진 상태에서 학습하는 머신러닝 방식
- 지도학습의 대표적인 유형인 분류는 학습 데이터로 주어진 데이터의 피처와 레이블값을 머신러닝 알고리즘으로 학습 모델을 생성하고, 생성된 모델에 새로운 데이터값이 주어졌을 때 미지의 레이블 값을 예측하는 것
- 다양한 머신러닝 분류 알고리즘
- Naive Bayes : 베이지 통계와 생성 모델에 기반
- Logistic Regression : 독립변수와 종속변수 간 선형 관계성에 기반 (이름은 회귀지만 실제로는 분류 모델)
- Decision Tree : 데이터 균일도에 따른 규칙 기반의 결정 트리
- Support Vector Machine : 개별 클래스 간의 최대 분류 마진을 효과적으로 찾음. 두 개의 군집을 잘 분류하는 직선을 구함
- Nearest Neighbor : 근접 거리를 기준으로 하는 최소 근접 알고리즘
- Neural Network : 심층 연결 기반 신경망
- Ensemble : 서로 다른 머신러닝 알고리즘을 결합. 개별 모델을 조합하여 최적 모델로 일반화
2 결정 트리
- ML 알고리즘 중 가장 직관적으로 이해하기 쉬운 알고리즘
- 데이터에 있는 규칙을 학습을 통해 자동으로 Tree 기반의 분류 규칙을 만듦
- 가장 처음 노드 : 루트 노드
- 부모 노드에서 분할되어 새로운 조건이 만들어지는 노드 : 규칙 노드
- 결정된 분류값 : 리프 노드
- 서브트리 : 새로운 규칙 조건마다 규칙 노드 기반의 서브트리 생성
- 많은 규칙이 있다는 것은 곧 분류를 결정하는 방식이 복잡해진다는 것 -> 과적합으로 이어지기 쉬움
- 적은 결정 노드로 높은 정확도를 가지려면 데이터를 분류할 때 최대한 많은 데이터세트가 해당 분류에 속할 수 있도록 결정 노드의 규칙이 정해져야 함
- 어떻게 트리를 분할할 것인가
- 최대한 균일한 데이터 세트를 구성할 수 있도록 분할하는 것이 필요
- 정보의 균일도를 측정하기 위해 엔트로피를 이용한 정보이득 지수와 지니 계수를 사용
- 엔트로피 : 주어진 데이터 집합의 혼잡도를 의미함
- 정보 이득 지수 : 1-엔트로피
- 지니계수 : 경제학에서 불평등 지수를 나타낼 때 사용하는 계수. 0이 가장 평등. 1에 가까워질 수록 불평등. 지니계수가 낮다-> 데이터 균일도가 높다
- 사이킷런 결정 트리 알고리즘은 지니 계수를 이용해 데이터세트를 분할
- 정보이득지수가 높거나 지니계수가 낮은 조건을 찾아서 자식 트리 노드에 걸쳐 반복적으로 분할한 뒤, 데이터가 모두 특징 분류에 속하게 되면 분할을 멈추고 분류를 결정
결정 트리 모델의 특징
- 정보의 균일도라는 툴을 기반으로 해서 알고리즘이 쉽고 직관적
- 정보의 균일도만 신경쓰면 되기 때문에 피처 스케일링, 정규화와 같은 전처리 작업이 적어짐
- 트리 모델은 과적합으로 정확도가 떨어지는 단점이 있음
- 이를 극복하기 위해 트리의 크기를 사전에 제한하는 하이퍼 파라미터 튜닝 필요
결정 트리 모델의 시각화
- graphviz 패키지를 활용해 쉽게 시각화 가능
- 결정 트리는 어떤 속성을 규칙 조건으로 선택하느냐가 중요
결정 트리 과적합
- 결정 트리가 어떻게 학습 데이터를 분할해 예측을 수행하는지와 이로 인한 과적합 문제를 시각화
- 사이킷런에서 제공하는 분류를 위한 테스트용 데이터를 make_classification() 함수로 생성
'데이터분석 공부 > DSBA 4기' 카테고리의 다른 글
21/03/24 TIL (앙상블 학습, Voting, Bagging, Boosting, Random Forest, GBM, XGBoost, LightGBM) (0) | 2024.03.22 |
---|---|
20/03/24 TIL(KNN 알고리즘, 서포트 벡터 머신) (0) | 2024.03.20 |
18/03/24 TIL 분류 성능 평가 지표(정확도, 오차행렬, 정밀도, 재현율, F1 스코어) (0) | 2024.03.18 |
03/15/2024 TIL (0) | 2024.03.15 |
12/03/2024 TIL (1) | 2024.03.12 |