-
[분류] 캐글 Credit Card Fraud Detection머신러닝 & 딥러닝 2021. 10. 31. 20:26
Kaggle 문제
Credit Card Fraud Detection
Anonymized credit card transactions labeled as fraudulent or genuine
www.kaggle.com
ML 모델 구축
Feature Engineering : 정규 분포, Log 변환, 이상치 제거, SMOTE 오버 샘플링
ML Algorithm : Logistic Regression, LightGBM
Log 변환
왜곡된 분포도를 가진 데이터 세트를 비교적 정규 분포에 가깝게 변환해주는 feature engineering 방식
IQR (Inter Quantile Range)를 이용한 Outlier Removal
1분위, 2분위, 3분위, 4분위로 나눈다. 그 중 1/4분위수 Q1 ~ 3/4 분위수 Q3를 IQR이라고 한다.
언더 샘플링 (undersampling)과 오버 샘플링 (oversampling)
레이블이 불균형한 분포를 가진 데이터 세트를 학습 할 때 이상 레이블을 가지는 데이터 건수가 적어서 제대로 된 학습하기 어렵다. 또한 정상 레이블로 치우친 학습만 수행하게 되어 이상 데이터 검출이 어렵다. 이를 해결 하기 위해 오버 샘플링과 언더 샘플링 방법을 사용해서 적절한 학습 데이터를 확보한다.
SMOTE (Synthetic Minority Over-sampling Technique)
오버 샘플링 방법 중 하나이다. SMOTE는 적은 데이터 세트에 있는 개별 데이터들의 K nearest neighbor를 찾아서 이 데이터와 k개 이웃들의 차이를 일정 값으로 만들어서 기존 데이터와 약간 차이가 나는 새로운 데이터들을 생성하는 방법이다.
SMOTE를 구현하는 대표적인 파이썬 패키지는 imbalanced-learn이다. 일반적으로, SMOTE를 적용하면 재현율은 높아지나, 정밀도는 낮아진다.
conda install -c conda-forge imbalanced-learn
'머신러닝 & 딥러닝' 카테고리의 다른 글
[군집화] K-Means (0) 2021.11.02 [군집화] Clustering 기본 개념 (0) 2021.11.01 [회귀] Lidge/Lasso/ElasticNet (0) 2021.10.19 [회귀] 다항 회귀 및 과대/과소 적합 (0) 2021.10.18 [분류] 앙상블 (0) 2021.10.14