Skip to content

Semi-supervised FixMatch algorithm Python implementation

Notifications You must be signed in to change notification settings

amarmeddahi/fix-match

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 

Repository files navigation

FixMatch

FixMatch is a semi-supervised deep learning algorithm for image classification tasks. This repository provides a Python implementation using Tensorflow of the FixMatch algorithm. The implementation uses the CIFAR10 dataset and includes the following steps:

Notebook description

  1. Data Loading: Import and normalize the CIFAR10 dataset and split the training set into labeled and unlabeled data.
  2. Supervised learning (baseline): Train a standard Convolutional Neural Network on the labeled data and evaluate its performance on the test set.
  3. FixMatch: Perform the FixMatch algorithm on the unlabeled data and evaluate its performance on the test set.

Requirements

  • Tensorflow
  • Numpy
  • Keras

Usage

To run the code, simply run the FixMatch.ipynb Jupyter notebook.

Results

The results of the baseline and FixMatch algorithms are shown in the notebook and compared. The FixMatch algorithm can significantly improve the accuracy on the test set.

Credits

This implementation is based on the paper "FixMatch: Simplifying Semi-Supervised Learning with Consistency and Confidence" by Soeren Pirk et al.