TensorFlow Implementation of Deep Mutual Learning
Switch branches/tags
Nothing to show
Clone or download
Permalink
Failed to load latest commit information.
.idea first commit Mar 26, 2018
datasets first commit Mar 26, 2018
deployment remove .pyc Mar 26, 2018
nets remove .pyc Mar 26, 2018
preprocessing first commit Mar 26, 2018
scripts first commit Mar 26, 2018
.DS_Store first commit Mar 26, 2018
DML.png first commit Mar 26, 2018
LICENSE Initial commit Mar 26, 2018
README.md add pdf file on google drive Apr 10, 2018
__init__.py add codes Mar 26, 2018
eval_image_classifier.py first commit Mar 26, 2018
eval_models.py first commit Mar 26, 2018
format_and_convert_data.py first commit Mar 26, 2018
train_image_classifier.py first commit Mar 26, 2018
train_models.py first commit Mar 26, 2018

README.md

Deep-Mutual-Learning

TensorFlow implementation of Deep Mutual Learning accepted by CVPR 2018.

Introduction

Deep mutual learning provides a simple but effective way to improve the generalisation ability of a network by training collaboratively with a cohort of other networks.

DML

Requirements

  1. TensorFlow 1.3.1
  2. CUDA 8.0 and cuDNN 6.0
  3. Matlab

Usage

Data Preparation

  1. Please download the Market-1501 Dataset

  2. Convert the image data into TFRecords

sh scripts/format_and_convert_market.sh

Training

  1. Train MobileNets with DML
sh scripts/train_dml_mobilenet_on_market.sh
  1. Train MobileNet independently
sh scripts/train_ind_mobilenet_on_market.sh

Testing

  1. Extract features of the test image
sh scripts/evaludate_dml_mobilenet_on_market.sh
  1. Evaluate the performance with matlab code

Citation

If you find DML useful in your research, please kindly cite our paper:

@inproceedings{ying2018DML,
    author = {Ying Zhang and Tao Xiang and Timothy M. Hospedales and Huchuan Lu},
    title = {Deep Mutual Learning},
    booktitle = {CVPR},
    year = {2018}}