ref: https://pyod.readthedocs.io/en/latest/pyod.models.html#all-models
1. Imports
import pandas as pd
import numpy as np
import sklearn
import pickle
import time
import datetime
import warnings
warnings.filterwarnings('ignore')
with open('fraudTrain.pkl', 'rb') as file:
fraudTrain = pickle.load(file)
pyod에 random_state 매개변수가 명시되어 있지 않다..? 클래스 작성해야 하는뎀..
2.
시도1(0.3 / 0.05)
pyod(*pyod_preprocess(fraudTrain, 0.3, 0.05))
0 |
ABOD |
0.743859 |
0.950050 |
0.000000 |
0.000000 |
0.000000 |
0.500000 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
1 |
COPOD |
0.004163 |
0.749417 |
0.138138 |
0.766667 |
0.234097 |
0.757589 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
2 |
ECOD |
0.003983 |
0.719447 |
0.116768 |
0.703333 |
0.200285 |
0.711814 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
3 |
GMM |
0.081038 |
0.706294 |
0.093785 |
0.563333 |
0.160799 |
0.638572 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
4 |
HBOS |
0.001769 |
0.949717 |
0.000000 |
0.000000 |
0.000000 |
0.499825 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
5 |
IForest |
0.192958 |
0.824842 |
0.187188 |
0.750000 |
0.299601 |
0.789388 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
6 |
INNE |
0.446902 |
0.663337 |
0.075862 |
0.513333 |
0.132189 |
0.592278 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
7 |
KDE |
4.664011 |
0.845155 |
0.213115 |
0.780000 |
0.334764 |
0.814290 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
8 |
KNN |
0.016148 |
0.816683 |
0.176755 |
0.730000 |
0.284600 |
0.775620 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
9 |
LODA |
0.055909 |
0.949717 |
0.000000 |
0.000000 |
0.000000 |
0.499825 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
10 |
LOF |
0.039346 |
0.511988 |
0.051483 |
0.503333 |
0.093412 |
0.507888 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
11 |
MAD |
0.001590 |
0.961205 |
0.646288 |
0.493333 |
0.559546 |
0.739569 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
12 |
MCD |
0.005407 |
0.847486 |
0.215867 |
0.780000 |
0.338150 |
0.815517 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
13 |
OCSVM |
8.828208 |
0.808525 |
0.171561 |
0.740000 |
0.278545 |
0.776064 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
14 |
PCA |
0.002485 |
0.454545 |
0.020619 |
0.213333 |
0.037603 |
0.340280 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
15 |
ROD |
1.912571 |
0.583417 |
0.027062 |
0.210000 |
0.047945 |
0.406525 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.407164 |
6006 |
0.04995 |
None |
시도2(0.3 / 0.005)
pyod(*pyod_preprocess(fraudTrain, 0.3, 0.005))
0 |
ABOD |
0.790581 |
0.995005 |
0.000000 |
0.000000 |
0.000000 |
0.500000 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
1 |
COPOD |
0.004297 |
0.722611 |
0.015976 |
0.900000 |
0.031395 |
0.810860 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
2 |
ECOD |
0.004096 |
0.712121 |
0.013738 |
0.800000 |
0.027012 |
0.755840 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
3 |
GMM |
0.081272 |
0.703130 |
0.010609 |
0.633333 |
0.020868 |
0.668407 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
4 |
HBOS |
0.002180 |
0.994672 |
0.000000 |
0.000000 |
0.000000 |
0.499833 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
5 |
IForest |
0.191778 |
0.831335 |
0.026037 |
0.900000 |
0.050609 |
0.865495 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
6 |
INNE |
0.446586 |
0.739927 |
0.014575 |
0.766667 |
0.028607 |
0.753230 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
7 |
KDE |
4.659985 |
0.835498 |
0.026680 |
0.900000 |
0.051823 |
0.867587 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
8 |
KNN |
0.015647 |
0.805361 |
0.020219 |
0.800000 |
0.039441 |
0.802694 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
9 |
LODA |
0.052696 |
0.994672 |
0.000000 |
0.000000 |
0.000000 |
0.499833 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
10 |
LOF |
0.039103 |
0.494339 |
0.003632 |
0.366667 |
0.007192 |
0.430823 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
11 |
MAD |
0.001591 |
0.984682 |
0.177083 |
0.566667 |
0.269841 |
0.776724 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
12 |
MCD |
0.005513 |
0.835997 |
0.026759 |
0.900000 |
0.051973 |
0.867838 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
13 |
OCSVM |
8.806761 |
0.776557 |
0.019062 |
0.866667 |
0.037303 |
0.821386 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
14 |
PCA |
0.002498 |
0.419414 |
0.000866 |
0.100000 |
0.001718 |
0.260509 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
15 |
ROD |
2.116950 |
0.561605 |
0.001150 |
0.100000 |
0.002274 |
0.331961 |
False |
pyod |
0.3 |
14014 |
[amt] |
0.426431 |
6006 |
0.004995 |
None |
시도3(0.2 / 0.05)
pyod(*pyod_preprocess(fraudTrain, 0.2, 0.05))
0 |
ABOD |
1.089382 |
0.950050 |
0.000000 |
0.000000 |
0.000000 |
0.500000 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
1 |
COPOD |
0.005572 |
0.855256 |
0.223803 |
0.768889 |
0.346693 |
0.814343 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
2 |
ECOD |
0.005368 |
0.806971 |
0.151056 |
0.620000 |
0.242926 |
0.718401 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
3 |
GMM |
0.060378 |
0.807193 |
0.136646 |
0.537778 |
0.217920 |
0.679568 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
4 |
HBOS |
0.002657 |
0.949828 |
0.000000 |
0.000000 |
0.000000 |
0.499883 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
5 |
IForest |
0.234232 |
0.902209 |
0.306726 |
0.760000 |
0.437061 |
0.834843 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
6 |
INNE |
0.611838 |
0.872239 |
0.228084 |
0.653333 |
0.338125 |
0.768541 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
7 |
KDE |
11.152488 |
0.905206 |
0.313653 |
0.755556 |
0.443286 |
0.834315 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
8 |
KNN |
0.022491 |
0.894439 |
0.283865 |
0.731111 |
0.408950 |
0.817069 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
9 |
LODA |
0.079147 |
0.949828 |
0.000000 |
0.000000 |
0.000000 |
0.499883 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
10 |
LOF |
0.052867 |
0.662893 |
0.055040 |
0.355556 |
0.095323 |
0.517303 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
11 |
MAD |
0.001746 |
0.963370 |
0.647783 |
0.584444 |
0.614486 |
0.783868 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
12 |
MCD |
0.006672 |
0.908980 |
0.325142 |
0.764444 |
0.456233 |
0.840512 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
13 |
OCSVM |
21.034422 |
0.905428 |
0.314233 |
0.755556 |
0.443864 |
0.834432 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
14 |
PCA |
0.002800 |
0.667999 |
0.027520 |
0.164444 |
0.047149 |
0.429459 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
15 |
ROD |
2.927619 |
0.688534 |
0.017609 |
0.095556 |
0.029737 |
0.407633 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.264307 |
9009 |
0.04995 |
None |
시도4(0.2 / 0.005)
pyod(*pyod_preprocess(fraudTrain, 0.2, 0.005))
0 |
ABOD |
1.117140 |
0.995005 |
0.000000 |
0.000000 |
0.000000 |
0.500000 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
1 |
COPOD |
0.005460 |
0.837829 |
0.024194 |
0.800000 |
0.046967 |
0.819009 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
2 |
ECOD |
0.005273 |
0.805639 |
0.016988 |
0.666667 |
0.033131 |
0.736502 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
3 |
GMM |
0.084992 |
0.804973 |
0.013636 |
0.533333 |
0.026593 |
0.669835 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
4 |
HBOS |
0.013717 |
0.994672 |
0.000000 |
0.000000 |
0.000000 |
0.499833 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
5 |
IForest |
0.233216 |
0.908647 |
0.042353 |
0.800000 |
0.080447 |
0.854596 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
6 |
INNE |
0.602069 |
0.869131 |
0.027500 |
0.733333 |
0.053012 |
0.801573 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
7 |
KDE |
11.247169 |
0.903985 |
0.040359 |
0.800000 |
0.076841 |
0.852253 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
8 |
KNN |
0.021748 |
0.893884 |
0.033777 |
0.733333 |
0.064579 |
0.814012 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
9 |
LODA |
0.074052 |
0.994672 |
0.000000 |
0.000000 |
0.000000 |
0.499833 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
10 |
LOF |
0.051361 |
0.660340 |
0.004926 |
0.333333 |
0.009709 |
0.497657 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
11 |
MAD |
0.001771 |
0.981352 |
0.144509 |
0.555556 |
0.229358 |
0.769523 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
12 |
MCD |
0.006396 |
0.908314 |
0.042204 |
0.800000 |
0.080178 |
0.854429 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
13 |
OCSVM |
20.091513 |
0.902875 |
0.039911 |
0.800000 |
0.076030 |
0.851696 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
14 |
PCA |
0.002813 |
0.669331 |
0.002037 |
0.133333 |
0.004012 |
0.402677 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
15 |
ROD |
3.435893 |
0.744145 |
0.000442 |
0.022222 |
0.000867 |
0.384996 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.283574 |
9009 |
0.004995 |
None |
시도5(0.2 / 0.0005)
pyod(*pyod_preprocess(fraudTrain, 0.2, 0.0005))
0 |
ABOD |
1.130075 |
0.999556 |
0.000000 |
0.00 |
0.000000 |
0.500000 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
1 |
COPOD |
0.005504 |
0.835942 |
0.002027 |
0.75 |
0.004043 |
0.792990 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
2 |
ECOD |
0.005274 |
0.805528 |
0.001710 |
0.75 |
0.003413 |
0.777776 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
3 |
GMM |
0.072600 |
0.804529 |
0.000569 |
0.25 |
0.001134 |
0.527388 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
4 |
HBOS |
0.002512 |
0.999223 |
0.000000 |
0.00 |
0.000000 |
0.499833 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
5 |
IForest |
0.237714 |
0.908314 |
0.003623 |
0.75 |
0.007212 |
0.829192 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
6 |
INNE |
0.621015 |
0.879898 |
0.001848 |
0.50 |
0.003683 |
0.690033 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
7 |
KDE |
11.243379 |
0.904096 |
0.003464 |
0.75 |
0.006897 |
0.827082 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
8 |
KNN |
0.022136 |
0.894439 |
0.002103 |
0.50 |
0.004188 |
0.697307 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
9 |
LODA |
0.230612 |
0.999223 |
0.000000 |
0.00 |
0.000000 |
0.499833 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
10 |
LOF |
0.052098 |
0.661672 |
0.000984 |
0.75 |
0.001965 |
0.705816 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
11 |
MAD |
0.001787 |
0.983128 |
0.013158 |
0.50 |
0.025641 |
0.741671 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
12 |
MCD |
0.006591 |
0.908425 |
0.003628 |
0.75 |
0.007220 |
0.829248 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
13 |
OCSVM |
20.487326 |
0.902431 |
0.003405 |
0.75 |
0.006780 |
0.826249 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
14 |
PCA |
0.002772 |
0.671329 |
0.000000 |
0.00 |
0.000000 |
0.335813 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |
15 |
ROD |
2.726836 |
0.748363 |
0.000000 |
0.00 |
0.000000 |
0.374348 |
False |
pyod |
0.2 |
21021 |
[amt] |
0.285524 |
9009 |
0.000444 |
None |