의사결정나무란?(Decision Tree, DT)
전체 자료를 몇 개의 소집단으로 분류하거나 예측을 수행하는 분석 방법
(장점) 쉽고 해석 가능, 다중분류/회귀 모두 적용 가능, 스케일링 불필요
(단점) 과적합 발생, 불안정성
- sklearn.tree.DecisionTreeClassifier
- sklearn.tree.DecisionTreeRegressor
[기본용어 설명]
- 루트 노드(Root Node): 의사결정나무의 시작점. 최초의 분할조건
- 리프 노드(Leaf Node): 루트 노드로부터 파생된 중간 혹은 최종 노드
- 분류기준(criteria): sex는 여성인 경우 0, 남성인 경우 1로 인코딩. 여성인 경우 좌측 노드로, 남성인 경우 우측 노드로 분류
- 불순도(impurity)
- 불순도 측정 방법 중 하나 인 지니 계수는 0과 1사이 값으로 0이 완벽한 순도(모든 샘플이 하나의 클래스), 1은 완전한 불순도(노드의 샘플의 균등하게 분포) 됨을 나타냄
- 리프 노드로 갈수록 불순도가 작아지는(한쪽으로 클래스가 분류가 잘되는)방향으로 나무가 자람
- 샘플(samples): 해당 노드의 샘플 개수(891개의 관측치)
- 값(value): Y변수에 대한 배열. 549명이 죽었고(Y = 0), 342명이 살았음(Y = 1)
- 클래스(class)
- 가장 많은 샘플을 차지하는 클래스를 표현
- 위에서는 주황색(Y = 0 다수), 파란색(Y=1 다수)를 표현
랜덤포레스트란?(Random Forest, RF)
여러개의 의사결정나무를 만들어 다수결에 따라 결론 도출 >> DT의 단점 보안
(장점) 과적합 방지, 스케일링 불필요, 변수 중요도 > 모델 해석 특징 파악
(단점) 비용, 해석 어려움(앙상블)
- sklearn.ensemble.RandomForestClassifer
- sklearn.ensemble.RandomForestRegressor
배깅(Bagging)의 원리
- Bootstrapping: 데이터를 복원 추출해서 유사하지만 다른 데이터 집단을 생성하는 것
- Aggregating: 데이터의 예측,분류 결과를 합치는 것
- Ensemble(앙상블): 여러 개의 모델을 만들어 결과를 합치는 것

최근접 이웃(KNN)

확인할 주변 데이터 K개를 선정 후에 거리 기준으로 가장 많은 것으로 예측
(장점) 직관적(이해쉬움), 모집단 고려X, 회귀/분류 가능
(단점) 계산 복잡, 거리 기반이라 피처의 표준화 필요
- sklearn.neighbors.KNeighborsClassifier
- sklearn.neighbors.KNeighborsRegressor
[기본 용어 정리]
- 파라미터: 머신러닝 모델의 학습 과정에서 추정하는 내부 변수 (자동 결정)
- 하이퍼 파라미터: 데이터 과학자가 모신러닝 모델의 학습 과정에서 관리하는 외부 구성변수
- 유클리드 거리: 두 좌표의 직선 거리

부스팅 알고리즘
여러 개의 약한 학습기(weak learner)을 학습하면서 잘못 예측한 데이터에 가중치를 부여하여 오류 개선

1. Gradient Boosting Model
가중치 업데이트 > 경사하강법
- sklearn.ensemble.GradientBoostingClassifier
- sklearn.ensemble.GradientBoostingRegressor
2. XGBoost(pip install xgboost)
트리기반 앙상블 기법 > Kaggle의 상위 알고리즘
(장점) 병렬학습 가능 > 빠른 속도
- xgboost.XGBRegressor
- xgboost.XGBRegressor
3. LightGBM(pip install lightbm)
(장점) 학습시간이 짧고 메모리 사용량 적음
(단점) 작은데이터에는 과적합 발생
- lightgbm.LGBMClassifier
- lightgbm.LGBMRegressor
'강의자료 > 머신러닝의 이해와 라이브러리 활용' 카테고리의 다른 글
| 7강. 딥러닝 (07.02) (0) | 2025.07.02 |
|---|---|
| 6강. 비지도학습 (07.02) (0) | 2025.07.02 |
| 4강. 데이터 분석 프로세스(06.30, 07.01) (2) | 2025.07.01 |
| 3강. 로지스틱회귀(범주/카테고리 분류)(06.26,27) (1) | 2025.06.30 |
| 2강. 회귀분석(선형회귀 정의 및 단순선형회귀 실습)(06.23,06.24) (0) | 2025.06.24 |