본문 바로가기
728x90

TIL - 외/빅데이터15

[머신러닝] XGBoost (Extreme Gradient Boosting) Boosting 순차적으로 모델의 정확도를 높이는 방법 전체 학습 데이터에서 일부를 선택한 하위 데이터 세트와 이를 학습할 첫번째 모델을 만든다. 그리고 첫번째 모델이 잘 학습하지 못한 부분을 반영해서 두번째 데이터 세트와 두번째 모델을 만든다. 이를 반복해서 점진적으로 모델의 정확도를 높인다. Boosting 기법을 이용하여 구현한 대표 알고리즘은 Gradient Boost이다. Gradient Boost 알고리즘을 병렬 학습이 지원되도록 구현한 것이 XGBoost XGBoost Regression, Classification 모두 지원 성능과 효율이 좋아서 자주 사용되는 알고리즘이다. 특징 GBM보다 빠르다. 과적합 방지가 가능한 규제가 포함되어 있다. (조기 종료) CART(Classificatio.. 2023. 7. 7.
[빅데이터] 데이터 불균형 처리 - SMOTE 데이터 분석시 쉽게 마주하게 되는 문제 중 하나는 데이터의 불균형이다. 비대칭 데이터셋에서는 정확도(Accuracy)가 높아도 재현율(Recall)이 급격히 작아지는 현상이 발생하게 된다. 따라서 데이터 불균형을 처리해야 한다. 예) 100개의 데이터 중 5개 오류인 데이터 모두 정상이라고 예측한 경우 예측 오류 (Predicted Positive) 예측 정상 (Predicted Negative) 실제 오류 (True Positive) 0 95 95 실제 정상 (True Negative) 0 5 5 0 100 100 정확도 : (0 + 95) / 100 -> 95% 재현율 (실제 P중 예측 P) : 0 / (0 + 95) -> 0% 데이터 불균형 처리 https://chaemi720.tistory.com.. 2023. 7. 7.
[빅데이터] 분류 모형 결과 평가 2. ROC 곡선 분류 모형의 결과를 평가하기 위해서 혼동 행렬을 이용한 평가지표와 ROC 곡선의 AUC를 많이 사용한다. ROC 곡선 (Receiver Operating Characteristic Curve; ROC Curve) 가로축(x)을 혼동 행렬의 거짓 긍정률 (FP Rate)로 두고 세로축(y)을 참 긍정률(TP Rate)로 두어 시각화한 그래프 거짓 긍정률 (FP Rate) = 1 - 특이도 실제로 '부정'인 범주 중에서 '긍정'으로 잘못 예측한 비율 참 긍정률 (TP Rate) = 재현율(민감도) 실제로 '긍정'인 범주 중에서 '긍정'으로 올바르게 예측한 비율 ROC 곡선은 그래프가 왼쪽 꼭대기에 가깝게 그려질수록 분류 성능이 우수하다. ROC 곡선 특징 ROC 곡선에서 거짓 긍정률(Rate)과 참 긍정률(.. 2023. 7. 7.
[빅데이터] 분류 모형 결과 평가 1. 혼동 행렬 분류 모형의 결과를 평가하기 위해서 혼동 행렬을 이용한 평가지표와 ROC 곡선의 AUC를 많이 사용한다. 혼동 행렬 (Confusion Martix; 정오 행렬) 분석 모델에서 구한 분류의 예측 범주와 데이터의 실제 분류 범주를 교차 표(Cross Table) 형태로 정리한 행렬 예측 범주 값 (Predicted Condition) Predicted Positive Predicted Negative 실제 범주 값 (Actual Condition) Actual Positive True Positive (TP) False Negative (FN) Actual Negative False Positive (FP) True Negative (TN) TP : 실제값이 P이고 예측값도 P (참 긍정) -> 암이라고 .. 2023. 7. 7.
코호트 분석1 코호트 특정 기간에 특정의 경험을 공유한 사람들의 집합 ex) 제주에 사는 30대 초반 남성이 네이버 사이트 검색을 통해 a페이지 방문, b 제품을 구매 위 사용자는 아래와 같은 코호트 그룹에 속한다 제주(지역) 코호트 30-34세 (연령) 코호트 남성 (성별) 코호트 네이버 트래픽 코호트 검색 트래픽 코호트 a페이지 (방문) 코호트 b제품 (구매) 코호트 코호트 분석 특정 기간에 특정 경험을 공유한 집단 간의 행동 패턴을 비교/분석 코호트 분석이 사용되는 곳 1. 사용자 유지(Retention)와 이탈 패턴 분석 유저는 빠르건 느리건 우리를 떠난다. 코호트 분석을 이용하면 특정 기간 방문한 사용자가 시간 경과에 따라 참여도가 어떻게 달라지는지 파악이 가능하다. 이를 통해서 적절한 대응을 할 수 있다. .. 2023. 6. 19.
[머신러닝] 랜덤 포레스트 (Random Forest) 랜덤 포레스트 대표적인 결정 트리 기반의 앙상블 학습 방법 부트스트랩 샘플을 사용하고 랜덤하게 일부 특성을 선택하여 트리를 만드는 것이 특징 데이터 샘플링을 할 때 복원추출 결정나무(Decision Tree)를 여러개 만들어서 그 결과들을 종합적으로 고려하여 결론을 도출하는 방법 기본 100개의 트리 사용 n_job 매개변수 : -1로 지정하면 모든 CPU 코어를 사용 from sklearn.model_selection import cross_validate from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier(n_jobs=-1, random_state=42) scores = cross_validate(rf, tra.. 2023. 5. 24.
반응형