This repository contains code to run and reproduce the experiments presented in I Don't Need u: Identifiable Non-Linear ICA Without Side Information
We include a requirements.txt
These experiments are run through the script main.py
. Below are details on how to use the script. To learn about its arguments type python main.py --help
:
usage: main.py [-h] [--config CONFIG] [--run RUN] [--n-sims N_SIMS]
[--seed SEED] [--baseline] [--representation] [-z]
[--mcc] [--second-seed SECOND_SEED] [--all] [--plot]
optional arguments:
-h, --help show this help message and exit
--config CONFIG Path to the config file
--run RUN Path for saving running related data.
--n-sims N_SIMS Number of simulations to run
--seed SEED Random seed
--z dim z Dimensionality of Latent Space
--baseline Run the script for the baseline
--representation Run CCA representation validation across multiple
seeds
--mcc compute MCCs for representation
experiments
--second-seed SECOND_SEED
Second random seed for computing MCC for representation experiments
--all Run transfer learning experiment for many seeds and
subset sizes
--plot Plot selected experiment for the selected dataset
All options and choice of dataset are passed through a configuration file under the configs
folder.
To run all the image data experiments in the paper, simply run the shell script experiments.sh
, though this is set up to run all experiments in a sequence on a single GPU, so would take some time to run.
A full copy of the license can be found here.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.