Transcendent Multiclass
This repository enables users to apply Transcendent-like concept drift detection to both binary and multiclass problems.
Modifications have been made specifically to the ICE (Inductive Conformal Evaluator) implementation, while the other solutions (i.e. TCE, CCE, etc.) are out of the scope.
This project adapts Transcendent for multiclass problems by implementing two Nonconformity Measures (NCM) for Random forest and LightGBM classifiers.
Prerequisites
-
Setup the train/test split directory, which should contains the following files:
time_split/ ├── X_train.pkl ├── X_test.pkl ├── X_proper_train.pkl ├── X_cal.pkl ├── y_train.pkl ├── y_test.pkl ├── y_proper_train.pkl └── y_cal.pkl
-
Make sure to have a running and active version of Docker.
Usage:
-
Clone the repository and change directory:
git clone git@github.com:w-disaster/transcendent-multiclass.git && cd transcendent-multiclass
-
Configure the env variables and Run Inductive Conformal Evaluator:
PE_DATASET_NAME=<YOUR_PE_DATASET_NAME> SPLITTED_MPH_DATASET_PATH=<YOUR_PRE_SPLITTED_DATA> BEST_HYP_DIR=<YOUR_BEST_HYP_DIR> # Based on format produced by overfitting-analysis docker run -d \ --name mph-feature-extraction-$PE_DATASET_NAME \ -e BASE_DATASET_PATH=/usr/app/dataset/ \ -e PE_DATASET_TYPE=${PE_DATASET_NAME}_mph \ -e SPLITTED_MPH_DATASET_PATH=/usr/input_data/splitted_dataset/ \ -e BEST_HYP_DIR=/usr/input_data/best_hyp/ \ -e FEATURE_TYPE=dts \ -v $BEST_HYP_DIR:/usr/input_data/best_hyp/ \ -v $SPLITTED_MPH_DATASET_PATH:/usr/input_data/splitted_dataset/ \ -v ./results_multiclass/:/usr/app/models/ \ ghcr.io/malware-concept-drift-detection/transcendent-multiclass:main
A
results_multiclass/directory will be locally created containing the credibility ($p$-values) and confidence scores for both calibration and testing sets. -
Analysis post ICE:
Check whether novel families in the testing set produce smaller $p$-values, and thus can be discriminated from seen families.
Metadata
Release files for transcendent-multiclass-CDD__Wdis 1.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| transcendent_multiclass_cdd_wdis-1.1.1.tar.gz | 14.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| transcendent_multiclass_cdd_wdis-1.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 33.6 kB
Release files / transcendent_multiclass_cdd_wdis-1.1.1.tar.gz
| Download URL | transcendent_multiclass_cdd_wdis-1.1.1.tar.gz |
|---|---|
| Size | 14.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e7fee7d1aac172d9a3821ee2ed2d5bc8634cbe26778c3a983574bfc9362cd3f8
|
|
BLAKE2b-256 checksum How to use checksums |
39687232c965e779425a15fc904813dd31cfc4abd4787b30e7e25eb604573890
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.3 CPython/3.12.3 Linux/6.11.0-1018-azure
|
Release files / transcendent_multiclass_cdd_wdis-1.1.1-py3-none-any.whl
| Download URL | transcendent_multiclass_cdd_wdis-1.1.1-py3-none-any.whl |
|---|---|
| Size | 18.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
46bbdcd7756725cc1d22d742498b4454eef646a11d0d4f07f8c2521961abb73e
|
|
BLAKE2b-256 checksum How to use checksums |
197eb8b93d0c6c522f0a816085ca87bec7210630d4c62bc1a10153595c7623e6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.3 CPython/3.12.3 Linux/6.11.0-1018-azure
|