통계학/데이터분석 (12) 썸네일형 리스트형 Feature Importance vs SHAP Feature Importance와 SHAP 값은 모두 모델에서 각 특성(feature)의 중요성을 평가하는 방법이지만, 중요한 차이점이 있어!🔍 Feature Importance정의: 모델이 학습하면서 각 피처가 예측에 얼마나 중요한지의 순위를 나타냄.주요 목적: 피처의 전체적인 중요성을 평가.계산 방법: 주로 트리 기반 모델에서 피처가 분할에 기여한 정도를 기반으로 계산됨. 예를 들어, 트리 분할을 잘하게 만든 피처는 높은 중요도를 가짐.Gini Impurity 감소량 (XGBoost, LightGBM)Information Gain (CART)Permutation Feature Importance (모델 예측 성능에 미치는 영향을 피처별로 평가)일반적인 계산 방법:출력 형태: 각 피처가 예측에 기여.. Force Plot(SHAP 설명) SHAP 결과를 해석하는 방법과 대표적인 시각화인 Force Plot 예시를 알려줄게.이건 XGBoost나 LightGBM, RandomForest 같은 모델에 SHAP을 적용했을 때 예측이 어떻게 나왔는지를 설명해주는 대표적인 도구야.📌 SHAP Force Plot 이란?개별 데이터 포인트(샘플)에 대해 "왜 이 예측값이 나왔는지" 시각적으로 설명해줌.기준선 (base value):→ 전체 데이터에서 평균적인 예측값 (예: 전체 평균 확률 0.5)화살표(밴드):→ 각 피처가 예측값을 얼마나 끌어올렸는지(+) or 낮췄는지(-) 를 보여줌왼쪽은 마이너스 영향(파란색), 오른쪽은 플러스 영향(빨간색)→ 시각적으로 직관적!🖼️ Force Plot 예시import shapimport xgboost as x.. shap조합 🔍 SHAP이란?SHAP (SHapley Additive exPlanations)→ 복잡한 모델의 예측을 개별 피처(변수)가 얼마나 영향을 미쳤는지를 설명해주는 해석 가능한 AI 도구야.수학적으로는 게임이론의 Shapley 값을 기반으로 해서,"이 피처가 모델의 최종 예측에 얼마나 기여했나?"를 공정하게 나눠서 계산해줘.🧠 왜 SHAP + XGBoost 조합이 좋을까?XGBoost나 LightGBM 같은 Boosting 모델은 기본적으로 블랙박스 모델이라,단순히 결과만 보면 "왜 이런 예측이 나왔는지" 알기 어려움 😵하지만 SHAP을 함께 쓰면:어떤 피처가 예측에 긍정적으로 작용했는지,어떤 피처가 예측값을 낮췄는지→ 직관적 그래프로 시각화 가능!📊 예시 그래프Summary Plot:전체 피처 중 .. 트리 모델 하이퍼 파라미터 튜닝 아래는 XGBoost, LightGBM, CatBoost 각각에 대해 코랩에서 튜닝하기 좋은 핵심 하이퍼파라미터 + 튜닝 팁이야.🔧 공통 튜닝 전략✅ 먼저 베이스 모델을 만든 후, 점진적으로 튜닝✅ 학습/검증 데이터 나눔, 또는 cross_val_score, GridSearchCV, Optuna, Bayesian Optimization 활용✅ 너무 많은 트리부터 시작하지 말고, 조기 종료(Early stopping) 도입해서 오버핏 방지✅ learning_rate는 작게, n_estimators는 크게 → 조기 종료로 알아서 잘 멈춤 1️⃣ XGBoost 튜닝 팁 (Colab 기준)from xgboost import XGBClassifierxgb = XGBClassifier( n_estimator.. 트리 기반 앙상블 모델 4종 비교(RandomForest, XGBoost, LightGBM, CatBoost) 좋아! RandomForest, XGBoost, LightGBM과 CatBoost까지 포함해서 트리 기반 앙상블 모델 4종 비교를 깔끔하게 정리해볼게. Boosting 계열의 대표 주자들을 비교하는 건 실제 실무에서 매우 유용하니까!✅ 트리 기반 앙상블 모델 4종 비교항목RandomForestXGBoostLightGBMCatBoost앙상블 방식BaggingBoostingBoostingBoosting트리 구성전체 데이터에서 병렬로 여러 트리 생성이전 트리의 오류를 보완하며 순차적으로 트리 생성Gradient 기반 순차 트리 생성 + 리프 중심 성장Gradient 기반 순차 트리 생성 + 카테고리 처리 강화학습 속도빠름중간매우 빠름 (Histogram 기반)중간 (속도 개선됨)예측 성능중간~좋음좋음~최상좋음.. RandomForest와 XGBoost 좋아! RandomForest와 XGBoost는 둘 다 앙상블 학습 기법 중 하나인 트리 기반 모델이지만, 내부 동작 방식과 사용 시 적합한 상황에 차이가 있어. 아래에 알기 쉽게 정리해줄게!✅ 핵심 개념 요약구분RandomForestXGBoost기본 원리여러 개의 결정 트리를 병렬로 학습해서 평균 또는 투표여러 개의 결정 트리를 순차적으로 학습하면서 오류 보완학습 방식Bagging 방식Boosting 방식과적합 방지무작위 샘플링, 무작위 피처 선택정규화, 가지치기, learning rate 등 다양한 제어 기법속도상대적으로 빠름상대적으로 느릴 수 있음 (하지만 GPU 지원 가능)하이퍼파라미터 수적음 (간단)많음 (세부 튜닝 필요)해석력상대적으로 쉬움상대적으로 복잡🌲 RandomForest를 사용하는 .. feature engineering2 현재 신용대출 competition을 진행하면서 feature engineering을 진행하고있다. 그런데 이를 진행하면서 왜 모델이 이를 인지하지 못하는것인가? 라는 궁금증이 들었다. 추가적으로 연속형 데이터 -> 범주형데이터로 변환 과연 이것이 모델에 좋은 영향을 줄까? 현재는 시간이 없어서 이후에 진행하려고 하는데 결과를 모델별 결과를 가져와서 한번 기록해보고자 한다. 히스토그램과 KDE(ViolinPlot)의 차이점 히스토그램(Histogram)과 KDE(Kernel Density Estimation)는 데이터 분포를 시각화하는 데 사용되는 두 가지 다른 방법입니다. 히스토그램: 히스토그램은 데이터를 구간(빈)으로 나누고 각 구간에 속하는 데이터의 빈도를 막대로 나타낸 그래프입니다. x축은 데이터 값의 구간, y축은 해당 구간에 속하는 데이터의 빈도를 나타냅니다. 주로 데이터의 분포를 파악하고 데이터의 빈도를 시각적으로 확인하는 데 사용됩니다. KDE (Kernel Density Estimation): KDE는 확률 밀도 함수(probability density function)를 추정하여 데이터 분포를 부드럽게 나타내는 방법입니다. 각 데이터 포인트 주변에 커널 함수를 배치하고 이를 합하여 전체 데이터의 분포를 근.. 이전 1 2 다음