본문 바로가기

머신러닝

[멋쟁이사자처럼 AI스쿨] week14 - WIL AIS8 week14 23.3.20 - 3.22 머신러닝 with Gradient Boosting, 머신러닝 워크플로우 1. 문제 정의 2. 데이터 수집 및 EDA 3. 데이터 전처리 4. Feature 선택 및 추출 5. 모델 선택과 학습 6. 모델의 성능 평가 7. 모델 개선 Gradient Boosting XGBoost(Extreme Gradient Boosting) 손실함수를 토대로 매 iteration마다 하나의 leaf로부터 가지를 늘려나감 손실 함수가 최대한 감소하도록 하는 split point(분할점)를 찾는 것이 XGBoost의 목표 GBM 대비 빠른 수행시간(병렬 처리) Early Stopping(조기 종료) 기능이 있음 모델의 Overfitting 학습시간이 느림 과적합 방지를 위해 .. 더보기
[멋쟁이사자처럼 AI스쿨] TIL(23.3.22) confusion matrix confusion matrix 모델이 맞혔을 때 → T 모델이 틀렸을 때 → F 모델의 예측값이 True -> P 모델의 예측 값이 False -> N Precision : 예측값 기준 , tp / (tp + fp) > 1종 오류, 맞지 않는 걸 보고 맞다고 하는 것 ex) 스펨메일이 아닌데 스팸메일로 잘못 예측 임신이 아닌데 임신으로 잘못 예측 - precision이 낮다 : 참이 아닌데 참이라고 한 것이 많다 - precision이 지나치게 높다 : 참으로 예측한 경우가 필요 이상으로 적다 Recall : 실제값 기준, tp / (tp + fn) > 2종 오류, 맞는 것을 맞지 않다고 하는 것 ex) 암인데 암이 아니라고 잘못 예측 임신인데 임신이 아니라고 잘못 예측 - recall이 낮다 : 참인데.. 더보기
[멋쟁이사자처럼 AI스쿨] TIL(23.3.21) XGBoost, LightBGM portable 이식성이 높다 다른 프로그래밍 언어를 지원하기 적합한 구조로 설계, 여러 언어 지원. 배깅 병렬트리를 여러 개 생성, 오버피팅에 좀 더 덜 취약. 랜덤포레스트, ExtraTree 부스팅 순차적으로 트리를 생성, 오버피팅에 좀 더 취약하며, 개별 트리의 성능이 중요할 때 사용. GBM, XGBoost, LightGBM, CatBoost XGBoost xgboost는 GBT에서 병렬 학습을 지원하여 학습 속도가 빨라진 모델. 기본 GBT에 비해 더 효율적이고, 다양한 종류의 데이터에 대응할 수 있으며 이식성이 높음. 모든 가능한 트리를 나열하여 최적 트리를 찾는 것은 거의 불가능 2차 근사식을 바탕으로 한 손실함수를 토대로 매 iteration마다 하나의 leaf로부터 가지를 늘려나가는 것이.. 더보기
[멋쟁이사자처럼 AI스쿨] TIL(23.3.20), RandomSearchCV 한쪽에 치우쳐진 데이터 -> 모델이 골고루 학습하기 어려움 -> log1p로 정규분포에 가깝게 만들어줘 모델이 학습하기 쉽도록 해줌! Label Smoothing 이란? log1p - 회귀 모델에서 사용할 수 있는 레이블 스무딩(Label Smoothing) 기법 예시 ) - 데이터 정규화(regularization)에 많이 사용되는 테크닉이며 모델의 일반화 성능을 높여주기도 한다. - label을 있는 그대로 사용하는 것이 아닌, 조금 Smooth 하게 만들어 정규화 시키는 것이다 Boosting 부스팅은 약한 트리 모델을 여러개를 순차적으로 연결해서 강한 트리 모델을 만들어 내는 앙상블 방식 RandomizedSearchCV parameter 종류 - n_iter : CV 가 검증을 해볼 파라미터 조.. 더보기
[멋쟁이사자처럼 AI스쿨] TIL(23.3.13), RandomForest, OneHotEncoding 3.13 학습 내용 0501 => 머신러닝의 지도학습의 분류를 사용하는 Scikit-learn API 기초와 DecisionTree 를 실습, 수치데이터만 사용 0502 => 범주형 데이터를 인코딩(수치 데이터로 변환)해서 사용하는 방법, One-Hot-Encoding(pd.get_dummies), RandomForest 0503 => One-Hot-Encoding(scikit-learn), 언더피팅, 오버피팅을 평가시 train, test 데이터에 대한 점수 비교. 기존에는 test 데이터에 대해서만 평가했는데 train 데이터로 평가해볼 예정입니다. cross validation 기법을 사용해서 평가해볼 예정입니다. 요약정리 underfitting과 overfitting 언더피팅(underfittin.. 더보기
[멋쟁이사자처럼 AI스쿨] week12 - WIL 23.3.6 - 23.3.8 week12. RFM & 머신러닝 기초 고객가치 평가의 척도, RFM(Recency, Freq uency, Monetary) RFM 모형 - 일정기간 동안 발생된 고객의 구매 패턴을 이용, 고객을 분류, 고객의 기본적인 구매 패턴 → 고객가치 평가 ▶ 기업의 마케팅 전략에서 고객의 평가/분류방법으로 가장 많이 사용되고 있는 분석 방법 Recency - 거래의 최근성 : 고객이 얼마나 최근에 구입했는가? Frequency - 거래 빈도 : 고객이 얼마나 빈번하게 우리 상품을 구입했나? Monetary - 거래 규모 : 고객이 구입했던 총 금액은 어느 정도인가? - "고객이 어떤 행동 패턴을 가지고 있나"에 의하여 고객가치를 평가. 고객의 과거 구매행태에 근거, 미래의 구매행태를.. 더보기