Semi-supervised Adaptive Learning Across Domains
Project description
🥗 salad 🥗 (dummy package)
Semi-supervised Adaptive Learning Across Domains
salad
is a library to easily setup experiments using the current state-of-the art techniques in domain adaptation.
It features several of recent approaches, with the goal of being able to run fair comparisons between algorithms and transfer them to real-world use cases.
The toolbox is under active development and will extended when new approaches are published.
Currently implements the following techniques (in salad.solver.da
)
- VADA
(
VADASolver
), arxiv:1802.08735 - DIRT-T
(
DIRTTSolver
), arxiv:1802.08735 - Self-Ensembling for Visual Domain Adaptation
(
SelfEnsemblingSolver
) arxiv:1706.05208 - Associative Domain Adaptation
(
AssociativeSolver
), arxiv:1708.00938 - Domain Adversarial Training
(
DANNSolver
), jmlr:v17/15-239.html - Generalizing Across Domains via Cross-Gradient Training
(
CrossGradSolver
), arxiv:1708.00938
Implements the following features (in salad.layers
):
- Weights Ensembling using Exponential Moving Averages or Stored Weights
- WalkerLoss and Visit Loss (arxiv:1708.00938)
- Virtual Adversarial Training (arxiv:1704.03976)
Coming soon:
- Deep Joint Optimal Transport
(
DJDOTSolver
), arxiv:1803.10081 - Translation based approaches
💻 Installation
Requirements can be found in requirement.txt
and can be installed via
pip install -r requirements.txt
Install the package via
pip install torch-salad
For the latest development version, install via
pip install git+https://github.com/bethgelab/domainadaptation
📚 Using this library
Along with the implementation of domain adaptation routines, this library comprises code to easily set up deep learning experiments in general.
Experiments are specified using the classes defined in solver.py
.
This section will be extended upon pre-release.
💡 Domain Adaptation Problems
Legend: Implemented (✓), Under Construction (🚧)
📷 Vision
- Digits: MNIST ↔ SVHN ↔ USPS ↔ SYNTH (✓)
- VisDA 2018 Openset and Detection (✓)
- Synthetic (GAN) ↔ Real (🚧)
- CIFAR ↔ STL (🚧)
- ImageNet to iCubWorld (🚧)
🎤 Audio
፨ Neuroscience
- White Noise ↔ Gratings ↔ Natural Images (🚧)
- Deep Lab Cut Tracking (🚧)
🔗 References to open source software
Part of the code in this repository is inspired or borrowed from original implementations, especially:
- https://github.com/Britefury/self-ensemble-visual-domain-adapt
- https://github.com/Britefury/self-ensemble-visual-domain-adapt-photo/
- https://github.com/RuiShu/dirt-t
- https://github.com/gpascualg/CrossGrad
- https://github.com/stes/torch-associative
- https://github.com/haeusser/learning_by_association
Excellent list of domain adaptation ressources:
👤 Contact
Maintained by Steffen Schneider. Work is part of my thesis project at the Bethge Lab. This README is also available as a webpage at salad.domainadaptation.org. We welcome issues and pull requests to the official github repository.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for torch_salad-0.1.4a0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7b4e9ad7b46ccef5caae36505fde452cdf111d7cdb07b9aac32e7fbad6cfa381 |
|
MD5 | 972f6829bd00a033428bf0252b589619 |
|
BLAKE2b-256 | ccab317451b95259542e9c162dcca44845e5094810952f7b2a22ed1f5c623d8e |