From dba884c922e96677de2322f0ade34b30ebbef29b Mon Sep 17 00:00:00 2001 From: DesireeWyrzylala <74858504+DesireeWyrzylala@users.noreply.github.com> Date: Mon, 10 Feb 2025 11:20:32 +0100 Subject: [PATCH] analyzing pca results --- .../anomalien/PCA_groups_anomaly.png | Bin 0 -> 54863 bytes bilder/evaluation/groups/PCA_groups.png | Bin 0 -> 71413 bytes docs/evaluation/Vergleich der Ergebnisse.md | 295 +-- src/models/desi/desi_evaluate_groups.ipynb | 2318 ++++++++--------- 4 files changed, 1308 insertions(+), 1305 deletions(-) create mode 100644 bilder/evaluation/anomalien/PCA_groups_anomaly.png create mode 100644 bilder/evaluation/groups/PCA_groups.png diff --git a/bilder/evaluation/anomalien/PCA_groups_anomaly.png b/bilder/evaluation/anomalien/PCA_groups_anomaly.png new file mode 100644 index 0000000000000000000000000000000000000000..ea42ecf7bf6ceefe95b69dcd3f722d69e6df767b GIT binary patch literal 54863 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 Ra0Uhj22WQ%mvv4FO#tOc0lxqM literal 0 HcmV?d00001 diff --git a/bilder/evaluation/groups/PCA_groups.png b/bilder/evaluation/groups/PCA_groups.png new file mode 100644 index 0000000000000000000000000000000000000000..f91b77089f0fd58b91d5f5c04d10edfaf7e101ec GIT binary patch literal 71413 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 E0LD=_6#xJL literal 0 HcmV?d00001 diff --git a/docs/evaluation/Vergleich der Ergebnisse.md b/docs/evaluation/Vergleich der Ergebnisse.md index e47ceec..7558231 100644 --- a/docs/evaluation/Vergleich der Ergebnisse.md +++ b/docs/evaluation/Vergleich der Ergebnisse.md @@ -1,10 +1,10 @@ # Laufzeiten -| Laufzeiten | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | -| ------------------------------ | ---- | ------- | --- | ---- | ---- | ---- | ---- | ------ | ------ | ----- | --- | ------- | ---- | -| **Bei Autoren (s)** | 0.09 | 0.14 | 2 | 2 | 3 | 4 | 8 | 8.5 | 11 | 13 | 16 | | 19 | -| **Insgesamt (h)** | 3.42 | | | | 2.93 | 3.42 | 3.66 | | | | | | 6.68 | -| **Durchschnitt pro Datei (s)** | 31.0 | | | | 26.6 | 31 | 33.2 | | | | | | 60.5 | +| Laufzeiten | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | +| ------------------------------ | ---- | ------- | ---- | ---- | ---- | ---- | ---- | ------ | ------ | ----- | --- | ------- | ---- | +| **Bei Autoren (s)** | 0.09 | 0.14 | 2 | 2 | 3 | 4 | 8 | 8.5 | 11 | 13 | 16 | | 19 | +| **Insgesamt (h)** | 3.42 | | 4.26 | | 2.93 | 3.42 | 3.66 | | | | | | 6.68 | +| **Durchschnitt pro Datei (s)** | 31.0 | | 38.7 | | 26.6 | 31 | 33.2 | | | | | | 60.5 | # Datensätze + Gesamtanzahl Zeitserien: 397 @@ -13,138 +13,138 @@ + Anzahl an Zeitserien mit nur Sequenzanomalien: 158 ## Gesamtbewertung nach AUC-PR -| Datensatz | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | Datensatz | -| ------------- | --------- | ------- | --- | ---- | --------- | --------- | --------- | ------ | ------ | ----- | --- | ------- | --------- | ------------- | -| UCR | 0.156850 | | | | 0.069477 | 0.085236 | 0.028041 | | | | | | 0.283830 | UCR | -| SMD | 0.639394 | | | | 0.565370 | 0.531140 | 0.539890 | | | | | | 0.162970 | SMD | -| YAHOO | 0.075395 | | | | 0.561562 | 0.148188 | 0.443957 | | | | | | 0.144445 | YAHOO | -| Exathlon | 0.844513 | | | | 0.654310 | 0.874519 | 0.733875 | | | | | | 0.563481 | Exathlon | -| NAB | 0.526439 | | | | 0.223347 | 0.332227 | 0.153306 | | | | | | 0.311100 | NAB | -| OPPORTUNITY | 0.420658 | | | | 0.619160 | 0.649867 | 0.545535 | | | | | | 0.298396 | OPPORTUNITY | -| WSD | 0.427387 | | | | 0.303128 | 0.251057 | 0.209492 | | | | | | 0.044597 | WSD | -| SVDB | 0.506002 | | | | 0.197103 | 0.476835 | 0.129879 | | | | | | 0.538270 | SVDB | -| SMAP | 0.604826 | | | | 0.329931 | 0.385082 | 0.278827 | | | | | | 0.453816 | SMAP | -| IOPS | 0.332866 | | | | 0.265889 | 0.368163 | 0.320195 | | | | | | 0.070598 | IOPS | -| TODS | 0.239024 | | | | 0.303786 | 0.172369 | 0.205671 | | | | | | 0.410649 | TODS | -| Stock | 0.146590 | | | | 0.929344 | 0.133646 | 0.519232 | | | | | | 0.096103 | Stock | -| MGAB | 0.008996 | | | | 0.003855 | 0.015268 | 0.045860 | | | | | | 0.325650 | MGAB | -| MSL | 0.629533 | | | | 0.307033 | 0.394283 | 0.237442 | | | | | | 0.313525 | MSL | -| NEK | 0.709458 | | | | 0.685573 | 0.836145 | 0.667421 | | | | | | 0.119174 | NEK | -| LTDB | 0.455324 | | | | 0.354462 | 0.479711 | 0.276735 | | | | | | 0.589828 | LTDB | -| MITDB | 0.366934 | | | | 0.160153 | 0.206999 | 0.113066 | | | | | | 0.500834 | MITDB | -| TAO | 0.140526 | | | | 0.994857 | 0.344060 | 0.993397 | | | | | | 0.108733 | TAO | -| SED | 0.031421 | | | | 0.029325 | 0.031663 | 0.030497 | | | | | | 0.707453 | SED | -| Daphnet | 0.536827 | | | | 0.381499 | 0.192069 | 0.132234 | | | | | | 0.033893 | Daphnet | -| SWaT | 0.123133 | | | | 0.738718 | 0.757687 | 0.737695 | | | | | | 0.110376 | SWaT | -| Power | 0.203760 | | | | 0.072400 | 0.064665 | 0.064788 | | | | | | 0.160167 | Power | -| CATSv2 | 0.476434 | | | | 0.411894 | 0.437868 | 0.358071 | | | | | | 0.482166 | CATSv2 | -| **Insgesamt** | **0.394** | | | | **0.366** | **0.354** | **0.313** | | | | | | **0.292** | **Insgesamt** | +| Datensatz | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | Datensatz | +| ------------- | --------- | ------- | --------- | ---- | --------- | --------- | --------- | ------ | ------ | ----- | --- | ------- | --------- | ------------- | +| UCR | 0.156850 | | 0.138533 | | 0.069477 | 0.085236 | 0.028041 | | | | | | 0.283830 | UCR | +| SMD | 0.639394 | | 0.495851 | | 0.565370 | 0.531140 | 0.539890 | | | | | | 0.162970 | SMD | +| YAHOO | 0.075395 | | 0.117107 | | 0.561562 | 0.148188 | 0.443957 | | | | | | 0.144445 | YAHOO | +| Exathlon | 0.844513 | | 0.958102 | | 0.654310 | 0.874519 | 0.733875 | | | | | | 0.563481 | Exathlon | +| NAB | 0.526439 | | 0.486528 | | 0.223347 | 0.332227 | 0.153306 | | | | | | 0.311100 | NAB | +| OPPORTUNITY | 0.420658 | | 0.923192 | | 0.619160 | 0.649867 | 0.545535 | | | | | | 0.298396 | OPPORTUNITY | +| WSD | 0.427387 | | 0.216542 | | 0.303128 | 0.251057 | 0.209492 | | | | | | 0.044597 | WSD | +| SVDB | 0.506002 | | 0.558896 | | 0.197103 | 0.476835 | 0.129879 | | | | | | 0.538270 | SVDB | +| SMAP | 0.604826 | | 0.484416 | | 0.329931 | 0.385082 | 0.278827 | | | | | | 0.453816 | SMAP | +| IOPS | 0.332866 | | 0.372849 | | 0.265889 | 0.368163 | 0.320195 | | | | | | 0.070598 | IOPS | +| TODS | 0.239024 | | 0.124321 | | 0.303786 | 0.172369 | 0.205671 | | | | | | 0.410649 | TODS | +| Stock | 0.146590 | | 0.148428 | | 0.929344 | 0.133646 | 0.519232 | | | | | | 0.096103 | Stock | +| MGAB | 0.008996 | | 0.027123 | | 0.003855 | 0.015268 | 0.045860 | | | | | | 0.325650 | MGAB | +| MSL | 0.629533 | | 0.493320 | | 0.307033 | 0.394283 | 0.237442 | | | | | | 0.313525 | MSL | +| NEK | 0.709458 | | 0.891733 | | 0.685573 | 0.836145 | 0.667421 | | | | | | 0.119174 | NEK | +| LTDB | 0.455324 | | 0.489411 | | 0.354462 | 0.479711 | 0.276735 | | | | | | 0.589828 | LTDB | +| MITDB | 0.366934 | | 0.377853 | | 0.160153 | 0.206999 | 0.113066 | | | | | | 0.500834 | MITDB | +| TAO | 0.140526 | | 0.149144 | | 0.994857 | 0.344060 | 0.993397 | | | | | | 0.108733 | TAO | +| SED | 0.031421 | | 0.020994 | | 0.029325 | 0.031663 | 0.030497 | | | | | | 0.707453 | SED | +| Daphnet | 0.536827 | | 0.468647 | | 0.381499 | 0.192069 | 0.132234 | | | | | | 0.033893 | Daphnet | +| SWaT | 0.123133 | | 0.756700 | | 0.738718 | 0.757687 | 0.737695 | | | | | | 0.110376 | SWaT | +| Power | 0.203760 | | 0.078866 | | 0.072400 | 0.064665 | 0.064788 | | | | | | 0.160167 | Power | +| CATSv2 | 0.476434 | | 0.474705 | | 0.411894 | 0.437868 | 0.358071 | | | | | | 0.482166 | CATSv2 | +| **Insgesamt** | **0.394** | | **0.407** | | **0.366** | **0.354** | **0.313** | | | | | | **0.292** | **Insgesamt** | ## Gesamtbewertung nach VUS-PR -| Datensatz | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | Datensatz | -| ------------- | --------- | ------- | --- | ---- | --------- | --------- | --------- | ------ | ------ | ----- | --- | ------- | --------- | ------------- | -| UCR | 0.198780 | | | | 0.065443 | 0.089552 | 0.023293 | | | | | | 0.329748 | UCR | -| SMD | 0.663191 | | | | 0.545045 | 0.478742 | 0.483944 | | | | | | 0.163803 | SMD | -| YAHOO | 0.307653 | | | | 0.512096 | 0.219787 | 0.417416 | | | | | | 0.502031 | YAHOO | -| Exathlon | 0.847945 | | | | 0.657757 | 0.876372 | 0.735253 | | | | | | 0.562449 | Exathlon | -| NAB | 0.584112 | | | | 0.248091 | 0.342007 | 0.173732 | | | | | | 0.341432 | NAB | -| OPPORTUNITY | 0.426326 | | | | 0.632799 | 0.649931 | 0.563772 | | | | | | 0.295398 | OPPORTUNITY | -| WSD | 0.531110 | | | | 0.224922 | 0.157612 | 0.130270 | | | | | | 0.083204 | WSD | -| SVDB | 0.445531 | | | | 0.199785 | 0.445289 | 0.127489 | | | | | | 0.591484 | SVDB | -| SMAP | 0.727079 | | | | 0.336818 | 0.417852 | 0.273214 | | | | | | 0.558287 | SMAP | -| IOPS | 0.365055 | | | | 0.205826 | 0.192837 | 0.213044 | | | | | | 0.116527 | IOPS | -| TODS | 0.586493 | | | | 0.575941 | 0.538194 | 0.522228 | | | | | | 0.780280 | TODS | -| Stock | 0.805375 | | | | 0.939925 | 0.771658 | 0.817960 | | | | | | 0.691512 | Stock | -| MGAB | 0.008269 | | | | 0.006988 | 0.005586 | 0.025419 | | | | | | 0.238613 | MGAB | -| MSL | 0.734244 | | | | 0.346350 | 0.428048 | 0.305128 | | | | | | 0.368746 | MSL | -| NEK | 0.764836 | | | | 0.714845 | 0.858349 | 0.689697 | | | | | | 0.132908 | NEK | -| LTDB | 0.510507 | | | | 0.406171 | 0.524763 | 0.329828 | | | | | | 0.692355 | LTDB | -| MITDB | 0.320425 | | | | 0.143632 | 0.163465 | 0.112398 | | | | | | 0.548995 | MITDB | -| TAO | 0.808453 | | | | 0.994270 | 0.930020 | 0.995044 | | | | | | 0.684119 | TAO | -| SED | 0.040176 | | | | 0.058416 | 0.055985 | 0.056562 | | | | | | 0.882987 | SED | -| Daphnet | 0.519516 | | | | 0.398456 | 0.123026 | 0.133080 | | | | | | 0.035185 | Daphnet | -| SWaT | 0.103364 | | | | 0.680748 | 0.366250 | 0.669824 | | | | | | 0.110850 | SWaT | -| Power | 0.122294 | | | | 0.075487 | 0.067090 | 0.067250 | | | | | | 0.166562 | Power | -| CATSv2 | 0.232252 | | | | 0.288293 | 0.282282 | 0.329056 | | | | | | 0.354730 | CATSv2 | -| **Insgesamt** | **0.478** | | | | **0.367** | **0.377** | **0.320** | | | | | | **0.384** | **Insgesamt** | +| Datensatz | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | Datensatz | +| ------------- | --------- | ------- | --------- | ---- | --------- | --------- | --------- | ------ | ------ | ----- | --- | ------- | --------- | ------------- | +| UCR | 0.198780 | | 0.152678 | | 0.065443 | 0.089552 | 0.023293 | | | | | | 0.329748 | UCR | +| SMD | 0.663191 | | 0.467257 | | 0.545045 | 0.478742 | 0.483944 | | | | | | 0.163803 | SMD | +| YAHOO | 0.307653 | | 0.163729 | | 0.512096 | 0.219787 | 0.417416 | | | | | | 0.502031 | YAHOO | +| Exathlon | 0.847945 | | 0.959173 | | 0.657757 | 0.876372 | 0.735253 | | | | | | 0.562449 | Exathlon | +| NAB | 0.584112 | | 0.511398 | | 0.248091 | 0.342007 | 0.173732 | | | | | | 0.341432 | NAB | +| OPPORTUNITY | 0.426326 | | 0.924516 | | 0.632799 | 0.649931 | 0.563772 | | | | | | 0.295398 | OPPORTUNITY | +| WSD | 0.531110 | | 0.155366 | | 0.224922 | 0.157612 | 0.130270 | | | | | | 0.083204 | WSD | +| SVDB | 0.445531 | | 0.523984 | | 0.199785 | 0.445289 | 0.127489 | | | | | | 0.591484 | SVDB | +| SMAP | 0.727079 | | 0.566842 | | 0.336818 | 0.417852 | 0.273214 | | | | | | 0.558287 | SMAP | +| IOPS | 0.365055 | | 0.260372 | | 0.205826 | 0.192837 | 0.213044 | | | | | | 0.116527 | IOPS | +| TODS | 0.586493 | | 0.552877 | | 0.575941 | 0.538194 | 0.522228 | | | | | | 0.780280 | TODS | +| Stock | 0.805375 | | 0.825382 | | 0.939925 | 0.771658 | 0.817960 | | | | | | 0.691512 | Stock | +| MGAB | 0.008269 | | 0.005551 | | 0.006988 | 0.005586 | 0.025419 | | | | | | 0.238613 | MGAB | +| MSL | 0.734244 | | 0.523310 | | 0.346350 | 0.428048 | 0.305128 | | | | | | 0.368746 | MSL | +| NEK | 0.764836 | | 0.929171 | | 0.714845 | 0.858349 | 0.689697 | | | | | | 0.132908 | NEK | +| LTDB | 0.510507 | | 0.534873 | | 0.406171 | 0.524763 | 0.329828 | | | | | | 0.692355 | LTDB | +| MITDB | 0.320425 | | 0.323526 | | 0.143632 | 0.163465 | 0.112398 | | | | | | 0.548995 | MITDB | +| TAO | 0.808453 | | 0.840276 | | 0.994270 | 0.930020 | 0.995044 | | | | | | 0.684119 | TAO | +| SED | 0.040176 | | 0.030270 | | 0.058416 | 0.055985 | 0.056562 | | | | | | 0.882987 | SED | +| Daphnet | 0.519516 | | 0.441568 | | 0.398456 | 0.123026 | 0.133080 | | | | | | 0.035185 | Daphnet | +| SWaT | 0.103364 | | 0.375512 | | 0.680748 | 0.366250 | 0.669824 | | | | | | 0.110850 | SWaT | +| Power | 0.122294 | | 0.079616 | | 0.075487 | 0.067090 | 0.067250 | | | | | | 0.166562 | Power | +| CATSv2 | 0.232252 | | 0.232417 | | 0.288293 | 0.282282 | 0.329056 | | | | | | 0.354730 | CATSv2 | +| **Insgesamt** | **0.478** | | **0.444** | | **0.367** | **0.377** | **0.320** | | | | | | **0.384** | **Insgesamt** | ## Gesamtbewertung der Punktanomalien nach AUC-PR -| Datensatz | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | Datensatz | -| ------------- | --------- | ------- | --- | ---- | --------- | --------- | --------- | ------ | ------ | ----- | --- | ------- | --------- | ------------- | -| UCR | 0.000257 | | | | 0.000498 | 0.000178 | 0.000221 | | | | | | 0.003749 | UCR | -| YAHOO | 0.024161 | | | | 0.587049 | 0.122574 | 0.455103 | | | | | | 0.130716 | YAHOO | -| WSD | 0.167066 | | | | 0.342989 | 0.407280 | 0.334638 | | | | | | 0.000945 | WSD | -| IOPS | 0.141657 | | | | 0.210157 | 0.016952 | 0.197084 | | | | | | 0.041389 | IOPS | -| TODS | 0.061866 | | | | 0.531847 | 0.064650 | 0.367334 | | | | | | 0.075986 | TODS | -| Stock | 0.146590 | | | | 0.929344 | 0.133646 | 0.519232 | | | | | | 0.096103 | Stock | -| TAO | 0.148356 | | | | 0.993457 | 0.336829 | 0.994218 | | | | | | 0.098915 | TAO | -| **Insgesamt** | **0.060** | | | | **0.585** | **0.125** | **0.426** | | | | | | **0.101** | **Insgesamt** | +| Datensatz | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | Datensatz | +| ------------- | --------- | ------- | --------- | ---- | --------- | --------- | --------- | ------ | ------ | ----- | --- | ------- | --------- | ------------- | +| UCR | 0.000257 | | 0.000196 | | 0.000498 | 0.000178 | 0.000221 | | | | | | 0.003749 | UCR | +| YAHOO | 0.024161 | | 0.060498 | | 0.587049 | 0.122574 | 0.455103 | | | | | | 0.130716 | YAHOO | +| WSD | 0.167066 | | 0.206655 | | 0.342989 | 0.407280 | 0.334638 | | | | | | 0.000945 | WSD | +| IOPS | 0.141657 | | 0.036186 | | 0.210157 | 0.016952 | 0.197084 | | | | | | 0.041389 | IOPS | +| TODS | 0.061866 | | 0.067229 | | 0.531847 | 0.064650 | 0.367334 | | | | | | 0.075986 | TODS | +| Stock | 0.146590 | | 0.148428 | | 0.929344 | 0.133646 | 0.519232 | | | | | | 0.096103 | Stock | +| TAO | 0.148356 | | 0.160428 | | 0.993457 | 0.336829 | 0.994218 | | | | | | 0.098915 | TAO | +| **Insgesamt** | **0.060** | | **0.079** | | **0.585** | **0.125** | **0.426** | | | | | | **0.101** | **Insgesamt** | ## Gesamtbewertung der Punktanomalien nach VUS-PR -| Datensatz | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | Datensatz | -| ------------- | --------- | ------- | --- | ---- | --------- | --------- | --------- | ------ | ------ | ----- | --- | ------- | --------- | ------------- | -| UCR | 0.003356 | | | | 0.128496 | 0.000406 | 0.000237 | | | | | | 0.011814 | UCR | -| YAHOO | 0.282071 | | | | 0.519819 | 0.190097 | 0.414255 | | | | | | 0.521624 | YAHOO | -| WSD | 0.216267 | | | | 0.131018 | 0.105822 | 0.100076 | | | | | | 0.007947 | WSD | -| IOPS | 0.187766 | | | | 0.147113 | 0.035031 | 0.080739 | | | | | | 0.327373 | IOPS | -| TODS | 0.803771 | | | | 0.895740 | 0.800324 | 0.852834 | | | | | | 0.855125 | TODS | -| Stock | 0.805375 | | | | 0.939925 | 0.771658 | 0.817960 | | | | | | 0.691512 | Stock | -| TAO | 0.761585 | | | | 0.991524 | 0.908594 | 0.992980 | | | | | | 0.570248 | TAO | -| **Insgesamt** | **0.392** | | | | **0.571** | **0.329** | **0.471** | | | | | | **0.500** | **Insgesamt** | +| Datensatz | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | Datensatz | +| ------------- | --------- | ------- | --------- | ---- | --------- | --------- | --------- | ------ | ------ | ----- | --- | ------- | --------- | ------------- | +| UCR | 0.003356 | | 0.000408 | | 0.128496 | 0.000406 | 0.000237 | | | | | | 0.011814 | UCR | +| YAHOO | 0.282071 | | 0.113436 | | 0.519819 | 0.190097 | 0.414255 | | | | | | 0.521624 | YAHOO | +| WSD | 0.216267 | | 0.124850 | | 0.131018 | 0.105822 | 0.100076 | | | | | | 0.007947 | WSD | +| IOPS | 0.187766 | | 0.048169 | | 0.147113 | 0.035031 | 0.080739 | | | | | | 0.327373 | IOPS | +| TODS | 0.803771 | | 0.820717 | | 0.895740 | 0.800324 | 0.852834 | | | | | | 0.855125 | TODS | +| Stock | 0.805375 | | 0.825382 | | 0.939925 | 0.771658 | 0.817960 | | | | | | 0.691512 | Stock | +| TAO | 0.761585 | | 0.805852 | | 0.991524 | 0.908594 | 0.992980 | | | | | | 0.570248 | TAO | +| **Insgesamt** | **0.392** | | **0.294** | | **0.571** | **0.329** | **0.471** | | | | | | **0.500** | **Insgesamt** | ## Gesamtbewertung der Sequenzanomalien nach AUC-PR -| Datensatz | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | Datensatz | -| ------------- | --------- | ------- | --- | ---- | --------- | --------- | --------- | ------ | ------ | ----- | --- | ------- | --------- | ------------- | -| SMD | 0.439343 | | | | 0.505749 | 0.460181 | 0.495482 | | | | | | 0.050501 | SMD | -| YAHOO | 0.571428 | | | | 0.345384 | 0.349465 | 0.344485 | | | | | | 0.306868 | YAHOO | -| Exathlon | 0.844513 | | | | 0.654310 | 0.874519 | 0.733875 | | | | | | 0.563481 | Exathlon | -| NAB | 0.402974 | | | | 0.209869 | 0.335713 | 0.162982 | | | | | | 0.176029 | NAB | -| OPPORTUNITY | 0.624496 | | | | 0.727956 | 0.661818 | 0.547465 | | | | | | 0.263868 | OPPORTUNITY | -| WSD | 0.324235 | | | | 0.242314 | 0.123481 | 0.127908 | | | | | | 0.077550 | WSD | -| SVDB | 0.483934 | | | | 0.198720 | 0.465020 | 0.130291 | | | | | | 0.519348 | SVDB | -| SMAP | 0.798189 | | | | 0.241609 | 0.876352 | 0.233398 | | | | | | 0.788114 | SMAP | -| IOPS | 0.482294 | | | | 0.429909 | 0.721261 | 0.461068 | | | | | | 0.031872 | IOPS | -| TODS | 0.281649 | | | | 0.206602 | 0.191109 | 0.170148 | | | | | | 0.533591 | TODS | -| MGAB | 0.008996 | | | | 0.003855 | 0.015268 | 0.045860 | | | | | | 0.325650 | MGAB | -| MSL | 0.557113 | | | | 0.264200 | 0.364941 | 0.257571 | | | | | | 0.238423 | MSL | -| NEK | 0.568731 | | | | 0.715902 | 0.877024 | 0.681103 | | | | | | 0.146699 | NEK | -| LTDB | 0.455324 | | | | 0.354462 | 0.479711 | 0.276735 | | | | | | 0.589828 | LTDB | -| MITDB | 0.366934 | | | | 0.160153 | 0.206999 | 0.113066 | | | | | | 0.500834 | MITDB | -| SED | 0.031421 | | | | 0.029325 | 0.031663 | 0.030497 | | | | | | 0.707453 | SED | -| Daphnet | 0.536827 | | | | 0.381499 | 0.192069 | 0.132234 | | | | | | 0.033893 | Daphnet | -| SWaT | 0.123133 | | | | 0.738718 | 0.757687 | 0.737695 | | | | | | 0.110376 | SWaT | -| Power | 0.203760 | | | | 0.072400 | 0.064665 | 0.064788 | | | | | | 0.160167 | Power | -| CATSv2 | 0.476434 | | | | 0.411894 | 0.437868 | 0.358071 | | | | | | 0.482166 | CATSv2 | -| **Insgesamt** | **0.499** | | | | **0.387** | **0.481** | **0.357** | | | | | | **0.364** | **Insgesamt** | +| Datensatz | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | Datensatz | +| ------------- | --------- | ------- | --------- | ---- | --------- | --------- | --------- | ------ | ------ | ----- | --- | ------- | --------- | ------------- | +| SMD | 0.439343 | | 0.459753 | | 0.505749 | 0.460181 | 0.495482 | | | | | | 0.050501 | SMD | +| YAHOO | 0.571428 | | 0.690088 | | 0.345384 | 0.349465 | 0.344485 | | | | | | 0.306868 | YAHOO | +| Exathlon | 0.844513 | | 0.958102 | | 0.654310 | 0.874519 | 0.733875 | | | | | | 0.563481 | Exathlon | +| NAB | 0.402974 | | 0.439685 | | 0.209869 | 0.335713 | 0.162982 | | | | | | 0.176029 | NAB | +| OPPORTUNITY | 0.624496 | | 0.968964 | | 0.727956 | 0.661818 | 0.547465 | | | | | | 0.263868 | OPPORTUNITY | +| WSD | 0.324235 | | 0.099717 | | 0.242314 | 0.123481 | 0.127908 | | | | | | 0.077550 | WSD | +| SVDB | 0.483934 | | 0.541451 | | 0.198720 | 0.465020 | 0.130291 | | | | | | 0.519348 | SVDB | +| SMAP | 0.798189 | | 0.887517 | | 0.241609 | 0.876352 | 0.233398 | | | | | | 0.788114 | SMAP | +| IOPS | 0.482294 | | 0.549216 | | 0.429909 | 0.721261 | 0.461068 | | | | | | 0.031872 | IOPS | +| TODS | 0.281649 | | 0.149989 | | 0.206602 | 0.191109 | 0.170148 | | | | | | 0.533591 | TODS | +| MGAB | 0.008996 | | 0.027123 | | 0.003855 | 0.015268 | 0.045860 | | | | | | 0.325650 | MGAB | +| MSL | 0.557113 | | 0.475464 | | 0.264200 | 0.364941 | 0.257571 | | | | | | 0.238423 | MSL | +| NEK | 0.568731 | | 0.849600 | | 0.715902 | 0.877024 | 0.681103 | | | | | | 0.146699 | NEK | +| LTDB | 0.455324 | | 0.489411 | | 0.354462 | 0.479711 | 0.276735 | | | | | | 0.589828 | LTDB | +| MITDB | 0.366934 | | 0.377853 | | 0.160153 | 0.206999 | 0.113066 | | | | | | 0.500834 | MITDB | +| SED | 0.031421 | | 0.020994 | | 0.029325 | 0.031663 | 0.030497 | | | | | | 0.707453 | SED | +| Daphnet | 0.536827 | | 0.468647 | | 0.381499 | 0.192069 | 0.132234 | | | | | | 0.033893 | Daphnet | +| SWaT | 0.123133 | | 0.756700 | | 0.738718 | 0.757687 | 0.737695 | | | | | | 0.110376 | SWaT | +| Power | 0.203760 | | 0.078866 | | 0.072400 | 0.064665 | 0.064788 | | | | | | 0.160167 | Power | +| CATSv2 | 0.476434 | | 0.474705 | | 0.411894 | 0.437868 | 0.358071 | | | | | | 0.482166 | CATSv2 | +| **Insgesamt** | **0.499** | | **0.553** | | **0.387** | **0.481** | **0.357** | | | | | | **0.364** | **Insgesamt** | ## Gesamtbewertung der Sequenzanomalien nach VUS-PR -| Datensatz | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | Datensatz | -| ------------- | --------- | ------- | --- | ---- | --------- | --------- | --------- | ------ | ------ | ----- | --- | ------- | --------- | ------------- | -| SMD | 0.482296 | | | | 0.503535 | 0.410939 | 0.453416 | | | | | | 0.063644 | SMD | -| YAHOO | 0.518566 | | | | 0.351064 | 0.354507 | 0.348855 | | | | | | 0.322916 | YAHOO | -| Exathlon | 0.847945 | | | | 0.657757 | 0.876372 | 0.735253 | | | | | | 0.562449 | Exathlon | -| NAB | 0.478372 | | | | 0.238264 | 0.326918 | 0.181686 | | | | | | 0.219327 | NAB | -| OPPORTUNITY | 0.630618 | | | | 0.741769 | 0.660151 | 0.567052 | | | | | | 0.257788 | OPPORTUNITY | -| WSD | 0.457794 | | | | 0.206990 | 0.087346 | 0.100554 | | | | | | 0.142998 | WSD | -| SVDB | 0.423050 | | | | 0.206479 | 0.436465 | 0.131672 | | | | | | 0.579059 | SVDB | -| SMAP | 0.891481 | | | | 0.237156 | 0.951635 | 0.223192 | | | | | | 0.818737 | SMAP | -| IOPS | 0.426245 | | | | 0.312286 | 0.380533 | 0.334417 | | | | | | 0.111561 | IOPS | -| TODS | 0.437694 | | | | 0.331028 | 0.338275 | 0.263210 | | | | | | 0.773793 | TODS | -| MGAB | 0.008269 | | | | 0.006988 | 0.005586 | 0.025419 | | | | | | 0.238613 | MGAB | -| MSL | 0.653967 | | | | 0.326973 | 0.412021 | 0.309296 | | | | | | 0.303536 | MSL | -| NEK | 0.628709 | | | | 0.756555 | 0.884225 | 0.704672 | | | | | | 0.162564 | NEK | -| LTDB | 0.510507 | | | | 0.406171 | 0.524763 | 0.329828 | | | | | | 0.692355 | LTDB | -| MITDB | 0.320425 | | | | 0.143632 | 0.163465 | 0.112398 | | | | | | 0.548995 | MITDB | -| SED | 0.040176 | | | | 0.058416 | 0.055985 | 0.056562 | | | | | | 0.882987 | SED | -| Daphnet | 0.519516 | | | | 0.398456 | 0.123026 | 0.133080 | | | | | | 0.035185 | Daphnet | -| SWaT | 0.103364 | | | | 0.680748 | 0.366250 | 0.669824 | | | | | | 0.110850 | SWaT | -| Power | 0.122294 | | | | 0.075487 | 0.067090 | 0.067250 | | | | | | 0.166562 | Power | -| CATSv2 | 0.232252 | | | | 0.288293 | 0.282282 | 0.329056 | | | | | | 0.354730 | CATSv2 | -| **Insgesamt** | **0.521** | | | | **0.395** | **0.467** | **0.358** | | | | | | **0.399** | **Insgesamt** | +| Datensatz | POLY | iForest | PCA | USAD | CNN | OmAn | LSTM | kShape | kMeans | OCSVM | LOF | Sub-LOF | KNN | Datensatz | +| ------------- | --------- | ------- | --------- | ---- | --------- | --------- | --------- | ------ | ------ | ----- | --- | ------- | --------- | ------------- | +| SMD | 0.482296 | | 0.423162 | | 0.503535 | 0.410939 | 0.453416 | | | | | | 0.063644 | SMD | +| YAHOO | 0.518566 | | 0.568333 | | 0.351064 | 0.354507 | 0.348855 | | | | | | 0.322916 | YAHOO | +| Exathlon | 0.847945 | | 0.959173 | | 0.657757 | 0.876372 | 0.735253 | | | | | | 0.562449 | Exathlon | +| NAB | 0.478372 | | 0.474780 | | 0.238264 | 0.326918 | 0.181686 | | | | | | 0.219327 | NAB | +| OPPORTUNITY | 0.630618 | | 0.966351 | | 0.741769 | 0.660151 | 0.567052 | | | | | | 0.257788 | OPPORTUNITY | +| WSD | 0.457794 | | 0.067564 | | 0.206990 | 0.087346 | 0.100554 | | | | | | 0.142998 | WSD | +| SVDB | 0.423050 | | 0.508621 | | 0.206479 | 0.436465 | 0.131672 | | | | | | 0.579059 | SVDB | +| SMAP | 0.891481 | | 0.951739 | | 0.237156 | 0.951635 | 0.223192 | | | | | | 0.818737 | SMAP | +| IOPS | 0.426245 | | 0.422834 | | 0.312286 | 0.380533 | 0.334417 | | | | | | 0.111561 | IOPS | +| TODS | 0.437694 | | 0.342464 | | 0.331028 | 0.338275 | 0.263210 | | | | | | 0.773793 | TODS | +| MGAB | 0.008269 | | 0.005551 | | 0.006988 | 0.005586 | 0.025419 | | | | | | 0.238613 | MGAB | +| MSL | 0.653967 | | 0.492975 | | 0.326973 | 0.412021 | 0.309296 | | | | | | 0.303536 | MSL | +| NEK | 0.628709 | | 0.880822 | | 0.756555 | 0.884225 | 0.704672 | | | | | | 0.162564 | NEK | +| LTDB | 0.510507 | | 0.534873 | | 0.406171 | 0.524763 | 0.329828 | | | | | | 0.692355 | LTDB | +| MITDB | 0.320425 | | 0.323526 | | 0.143632 | 0.163465 | 0.112398 | | | | | | 0.548995 | MITDB | +| SED | 0.040176 | | 0.030270 | | 0.058416 | 0.055985 | 0.056562 | | | | | | 0.882987 | SED | +| Daphnet | 0.519516 | | 0.441568 | | 0.398456 | 0.123026 | 0.133080 | | | | | | 0.035185 | Daphnet | +| SWaT | 0.103364 | | 0.375512 | | 0.680748 | 0.366250 | 0.669824 | | | | | | 0.110850 | SWaT | +| Power | 0.122294 | | 0.079616 | | 0.075487 | 0.067090 | 0.067250 | | | | | | 0.166562 | Power | +| CATSv2 | 0.232252 | | 0.232417 | | 0.288293 | 0.282282 | 0.329056 | | | | | | 0.354730 | CATSv2 | +| **Insgesamt** | **0.521** | | **0.545** | | **0.395** | **0.467** | **0.358** | | | | | | **0.399** | **Insgesamt** | # POLY: + Prozessor: CPU @@ -242,39 +242,42 @@ **Evaluation:** + Durchschnitt Gesamt: - + Recall: - + Precision: - + Standard-F1: (vgl. 0.42) - + Auc-Roc: (vgl. 0.71) - + Auc-PR: (vgl. 0.37) - + Vus-PR: (vgl. 0.42) + + Recall: 0.231 + + Precision: 0.385 + + Standard-F1: 0.442 (vgl. 0.42, + 0.022, $\approx$ 5.2 %) + + Auc-Roc: 0.754 (vgl. 0.71, + 0.044, $\approx$ 6.2 %) + + Auc-PR: 0.407 (vgl. 0.37, + 0.037, 10 %) + + Vus-PR: 0.444 (vgl. 0.42, + 0.024, $\approx$ 5.7 %) + Durchschnitt Punktanomalien: - + Recall: - + Precision: - + Standard-F1: - + Auc-Roc: - + Auc-PR: - + Vus-PR: + + Recall: 0.069 + + Precision: 0.061 + + Standard-F1: 0.114 + + Auc-Roc: 0.634 + + Auc-PR: 0.079 + + Vus-PR: 0.294 + Durchschnitt Sequenzanomalien: - + Recall: - + Precision: - + Standard-F1: - + Auc-Roc: - + Auc-PR: - + Vus-PR: + + Recall: 0.251 + + Precision: 0.570 + + Standard-F1: 0.578 + + Auc-Roc: 0.793 + + Auc-PR: 0.553 + + Vus-PR: 0.545 **Bemerkung:** -+ Deutlich besser bei _anomalien ++ Deutlich besser bei Sequenzanomalien ++ Große Differenz bei TAO zw. AUC-PR und VUS-PR (0.15 vs. 0.84) ++ Große Differenz bei Stock zw. AUC-PR und VUS-PR (0.15 vs. 0.83) ++ Große Differenz bei TODS zw. AUC-PR und VUS-PR (0.12 vs. 0.55), noch mehr bei Punktanomalien + Beste erkannte Gruppe: + nach AUC-PR: - + + + Exathlon: 0.958102 + nach VUS-PR: - + (vgl. Exathlon + Tao 0.93) + + Exathlon 0.959173 (vgl. 0.93, + 0.03, $\approx$ 3.2 %) + Schlechteste erkannte Gruppe: + nach AUC-PR: - + + + SED: 0.020994 (MGAB: 0.027123) + nach VUS-PR: - + (vgl. MGAB 0.01) + + MGAB: 0.005551 (vgl. 0.01, vermutl. gleich ; SED: 0.030270) # USAD + Prozessor: GPU diff --git a/src/models/desi/desi_evaluate_groups.ipynb b/src/models/desi/desi_evaluate_groups.ipynb index 501bddf..ffcd3bb 100644 --- a/src/models/desi/desi_evaluate_groups.ipynb +++ b/src/models/desi/desi_evaluate_groups.ipynb @@ -13,7 +13,7 @@ }, { "cell_type": "code", - "execution_count": 257, + "execution_count": 273, "metadata": {}, "outputs": [ { @@ -59,153 +59,153 @@ " <tbody>\n", " <tr>\n", " <th>0</th>\n", - " <td>{'win_size': 50, 'lr': 0.002}</td>\n", + " <td>{'periodicity': 3, 'n_components': 0.25}</td>\n", " <td>001_NAB_id_1_Facility_tr_1007_1st_2014.csv</td>\n", - " <td>3.769196</td>\n", + " <td>0.983548</td>\n", " <td>NAB</td>\n", " <td>False</td>\n", " <td>True</td>\n", - " <td>0.221717</td>\n", - " <td>0.505060</td>\n", - " <td>0.130220</td>\n", - " <td>0.416842</td>\n", - " <td>0.254451</td>\n", - " <td>0.561845</td>\n", - " <td>0.500000</td>\n", - " <td>0.507629</td>\n", - " <td>0.784372</td>\n", - " <td>0.142857</td>\n", - " <td>1.0</td>\n", + " <td>0.278238</td>\n", + " <td>0.568376</td>\n", + " <td>0.274697</td>\n", + " <td>0.572207</td>\n", + " <td>0.280371</td>\n", + " <td>1.000000</td>\n", + " <td>1.000000</td>\n", + " <td>0.664639</td>\n", + " <td>0.966270</td>\n", + " <td>0.102041</td>\n", + " <td>1.000000</td>\n", " </tr>\n", " <tr>\n", " <th>1</th>\n", - " <td>{'win_size': 100, 'lr': 0.002}</td>\n", + " <td>{'periodicity': 1, 'n_components': 0.25}</td>\n", " <td>002_NAB_id_2_WebService_tr_1500_1st_4106.csv</td>\n", - " <td>5.537790</td>\n", + " <td>2.305736</td>\n", " <td>NAB</td>\n", " <td>False</td>\n", " <td>False</td>\n", - " <td>0.400549</td>\n", - " <td>0.509456</td>\n", - " <td>0.402214</td>\n", - " <td>0.523848</td>\n", - " <td>0.459489</td>\n", + " <td>0.531921</td>\n", + " <td>0.725510</td>\n", + " <td>0.531449</td>\n", + " <td>0.736615</td>\n", + " <td>0.604596</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", - " <td>0.501176</td>\n", - " <td>0.992744</td>\n", - " <td>0.163265</td>\n", - " <td>1.0</td>\n", + " <td>0.543667</td>\n", + " <td>0.995006</td>\n", + " <td>0.205651</td>\n", + " <td>1.000000</td>\n", " </tr>\n", " <tr>\n", " <th>2</th>\n", - " <td>{'win_size': 100, 'lr': 0.0002}</td>\n", + " <td>{'periodicity': 3, 'n_components': 0.25}</td>\n", " <td>003_NAB_id_3_WebService_tr_1362_1st_1462.csv</td>\n", - " <td>5.778356</td>\n", + " <td>2.531015</td>\n", " <td>NAB</td>\n", " <td>False</td>\n", " <td>True</td>\n", - " <td>0.390329</td>\n", - " <td>0.605371</td>\n", - " <td>0.390623</td>\n", - " <td>0.613543</td>\n", - " <td>0.427462</td>\n", + " <td>0.223190</td>\n", + " <td>0.530528</td>\n", + " <td>0.223165</td>\n", + " <td>0.538166</td>\n", + " <td>0.219245</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", - " <td>0.561863</td>\n", - " <td>0.990312</td>\n", - " <td>0.206829</td>\n", - " <td>1.0</td>\n", + " <td>0.432616</td>\n", + " <td>0.985025</td>\n", + " <td>0.110965</td>\n", + " <td>0.836634</td>\n", " </tr>\n", " <tr>\n", " <th>3</th>\n", - " <td>{'win_size': 100, 'lr': 0.002}</td>\n", + " <td>{'periodicity': 3, 'n_components': None}</td>\n", " <td>004_NAB_id_4_Facility_tr_1007_1st_1437.csv</td>\n", - " <td>3.462159</td>\n", + " <td>1.179519</td>\n", " <td>NAB</td>\n", " <td>False</td>\n", " <td>False</td>\n", - " <td>0.408544</td>\n", - " <td>0.720660</td>\n", - " <td>0.412292</td>\n", - " <td>0.735874</td>\n", - " <td>0.417320</td>\n", + " <td>0.479905</td>\n", + " <td>0.743691</td>\n", + " <td>0.487510</td>\n", + " <td>0.763097</td>\n", + " <td>0.491554</td>\n", + " <td>1.000000</td>\n", " <td>1.000000</td>\n", + " <td>0.630790</td>\n", + " <td>0.988536</td>\n", + " <td>0.310945</td>\n", " <td>1.000000</td>\n", - " <td>0.578501</td>\n", - " <td>0.986099</td>\n", - " <td>0.248756</td>\n", - " <td>1.0</td>\n", " </tr>\n", " <tr>\n", " <th>4</th>\n", - " <td>{'win_size': 100, 'lr': 0.002}</td>\n", + " <td>{'periodicity': 2, 'n_components': 0.25}</td>\n", " <td>005_NAB_id_5_Traffic_tr_594_1st_1645.csv</td>\n", - " <td>2.271409</td>\n", + " <td>4.630921</td>\n", " <td>NAB</td>\n", " <td>False</td>\n", " <td>False</td>\n", - " <td>0.112038</td>\n", - " <td>0.475239</td>\n", - " <td>0.114226</td>\n", - " <td>0.479093</td>\n", - " <td>0.240997</td>\n", - " <td>0.750789</td>\n", - " <td>0.337209</td>\n", - " <td>0.394618</td>\n", - " <td>0.733698</td>\n", + " <td>0.151934</td>\n", + " <td>0.722509</td>\n", + " <td>0.160659</td>\n", + " <td>0.731032</td>\n", + " <td>0.345175</td>\n", + " <td>0.810903</td>\n", + " <td>0.344428</td>\n", + " <td>0.353061</td>\n", + " <td>0.746778</td>\n", + " <td>0.000000</td>\n", " <td>0.000000</td>\n", - " <td>0.0</td>\n", " </tr>\n", " </tbody>\n", "</table>\n", "</div>" ], "text/plain": [ - " params \\\n", - "0 {'win_size': 50, 'lr': 0.002} \n", - "1 {'win_size': 100, 'lr': 0.002} \n", - "2 {'win_size': 100, 'lr': 0.0002} \n", - "3 {'win_size': 100, 'lr': 0.002} \n", - "4 {'win_size': 100, 'lr': 0.002} \n", + " params \\\n", + "0 {'periodicity': 3, 'n_components': 0.25} \n", + "1 {'periodicity': 1, 'n_components': 0.25} \n", + "2 {'periodicity': 3, 'n_components': 0.25} \n", + "3 {'periodicity': 3, 'n_components': None} \n", + "4 {'periodicity': 2, 'n_components': 0.25} \n", "\n", " file_name duration group \\\n", - "0 001_NAB_id_1_Facility_tr_1007_1st_2014.csv 3.769196 NAB \n", - "1 002_NAB_id_2_WebService_tr_1500_1st_4106.csv 5.537790 NAB \n", - "2 003_NAB_id_3_WebService_tr_1362_1st_1462.csv 5.778356 NAB \n", - "3 004_NAB_id_4_Facility_tr_1007_1st_1437.csv 3.462159 NAB \n", - "4 005_NAB_id_5_Traffic_tr_594_1st_1645.csv 2.271409 NAB \n", + "0 001_NAB_id_1_Facility_tr_1007_1st_2014.csv 0.983548 NAB \n", + "1 002_NAB_id_2_WebService_tr_1500_1st_4106.csv 2.305736 NAB \n", + "2 003_NAB_id_3_WebService_tr_1362_1st_1462.csv 2.531015 NAB \n", + "3 004_NAB_id_4_Facility_tr_1007_1st_1437.csv 1.179519 NAB \n", + "4 005_NAB_id_5_Traffic_tr_594_1st_1645.csv 4.630921 NAB \n", "\n", " point anomaly seq anomaly AUC-PR AUC-ROC VUS-PR VUS-ROC \\\n", - "0 False True 0.221717 0.505060 0.130220 0.416842 \n", - "1 False False 0.400549 0.509456 0.402214 0.523848 \n", - "2 False True 0.390329 0.605371 0.390623 0.613543 \n", - "3 False False 0.408544 0.720660 0.412292 0.735874 \n", - "4 False False 0.112038 0.475239 0.114226 0.479093 \n", + "0 False True 0.278238 0.568376 0.274697 0.572207 \n", + "1 False False 0.531921 0.725510 0.531449 0.736615 \n", + "2 False True 0.223190 0.530528 0.223165 0.538166 \n", + "3 False False 0.479905 0.743691 0.487510 0.763097 \n", + "4 False False 0.151934 0.722509 0.160659 0.731032 \n", "\n", " Standard-F1 PA-F1 Event-based-F1 R-based-F1 Affiliation-F Recall \\\n", - "0 0.254451 0.561845 0.500000 0.507629 0.784372 0.142857 \n", - "1 0.459489 1.000000 1.000000 0.501176 0.992744 0.163265 \n", - "2 0.427462 1.000000 1.000000 0.561863 0.990312 0.206829 \n", - "3 0.417320 1.000000 1.000000 0.578501 0.986099 0.248756 \n", - "4 0.240997 0.750789 0.337209 0.394618 0.733698 0.000000 \n", + "0 0.280371 1.000000 1.000000 0.664639 0.966270 0.102041 \n", + "1 0.604596 1.000000 1.000000 0.543667 0.995006 0.205651 \n", + "2 0.219245 1.000000 1.000000 0.432616 0.985025 0.110965 \n", + "3 0.491554 1.000000 1.000000 0.630790 0.988536 0.310945 \n", + "4 0.345175 0.810903 0.344428 0.353061 0.746778 0.000000 \n", "\n", " Precision \n", - "0 1.0 \n", - "1 1.0 \n", - "2 1.0 \n", - "3 1.0 \n", - "4 0.0 " + "0 1.000000 \n", + "1 1.000000 \n", + "2 0.836634 \n", + "3 1.000000 \n", + "4 0.000000 " ] }, - "execution_count": 257, + "execution_count": 273, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#Dataframe erstellen\n", - "model = 'OmniAnomaly'\n", + "model = 'PCA'\n", "path = '../../../docs/evaluation/'+model+'.csv'\n", "df = pd.read_csv(path)\n", "df.head()\n", @@ -214,7 +214,7 @@ }, { "cell_type": "code", - "execution_count": 258, + "execution_count": 274, "metadata": {}, "outputs": [ { @@ -247,7 +247,7 @@ "Name: count, dtype: int64" ] }, - "execution_count": 258, + "execution_count": 274, "metadata": {}, "output_type": "execute_result" } @@ -258,7 +258,7 @@ }, { "cell_type": "code", - "execution_count": 259, + "execution_count": 275, "metadata": {}, "outputs": [], "source": [ @@ -298,7 +298,7 @@ }, { "cell_type": "code", - "execution_count": 260, + "execution_count": 276, "metadata": {}, "outputs": [ { @@ -394,34 +394,34 @@ "x0": " ", "xaxis": "x", "y": [ - 0.1302203072910785, - 0.4022137728871261, - 0.3906233887098125, - 0.4122921912099407, - 0.1142257558806306, - 0.0880792758972597, - 0.5945298792003745, - 0.8273090007162244, - 0.2552472815151967, - 0.9997542718069378, - 0.0907112675516106, - 0.1292702960609943, - 0.0972818379040075, - 0.3994887644840186, - 0.1439402260196326, - 0.2424842875715648, - 0.4149700488223941, - 0.2285050582179044, - 0.1512496442317957, - 0.2058085038543614, - 0.2908789045706321, - 0.5280307785175986, - 0.6822473107585518, - 0.4676867037973196, - 0.1813781734229651, - 0.0659565482564866, - 0.5669717577019497, - 0.4748525840296488 + 0.27469687396343, + 0.5314491096009349, + 0.2231652553378895, + 0.4875103095565208, + 0.1606592341188991, + 0.2541769968032993, + 0.9553906941279872, + 0.857249525803223, + 0.2640654686719343, + 0.8508488148943761, + 0.9925716865962884, + 0.1284750818174506, + 0.9934318546118288, + 0.358492656313877, + 0.1026738125417476, + 0.6750787761039542, + 0.6284091667304775, + 0.2344108274803064, + 0.4499414989527255, + 0.1505397062284122, + 0.1311195922197614, + 0.5137920944098158, + 0.8421092613297361, + 0.8842044418172702, + 0.141305960168882, + 0.2811253743188024, + 0.9952788284177492, + 0.9569797525213009 ], "y0": " ", "yaxis": "y" @@ -496,31 +496,31 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0138569814585429, - 0.001181733762286, - 0.8352055383931767, - 0.680595798883237, - 0.0035764524037275, - 0.0048270334391916, - 0.2068164192464263, - 0.1690250863855109, - 0.1063398226995458, - 0.0259924924295775, - 0.1486284434881558, - 0.0531173955635001, - 0.0017766776216456, - 0.0520668698447761, - 0.3904236225375164, - 0.1805671442448653, - 0.0153942378244447, - 0.0085055030561329, - 0.4086907171088323, - 0.0374464922053418, - 0.0052537413398592, - 0.0221706858448497, - 0.0591570823306234, - 0.0092542707429635, - 0.5004374650398066 + 0.0082670079590517, + 0.0014099690068142, + 0.9236468900520995, + 0.4771023720844945, + 0.0044508025768655, + 0.0040619668229091, + 0.2456385116792, + 0.294540593133914, + 0.0091701806933172, + 0.0131781969778066, + 0.19139290541185, + 0.0203605188620572, + 0.0426022133474463, + 0.0264901645024626, + 0.3600086271912968, + 0.0835629657220682, + 0.0083264560083677, + 0.0050042671382042, + 0.3331039743880938, + 0.0188619360916415, + 0.0061295785091053, + 0.0156166348874407, + 0.1214308142783879, + 0.0060638628920775, + 0.6637294054821924 ], "y0": " ", "yaxis": "y" @@ -563,15 +563,15 @@ "x0": " ", "xaxis": "x", "y": [ - 0.8756325434604894, - 0.2181710454746772, - 0.3865483306024307, - 0.9998469738484012, - 0.0316245440119673, - 0.1360462319889852, - 0.1866678353027536, - 0.1229257615629257, - 0.894964708712581 + 0.9497578688930188, + 0.553223899131578, + 0.205083010215072, + 0.9998954278657152, + 0.0197153144064265, + 0.1141122723261541, + 0.9423010686329109, + 0.1207966307339942, + 0.8049043360701573 ], "y0": " ", "yaxis": "y" @@ -616,16 +616,16 @@ "x0": " ", "xaxis": "x", "y": [ - 0.8937555915273082, - 0.8762053509308628, - 0.9380172008831535, - 0.9505153336820884, - 0.2334907097222181, - 0.7416562788484269, - 0.2321983429256819, - 0.9592146627430684, - 0.9821973051860904, - 0.9093330774697946 + 0.8574905973877508, + 0.92804077881243, + 0.9230555619966364, + 0.9340385711882504, + 0.5111769985809861, + 0.7551520816669955, + 0.5201107309225481, + 0.9604363075885778, + 0.9746538059418062, + 0.8896683742523214 ], "y0": " ", "yaxis": "y" @@ -652,7 +652,7 @@ "x0": " ", "xaxis": "x", "y": [ - 0.1230261153960334 + 0.4415678196838903 ], "y0": " ", "yaxis": "y" @@ -693,14 +693,14 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0549709822646821, - 0.3318502760972369, - 0.0251261751044557, - 0.1794276744073287, - 0.014139203634825, - 0.062620314085803, - 0.5833003453475026, - 0.0562838015377969 + 0.0884825042785232, + 0.7297884537537368, + 0.0207054044171172, + 0.1986276929585888, + 0.0370139907453944, + 0.2538141950959758, + 0.8654461672837669, + 0.3943278717593051 ], "y0": " ", "yaxis": "y" @@ -801,44 +801,44 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0266243975061687, - 0.0297245919348014, - 0.944545057083964, - 0.7591138774218303, - 0.0097803150270071, - 0.095073095634946, - 0.6386361557962903, - 0.7454837966487013, - 0.7964636789355957, - 0.4084473945398264, - 0.0691303799964401, - 0.7334762640318608, - 0.5678469078635353, - 0.507417782770098, - 0.9373285828202228, - 0.0197111294404236, - 0.8875340272864165, - 0.3292564105518734, - 0.0097381072437349, - 0.7487261440107982, - 0.8561091635204715, - 0.5723296943665049, - 0.4966521762688036, - 0.0092122056111718, - 0.0028819650546126, - 0.4280172937474061, - 0.7661886964443674, - 0.1908822402332833, - 0.0029623176379283, - 0.1043504878207531, - 0.7333870041990388, - 0.9224681332747178, - 0.1806100268910453, - 0.9055842013966492, - 0.9449667124052952, - 0.9863923726281226, - 0.0326789422755931, - 0.7924699119722045 + 0.0281745126675704, + 0.0208606248304476, + 0.8835161520968762, + 0.7669977290710592, + 0.0096736524761135, + 0.0820554895261615, + 0.5154265211595305, + 0.7496875016886325, + 0.7260925316520095, + 0.4342112510291898, + 0.4101078973997225, + 0.642002494195941, + 0.5517742603216037, + 0.4819523539981932, + 0.9282146072191556, + 0.0187774027041254, + 0.8744749721257412, + 0.1755321345985173, + 0.0091555637201698, + 0.7578887675575475, + 0.8116696434190227, + 0.5959323677488267, + 0.5469263981935665, + 0.009284437219746, + 0.0029279265194517, + 0.5303150761772312, + 0.7835984903319327, + 0.13911312564599, + 0.0029125209796455, + 0.0784216989915066, + 0.7379767148603048, + 0.7817963120467334, + 0.1238215329595893, + 0.8813744348597918, + 0.9082102925573098, + 0.973465771574852, + 0.0208899157406381, + 0.7605409697951906 ], "y0": " ", "yaxis": "y" @@ -881,15 +881,15 @@ "x0": " ", "xaxis": "x", "y": [ - 0.1853608539919262, - 0.2188671400087061, - 0.1878462019645704, - 0.9311008134991312, - 0.8068545328267326, - 0.4361751269479739, - 0.9807720707848718, - 0.2644375461419985, - 0.7114509495941372 + 0.1732443514727185, + 0.2203454340822346, + 0.1754948703693422, + 0.9315963429053428, + 0.8643569293095935, + 0.4394914888876934, + 0.9792049265910931, + 0.3058611106735742, + 0.7242651255345304 ], "y0": " ", "yaxis": "y" @@ -932,15 +932,15 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0045108373218728, - 0.0036595263500432, - 0.0068906786303711, - 0.0063585538259189, - 0.0048930521728627, - 0.0059683736042754, - 0.0046561206695908, - 0.0044772686812915, - 0.0088636228817901 + 0.0036315813303383, + 0.0037655908187766, + 0.0059810136431207, + 0.006865541403175, + 0.0051425444012506, + 0.0063396701391226, + 0.0045498620060225, + 0.0046093654319106, + 0.0090748536944421 ], "y0": " ", "yaxis": "y" @@ -971,9 +971,9 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0633447643274056, - 0.0553572103570943, - 0.0492535952610713 + 0.0359138813621782, + 0.0280402251316103, + 0.0268547211588662 ], "y0": " ", "yaxis": "y" @@ -1038,26 +1038,26 @@ "x0": " ", "xaxis": "x", "y": [ - 0.8703939179785799, - 0.6129436942396139, - 0.3283357694198582, - 0.4087860010899778, - 0.6869960103977667, - 0.6876026905457271, - 0.2020762662644024, - 0.4057263551425141, - 0.8686648847551276, - 0.0935556955716415, - 0.5096686650641455, - 0.5172939489652943, - 0.3769767381843728, - 0.4781841035202803, - 0.8223414318950831, - 0.0458816843031813, - 0.52684541255492, - 0.082507682170724, - 0.2010817771103774, - 0.1799196335471928 + 0.8566535196182951, + 0.8158875149737453, + 0.4580267417121418, + 0.4618914501882979, + 0.8142543211224857, + 0.6769273905227109, + 0.2822860430010954, + 0.4701269648238196, + 0.858979040367276, + 0.0896262194400507, + 0.4977320274314778, + 0.5950762306561345, + 0.5763380480485812, + 0.5274556569643333, + 0.8903993699512411, + 0.1087739974908431, + 0.5955393006320518, + 0.3181954125217247, + 0.379294732886966, + 0.2062199760943832 ], "y0": " ", "yaxis": "y" @@ -1088,9 +1088,9 @@ "x0": " ", "xaxis": "x", "y": [ - 0.972872432075356, - 0.9829339735918428, - 0.8342540826390398 + 0.9091251317364176, + 0.9506794835170896, + 0.6610238880447978 ], "y0": " ", "yaxis": "y" @@ -1149,23 +1149,23 @@ "x0": " ", "xaxis": "x", "y": [ - 0.1695294468493177, - 0.0394701369767289, - 0.1954396465615256, - 0.1531737831032834, - 0.0305911313289862, - 0.2418579952078201, - 0.0536389153459757, - 0.2940401528152297, - 0.2307214705182878, - 0.6057012670434808, - 0.0324181463158052, - 0.2387386652247117, - 0.37520810731861, - 0.0644676025152441, - 0.3851713027878563, - 0.1475062775654274, - 0.0205627214986641 + 0.2651121474222908, + 0.0279273816569974, + 0.2313835360731638, + 0.2729232507881158, + 0.0684103666830068, + 0.2924519833543287, + 0.6193038936483811, + 0.2709789663440224, + 0.1862961967107103, + 0.7050715508311083, + 0.0272265220207305, + 0.1447718935809737, + 0.5591592994540369, + 0.044218759573987, + 0.2116853702141464, + 0.1430149610203413, + 0.3563938047580396 ], "y0": " ", "yaxis": "y" @@ -1208,15 +1208,15 @@ "x0": " ", "xaxis": "x", "y": [ - 0.975414605514418, - 0.6426963566709921, - 0.979108208772706, - 0.6124845879505054, - 0.9626529276956192, - 0.7595886627358087, - 0.919399601678828, - 0.9912993604185496, - 0.8824959441198039 + 0.999129245383132, + 0.9081803023566192, + 0.992638247579151, + 0.9497482263485334, + 0.9992927197517372, + 0.5923546257298867, + 0.975334084570608, + 0.989392806499534, + 0.956468578270126 ], "y0": " ", "yaxis": "y" @@ -1243,7 +1243,7 @@ "x0": " ", "xaxis": "x", "y": [ - 0.2822817568231803 + 0.2324174649783961 ], "y0": " ", "yaxis": "y" @@ -1298,21 +1298,21 @@ "x0": " ", "xaxis": "x", "y": [ - 0.8797038551168019, - 0.7033066547233676, - 0.5947993293567573, - 0.5707225751077202, - 0.6805094281437679, - 0.8407601931959467, - 0.5325762773310286, - 0.5293383408126268, - 0.1072474665950072, - 0.7648251729296174, - 0.1517167440141806, - 0.3742456631214103, - 0.6343803169613312, - 0.5487063784862611, - 0.160064175465516 + 0.8726202291824232, + 0.610852721997522, + 0.6155798392072039, + 0.4682077282310246, + 0.751274926874847, + 0.8382560744879621, + 0.523840775367489, + 0.4996242938810437, + 0.1613893550186405, + 0.758243756880708, + 0.277149241305875, + 0.6646283794438956, + 0.6587134589008796, + 0.4509057943476414, + 0.1418754072141867 ], "y0": " ", "yaxis": "y" @@ -1339,7 +1339,7 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0670900075295742 + 0.0796163424706734 ], "y0": " ", "yaxis": "y" @@ -1516,82 +1516,82 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0471718421454325, - 0.0190424213252811, - 0.0041706873357516, - 0.2120256826787118, - 0.004056550028486, - 0.0151839596126415, - 0.2125438899114713, - 0.4480367579289659, - 0.0020323116811085, - 0.1610839940157946, - 0.0057246049183274, - 0.0002534667552821, - 0.0932800905322814, - 0.0023054059021328, - 0.0053187558976963, - 0.0344919540563335, - 0.2781198317261985, - 0.0007664794647502, - 0.0036442457262567, - 0.0833927035113, - 0.0026727398758684, - 0.002594184859634, - 0.0004876292717161, - 0.0017417365962071, - 0.0247273948939322, - 0.0271585587110347, - 0.2619353620844229, - 0.0270659832212378, - 0.0294308993197009, - 0.0109264309455867, - 0.431670581162257, - 0.007928215989927, - 0.0134637361171317, - 0.0401991385760195, - 0.0302190965128778, - 0.0813100976331848, - 0.0195811071840126, - 0.0005163577655492, - 0.9962568285170054, - 0.0975493376397987, - 0.007717584376, - 0.0477052425465032, - 0.0572602401192616, - 0.280583508393849, - 0.0119532481407235, - 0.6848658400163066, - 0.0072063925384272, - 0.4258710852284142, - 0.0040798910529044, - 0.0100931113061704, - 0.0058739497168383, - 0.0093568278292784, - 0.0017767947597154, - 0.00002330781052163945, - 0.005529317513374, - 0.0096971272675274, - 0.7832252594987494, - 0.0007598079739367, - 0.0074230849588765, - 0.0057330888432505, - 0.0112406293362263, - 0.0028466978107715, - 0.0053472752812739, - 0.0119883563514473, - 0.0296133936959597, - 0.0059805388041104, - 0.0004723505722502, - 0.0121891696560696, - 0.0104538827550832, - 0.0338079033418569, - 0.0410694796724464, - 0.3759508430415916, - 0.0035369455535797, - 0.0016087330717899, - 0.1086621765957288, - 0.044330422702483 + 0.062073431109232, + 0.1534236742340194, + 0.0035482214683504, + 0.9692011896886524, + 0.0034638958633555, + 0.011193035009296, + 0.4747207692446523, + 0.4625760950744423, + 0.0018410653767414, + 0.6488161829442041, + 0.0211392282669546, + 0.00008087371704294223, + 0.1420362045690186, + 0.0020652090914848, + 0.0034664201764447, + 0.0212069042466087, + 0.6626815847686789, + 0.0002011377147159, + 0.0048447784111762, + 0.1147742964555071, + 0.0037759699994952, + 0.0026471766309761, + 0.0007963866472658, + 0.0011992377243798, + 0.354982234340031, + 0.0504630567270537, + 0.6386414920599229, + 0.0221474613455235, + 0.0264970863520337, + 0.009175426940134, + 0.9220064707473736, + 0.0057431049355416, + 0.0085780372157661, + 0.0429590308120965, + 0.0409979733060353, + 0.0306029944354086, + 0.0497502544556117, + 0.0007401092940175, + 0.9953477100532568, + 0.5550324941711615, + 0.0118350025766153, + 0.0157767155185246, + 0.8280224982694211, + 0.6647525834736252, + 0.0251117844084477, + 0.8525410939036406, + 0.0084387035775745, + 0.4134215132541723, + 0.0046018314838723, + 0.0085338253141501, + 0.0061858133662681, + 0.0066173477408883, + 0.0016527602413746, + 0.0002705291085309, + 0.0207620891853066, + 0.0087586656065238, + 0.7916856409179823, + 0.0005020757054554, + 0.0050242324806888, + 0.0217581722692589, + 0.007330816691935, + 0.0125777514549883, + 0.0026343156874077, + 0.1869905649814794, + 0.0067997655330044, + 0.0028172119367344, + 0.0007489881133081, + 0.0070511331835356, + 0.0075269076291507, + 0.0289212369178429, + 0.0484770864012803, + 0.0039993726023695, + 0.0019306765803611, + 0.007340941709119, + 0.0377875534632079, + 0.0189253002492764 ], "y0": " ", "yaxis": "y" @@ -1654,25 +1654,25 @@ "x0": " ", "xaxis": "x", "y": [ - 0.9457012739347488, - 0.1396606184207337, - 0.0754664855322804, - 0.013877724657315, - 0.9547568300220858, - 0.517060415649854, - 0.0299065213872796, - 0.9699996644354272, - 0.0064357049643732, - 0.496978500242495, - 0.8105200493439114, - 0.9029144848090346, - 0.7511949225899286, - 0.0204501578092285, - 0.0148333834234145, - 0.0177176976512051, - 0.3330417055407634, - 0.005401175036047, - 0.9332700556245824 + 0.8654013325752927, + 0.2254889421215301, + 1, + 0.7712180263136629, + 0.9215808145674464, + 0.1335514421906008, + 0.9980377653307482, + 0.9743854082818808, + 0.008442218557289, + 0.5626773104511169, + 0.8211935670435195, + 0.6797690214811488, + 0.4074390013954191, + 0.0095065785302482, + 0.7387481553967095, + 0.0091978091157326, + 0.7087726662949463, + 0.0054985731535941, + 0.9290917035245536 ], "y0": " ", "yaxis": "y" @@ -1699,7 +1699,7 @@ "x0": " ", "xaxis": "x", "y": [ - 0.366250384309729 + 0.3755116281521825 ], "y0": " ", "yaxis": "y" @@ -1794,41 +1794,41 @@ "x0": " ", "xaxis": "x", "y": [ - 0.013889316955303, - 0.0105128216003464, - 0.028804813806297, - 0.0362093736616186, - 0.0111540307702929, - 0.9113497557705376, - 0.1107409478794131, - 0.0263395962374262, - 0.3339754248390206, - 0.9858266269575052, - 0.0039591510778783, - 0.0113020072024764, - 0.0061435197688365, - 0.0048407321531422, - 0.0315186530723804, - 0.0031084008923197, - 0.863284427528115, - 0.91112101110015, - 0.007166766351422, - 0.0019104193267078, - 0.015861721178294, - 0.0035058948618592, - 0.4315545844253702, - 0.0093926424183596, - 0.961653390682191, - 0.1529872460832244, - 0.9957934309396842, - 0.012796912240428, - 0.0133844381024959, - 0.0070997732605693, - 0.010031491879589, - 0.0015954182890532, - 0.0198479515690152, - 0.0078503450916495, - 0.7360318531918502 + 0.0055779728020924, + 0.001826866277741, + 0.0143817756689641, + 0.5793903692154839, + 0.0098973609178067, + 0.0018217923430199, + 0.2895069870119879, + 0.0211260276515834, + 0.0180407408635086, + 0.0993779441723636, + 0.0025846752290107, + 0.1277728273424005, + 0.0029154518950437, + 0.001435935936418, + 0.1412860718285624, + 0.0019177142576425, + 0.3944508331850583, + 1, + 0.0018076352357365, + 0.0012005145574333, + 0.0061663842669927, + 0.0013341291417273, + 0.4776330501944795, + 0.0028627652924336, + 0.6330980737243374, + 0.3581164988093764, + 0.9843217746763534, + 0.0062989145982401, + 0.0015859914793164, + 0.0077981192174215, + 0.0026947502805771, + 0.0012672625717178, + 0.0087036979078568, + 0.0133214098303975, + 0.5089848671178905 ], "y0": " ", "yaxis": "y" @@ -1917,38 +1917,38 @@ "x0": " ", "xaxis": "x", "y": [ - 0.9958298803352532, - 0.9960323279752864, - 0.9994160160623564, - 0.0679798108052264, - 0.9960247538196566, - 0.999415628746404, - 0.9344600938815092, - 0.8941158599573051, - 0.99970379614177, - 0.9988244423958548, - 0.8930970111795608, - 0.9875835103061236, - 0.8963925792054593, - 0.9999142103620434, - 0.994758565857886, - 0.9960620041106312, - 0.8930970111795608, - 0.9947693429311582, - 0.9257565944621264, - 0.9344600938815092, - 0.9886397810898266, - 0.8930970111795608, - 0.9344600938815092, - 0.999417056909103, - 0.8930970111795608, - 0.0680871293392232, - 0.999416051575724, - 0.0496585060206534, - 0.8924214505965888, - 0.9344600938815092, - 0.9947561416770048, - 0.998708191474183 + 0.9965858502300255, + 0.988183187884424, + 0.999748492585075, + 0.9371479814778898, + 0.988183187884424, + 0.999748492585075, + 0.9391630720596988, + 0.86531568445029, + 0.9996498017571092, + 0.999594267713955, + 0.8940469269414556, + 0.9992119894267968, + 0.86531568445029, + 0.9999156676770432, + 0.9868333929463836, + 0.988183187884424, + 0.8940469269414556, + 0.9868333929463836, + 0.9319084915356128, + 0.9391630720596988, + 0.992818362779768, + 0.8940469269414556, + 0.9391630720596988, + 0.999748492585075, + 0.8940469269414556, + 0.9855561154673528, + 0.999748492585075, + 0.9996759411749324, + 0.86531568445029, + 0.9391630720596988, + 0.9868333929463836, + 0.998625644771759 ], "y0": " ", "yaxis": "y" @@ -2029,34 +2029,34 @@ "x0": " ", "xaxis": "x", "y": [ - 0.9875656804640912, - 0.0682831509235911, - 0.9954658523123608, - 0.9739349221065868, - 0.9540456788536132, - 0.068010725755527, - 0.0129539886817153, - 0.0141127847717399, - 0.9971669091187836, - 0.0196919340477976, - 0.997142294920792, - 0.9988614966821197, - 0.9946721879823966, - 0.617246665423114, - 0.9895374559442452, - 0.7433025389052081, - 0.8677147752771016, - 0.0168849937738833, - 0.9995800386928292, - 0.020668967725045, - 0.9940731638610902, - 0.9990970116506293, - 0.0168468658889783, - 0.0201813242167401, - 0.9956666578080888, - 0.8698690021430505, - 0.9803703088298416, - 0.985106954794408 + 0.985692097090136, + 0.9938419559060716, + 0.9935589526478849, + 0.9475827297775316, + 0.9639536861938108, + 0.9652695747038732, + 0.753161479648069, + 0.9985397647157398, + 0.9589349751116372, + 0.0201789945613254, + 0.9977634562727375, + 0.998939041505708, + 0.9937723835641996, + 0.5284982500027154, + 0.9779397211433024, + 0.9437769405111078, + 0.999533040099518, + 0.995805500232571, + 0.9993591923666444, + 0.997069521009402, + 0.9942085024582346, + 0.9968920216872316, + 0.9582599046173212, + 0.9972096833916464, + 0.9971763600254632, + 0.9612355471225956, + 0.995941903984957, + 0.9723665045948484 ], "y0": " ", "yaxis": "y" @@ -2637,7 +2637,7 @@ } }, "title": { - "text": "<b> Vergleich der Metriken zwischen den Gruppen für OmniAnomaly </b>", + "text": "<b> Vergleich der Metriken zwischen den Gruppen für PCA </b>", "xanchor": "center", "y": 0.95, "yanchor": "top" @@ -2729,7 +2729,7 @@ }, { "cell_type": "code", - "execution_count": 261, + "execution_count": 277, "metadata": {}, "outputs": [ { @@ -2783,107 +2783,107 @@ " <tbody>\n", " <tr>\n", " <th>0</th>\n", - " <td>{'win_size': 50, 'lr': 0.002}</td>\n", + " <td>{'periodicity': 3, 'n_components': 0.25}</td>\n", " <td>001_NAB_id_1_Facility_tr_1007_1st_2014.csv</td>\n", - " <td>3.769196</td>\n", + " <td>0.983548</td>\n", " <td>NAB</td>\n", " <td>False</td>\n", " <td>True</td>\n", - " <td>0.221717</td>\n", - " <td>0.505060</td>\n", - " <td>0.130220</td>\n", - " <td>0.416842</td>\n", - " <td>0.254451</td>\n", - " <td>0.561845</td>\n", - " <td>0.500000</td>\n", - " <td>0.507629</td>\n", - " <td>0.784372</td>\n", - " <td>0.142857</td>\n", - " <td>1.0</td>\n", + " <td>0.278238</td>\n", + " <td>0.568376</td>\n", + " <td>0.274697</td>\n", + " <td>0.572207</td>\n", + " <td>0.280371</td>\n", + " <td>1.000000</td>\n", + " <td>1.000000</td>\n", + " <td>0.664639</td>\n", + " <td>0.966270</td>\n", + " <td>0.102041</td>\n", + " <td>1.000000</td>\n", " <td>Sequenzeanomalie</td>\n", " </tr>\n", " <tr>\n", " <th>2</th>\n", - " <td>{'win_size': 100, 'lr': 0.0002}</td>\n", + " <td>{'periodicity': 3, 'n_components': 0.25}</td>\n", " <td>003_NAB_id_3_WebService_tr_1362_1st_1462.csv</td>\n", - " <td>5.778356</td>\n", + " <td>2.531015</td>\n", " <td>NAB</td>\n", " <td>False</td>\n", " <td>True</td>\n", - " <td>0.390329</td>\n", - " <td>0.605371</td>\n", - " <td>0.390623</td>\n", - " <td>0.613543</td>\n", - " <td>0.427462</td>\n", + " <td>0.223190</td>\n", + " <td>0.530528</td>\n", + " <td>0.223165</td>\n", + " <td>0.538166</td>\n", + " <td>0.219245</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", - " <td>0.561863</td>\n", - " <td>0.990312</td>\n", - " <td>0.206829</td>\n", - " <td>1.0</td>\n", + " <td>0.432616</td>\n", + " <td>0.985025</td>\n", + " <td>0.110965</td>\n", + " <td>0.836634</td>\n", " <td>Sequenzeanomalie</td>\n", " </tr>\n", " <tr>\n", " <th>5</th>\n", - " <td>{'win_size': 100, 'lr': 0.002}</td>\n", + " <td>{'periodicity': 1, 'n_components': 0.75}</td>\n", " <td>006_NAB_id_6_Traffic_tr_2579_1st_5839.csv</td>\n", - " <td>7.245088</td>\n", + " <td>6.566708</td>\n", " <td>NAB</td>\n", " <td>False</td>\n", " <td>True</td>\n", - " <td>0.123775</td>\n", - " <td>0.250741</td>\n", - " <td>0.088079</td>\n", - " <td>0.239634</td>\n", - " <td>0.181512</td>\n", - " <td>0.333333</td>\n", - " <td>0.333333</td>\n", - " <td>0.604860</td>\n", - " <td>0.685506</td>\n", - " <td>0.000000</td>\n", - " <td>0.0</td>\n", + " <td>0.332904</td>\n", + " <td>0.589287</td>\n", + " <td>0.254177</td>\n", + " <td>0.592472</td>\n", + " <td>0.335505</td>\n", + " <td>0.697124</td>\n", + " <td>0.619731</td>\n", + " <td>0.321929</td>\n", + " <td>0.730715</td>\n", + " <td>0.113592</td>\n", + " <td>1.000000</td>\n", " <td>Sequenzeanomalie</td>\n", " </tr>\n", " <tr>\n", " <th>6</th>\n", - " <td>{'win_size': 100, 'lr': 0.002}</td>\n", + " <td>{'periodicity': 1, 'n_components': 0.25}</td>\n", " <td>007_NAB_id_7_Traffic_tr_624_1st_2087.csv</td>\n", - " <td>3.391191</td>\n", + " <td>2.686109</td>\n", " <td>NAB</td>\n", " <td>False</td>\n", " <td>True</td>\n", - " <td>0.585766</td>\n", - " <td>0.871281</td>\n", - " <td>0.594530</td>\n", - " <td>0.931290</td>\n", - " <td>0.639133</td>\n", - " <td>0.901818</td>\n", - " <td>0.778116</td>\n", - " <td>0.712246</td>\n", - " <td>0.847405</td>\n", - " <td>0.008065</td>\n", - " <td>1.0</td>\n", + " <td>0.938148</td>\n", + " <td>0.993028</td>\n", + " <td>0.955391</td>\n", + " <td>0.995442</td>\n", + " <td>0.846685</td>\n", + " <td>1.000000</td>\n", + " <td>1.000000</td>\n", + " <td>0.823529</td>\n", + " <td>0.940314</td>\n", + " <td>0.000000</td>\n", + " <td>0.000000</td>\n", " <td>Sequenzeanomalie</td>\n", " </tr>\n", " <tr>\n", " <th>9</th>\n", - " <td>{'win_size': 50, 'lr': 0.002}</td>\n", + " <td>{'periodicity': 3, 'n_components': 0.5}</td>\n", " <td>010_NAB_id_10_WebService_tr_500_1st_271.csv</td>\n", - " <td>2.211799</td>\n", + " <td>4.131343</td>\n", " <td>NAB</td>\n", " <td>False</td>\n", " <td>True</td>\n", - " <td>0.999178</td>\n", - " <td>0.999849</td>\n", - " <td>0.999754</td>\n", - " <td>0.999975</td>\n", - " <td>0.989894</td>\n", - " <td>1.000000</td>\n", - " <td>1.000000</td>\n", - " <td>0.991283</td>\n", - " <td>0.999862</td>\n", - " <td>0.141892</td>\n", - " <td>1.0</td>\n", + " <td>0.486097</td>\n", + " <td>0.895913</td>\n", + " <td>0.850849</td>\n", + " <td>0.960766</td>\n", + " <td>0.643474</td>\n", + " <td>0.668896</td>\n", + " <td>0.640693</td>\n", + " <td>0.678905</td>\n", + " <td>0.938793</td>\n", + " <td>0.000000</td>\n", + " <td>0.000000</td>\n", " <td>Sequenzeanomalie</td>\n", " </tr>\n", " </tbody>\n", @@ -2891,33 +2891,33 @@ "</div>" ], "text/plain": [ - " params \\\n", - "0 {'win_size': 50, 'lr': 0.002} \n", - "2 {'win_size': 100, 'lr': 0.0002} \n", - "5 {'win_size': 100, 'lr': 0.002} \n", - "6 {'win_size': 100, 'lr': 0.002} \n", - "9 {'win_size': 50, 'lr': 0.002} \n", + " params \\\n", + "0 {'periodicity': 3, 'n_components': 0.25} \n", + "2 {'periodicity': 3, 'n_components': 0.25} \n", + "5 {'periodicity': 1, 'n_components': 0.75} \n", + "6 {'periodicity': 1, 'n_components': 0.25} \n", + "9 {'periodicity': 3, 'n_components': 0.5} \n", "\n", " file_name duration group point anomaly \\\n", - "0 001_NAB_id_1_Facility_tr_1007_1st_2014.csv 3.769196 NAB False \n", - "2 003_NAB_id_3_WebService_tr_1362_1st_1462.csv 5.778356 NAB False \n", - "5 006_NAB_id_6_Traffic_tr_2579_1st_5839.csv 7.245088 NAB False \n", - "6 007_NAB_id_7_Traffic_tr_624_1st_2087.csv 3.391191 NAB False \n", - "9 010_NAB_id_10_WebService_tr_500_1st_271.csv 2.211799 NAB False \n", + "0 001_NAB_id_1_Facility_tr_1007_1st_2014.csv 0.983548 NAB False \n", + "2 003_NAB_id_3_WebService_tr_1362_1st_1462.csv 2.531015 NAB False \n", + "5 006_NAB_id_6_Traffic_tr_2579_1st_5839.csv 6.566708 NAB False \n", + "6 007_NAB_id_7_Traffic_tr_624_1st_2087.csv 2.686109 NAB False \n", + "9 010_NAB_id_10_WebService_tr_500_1st_271.csv 4.131343 NAB False \n", "\n", " seq anomaly AUC-PR AUC-ROC VUS-PR VUS-ROC Standard-F1 PA-F1 \\\n", - "0 True 0.221717 0.505060 0.130220 0.416842 0.254451 0.561845 \n", - "2 True 0.390329 0.605371 0.390623 0.613543 0.427462 1.000000 \n", - "5 True 0.123775 0.250741 0.088079 0.239634 0.181512 0.333333 \n", - "6 True 0.585766 0.871281 0.594530 0.931290 0.639133 0.901818 \n", - "9 True 0.999178 0.999849 0.999754 0.999975 0.989894 1.000000 \n", + "0 True 0.278238 0.568376 0.274697 0.572207 0.280371 1.000000 \n", + "2 True 0.223190 0.530528 0.223165 0.538166 0.219245 1.000000 \n", + "5 True 0.332904 0.589287 0.254177 0.592472 0.335505 0.697124 \n", + "6 True 0.938148 0.993028 0.955391 0.995442 0.846685 1.000000 \n", + "9 True 0.486097 0.895913 0.850849 0.960766 0.643474 0.668896 \n", "\n", " Event-based-F1 R-based-F1 Affiliation-F Recall Precision \\\n", - "0 0.500000 0.507629 0.784372 0.142857 1.0 \n", - "2 1.000000 0.561863 0.990312 0.206829 1.0 \n", - "5 0.333333 0.604860 0.685506 0.000000 0.0 \n", - "6 0.778116 0.712246 0.847405 0.008065 1.0 \n", - "9 1.000000 0.991283 0.999862 0.141892 1.0 \n", + "0 1.000000 0.664639 0.966270 0.102041 1.000000 \n", + "2 1.000000 0.432616 0.985025 0.110965 0.836634 \n", + "5 0.619731 0.321929 0.730715 0.113592 1.000000 \n", + "6 1.000000 0.823529 0.940314 0.000000 0.000000 \n", + "9 0.640693 0.678905 0.938793 0.000000 0.000000 \n", "\n", " anomaly \n", "0 Sequenzeanomalie \n", @@ -2927,7 +2927,7 @@ "9 Sequenzeanomalie " ] }, - "execution_count": 261, + "execution_count": 277, "metadata": {}, "output_type": "execute_result" } @@ -2942,7 +2942,7 @@ }, { "cell_type": "code", - "execution_count": 262, + "execution_count": 278, "metadata": {}, "outputs": [ { @@ -3044,18 +3044,18 @@ "x0": " ", "xaxis": "x", "y": [ - 0.1302203072910785, - 0.3906233887098125, - 0.0880792758972597, - 0.5945298792003745, - 0.9997542718069378, - 0.0972818379040075, - 0.2424842875715648, - 0.2285050582179044, - 0.1512496442317957, - 0.2908789045706321, - 0.5280307785175986, - 0.1813781734229651 + 0.27469687396343, + 0.2231652553378895, + 0.2541769968032993, + 0.9553906941279872, + 0.8508488148943761, + 0.9934318546118288, + 0.6750787761039542, + 0.2344108274803064, + 0.4499414989527255, + 0.1311195922197614, + 0.5137920944098158, + 0.141305960168882 ], "y0": " ", "yaxis": "y" @@ -3162,22 +3162,22 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0138569814585429, - 0.0035764524037275, - 0.0048270334391916, - 0.2068164192464263, - 0.0259924924295775, - 0.0531173955635001, - 0.0017766776216456, - 0.0520668698447761, - 0.3904236225375164, - 0.1805671442448653, - 0.0153942378244447, - 0.0085055030561329, - 0.4086907171088323, - 0.0374464922053418, - 0.0221706858448497, - 0.0092542707429635 + 0.0082670079590517, + 0.0044508025768655, + 0.0040619668229091, + 0.2456385116792, + 0.0131781969778066, + 0.0203605188620572, + 0.0426022133474463, + 0.0264901645024626, + 0.3600086271912968, + 0.0835629657220682, + 0.0083264560083677, + 0.0050042671382042, + 0.3331039743880938, + 0.0188619360916415, + 0.0156166348874407, + 0.0060638628920775 ], "y0": " ", "yaxis": "y" @@ -3219,9 +3219,9 @@ "x0": " ", "xaxis": "x", "y": [ - 0.2181710454746772, - 0.1229257615629257, - 0.894964708712581 + 0.553223899131578, + 0.1207966307339942, + 0.8049043360701573 ], "y0": " ", "yaxis": "y" @@ -3298,16 +3298,16 @@ "x0": " ", "xaxis": "x", "y": [ - 0.8937555915273082, - 0.8762053509308628, - 0.9380172008831535, - 0.9505153336820884, - 0.2334907097222181, - 0.7416562788484269, - 0.2321983429256819, - 0.9592146627430684, - 0.9821973051860904, - 0.9093330774697946 + 0.8574905973877508, + 0.92804077881243, + 0.9230555619966364, + 0.9340385711882504, + 0.5111769985809861, + 0.7551520816669955, + 0.5201107309225481, + 0.9604363075885778, + 0.9746538059418062, + 0.8896683742523214 ], "y0": " ", "yaxis": "y" @@ -3339,7 +3339,7 @@ "x0": " ", "xaxis": "x", "y": [ - 0.1230261153960334 + 0.4415678196838903 ], "y0": " ", "yaxis": "y" @@ -3406,14 +3406,14 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0549709822646821, - 0.3318502760972369, - 0.0251261751044557, - 0.1794276744073287, - 0.014139203634825, - 0.062620314085803, - 0.5833003453475026, - 0.0562838015377969 + 0.0884825042785232, + 0.7297884537537368, + 0.0207054044171172, + 0.1986276929585888, + 0.0370139907453944, + 0.2538141950959758, + 0.8654461672837669, + 0.3943278717593051 ], "y0": " ", "yaxis": "y" @@ -3510,20 +3510,20 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0266243975061687, - 0.7591138774218303, - 0.0097803150270071, - 0.7454837966487013, - 0.4084473945398264, - 0.507417782770098, - 0.0097381072437349, - 0.7487261440107982, - 0.4966521762688036, - 0.0092122056111718, - 0.4280172937474061, - 0.7661886964443674, - 0.1043504878207531, - 0.7333870041990388 + 0.0281745126675704, + 0.7669977290710592, + 0.0096736524761135, + 0.7496875016886325, + 0.4342112510291898, + 0.4819523539981932, + 0.0091555637201698, + 0.7578887675575475, + 0.5469263981935665, + 0.009284437219746, + 0.5303150761772312, + 0.7835984903319327, + 0.0784216989915066, + 0.7379767148603048 ], "y0": " ", "yaxis": "y" @@ -3595,15 +3595,15 @@ "x0": " ", "xaxis": "x", "y": [ - 0.1853608539919262, - 0.2188671400087061, - 0.1878462019645704, - 0.9311008134991312, - 0.8068545328267326, - 0.4361751269479739, - 0.9807720707848718, - 0.2644375461419985, - 0.7114509495941372 + 0.1732443514727185, + 0.2203454340822346, + 0.1754948703693422, + 0.9315963429053428, + 0.8643569293095935, + 0.4394914888876934, + 0.9792049265910931, + 0.3058611106735742, + 0.7242651255345304 ], "y0": " ", "yaxis": "y" @@ -3675,15 +3675,15 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0045108373218728, - 0.0036595263500432, - 0.0068906786303711, - 0.0063585538259189, - 0.0048930521728627, - 0.0059683736042754, - 0.0046561206695908, - 0.0044772686812915, - 0.0088636228817901 + 0.0036315813303383, + 0.0037655908187766, + 0.0059810136431207, + 0.006865541403175, + 0.0051425444012506, + 0.0063396701391226, + 0.0045498620060225, + 0.0046093654319106, + 0.0090748536944421 ], "y0": " ", "yaxis": "y" @@ -3725,9 +3725,9 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0633447643274056, - 0.0553572103570943, - 0.0492535952610713 + 0.0359138813621782, + 0.0280402251316103, + 0.0268547211588662 ], "y0": " ", "yaxis": "y" @@ -3849,25 +3849,25 @@ "x0": " ", "xaxis": "x", "y": [ - 0.8703939179785799, - 0.3283357694198582, - 0.4087860010899778, - 0.6869960103977667, - 0.6876026905457271, - 0.2020762662644024, - 0.4057263551425141, - 0.8686648847551276, - 0.0935556955716415, - 0.5096686650641455, - 0.5172939489652943, - 0.3769767381843728, - 0.4781841035202803, - 0.8223414318950831, - 0.0458816843031813, - 0.52684541255492, - 0.082507682170724, - 0.2010817771103774, - 0.1799196335471928 + 0.8566535196182951, + 0.4580267417121418, + 0.4618914501882979, + 0.8142543211224857, + 0.6769273905227109, + 0.2822860430010954, + 0.4701269648238196, + 0.858979040367276, + 0.0896262194400507, + 0.4977320274314778, + 0.5950762306561345, + 0.5763380480485812, + 0.5274556569643333, + 0.8903993699512411, + 0.1087739974908431, + 0.5955393006320518, + 0.3181954125217247, + 0.379294732886966, + 0.2062199760943832 ], "y0": " ", "yaxis": "y" @@ -3904,8 +3904,8 @@ "x0": " ", "xaxis": "x", "y": [ - 0.9829339735918428, - 0.8342540826390398 + 0.9506794835170896, + 0.6610238880447978 ], "y0": " ", "yaxis": "y" @@ -3957,11 +3957,11 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0394701369767289, - 0.0305911313289862, - 0.2418579952078201, - 0.2940401528152297, - 0.6057012670434808 + 0.0279273816569974, + 0.0684103666830068, + 0.2924519833543287, + 0.2709789663440224, + 0.7050715508311083 ], "y0": " ", "yaxis": "y" @@ -4008,10 +4008,10 @@ "x0": " ", "xaxis": "x", "y": [ - 0.975414605514418, - 0.7595886627358087, - 0.919399601678828, - 0.8824959441198039 + 0.999129245383132, + 0.5923546257298867, + 0.975334084570608, + 0.956468578270126 ], "y0": " ", "yaxis": "y" @@ -4043,7 +4043,7 @@ "x0": " ", "xaxis": "x", "y": [ - 0.2822817568231803 + 0.2324174649783961 ], "y0": " ", "yaxis": "y" @@ -4115,15 +4115,15 @@ "x0": " ", "xaxis": "x", "y": [ - 0.8797038551168019, - 0.6805094281437679, - 0.8407601931959467, - 0.5325762773310286, - 0.5293383408126268, - 0.1072474665950072, - 0.1517167440141806, - 0.5487063784862611, - 0.160064175465516 + 0.8726202291824232, + 0.751274926874847, + 0.8382560744879621, + 0.523840775367489, + 0.4996242938810437, + 0.1613893550186405, + 0.277149241305875, + 0.4509057943476414, + 0.1418754072141867 ], "y0": " ", "yaxis": "y" @@ -4155,7 +4155,7 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0670900075295742 + 0.0796163424706734 ], "y0": " ", "yaxis": "y" @@ -4207,11 +4207,11 @@ "x0": " ", "xaxis": "x", "y": [ - 0.0002534667552821, - 0.0007664794647502, - 0.0005163577655492, - 0.00002330781052163945, - 0.0004723505722502 + 0.00008087371704294223, + 0.0002011377147159, + 0.0007401092940175, + 0.0002705291085309, + 0.0007489881133081 ], "y0": " ", "yaxis": "y" @@ -4248,8 +4248,8 @@ "x0": " ", "xaxis": "x", "y": [ - 0.9699996644354272, - 0.9332700556245824 + 0.9743854082818808, + 0.9290917035245536 ], "y0": " ", "yaxis": "y" @@ -4281,7 +4281,7 @@ "x0": " ", "xaxis": "x", "y": [ - 0.366250384309729 + 0.3755116281521825 ], "y0": " ", "yaxis": "y" @@ -4478,40 +4478,40 @@ "x0": " ", "xaxis": "x", "y": [ - 0.013889316955303, - 0.0105128216003464, - 0.028804813806297, - 0.0362093736616186, - 0.0111540307702929, - 0.9113497557705376, - 0.1107409478794131, - 0.0263395962374262, - 0.3339754248390206, - 0.9858266269575052, - 0.0039591510778783, - 0.0113020072024764, - 0.0061435197688365, - 0.0048407321531422, - 0.0315186530723804, - 0.0031084008923197, - 0.863284427528115, - 0.91112101110015, - 0.007166766351422, - 0.0019104193267078, - 0.015861721178294, - 0.0035058948618592, - 0.4315545844253702, - 0.0093926424183596, - 0.961653390682191, - 0.1529872460832244, - 0.9957934309396842, - 0.012796912240428, - 0.0133844381024959, - 0.0070997732605693, - 0.010031491879589, - 0.0015954182890532, - 0.0198479515690152, - 0.0078503450916495 + 0.0055779728020924, + 0.001826866277741, + 0.0143817756689641, + 0.5793903692154839, + 0.0098973609178067, + 0.0018217923430199, + 0.2895069870119879, + 0.0211260276515834, + 0.0180407408635086, + 0.0993779441723636, + 0.0025846752290107, + 0.1277728273424005, + 0.0029154518950437, + 0.001435935936418, + 0.1412860718285624, + 0.0019177142576425, + 0.3944508331850583, + 1, + 0.0018076352357365, + 0.0012005145574333, + 0.0061663842669927, + 0.0013341291417273, + 0.4776330501944795, + 0.0028627652924336, + 0.6330980737243374, + 0.3581164988093764, + 0.9843217746763534, + 0.0062989145982401, + 0.0015859914793164, + 0.0077981192174215, + 0.0026947502805771, + 0.0012672625717178, + 0.0087036979078568, + 0.0133214098303975 ], "y0": " ", "yaxis": "y" @@ -4698,38 +4698,38 @@ "x0": " ", "xaxis": "x", "y": [ - 0.9958298803352532, - 0.9960323279752864, - 0.9994160160623564, - 0.0679798108052264, - 0.9960247538196566, - 0.999415628746404, - 0.9344600938815092, - 0.8941158599573051, - 0.99970379614177, - 0.9988244423958548, - 0.8930970111795608, - 0.9875835103061236, - 0.8963925792054593, - 0.9999142103620434, - 0.994758565857886, - 0.9960620041106312, - 0.8930970111795608, - 0.9947693429311582, - 0.9257565944621264, - 0.9344600938815092, - 0.9886397810898266, - 0.8930970111795608, - 0.9344600938815092, - 0.999417056909103, - 0.8930970111795608, - 0.0680871293392232, - 0.999416051575724, - 0.0496585060206534, - 0.8924214505965888, - 0.9344600938815092, - 0.9947561416770048, - 0.998708191474183 + 0.9965858502300255, + 0.988183187884424, + 0.999748492585075, + 0.9371479814778898, + 0.988183187884424, + 0.999748492585075, + 0.9391630720596988, + 0.86531568445029, + 0.9996498017571092, + 0.999594267713955, + 0.8940469269414556, + 0.9992119894267968, + 0.86531568445029, + 0.9999156676770432, + 0.9868333929463836, + 0.988183187884424, + 0.8940469269414556, + 0.9868333929463836, + 0.9319084915356128, + 0.9391630720596988, + 0.992818362779768, + 0.8940469269414556, + 0.9391630720596988, + 0.999748492585075, + 0.8940469269414556, + 0.9855561154673528, + 0.999748492585075, + 0.9996759411749324, + 0.86531568445029, + 0.9391630720596988, + 0.9868333929463836, + 0.998625644771759 ], "y0": " ", "yaxis": "y" @@ -4821,19 +4821,19 @@ "x0": " ", "xaxis": "x", "y": [ - 0.9954658523123608, - 0.9540456788536132, - 0.0129539886817153, - 0.0141127847717399, - 0.997142294920792, - 0.9946721879823966, - 0.7433025389052081, - 0.020668967725045, - 0.9940731638610902, - 0.0201813242167401, - 0.8698690021430505, - 0.9803703088298416, - 0.985106954794408 + 0.9935589526478849, + 0.9639536861938108, + 0.753161479648069, + 0.9985397647157398, + 0.9977634562727375, + 0.9937723835641996, + 0.9437769405111078, + 0.997069521009402, + 0.9942085024582346, + 0.9972096833916464, + 0.9612355471225956, + 0.995941903984957, + 0.9723665045948484 ], "y0": " ", "yaxis": "y" @@ -5414,7 +5414,7 @@ } }, "title": { - "text": "<b> Vergleich der Ergebnisse der Anomalien zwischen den Gruppen für OmniAnomaly </b>", + "text": "<b> Vergleich der Ergebnisse der Anomalien zwischen den Gruppen für PCA </b>", "xanchor": "center", "y": 0.95, "yanchor": "top" @@ -5473,7 +5473,7 @@ }, { "cell_type": "code", - "execution_count": 263, + "execution_count": 279, "metadata": {}, "outputs": [ { @@ -5482,81 +5482,81 @@ "text": [ " duration AUC-PR AUC-ROC VUS-PR VUS-ROC Standard-F1 \\\n", "group \n", - "CATSv2 71.282038 0.437868 0.665188 0.282282 0.656742 0.539985 \n", - "Daphnet 36.482601 0.192069 0.486957 0.123026 0.414858 0.304343 \n", - "Exathlon 23.724488 0.874519 0.903489 0.876372 0.906182 0.892089 \n", - "IOPS 28.534339 0.368163 0.767703 0.192837 0.768461 0.412712 \n", - "LTDB 79.342613 0.479711 0.658691 0.524763 0.695028 0.517053 \n", - "MGAB 35.448378 0.015268 0.518880 0.005586 0.616341 0.042315 \n", - "MITDB 412.153767 0.206999 0.576751 0.163465 0.636558 0.270434 \n", - "MSL 3.461633 0.394283 0.751053 0.428048 0.809637 0.468206 \n", - "NAB 4.644117 0.332227 0.596125 0.342007 0.631778 0.411216 \n", - "NEK 1.422495 0.836145 0.964286 0.858349 0.975467 0.834403 \n", - "OPPORTUNITY 7.265648 0.649867 0.683519 0.649931 0.686148 0.670022 \n", - "Power 27.649961 0.064665 0.357775 0.067090 0.370433 0.157947 \n", - "SED 20.536611 0.031663 0.379970 0.055985 0.540631 0.089486 \n", - "SMAP 5.358580 0.385082 0.680605 0.417852 0.714648 0.428524 \n", - "SMD 8.052523 0.531140 0.819793 0.478742 0.832297 0.532466 \n", - "SVDB 67.847321 0.476835 0.757079 0.445289 0.799487 0.530508 \n", - "SWaT 290.177460 0.757687 0.846538 0.366250 0.572268 0.790817 \n", - "Stock 124.854756 0.133646 0.488489 0.771658 0.881907 0.216473 \n", - "TAO 59.424318 0.344060 0.872320 0.930020 0.988752 0.398812 \n", - "TODS 10.018318 0.172369 0.536398 0.538194 0.754373 0.245359 \n", - "UCR 29.581275 0.085236 0.650036 0.089552 0.709993 0.124586 \n", - "WSD 9.488622 0.251057 0.764089 0.157612 0.779561 0.292047 \n", - "YAHOO 1.386380 0.148188 0.732594 0.219787 0.806646 0.177277 \n", + "CATSv2 106.550896 0.474705 0.674971 0.232417 0.618645 0.591811 \n", + "Daphnet 11.832675 0.468647 0.832345 0.441568 0.852373 0.565157 \n", + "Exathlon 9.901067 0.958102 0.993371 0.959173 0.993846 0.963558 \n", + "IOPS 16.874755 0.372849 0.836747 0.260372 0.860021 0.409802 \n", + "LTDB 128.248371 0.489411 0.665304 0.534873 0.692622 0.527493 \n", + "MGAB 27.924807 0.027123 0.558247 0.005551 0.628323 0.064117 \n", + "MITDB 904.333506 0.377853 0.675760 0.323526 0.722272 0.444612 \n", + "MSL 2.880788 0.493320 0.753859 0.523310 0.795765 0.546533 \n", + "NAB 3.009645 0.486528 0.709936 0.511398 0.733671 0.533422 \n", + "NEK 0.840411 0.891733 0.986856 0.929171 0.990986 0.879233 \n", + "OPPORTUNITY 3.917854 0.923192 0.963782 0.924516 0.965306 0.918166 \n", + "Power 19.380862 0.078866 0.482809 0.079616 0.485580 0.169943 \n", + "SED 16.787120 0.020994 0.013643 0.030270 0.079736 0.078854 \n", + "SMAP 2.546059 0.484416 0.799270 0.566842 0.817493 0.557342 \n", + "SMD 4.363354 0.495851 0.859204 0.467257 0.854428 0.518748 \n", + "SVDB 88.631290 0.558896 0.795919 0.523984 0.846439 0.598146 \n", + "SWaT 572.165303 0.756700 0.847345 0.375512 0.584158 0.790788 \n", + "Stock 151.184144 0.148428 0.666535 0.825382 0.936678 0.222413 \n", + "TAO 45.117123 0.149144 0.650314 0.840276 0.937061 0.226330 \n", + "TODS 10.670728 0.124321 0.553633 0.552877 0.776254 0.215220 \n", + "UCR 15.007014 0.138533 0.653279 0.152678 0.699427 0.173614 \n", + "WSD 4.909340 0.216542 0.757291 0.155366 0.765767 0.246170 \n", + "YAHOO 1.667572 0.117107 0.641042 0.163729 0.673531 0.143722 \n", "\n", " PA-F1 Event-based-F1 R-based-F1 Affiliation-F Recall \\\n", "group \n", - "CATSv2 0.639547 0.536535 0.258580 0.701594 0.213514 \n", - "Daphnet 0.774593 0.599617 0.510968 0.893638 0.001301 \n", - "Exathlon 0.963988 0.918659 0.799582 0.965929 0.195978 \n", - "IOPS 0.634470 0.461117 0.385165 0.802123 0.273930 \n", - "LTDB 0.716920 0.654282 0.597085 0.831645 0.052542 \n", - "MGAB 0.056634 0.044285 0.139063 0.672112 0.022778 \n", - "MITDB 0.590404 0.411884 0.295631 0.778462 0.142823 \n", - "MSL 0.825098 0.610205 0.561177 0.879271 0.213466 \n", - "NAB 0.874075 0.668719 0.539226 0.860430 0.112409 \n", - "NEK 0.916144 0.868247 0.749711 0.953528 0.428216 \n", - "OPPORTUNITY 0.725678 0.694376 0.704499 0.902400 0.399095 \n", - "Power 0.651820 0.157874 0.313331 0.678766 0.000000 \n", - "SED 0.078859 0.078859 0.016867 0.669618 0.000000 \n", - "SMAP 0.691928 0.578204 0.524365 0.860791 0.340266 \n", - "SMD 0.847773 0.769811 0.560165 0.918319 0.442662 \n", - "SVDB 0.794697 0.732677 0.521409 0.879679 0.281850 \n", - "SWaT 0.852928 0.433937 0.337093 0.690392 0.649675 \n", - "Stock 0.218733 0.217215 0.202627 0.677488 0.012213 \n", - "TAO 0.398172 0.389231 0.310520 0.867186 0.087213 \n", - "TODS 0.437079 0.217715 0.398944 0.714572 0.056183 \n", - "UCR 0.372287 0.209194 0.172525 0.811677 0.095867 \n", - "WSD 0.421879 0.370317 0.313923 0.841778 0.233585 \n", - "YAHOO 0.172599 0.167928 0.195717 0.825712 0.117390 \n", + "CATSv2 0.608925 0.408976 0.511750 0.697208 0.337568 \n", + "Daphnet 0.760456 0.642298 0.601463 0.915932 0.291414 \n", + "Exathlon 0.999433 0.992889 0.782609 0.996357 0.227406 \n", + "IOPS 0.589427 0.405682 0.331438 0.794131 0.360211 \n", + "LTDB 0.717279 0.655744 0.562085 0.834697 0.043424 \n", + "MGAB 0.184219 0.142059 0.125153 0.674871 0.018889 \n", + "MITDB 0.639836 0.551255 0.465865 0.852770 0.249054 \n", + "MSL 0.731263 0.676416 0.632940 0.881928 0.354351 \n", + "NAB 0.928938 0.834893 0.578901 0.920500 0.133190 \n", + "NEK 0.900651 0.870056 0.840736 0.978365 0.493302 \n", + "OPPORTUNITY 0.967075 0.945462 0.879893 0.985070 0.594777 \n", + "Power 0.507786 0.292398 0.205966 0.701705 0.000000 \n", + "SED 0.079247 0.078751 0.328210 0.669538 0.000000 \n", + "SMAP 0.667530 0.637192 0.595441 0.929180 0.436525 \n", + "SMD 0.714660 0.632579 0.531329 0.873677 0.393399 \n", + "SVDB 0.841006 0.770908 0.527544 0.902668 0.360878 \n", + "SWaT 0.852628 0.442757 0.240518 0.689347 0.000000 \n", + "Stock 0.222157 0.220173 0.161682 0.722015 0.004613 \n", + "TAO 0.227241 0.224537 0.175966 0.716726 0.003704 \n", + "TODS 0.394147 0.220415 0.347172 0.721711 0.035693 \n", + "UCR 0.325796 0.233552 0.207720 0.822399 0.089652 \n", + "WSD 0.306651 0.247186 0.271631 0.782270 0.247455 \n", + "YAHOO 0.116448 0.102671 0.120984 0.739049 0.085546 \n", "\n", " Precision \n", "group \n", - "CATSv2 0.980453 \n", - "Daphnet 1.000000 \n", - "Exathlon 0.808444 \n", - "IOPS 0.540134 \n", - "LTDB 0.640558 \n", - "MGAB 0.003985 \n", - "MITDB 0.306206 \n", - "MSL 0.314254 \n", - "NAB 0.484350 \n", - "NEK 0.917869 \n", - "OPPORTUNITY 0.427947 \n", + "CATSv2 0.953253 \n", + "Daphnet 0.735230 \n", + "Exathlon 0.899726 \n", + "IOPS 0.378220 \n", + "LTDB 0.566318 \n", + "MGAB 0.117214 \n", + "MITDB 0.438817 \n", + "MSL 0.427327 \n", + "NAB 0.497121 \n", + "NEK 0.923173 \n", + "OPPORTUNITY 0.711344 \n", "Power 0.000000 \n", "SED 0.000000 \n", - "SMAP 0.369953 \n", - "SMD 0.521057 \n", - "SVDB 0.838828 \n", - "SWaT 1.000000 \n", - "Stock 0.412057 \n", - "TAO 0.536819 \n", - "TODS 0.308668 \n", - "UCR 0.080902 \n", - "WSD 0.240701 \n", - "YAHOO 0.069368 \n" + "SMAP 0.502204 \n", + "SMD 0.494977 \n", + "SVDB 0.803476 \n", + "SWaT 0.000000 \n", + "Stock 0.221866 \n", + "TAO 0.209524 \n", + "TODS 0.192152 \n", + "UCR 0.065363 \n", + "WSD 0.187045 \n", + "YAHOO 0.008649 \n" ] } ], @@ -5569,15 +5569,15 @@ }, { "cell_type": "code", - "execution_count": 264, + "execution_count": 280, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Gesamtdauer Training in s: 12315.015, in min: 205.250, in h: 3.421\n", - "Durchschnittliches Training pro Datei in s: 31.020\n" + "Gesamtdauer Training in s: 15347.377, in min: 255.790, in h: 4.263\n", + "Durchschnittliches Training pro Datei in s: 38.658\n" ] } ], @@ -5596,15 +5596,15 @@ }, { "cell_type": "code", - "execution_count": 265, + "execution_count": 281, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Durchschnittle Gesamt-Performanz des Modells: OmniAnomaly\n", - "Recall: 0.204, Precision: 0.382, F1: 0.392, Auc-Roc: 0.707, Auc-PR: 0.354, Vus-PR: 0.377\n" + "Durchschnittle Gesamt-Performanz des Modells: PCA\n", + "Recall: 0.231, Precision: 0.385, F1: 0.442, Auc-Roc: 0.754, Auc-PR: 0.407, Vus-PR: 0.444\n" ] } ], @@ -5623,7 +5623,7 @@ }, { "cell_type": "code", - "execution_count": 266, + "execution_count": 282, "metadata": {}, "outputs": [ { @@ -5631,8 +5631,8 @@ "output_type": "stream", "text": [ "Anzahl an Datensätzen mit Punktanomalien: 55\n", - "Durchschnittle Gesamt-Performanz des Modells: OmniAnomaly\n", - "Recall: 0.093, Precision: 0.130, F1: 0.163, Auc-Roc: 0.698, Auc-PR: 0.125, Vus-PR: 0.329\n" + "Durchschnittle Gesamt-Performanz des Modells: PCA\n", + "Recall: 0.069, Precision: 0.061, F1: 0.114, Auc-Roc: 0.634, Auc-PR: 0.079, Vus-PR: 0.294\n" ] } ], @@ -5654,7 +5654,7 @@ }, { "cell_type": "code", - "execution_count": 267, + "execution_count": 283, "metadata": {}, "outputs": [ { @@ -5663,33 +5663,33 @@ "text": [ " duration AUC-PR AUC-ROC VUS-PR VUS-ROC Standard-F1 \\\n", "group \n", - "IOPS 9.329306 0.016952 0.569776 0.035031 0.679142 0.057057 \n", - "Stock 124.854756 0.133646 0.488489 0.771658 0.881907 0.216473 \n", - "TAO 62.437706 0.336829 0.874868 0.908594 0.986764 0.401956 \n", - "TODS 15.281820 0.064650 0.541743 0.800324 0.925063 0.118750 \n", - "UCR 60.734867 0.000178 0.727210 0.000406 0.761796 0.000356 \n", - "WSD 8.207535 0.407280 0.867609 0.105822 0.854603 0.430806 \n", - "YAHOO 1.419179 0.122574 0.761252 0.190097 0.841019 0.149787 \n", + "IOPS 5.892610 0.036186 0.679239 0.048169 0.878962 0.076478 \n", + "Stock 151.184144 0.148428 0.666535 0.825382 0.936678 0.222413 \n", + "TAO 46.371468 0.160428 0.682386 0.805852 0.933586 0.240432 \n", + "TODS 16.139283 0.067229 0.547303 0.820717 0.919652 0.116607 \n", + "UCR 25.348694 0.000196 0.720206 0.000408 0.733296 0.000391 \n", + "WSD 3.536170 0.206655 0.783494 0.124850 0.816281 0.250573 \n", + "YAHOO 1.767621 0.060498 0.601940 0.113436 0.642579 0.081954 \n", "\n", " PA-F1 Event-based-F1 R-based-F1 Affiliation-F Recall \\\n", "group \n", - "IOPS 0.487649 0.340977 0.315712 0.851927 0.031077 \n", - "Stock 0.218733 0.217215 0.202627 0.677488 0.012213 \n", - "TAO 0.401444 0.388192 0.306858 0.868713 0.101470 \n", - "TODS 0.118916 0.118111 0.330085 0.673320 0.014049 \n", - "UCR 0.000346 0.000346 0.001600 0.835198 0.000000 \n", - "WSD 0.377329 0.377199 0.391575 0.839828 0.500000 \n", - "YAHOO 0.135754 0.134819 0.165149 0.820657 0.119355 \n", + "IOPS 0.497767 0.358176 0.327109 0.834586 0.012209 \n", + "Stock 0.222157 0.220173 0.161682 0.722015 0.004613 \n", + "TAO 0.241168 0.238383 0.188286 0.736066 0.002411 \n", + "TODS 0.115623 0.115672 0.241181 0.672346 0.014049 \n", + "UCR 0.000376 0.000376 0.002877 0.846869 0.000000 \n", + "WSD 0.375558 0.250558 0.194908 0.844472 0.500000 \n", + "YAHOO 0.043053 0.043053 0.070339 0.724329 0.087097 \n", "\n", " Precision \n", "group \n", - "IOPS 0.040816 \n", - "Stock 0.412057 \n", - "TAO 0.467879 \n", - "TODS 0.089744 \n", + "IOPS 0.034161 \n", + "Stock 0.221866 \n", + "TAO 0.242857 \n", + "TODS 0.087329 \n", "UCR 0.000000 \n", - "WSD 0.300000 \n", - "YAHOO 0.036573 \n" + "WSD 0.046154 \n", + "YAHOO 0.006539 \n" ] } ], @@ -5701,7 +5701,7 @@ }, { "cell_type": "code", - "execution_count": 268, + "execution_count": 284, "metadata": {}, "outputs": [ { @@ -5709,8 +5709,8 @@ "output_type": "stream", "text": [ "Anzahl an Datensätzen mit Sequenzanomalien: 158\n", - "Durchschnittle Gesamt-Performanz des Modells: OmniAnomaly\n", - "Recall: 0.216, Precision: 0.548, F1: 0.512, Auc-Roc: 0.720, Auc-PR: 0.481, Vus-PR: 0.467\n" + "Durchschnittle Gesamt-Performanz des Modells: PCA\n", + "Recall: 0.251, Precision: 0.570, F1: 0.578, Auc-Roc: 0.793, Auc-PR: 0.553, Vus-PR: 0.545\n" ] } ], @@ -5732,7 +5732,7 @@ }, { "cell_type": "code", - "execution_count": 269, + "execution_count": 285, "metadata": {}, "outputs": [ { @@ -5741,72 +5741,72 @@ "text": [ " duration AUC-PR AUC-ROC VUS-PR VUS-ROC Standard-F1 \\\n", "group \n", - "CATSv2 71.282038 0.437868 0.665188 0.282282 0.656742 0.539985 \n", - "Daphnet 36.482601 0.192069 0.486957 0.123026 0.414858 0.304343 \n", - "Exathlon 23.724488 0.874519 0.903489 0.876372 0.906182 0.892089 \n", - "IOPS 8.611103 0.721261 0.940925 0.380533 0.979343 0.728182 \n", - "LTDB 79.342613 0.479711 0.658691 0.524763 0.695028 0.517053 \n", - "MGAB 35.448378 0.015268 0.518880 0.005586 0.616341 0.042315 \n", - "MITDB 412.153767 0.206999 0.576751 0.163465 0.636558 0.270434 \n", - "MSL 3.149436 0.364941 0.658294 0.412021 0.726328 0.462885 \n", - "NAB 4.838628 0.335713 0.618029 0.326918 0.633668 0.405447 \n", - "NEK 1.253130 0.877024 0.980781 0.884225 0.985697 0.835244 \n", - "OPPORTUNITY 6.632875 0.661818 0.699676 0.660151 0.701615 0.656293 \n", - "Power 27.649961 0.064665 0.357775 0.067090 0.370433 0.157947 \n", - "SED 20.536611 0.031663 0.379970 0.055985 0.540631 0.089486 \n", - "SMAP 6.861433 0.876352 0.965175 0.951635 0.993095 0.913472 \n", - "SMD 7.099449 0.460181 0.783949 0.410939 0.791221 0.448206 \n", - "SVDB 69.296656 0.465020 0.752947 0.436465 0.796999 0.521112 \n", - "SWaT 290.177460 0.757687 0.846538 0.366250 0.572268 0.790817 \n", - "TODS 6.177739 0.191109 0.494363 0.338275 0.600187 0.257419 \n", - "WSD 9.124751 0.123481 0.693847 0.087346 0.729875 0.148711 \n", - "YAHOO 1.184563 0.349465 0.353921 0.354507 0.388890 0.387097 \n", + "CATSv2 106.550896 0.474705 0.674971 0.232417 0.618645 0.591811 \n", + "Daphnet 11.832675 0.468647 0.832345 0.441568 0.852373 0.565157 \n", + "Exathlon 9.901067 0.958102 0.993371 0.959173 0.993846 0.963558 \n", + "IOPS 5.111067 0.549216 0.856325 0.422834 0.937451 0.560740 \n", + "LTDB 128.248371 0.489411 0.665304 0.534873 0.692622 0.527493 \n", + "MGAB 27.924807 0.027123 0.558247 0.005551 0.628323 0.064117 \n", + "MITDB 904.333506 0.377853 0.675760 0.323526 0.722272 0.444612 \n", + "MSL 3.837384 0.475464 0.693753 0.492975 0.748618 0.519038 \n", + "NAB 2.739334 0.439685 0.734665 0.474780 0.747435 0.468148 \n", + "NEK 0.952780 0.849600 0.980380 0.880822 0.982907 0.845689 \n", + "OPPORTUNITY 4.282902 0.968964 0.998986 0.966351 0.999021 0.946304 \n", + "Power 19.380862 0.078866 0.482809 0.079616 0.485580 0.169943 \n", + "SED 16.787120 0.020994 0.013643 0.030270 0.079736 0.078854 \n", + "SMAP 1.904669 0.887517 0.957020 0.951739 0.989728 0.918667 \n", + "SMD 5.352997 0.459753 0.839087 0.423162 0.809991 0.451325 \n", + "SVDB 92.261137 0.541451 0.785465 0.508621 0.838492 0.583690 \n", + "SWaT 572.165303 0.756700 0.847345 0.375512 0.584158 0.790788 \n", + "TODS 5.968309 0.149989 0.542558 0.342464 0.655832 0.255428 \n", + "WSD 5.556650 0.099717 0.652215 0.067564 0.649701 0.121957 \n", + "YAHOO 0.942941 0.690088 0.936969 0.568333 0.890046 0.720918 \n", "\n", " PA-F1 Event-based-F1 R-based-F1 Affiliation-F Recall \\\n", "group \n", - "CATSv2 0.639547 0.536535 0.258580 0.701594 0.213514 \n", - "Daphnet 0.774593 0.599617 0.510968 0.893638 0.001301 \n", - "Exathlon 0.963988 0.918659 0.799582 0.965929 0.195978 \n", - "IOPS 0.787155 0.730159 0.688829 0.854391 0.675352 \n", - "LTDB 0.716920 0.654282 0.597085 0.831645 0.052542 \n", - "MGAB 0.056634 0.044285 0.139063 0.672112 0.022778 \n", - "MITDB 0.590404 0.411884 0.295631 0.778462 0.142823 \n", - "MSL 0.747750 0.488889 0.622124 0.830481 0.119883 \n", - "NAB 0.779084 0.630720 0.568753 0.812190 0.046911 \n", - "NEK 0.895541 0.830653 0.728513 0.938308 0.451103 \n", - "OPPORTUNITY 0.732947 0.691693 0.710350 0.903282 0.559534 \n", - "Power 0.651820 0.157874 0.313331 0.678766 0.000000 \n", - "SED 0.078859 0.078859 0.016867 0.669618 0.000000 \n", - "SMAP 0.995957 0.973684 0.920804 0.998466 0.828480 \n", - "SMD 0.785312 0.604488 0.486626 0.829833 0.309552 \n", - "SVDB 0.783891 0.718608 0.518586 0.873358 0.267876 \n", - "SWaT 0.852928 0.433937 0.337093 0.690392 0.649675 \n", - "TODS 0.481315 0.339442 0.356857 0.778047 0.069541 \n", - "WSD 0.251524 0.191772 0.189721 0.807936 0.110320 \n", - "YAHOO 0.404813 0.399359 0.376670 0.845202 0.038179 \n", + "CATSv2 0.608925 0.408976 0.511750 0.697208 0.337568 \n", + "Daphnet 0.760456 0.642298 0.601463 0.915932 0.291414 \n", + "Exathlon 0.999433 0.992889 0.782609 0.996357 0.227406 \n", + "IOPS 0.671215 0.547678 0.489015 0.874944 0.598639 \n", + "LTDB 0.717279 0.655744 0.562085 0.834697 0.043424 \n", + "MGAB 0.184219 0.142059 0.125153 0.674871 0.018889 \n", + "MITDB 0.639836 0.551255 0.465865 0.852770 0.249054 \n", + "MSL 0.701344 0.642017 0.527633 0.837061 0.130117 \n", + "NAB 0.879834 0.832993 0.535925 0.903258 0.036252 \n", + "NEK 0.853754 0.827973 0.832054 0.964089 0.474690 \n", + "OPPORTUNITY 0.988354 0.971928 0.916063 0.997677 0.845268 \n", + "Power 0.507786 0.292398 0.205966 0.701705 0.000000 \n", + "SED 0.079247 0.078751 0.328210 0.669538 0.000000 \n", + "SMAP 0.965823 0.963415 0.925801 0.998451 0.867659 \n", + "SMD 0.654305 0.539771 0.477002 0.835852 0.300823 \n", + "SVDB 0.832638 0.758851 0.520892 0.897550 0.336272 \n", + "SWaT 0.852628 0.442757 0.240518 0.689347 0.000000 \n", + "TODS 0.428365 0.328666 0.404606 0.782801 0.046739 \n", + "WSD 0.134934 0.096583 0.169440 0.711659 0.076157 \n", + "YAHOO 0.784897 0.647345 0.528338 0.845923 0.000000 \n", "\n", " Precision \n", "group \n", - "CATSv2 0.980453 \n", - "Daphnet 1.000000 \n", - "Exathlon 0.808444 \n", - "IOPS 0.814339 \n", - "LTDB 0.640558 \n", - "MGAB 0.003985 \n", - "MITDB 0.306206 \n", - "MSL 0.276094 \n", - "NAB 0.380150 \n", - "NEK 0.945205 \n", - "OPPORTUNITY 0.634363 \n", + "CATSv2 0.953253 \n", + "Daphnet 0.735230 \n", + "Exathlon 0.899726 \n", + "IOPS 0.350711 \n", + "LTDB 0.566318 \n", + "MGAB 0.117214 \n", + "MITDB 0.438817 \n", + "MSL 0.333333 \n", + "NAB 0.425489 \n", + "NEK 0.864583 \n", + "OPPORTUNITY 0.933047 \n", "Power 0.000000 \n", "SED 0.000000 \n", - "SMAP 0.917450 \n", - "SMD 0.491515 \n", - "SVDB 0.840083 \n", - "SWaT 1.000000 \n", - "TODS 0.377903 \n", - "WSD 0.118199 \n", - "YAHOO 0.333333 \n" + "SMAP 0.922727 \n", + "SMD 0.458520 \n", + "SVDB 0.811372 \n", + "SWaT 0.000000 \n", + "TODS 0.290621 \n", + "WSD 0.126553 \n", + "YAHOO 0.000000 \n" ] } ], @@ -5825,7 +5825,7 @@ }, { "cell_type": "code", - "execution_count": 270, + "execution_count": 286, "metadata": {}, "outputs": [ { @@ -5869,210 +5869,210 @@ " <tbody>\n", " <tr>\n", " <th>CATSv2</th>\n", - " <td>0.437868</td>\n", - " <td>0.665188</td>\n", - " <td>0.282282</td>\n", - " <td>0.539985</td>\n", - " <td>0.213514</td>\n", - " <td>0.980453</td>\n", + " <td>0.474705</td>\n", + " <td>0.674971</td>\n", + " <td>0.232417</td>\n", + " <td>0.591811</td>\n", + " <td>0.337568</td>\n", + " <td>0.953253</td>\n", " </tr>\n", " <tr>\n", " <th>Daphnet</th>\n", - " <td>0.192069</td>\n", - " <td>0.486957</td>\n", - " <td>0.123026</td>\n", - " <td>0.304343</td>\n", - " <td>0.001301</td>\n", - " <td>1.000000</td>\n", + " <td>0.468647</td>\n", + " <td>0.832345</td>\n", + " <td>0.441568</td>\n", + " <td>0.565157</td>\n", + " <td>0.291414</td>\n", + " <td>0.735230</td>\n", " </tr>\n", " <tr>\n", " <th>Exathlon</th>\n", - " <td>0.874519</td>\n", - " <td>0.903489</td>\n", - " <td>0.876372</td>\n", - " <td>0.892089</td>\n", - " <td>0.195978</td>\n", - " <td>0.808444</td>\n", + " <td>0.958102</td>\n", + " <td>0.993371</td>\n", + " <td>0.959173</td>\n", + " <td>0.963558</td>\n", + " <td>0.227406</td>\n", + " <td>0.899726</td>\n", " </tr>\n", " <tr>\n", " <th>IOPS</th>\n", - " <td>0.368163</td>\n", - " <td>0.767703</td>\n", - " <td>0.192837</td>\n", - " <td>0.412712</td>\n", - " <td>0.273930</td>\n", - " <td>0.540134</td>\n", + " <td>0.372849</td>\n", + " <td>0.836747</td>\n", + " <td>0.260372</td>\n", + " <td>0.409802</td>\n", + " <td>0.360211</td>\n", + " <td>0.378220</td>\n", " </tr>\n", " <tr>\n", " <th>LTDB</th>\n", - " <td>0.479711</td>\n", - " <td>0.658691</td>\n", - " <td>0.524763</td>\n", - " <td>0.517053</td>\n", - " <td>0.052542</td>\n", - " <td>0.640558</td>\n", + " <td>0.489411</td>\n", + " <td>0.665304</td>\n", + " <td>0.534873</td>\n", + " <td>0.527493</td>\n", + " <td>0.043424</td>\n", + " <td>0.566318</td>\n", " </tr>\n", " <tr>\n", " <th>MGAB</th>\n", - " <td>0.015268</td>\n", - " <td>0.518880</td>\n", - " <td>0.005586</td>\n", - " <td>0.042315</td>\n", - " <td>0.022778</td>\n", - " <td>0.003985</td>\n", + " <td>0.027123</td>\n", + " <td>0.558247</td>\n", + " <td>0.005551</td>\n", + " <td>0.064117</td>\n", + " <td>0.018889</td>\n", + " <td>0.117214</td>\n", " </tr>\n", " <tr>\n", " <th>MITDB</th>\n", - " <td>0.206999</td>\n", - " <td>0.576751</td>\n", - " <td>0.163465</td>\n", - " <td>0.270434</td>\n", - " <td>0.142823</td>\n", - " <td>0.306206</td>\n", + " <td>0.377853</td>\n", + " <td>0.675760</td>\n", + " <td>0.323526</td>\n", + " <td>0.444612</td>\n", + " <td>0.249054</td>\n", + " <td>0.438817</td>\n", " </tr>\n", " <tr>\n", " <th>MSL</th>\n", - " <td>0.394283</td>\n", - " <td>0.751053</td>\n", - " <td>0.428048</td>\n", - " <td>0.468206</td>\n", - " <td>0.213466</td>\n", - " <td>0.314254</td>\n", + " <td>0.493320</td>\n", + " <td>0.753859</td>\n", + " <td>0.523310</td>\n", + " <td>0.546533</td>\n", + " <td>0.354351</td>\n", + " <td>0.427327</td>\n", " </tr>\n", " <tr>\n", " <th>NAB</th>\n", - " <td>0.332227</td>\n", - " <td>0.596125</td>\n", - " <td>0.342007</td>\n", - " <td>0.411216</td>\n", - " <td>0.112409</td>\n", - " <td>0.484350</td>\n", + " <td>0.486528</td>\n", + " <td>0.709936</td>\n", + " <td>0.511398</td>\n", + " <td>0.533422</td>\n", + " <td>0.133190</td>\n", + " <td>0.497121</td>\n", " </tr>\n", " <tr>\n", " <th>NEK</th>\n", - " <td>0.836145</td>\n", - " <td>0.964286</td>\n", - " <td>0.858349</td>\n", - " <td>0.834403</td>\n", - " <td>0.428216</td>\n", - " <td>0.917869</td>\n", + " <td>0.891733</td>\n", + " <td>0.986856</td>\n", + " <td>0.929171</td>\n", + " <td>0.879233</td>\n", + " <td>0.493302</td>\n", + " <td>0.923173</td>\n", " </tr>\n", " <tr>\n", " <th>OPPORTUNITY</th>\n", - " <td>0.649867</td>\n", - " <td>0.683519</td>\n", - " <td>0.649931</td>\n", - " <td>0.670022</td>\n", - " <td>0.399095</td>\n", - " <td>0.427947</td>\n", + " <td>0.923192</td>\n", + " <td>0.963782</td>\n", + " <td>0.924516</td>\n", + " <td>0.918166</td>\n", + " <td>0.594777</td>\n", + " <td>0.711344</td>\n", " </tr>\n", " <tr>\n", " <th>Power</th>\n", - " <td>0.064665</td>\n", - " <td>0.357775</td>\n", - " <td>0.067090</td>\n", - " <td>0.157947</td>\n", + " <td>0.078866</td>\n", + " <td>0.482809</td>\n", + " <td>0.079616</td>\n", + " <td>0.169943</td>\n", " <td>0.000000</td>\n", " <td>0.000000</td>\n", " </tr>\n", " <tr>\n", " <th>SED</th>\n", - " <td>0.031663</td>\n", - " <td>0.379970</td>\n", - " <td>0.055985</td>\n", - " <td>0.089486</td>\n", + " <td>0.020994</td>\n", + " <td>0.013643</td>\n", + " <td>0.030270</td>\n", + " <td>0.078854</td>\n", " <td>0.000000</td>\n", " <td>0.000000</td>\n", " </tr>\n", " <tr>\n", " <th>SMAP</th>\n", - " <td>0.385082</td>\n", - " <td>0.680605</td>\n", - " <td>0.417852</td>\n", - " <td>0.428524</td>\n", - " <td>0.340266</td>\n", - " <td>0.369953</td>\n", + " <td>0.484416</td>\n", + " <td>0.799270</td>\n", + " <td>0.566842</td>\n", + " <td>0.557342</td>\n", + " <td>0.436525</td>\n", + " <td>0.502204</td>\n", " </tr>\n", " <tr>\n", " <th>SMD</th>\n", - " <td>0.531140</td>\n", - " <td>0.819793</td>\n", - " <td>0.478742</td>\n", - " <td>0.532466</td>\n", - " <td>0.442662</td>\n", - " <td>0.521057</td>\n", + " <td>0.495851</td>\n", + " <td>0.859204</td>\n", + " <td>0.467257</td>\n", + " <td>0.518748</td>\n", + " <td>0.393399</td>\n", + " <td>0.494977</td>\n", " </tr>\n", " <tr>\n", " <th>SVDB</th>\n", - " <td>0.476835</td>\n", - " <td>0.757079</td>\n", - " <td>0.445289</td>\n", - " <td>0.530508</td>\n", - " <td>0.281850</td>\n", - " <td>0.838828</td>\n", + " <td>0.558896</td>\n", + " <td>0.795919</td>\n", + " <td>0.523984</td>\n", + " <td>0.598146</td>\n", + " <td>0.360878</td>\n", + " <td>0.803476</td>\n", " </tr>\n", " <tr>\n", " <th>SWaT</th>\n", - " <td>0.757687</td>\n", - " <td>0.846538</td>\n", - " <td>0.366250</td>\n", - " <td>0.790817</td>\n", - " <td>0.649675</td>\n", - " <td>1.000000</td>\n", + " <td>0.756700</td>\n", + " <td>0.847345</td>\n", + " <td>0.375512</td>\n", + " <td>0.790788</td>\n", + " <td>0.000000</td>\n", + " <td>0.000000</td>\n", " </tr>\n", " <tr>\n", " <th>Stock</th>\n", - " <td>0.133646</td>\n", - " <td>0.488489</td>\n", - " <td>0.771658</td>\n", - " <td>0.216473</td>\n", - " <td>0.012213</td>\n", - " <td>0.412057</td>\n", + " <td>0.148428</td>\n", + " <td>0.666535</td>\n", + " <td>0.825382</td>\n", + " <td>0.222413</td>\n", + " <td>0.004613</td>\n", + " <td>0.221866</td>\n", " </tr>\n", " <tr>\n", " <th>TAO</th>\n", - " <td>0.344060</td>\n", - " <td>0.872320</td>\n", - " <td>0.930020</td>\n", - " <td>0.398812</td>\n", - " <td>0.087213</td>\n", - " <td>0.536819</td>\n", + " <td>0.149144</td>\n", + " <td>0.650314</td>\n", + " <td>0.840276</td>\n", + " <td>0.226330</td>\n", + " <td>0.003704</td>\n", + " <td>0.209524</td>\n", " </tr>\n", " <tr>\n", " <th>TODS</th>\n", - " <td>0.172369</td>\n", - " <td>0.536398</td>\n", - " <td>0.538194</td>\n", - " <td>0.245359</td>\n", - " <td>0.056183</td>\n", - " <td>0.308668</td>\n", + " <td>0.124321</td>\n", + " <td>0.553633</td>\n", + " <td>0.552877</td>\n", + " <td>0.215220</td>\n", + " <td>0.035693</td>\n", + " <td>0.192152</td>\n", " </tr>\n", " <tr>\n", " <th>UCR</th>\n", - " <td>0.085236</td>\n", - " <td>0.650036</td>\n", - " <td>0.089552</td>\n", - " <td>0.124586</td>\n", - " <td>0.095867</td>\n", - " <td>0.080902</td>\n", + " <td>0.138533</td>\n", + " <td>0.653279</td>\n", + " <td>0.152678</td>\n", + " <td>0.173614</td>\n", + " <td>0.089652</td>\n", + " <td>0.065363</td>\n", " </tr>\n", " <tr>\n", " <th>WSD</th>\n", - " <td>0.251057</td>\n", - " <td>0.764089</td>\n", - " <td>0.157612</td>\n", - " <td>0.292047</td>\n", - " <td>0.233585</td>\n", - " <td>0.240701</td>\n", + " <td>0.216542</td>\n", + " <td>0.757291</td>\n", + " <td>0.155366</td>\n", + " <td>0.246170</td>\n", + " <td>0.247455</td>\n", + " <td>0.187045</td>\n", " </tr>\n", " <tr>\n", " <th>YAHOO</th>\n", - " <td>0.148188</td>\n", - " <td>0.732594</td>\n", - " <td>0.219787</td>\n", - " <td>0.177277</td>\n", - " <td>0.117390</td>\n", - " <td>0.069368</td>\n", + " <td>0.117107</td>\n", + " <td>0.641042</td>\n", + " <td>0.163729</td>\n", + " <td>0.143722</td>\n", + " <td>0.085546</td>\n", + " <td>0.008649</td>\n", " </tr>\n", " </tbody>\n", "</table>\n", @@ -6081,32 +6081,32 @@ "text/plain": [ " AUC-PR AUC-ROC VUS-PR Standard-F1 Recall Precision\n", "group \n", - "CATSv2 0.437868 0.665188 0.282282 0.539985 0.213514 0.980453\n", - "Daphnet 0.192069 0.486957 0.123026 0.304343 0.001301 1.000000\n", - "Exathlon 0.874519 0.903489 0.876372 0.892089 0.195978 0.808444\n", - "IOPS 0.368163 0.767703 0.192837 0.412712 0.273930 0.540134\n", - "LTDB 0.479711 0.658691 0.524763 0.517053 0.052542 0.640558\n", - "MGAB 0.015268 0.518880 0.005586 0.042315 0.022778 0.003985\n", - "MITDB 0.206999 0.576751 0.163465 0.270434 0.142823 0.306206\n", - "MSL 0.394283 0.751053 0.428048 0.468206 0.213466 0.314254\n", - "NAB 0.332227 0.596125 0.342007 0.411216 0.112409 0.484350\n", - "NEK 0.836145 0.964286 0.858349 0.834403 0.428216 0.917869\n", - "OPPORTUNITY 0.649867 0.683519 0.649931 0.670022 0.399095 0.427947\n", - "Power 0.064665 0.357775 0.067090 0.157947 0.000000 0.000000\n", - "SED 0.031663 0.379970 0.055985 0.089486 0.000000 0.000000\n", - "SMAP 0.385082 0.680605 0.417852 0.428524 0.340266 0.369953\n", - "SMD 0.531140 0.819793 0.478742 0.532466 0.442662 0.521057\n", - "SVDB 0.476835 0.757079 0.445289 0.530508 0.281850 0.838828\n", - "SWaT 0.757687 0.846538 0.366250 0.790817 0.649675 1.000000\n", - "Stock 0.133646 0.488489 0.771658 0.216473 0.012213 0.412057\n", - "TAO 0.344060 0.872320 0.930020 0.398812 0.087213 0.536819\n", - "TODS 0.172369 0.536398 0.538194 0.245359 0.056183 0.308668\n", - "UCR 0.085236 0.650036 0.089552 0.124586 0.095867 0.080902\n", - "WSD 0.251057 0.764089 0.157612 0.292047 0.233585 0.240701\n", - "YAHOO 0.148188 0.732594 0.219787 0.177277 0.117390 0.069368" + "CATSv2 0.474705 0.674971 0.232417 0.591811 0.337568 0.953253\n", + "Daphnet 0.468647 0.832345 0.441568 0.565157 0.291414 0.735230\n", + "Exathlon 0.958102 0.993371 0.959173 0.963558 0.227406 0.899726\n", + "IOPS 0.372849 0.836747 0.260372 0.409802 0.360211 0.378220\n", + "LTDB 0.489411 0.665304 0.534873 0.527493 0.043424 0.566318\n", + "MGAB 0.027123 0.558247 0.005551 0.064117 0.018889 0.117214\n", + "MITDB 0.377853 0.675760 0.323526 0.444612 0.249054 0.438817\n", + "MSL 0.493320 0.753859 0.523310 0.546533 0.354351 0.427327\n", + "NAB 0.486528 0.709936 0.511398 0.533422 0.133190 0.497121\n", + "NEK 0.891733 0.986856 0.929171 0.879233 0.493302 0.923173\n", + "OPPORTUNITY 0.923192 0.963782 0.924516 0.918166 0.594777 0.711344\n", + "Power 0.078866 0.482809 0.079616 0.169943 0.000000 0.000000\n", + "SED 0.020994 0.013643 0.030270 0.078854 0.000000 0.000000\n", + "SMAP 0.484416 0.799270 0.566842 0.557342 0.436525 0.502204\n", + "SMD 0.495851 0.859204 0.467257 0.518748 0.393399 0.494977\n", + "SVDB 0.558896 0.795919 0.523984 0.598146 0.360878 0.803476\n", + "SWaT 0.756700 0.847345 0.375512 0.790788 0.000000 0.000000\n", + "Stock 0.148428 0.666535 0.825382 0.222413 0.004613 0.221866\n", + "TAO 0.149144 0.650314 0.840276 0.226330 0.003704 0.209524\n", + "TODS 0.124321 0.553633 0.552877 0.215220 0.035693 0.192152\n", + "UCR 0.138533 0.653279 0.152678 0.173614 0.089652 0.065363\n", + "WSD 0.216542 0.757291 0.155366 0.246170 0.247455 0.187045\n", + "YAHOO 0.117107 0.641042 0.163729 0.143722 0.085546 0.008649" ] }, - "execution_count": 270, + "execution_count": 286, "metadata": {}, "output_type": "execute_result" } @@ -6119,40 +6119,40 @@ }, { "cell_type": "code", - "execution_count": 271, + "execution_count": 287, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "group\n", - "MGAB 0.015268\n", - "SED 0.031663\n", - "Power 0.064665\n", - "UCR 0.085236\n", - "Stock 0.133646\n", - "YAHOO 0.148188\n", - "TODS 0.172369\n", - "Daphnet 0.192069\n", - "MITDB 0.206999\n", - "WSD 0.251057\n", - "NAB 0.332227\n", - "TAO 0.344060\n", - "IOPS 0.368163\n", - "SMAP 0.385082\n", - "MSL 0.394283\n", - "CATSv2 0.437868\n", - "SVDB 0.476835\n", - "LTDB 0.479711\n", - "SMD 0.531140\n", - "OPPORTUNITY 0.649867\n", - "SWaT 0.757687\n", - "NEK 0.836145\n", - "Exathlon 0.874519\n", + "SED 0.020994\n", + "MGAB 0.027123\n", + "Power 0.078866\n", + "YAHOO 0.117107\n", + "TODS 0.124321\n", + "UCR 0.138533\n", + "Stock 0.148428\n", + "TAO 0.149144\n", + "WSD 0.216542\n", + "IOPS 0.372849\n", + "MITDB 0.377853\n", + "Daphnet 0.468647\n", + "CATSv2 0.474705\n", + "SMAP 0.484416\n", + "NAB 0.486528\n", + "LTDB 0.489411\n", + "MSL 0.493320\n", + "SMD 0.495851\n", + "SVDB 0.558896\n", + "SWaT 0.756700\n", + "NEK 0.891733\n", + "OPPORTUNITY 0.923192\n", + "Exathlon 0.958102\n", "Name: AUC-PR, dtype: float64" ] }, - "execution_count": 271, + "execution_count": 287, "metadata": {}, "output_type": "execute_result" } @@ -6164,40 +6164,40 @@ }, { "cell_type": "code", - "execution_count": 272, + "execution_count": 288, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "group\n", - "MGAB 0.005586\n", - "SED 0.055985\n", - "Power 0.067090\n", - "UCR 0.089552\n", - "Daphnet 0.123026\n", - "WSD 0.157612\n", - "MITDB 0.163465\n", - "IOPS 0.192837\n", - "YAHOO 0.219787\n", - "CATSv2 0.282282\n", - "NAB 0.342007\n", - "SWaT 0.366250\n", - "SMAP 0.417852\n", - "MSL 0.428048\n", - "SVDB 0.445289\n", - "SMD 0.478742\n", - "LTDB 0.524763\n", - "TODS 0.538194\n", - "OPPORTUNITY 0.649931\n", - "Stock 0.771658\n", - "NEK 0.858349\n", - "Exathlon 0.876372\n", - "TAO 0.930020\n", + "MGAB 0.005551\n", + "SED 0.030270\n", + "Power 0.079616\n", + "UCR 0.152678\n", + "WSD 0.155366\n", + "YAHOO 0.163729\n", + "CATSv2 0.232417\n", + "IOPS 0.260372\n", + "MITDB 0.323526\n", + "SWaT 0.375512\n", + "Daphnet 0.441568\n", + "SMD 0.467257\n", + "NAB 0.511398\n", + "MSL 0.523310\n", + "SVDB 0.523984\n", + "LTDB 0.534873\n", + "TODS 0.552877\n", + "SMAP 0.566842\n", + "Stock 0.825382\n", + "TAO 0.840276\n", + "OPPORTUNITY 0.924516\n", + "NEK 0.929171\n", + "Exathlon 0.959173\n", "Name: VUS-PR, dtype: float64" ] }, - "execution_count": 272, + "execution_count": 288, "metadata": {}, "output_type": "execute_result" } -- GitLab