mirror of
https://github.com/vel21ripn/nDPI.git
synced 2026-04-28 15:09:47 +00:00
55 lines
1.2 KiB
Markdown
55 lines
1.2 KiB
Markdown
# Overview
|
|
|
|
This folder contains training and inference scripts for two models based on different technologies: MLP (multi-layer perceptron) using scikit-learn and an LSTM-based neural network using TensorFlow. Each model has its own folder with training and testing scripts. Developers interested in DGA detection in nDPI should also visit [this folder](../tests/dga) containing the original ML implementation.
|
|
|
|
The test scripts only show how to use an already-trained model.
|
|
|
|
## Requirements
|
|
|
|
To install the necessary dependencies, run
|
|
|
|
```bash
|
|
pip install -r requirements.txt
|
|
```
|
|
|
|
## How to use the scripts
|
|
|
|
### 1. scikit-learn (MLP model)
|
|
|
|
**Folder**: `scikit-learn_tests`.
|
|
|
|
#### Training
|
|
|
|
To train the MLP model, run the training script:
|
|
|
|
```bash
|
|
python scikit-learn_tests/training_script.py
|
|
```
|
|
|
|
#### Inference
|
|
|
|
After training, you can perform inference using the test script:
|
|
|
|
```bash
|
|
python scikit-learn_tests/test_script.py
|
|
```
|
|
|
|
### 2. TensorFlow (LSTM model)
|
|
|
|
**Folder**: `tensorflow_tests`.
|
|
|
|
#### Training
|
|
|
|
To train the LSTM model, run the training script
|
|
|
|
```bash
|
|
python tensorflow_tests/training_script.py
|
|
```
|
|
|
|
#### Inference
|
|
|
|
Once training is complete, you can run inference on the test set with
|
|
|
|
```bash
|
|
python tensorflow_tests/test_script.py
|
|
```
|