def pyod_preprocess_0503(df_tr, df_tstn, _df_mean):
X = pd.DataFrame(df_tr['amt' ])
y = pd.DataFrame(df_tr['is_fraud' ])
XX = pd.DataFrame(df_tstn['amt' ])
yy = pd.DataFrame(df_tstn['is_fraud' ])
throw_rate = _df_mean
fraud_ratio = df_tr.is_fraud.mean()
predictors = {
'ABOD' : ABOD(contamination= fraud_ratio), # 약 30초, f1이랑 다른것들 0 나옴
# 'ALAD': ALAD(contamination=fraud_ratio),
# 'AnoGAN': AnoGAN(contamination=fraud_ratio),
# 'AutoEncoder':AutoEncoder(contamination=fraud_ratio),
## 'CBLOF': CBLOF(contamination=fraud_ratio,n_clusters=2),
## 'COF': COF(contamination=fraud_ratio),
## 'CD': CD(contamination=fraud_ratio),
'COPOD' : COPOD(contamination= fraud_ratio),
# 'DeepSVDD': DeepSVDD(contamination=fraud_ratio),
# 'DIF': DIF(contamination=fraud_ratio),
'ECOD' : ECOD(contamination= fraud_ratio),
# 'FeatureBagging': FeatureBagging(contamination=fraud_ratio),
'GMM' : GMM(contamination= fraud_ratio),
'HBOS' : HBOS(contamination= fraud_ratio),
'IForest' : IForest(contamination= fraud_ratio),
'INNE' : INNE(contamination= fraud_ratio), #20초
##### 'KDE': KDE(contamination=fraud_ratio),# 5분 이상 제외!
'KNN' : KNN(contamination= fraud_ratio),
#### 'KPCA': KPCA(contamination=fraud_ratio),
# 'PyODKernelPCA': PyODKernelPCA(contamination=fraud_ratio),
## 'LMDD': LMDD(contamination=fraud_ratio),
'LODA' : LODA(contamination= fraud_ratio),
'LOF' : LOF(contamination= fraud_ratio),
#### 'LOCI': LOCI(contamination=fraud_ratio),
# 'LUNAR': LUNAR(contamination=fraud_ratio),
'LODA' : LODA(contamination= fraud_ratio),
# 'LSCP': LSCP(contamination=fraud_ratio),
'MAD' : MAD(contamination= fraud_ratio),
'MCD' : MCD(contamination= fraud_ratio),
# 'MO_GAAL': MO_GAAL(contamination=fraud_ratio),
##### 'OCSVM': OCSVM(contamination=fraud_ratio),# 5분 이상 제외!
'PCA' : PCA(contamination= fraud_ratio),
### 'QMCD': QMCD(contamination=fraud_ratio),
#### 'RGraph': RGraph(contamination=fraud_ratio),
'ROD' : ROD(contamination= fraud_ratio),
## 'Sampling': Sampling(contamination=fraud_ratio),
## 'SOD': SOD(contamination=fraud_ratio),
# 'SO_GAAL': SO_GAAL(contamination=fraud_ratio),
#### 'SOS': SOS(contamination=fraud_ratio),
# 'SUOD': SUOD(contamination=fraud_ratio),
# 'VAE': VAE(contamination=fraud_ratio),
# 'XGBOD': XGBOD(contamination=fraud_ratio),
}
return X, XX, y, yy, predictors, throw_rate