Python3 implementation of the paper CO-Optimal Transport (NeurIPS 2020)
CO-Optimal Transport (COOT) is an Optimal Transport problem between measures whose supports do not necessarily live in the same metric space. It aims to simultaneously optimize two transport maps between both samples and features of two datasets with possibly different number of rows and columns.
Feel free to ask if any question.
If you use this toolbox in your research and find it useful, please cite COOT using the following bibtex reference:
@incollection{coot_2020,
title = {CO-Optimal Transport},
author = {Redko, Ievgen, Vayer, Titouan, Flamary, R\'{e}mi and Courty, Nicolas},
booktitle = {Advances in Neural Information Processing Systems 33},
year = {2020}
}
- Numpy (>= 1.11)
- Matplotlib (>= 1.5)
- For Optimal transport Python Optimal Transport POT (>=0.5.1)
-
The main function that computes the COOT problem between two datasets in the code folder (file cot.py)
-
Demo notebooks:
- coot_mnist.ipynb: COOT on the MNIST/USPS problem
- Code to repoduce results of the paper in the expe folder.