오늘은 머신러닝 지도학습 방법에 대해 정리해 보았다. 지난 글에 머신러징 지도학습으로써의 로지스틱을 다뤘으니 이번에는 그 외 지도학습 방식에 대해 간략히 정리해보겠다.
Ⅰ. k-NN (k-Nearest Neighbors)
k-NN은 "비슷한 데이터는 비슷한 범주에 속한다"는 가정을 기반으로 동작하는 분류 알고리즘이다. 새로운 데이터가 들어왔을 때, 주변에 있는 데이터 중 가장 가까운 k개의 이웃을 참고하여 분류한다.
1. 기본 개념
- 데이터 간 거리(distance)를 기준으로 유사성을 판단
- 가까운 데이터들이 속한 클래스 중 가장 많이 등장한 클래스로 예측
- 분류뿐만 아니라 이상치 탐지(outlier detection)에도 활용 가능
2. 거리 측정 방식
| 유클리드 거리 (Euclidean Distance) | 맨해튼 거리 (Manhattan Distance) |
|
|
3. 주요 파라미터
- n_neighbors : 고려할 이웃의 개수 (기본값: 5)
- weights : 예측에 사용되는 가중치
- uniform : 모든 이웃에 균일한 가중치 (기본값)
- distance: 가까운 이웃일수록 더 큰 가중치
- 일반적으로 기본값 사용 권장됨
- algorithm : 가장 가까운 이웃에 계산하는데 사용되는 알고리즘 (기본값: auto)
- p : 거리를 재는 방법
- 1 : 맨해튼거리
- 2 : 유클리드거리 (기본값)
4. k-NN 특징
구현이 간단하고 직관적이지만, 데이터가 많아질수록 계산 비용이 증가하고, 스케일에 민감해 정규화/표준화가 필수이다.
Ⅱ. Random Forest
Random Forest는 여러 개의 Decision Tree를 조합하여 예측 성능을 높인 앙상블 모델이다.
1. Decision Tree란?
- 데이터를 조건문(if-else)으로 쪼개서 예측하는 분류 머신러닝 모델
- 구조가 직관적이고 해석이 쉬움
- 하나의 트리만 사용 → 과적합 발생 가능성 높음
2. 동작 원리
여러 개의 Decision Tree를 무작위로 생성
→ 각 트리가 예측한 결과를 모아서 가장 많이 나온 결과(최빈값)를 최종 예측값으로 선택
3. RF 특징
- Decision Tree 대비 과적합 방지
- 변수 중요도(Feature Imortance) 확인 가능
- 단일 모델보다 일반화 성능 뛰어남
- 데이터 전처리에 비교적 덜 민감함
Ⅲ. XGBoost
'Data_10기' 카테고리의 다른 글
| SQL Recursive (0) | 2025.12.17 |
|---|---|
| 머신러닝 비지도학습 - 클러스터링 (0) | 2025.12.16 |
| 회귀분석 : 인과추론 VS 머신러닝 (0) | 2025.12.12 |
| Python 머신러닝(회귀분석) 및 SQL 비상관/상관 쿼리 (0) | 2025.12.10 |
| Logistic Regression 및 SQL 코드카타 (1) | 2025.12.09 |