Package: deepclustering
deep-clustering-toolboxPyTorch Vision toolbox not only for deep-clusteringIntroductionI still use this repo for research propose. I update some modules frequently to make the framework flexible enough.This repo contains the base code for a deep learning framework usingPyTorch, to benchmark algorithms for various dataset.
The current version supportsMNIST,CIFAR10,SVHNandSTL-10for semisupervised and unsupervised learning.ACDC,Promise12,WMHand so on are supported as segmentation counterpart.Features:Powerful cmd parser usingyamlmodule, providing flexible input formats without predefined argparser.Automatic checkpoint management adapting to various settingsAutomatic meter recording and experimental status plotting using matplotlib and threadsVarious build-in loss functions and help tricks and assert statements frequently used in PyTorch Framework, such asdisable_tracking_bn,ema,vat, etc.Various post-processing tools such as Viewer for Medical image segmentations, multislice_viwers for 3D dataset real-time debug
and report script for experimental summaries.Extendable modules for rapid development.Several projects are benefited from this scalable framework, builing top on this, including:DeepClustering implemented forInvariant Information Clustering for Unsupervised Image Classification and Segmentation,Learning Discrete Representations via Information Maximizing Self-Augmented Training,Information based Deep Clustering: An experimental studySemiSupervised classification forSemi-Supervised Learning by Augmented Distribution Alignment,Virtual Adversarial Training: A Regularization Method for Supervised and Semi-Supervised Learning,Temporal Ensembling for Semi-Supervised Learning,Mean teachers are better role models: Weight-averaged consistency targets improve semi-supervised deep learning resultsSemiSupervised Segmentation forAdversarial Learning for Semi-Supervised Semantic Segmentation,Semi-Supervised and Task-Driven Data Augmentation,Deep Co-Training for Semi-Supervised Image SegmentationDiscretely-constrained CNN forDiscretely-constrained deep network for weakly-supervised segmentation,Mutual information based segmentation on medical imagingThey are examples how to develop research framework with the assistance of our proposeddeep-clustering-toolbox.PlaygroundSeveral papers have been implemented based on this framework. I store them in theplaygroundfolder. The papers include:Auto-Encoding Variational Bayesmixup: BEYOND EMPIRICAL RISK MINIMIZATIONMINE: Mutual Information Neural EstimationAveraging Weights Leads to Wider Optima and Better GeneralizationTHERE ARE MANY CONSISTENT EXPLANATIONS OF UNLABELED DATA: WHY YOU SHOULD AVERAGEPrior-aware Neural Network for Partially-Supervised Multi-Organ SegmentationInstallationgitclonehttps://github.com/jizongFox/deep-clustering-toolbox.gitcddeep-clustering-toolboxpythonsetupinstall# for those who do not want to make changes immediately.# orpythonsetupdevelop# for those who want to modify the code and make the impact immediate.Or very simplypipinstalldeepclusteringCitationIf you feel useful for your project, please consider citing this work.@article{peng2019deep,
  title={Deep Co-Training for Semi-Supervised Image Segmentation},
  author={Peng, Jizong and Estradab, Guillermo and Pedersoli, Marco and Desrosiers, Christian},
  journal={arXiv preprint arXiv:1903.11233},
  year={2019}}