* 머신러닝
├── 지도학습
│ ├── 분류 (Classification)✅ → KNN, 로지스틱 회귀, SVM
│ └── 회귀 (Regression) → 선형회귀, Lasso, Ridge
│
├── 앙상블
│ ├── 배깅 (Bagging) → Random Forest
│ └── 부스팅 (Boosting) → XGBoost, LightGBM, CatBoost
│
├── 비지도학습
│ ├── 군집 (Clustering) → K-means, DBSCAN
│ ├── 차원축소 (Dim. Reduction) → PCA, t-SNE
│ └── 이상탐지 (Anomaly Detection) → One-Class SVM, Isolation Forest
│
└── 강화학습 (Reinforcement)
데이터가 어떤 클래스에 속하는지 예측
선형 회귀 + 시그모이드 함수 → 확률(0~1)로 출력
classification_report()로 정밀도, 재현율, F1-score 확인
가장 넓은 여유공간을 가진 결정 경계를 찾는 방식
| 모델 | 개념 | 특징 |
|---|---|---|
| KNN | 가장 가까운 이웃(K개)을 보고 다수결로 분류 | 단순하지만 계산량 큼 |
| Naive Bayes | 확률 기반 + 특성 간 독립 가정 | 빠르지만 독립성 가정 |
| MLP / 딥러닝 | 여러 층의 뉴런으로 구성된 비선형 모델 | 복잡한 패턴 학습 가능 |
| 예측 Negative | 예측 Positive | |
|---|---|---|
| 실제 Negative | TN | FP |
| 실제 Positive | FN | TP |
| 지표 | 정의 | 상황 |
|---|---|---|
| 정밀도 Precision | TP / (TP + FP) | 잘못 Positive 예측 줄이기 (ex: 스팸 필터) |
| 재현율 Recall | TP / (TP + FN) | 놓치지 않기 중요 (ex: 질병 진단) |
| F1-score | 조화 평균 | Precision, Recall 균형 필요할 때 |
⚠️ 불균형 데이터일수록 ROC-AUC 또는 F1-score 같이 다른 지표도 꼭 함께 확인!
| 질문 | 요약 답변 | 설명 |
|---|---|---|
| 분류 vs 회귀 모델 차이 | 출력 형태 차이 | 회귀는 연속적인 수치 예측, 분류는 범주(class) 예측 |
| 정확도만으로 평가하면 안 되는 이유 | 불균형 데이터 문제 | 예: 정상 99%, 불량 1%면, 전부 정상이라 예측해도 정확도 99% → 실제 성능 왜곡 |
| 극단적 불균형 데이터 대응 방법 | 데이터 재구성 및 적절한 지표 활용 | SMOTE, 언더샘플링, 클래스 가중치 조정, 평가지표로는 Recall, Precision, ROC-AUC, PR곡선 사용 |
다음 안내에 따라 Wine 데이터를 분류하는 실습을 진행해 보세요.
[실습안내]
- Wine 데이터셋을 로드하세요.
- 학습용/테스트용 데이터를 적절한 비율로 분할하세요.
- Logistic Regression, SVM 모델을 생성하고, 모델을 학습시키세요.
- 적절히 하이퍼파라미터(예:
max_iter등)를 설정해볼 것- 테스트 데이터를 이용해 예측을 수행하고, 다음을 구하세요.
- 정확도(Accuracy)
- 분류 보고서(Classification Report)
- 혼동행렬(Confusion_matrix) → 선택사항
- 참고!) sklearn의 confusion matrix는 아래와 같은 형태로 나온다는 점을 참고하세요!
![]()
- ROC, AUC
- random_state를 설정해야 하는 경우가 있으면 42로 설정

shape

결측치 확인

컬럼 정보 확인

데이터 분할

로지스틱회귀




예시가 이진분류로 되어있어, 그대로 사용할 수가 없어서 이진분류로 변환을 해 준 뒤에 계산을 해야하는 건지 여쭤봤다!
# macro-average
roc_auc_score(y_true, y_score, multi_class='ovr', average='macro')
auc를 계산할때 이진분류여야 하는데, 다중일때는 multi_class = 'ovr'로 계산 가능
ovr = one vs rest
ovo = one vs one
어떤 방법을 선택하든 상관없지만, ovo방식은 하나씩 비교하는 거다 보니 시간이 더 오래 걸림!
* 머신러닝
├── 지도학습
│ ├── 분류 (Classification) → KNN, 로지스틱 회귀, SVM
│ └── 회귀 (Regression) → 선형회귀, Lasso, Ridge
│
├── 앙상블✅
│ ├── 배깅 (Bagging) → Random Forest
│ └── 부스팅 (Boosting) → XGBoost, LightGBM, CatBoost
│
├── 비지도학습
│ ├── 군집 (Clustering) → K-means, DBSCAN
│ ├── 차원축소 (Dim. Reduction) → PCA, t-SNE
│ └── 이상탐지 (Anomaly Detection) → One-Class SVM, Isolation Forest
│
└── 강화학습 (Reinforcement)
여러 개의 모델 조합 → 더 좋은 예측 성능

병렬 학습 → 평균/다수결 예측
장점: 과적합 감소, 안정적, 병렬 처리 가능
단점: 메모리 사용량 증가, 해석 어려움
대표) 랜덤 포레스트(Random Forest) - 분류, 회귀 모두 가능
RandomForestClassifier순차 학습 → 이전 오류 보정
XGBClassifier LGBMClassifier CatBoostClassifier일반화가 안 됨
학습이 안 됨
사람이 지정하는 설정값 (예: 트리 깊이, 학습률 등)
GridSearchCV: 모든 조합 시도→ 정확하지만 느림RandomizedSearchCV: 일부 조합 랜덤 → 빠름Bayesian Optimization: 효율적으로 탐색| 질문 | 요약 답변 |
|---|---|
| 배깅 vs 부스팅 | 병렬 vs 순차, 분산 감소 vs 편향 보정 |
| 로지스틱 vs XGBoost | 빠르고 해석 vs 성능 좋고 복잡 |
| 앙상블 언제? | 복잡한 데이터 + 고성능 요구 시 |
| 과적합 판단? | 훈련 정확도 높고 테스트 낮으면 의심 |
| Grid vs Randomized | 후보 적으면 Grid, 많으면 Randomized |
| 학습률(learning_rate)? | 작음 → 안정적, 큼 → 빠르지만 불안정 |
- 유방암 데이터셋을 사이킷런에서 불러오세요.
- 학습용/테스트용 데이터로 분할하세요.
- XGBoost 분류 모델을 생성하여 학습하세요.
random_state를 지정해야 하는 경우 42로 지정하세요.- 테스트 세트로 예측을 수행하고, 정확도(Accuracy), 혼동 행렬(Confusion Matrix), 분류 보고서(Classification Report) 등을 구해 성능 평가를 하세요.
- 피처 중요도를 시각화한 뒤, 그중 가장 중요한 변수가 무엇인지 찾아 출력하십시오.
데이터셋 로드

EDA
shape

결측치 확인

컬럼 정보 확인

데이터 분할

XGBoost



Random Forest



종합
XGBoost → worst radius(종양 반지름)
Random Forest → worst area(종양 면적)
SQL - Customer Who Visited but Did Not Make Any Transactions
SQL - Product Sales Analysis I
SQL - Replace Employee ID With The Unique Identifier
Python - 숫자 문자열과 영단어
Python - 시저 암호
코드카타 82-84 ✅ 코드카타 45-46 ✅특강 2-3회차 ✅ 기초강의 5-6강 ✅ 기초강의 7강❌이제는 더이상 물러날 곳이 없어서.. 머신러닝 6강까지 끝냈다..
세션 하루에 4시간 들으니까 너모 힘들고요 네..
그래도 오늘 현지 튜터님 첫 수업이었는데 흐름을 쭈욱 따라가면서 하는 방식이라 너무 좋았다!
수업 중에 다항회귀 모델이랑 단순회귀 모델은 항상 같이 쓰는 건지 질문했는데, 항상 그렇지는 않다고 답변을 받았다! 근데 정훈님이 슬랙으로 그거 물어본 거 아니지 않냐고 연락을 주셔서, 덕분에 다시 튜터님한테 여쭤보고 확인할 수 있는 기회가 생겼다😀
모델 사용이 아니라 개념적인 부분에서 답변을 해주신 거였다
정훈님도, 튜터님도 매우매우 감사합니다~~
내일은 머신러닝 꼭 끝내야지.. 프로젝트 시작 전까지 파이팅🍀
💿오늘의 추천곡 BROCKHAMPTON - Sugar

아무리 노래 앱을 옮겨도 애착인형 마냥 플리에 박혀있는 곡 ,,🤣
요즘도 생각날때마다 종종 들어서 추천해봤따