Skip to content

Implementation of "How to Achieve High Classification Accuracy with Just a Few Labels: A Semi-supervised Approach Using Sampled Packets"

Notifications You must be signed in to change notification settings

jmhIcoding/Semi-supervised-Learning-QUIC-

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Semi-supervised-Learning-QUIC-

Implementation of "How to Achieve High Classification Accuracy with Just a Few Labels: A Semi-supervised Approach Using Sampled Packets". For more information read the paper.

Prerequisites

Python 3 and Pytorch

Dataset

Dataset is available in QUIC Dataset

Data Input format

It is assumed that each flow is converted into a text file containing 4 columns: Timestamp, relative time (from the first packet in the flow), packet lenght, direction. Statistical features are calculated in dataProcessInMemoryQUIC.py file.

To reproduve our results

  1. Run dataProcessInMemoryQUIC.py to do the pre-processing and caculating statistical features.
  2. Run pre-training.py to train the model to predict statistical features.
  3. Run re-training to transfer the weight from previous step and re-train the model to predict class labels.

About

Implementation of "How to Achieve High Classification Accuracy with Just a Few Labels: A Semi-supervised Approach Using Sampled Packets"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%