deep-clustering-toolbox
PyTorch Vision toolbox not only for deep-clustering
Introduction
I 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 using PyTorch, to benchmark algorithms for various dataset.
The current version supports MNIST, CIFAR10, SVHN and STL-10 for semisupervised and unsupervised learning.
ACDC, Promise12, WMH and so on are supported as segmentation counterpart.
Features:
- Powerful cmd parser using
yamlmodule, providing flexible input formats without predefined argparser.- Automatic checkpoint management adapting to various settings
- Automatic meter recording and experimental status plotting using matplotlib and threads
- Various build-in loss functions and help tricks and assert statements frequently used in PyTorch Framework, such as
disable_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 for
Invariant Information Clustering for Unsupervised Image Classification and Segmentation,Learning Discrete Representations via Information Maximizing Self-Augmented Training,Information based Deep Clustering: An experimental study
- SemiSupervised classification for
Semi-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 results
- SemiSupervised Segmentation for
Adversarial Learning for Semi-Supervised Semantic Segmentation,Semi-Supervised and Task-Driven Data Augmentation,Deep Co-Training for Semi-Supervised Image Segmentation
- Discretely-constrained CNN for
Discretely-constrained deep network for weakly-supervised segmentation,Mutual information based segmentation on medical imaging
They are examples how to develop research framework with the assistance of our proposed deep-clustering-toolbox.
Playground
Several papers have been implemented based on this framework. I store them in the playground folder. 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 Segmentation
Installation
git clone https://github.com/jizongFox/deep-clustering-toolbox.git
cd deep-clustering-toolbox
python setup install # for those who do not want to make changes immediately.
# or
python setup develop # for those who want to modify the code and make the impact immediate.
Or very simply
pip install deepclustering
Citation
If 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}
}
Metadata
Release files for deepclustering 0.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| deepclustering-0.0.3.tar.gz | 204.3 kB | Without provenance | Details for deepclustering-0.0.3.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| deepclustering-0.0.3-py3-none-any.whl | Python 3 | none | any | Details for deepclustering-0.0.3-py3-none-any.whl |
Total release size: 505.9 kB
Release files / deepclustering-0.0.3.tar.gz
| Download URL | deepclustering-0.0.3.tar.gz |
|---|---|
| Size | 204.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fd2e624a412621d8a674601eec8bc5f95f0847cb5efe0231ea638432f697c8bd
|
|
BLAKE2b-256 checksum How to use checksums |
99e7b2940843cc2081f9490b24193230152af7fa7f4982f28c5f49bfaa56ffda
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/45.2.0.post20200210 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.6
|
Release files / deepclustering-0.0.3-py3-none-any.whl
| Download URL | deepclustering-0.0.3-py3-none-any.whl |
|---|---|
| Size | 301.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a4d223e2d3f9affeef3137104a0171cec4fa0128448fb94b673b700541f59719
|
|
BLAKE2b-256 checksum How to use checksums |
27903941d28cba5ae16b16ee9a3e3d6829d1efd411e54a9b86002aa8420a20c2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/45.2.0.post20200210 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.6
|
Security for deepclustering 0.0.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.