Skip to content
Snippets Groups Projects
Commit e7e91a3a authored by Pat Alt's avatar Pat Alt
Browse files

added innovation for MNIST

parent 955baa91
No related branches found
No related tags found
1 merge request!7669 initial run including fmnist lenet and new method
Showing with 58 additions and 37 deletions
......@@ -2,7 +2,7 @@
#SBATCH --job-name="California Housing (ECCCo)"
#SBATCH --time=3:00:00
#SBATCH --ntasks=100
#SBATCH --ntasks=1000
#SBATCH --cpus-per-task=1
#SBATCH --partition=compute
#SBATCH --mem-per-cpu=4GB
......
......@@ -2,7 +2,7 @@
#SBATCH --job-name="Credit Default (ECCCo)"
#SBATCH --time=3:00:00
#SBATCH --ntasks=100
#SBATCH --ntasks=1000
#SBATCH --cpus-per-task=1
#SBATCH --partition=compute
#SBATCH --mem-per-cpu=4GB
......
......@@ -2,7 +2,7 @@
#SBATCH --job-name="German Credit (ECCCo)"
#SBATCH --time=3:00:00
#SBATCH --ntasks=100
#SBATCH --ntasks=1000
#SBATCH --cpus-per-task=1
#SBATCH --partition=compute
#SBATCH --mem-per-cpu=4GB
......
......@@ -2,7 +2,7 @@
#SBATCH --job-name="GMSC (ECCCo)"
#SBATCH --time=3:00:00
#SBATCH --ntasks=100
#SBATCH --ntasks=1000
#SBATCH --cpus-per-task=1
#SBATCH --partition=compute
#SBATCH --mem-per-cpu=4GB
......
#!/bin/bash
#SBATCH --job-name="MNIST (ECCCo)"
#SBATCH --time=24:00:00
#SBATCH --ntasks=48
#SBATCH --cpus-per-task=1
#SBATCH --partition=compute
#SBATCH --mem-per-cpu=4GB
#SBATCH --account=innovation
#SBATCH --mail-type=END # Set mail type to 'END' to receive a mail when the job finishes.
module load 2023r1 openmpi
srun julia --project=experiments experiments/run_experiments.jl -- data=mnist output_path=results mpi > experiments/mnist.log
......@@ -2,7 +2,7 @@
#SBATCH --job-name="MNIST (ECCCo)"
#SBATCH --time=24:00:00
#SBATCH --ntasks=100
#SBATCH --ntasks=1000
#SBATCH --cpus-per-task=1
#SBATCH --partition=compute
#SBATCH --mem-per-cpu=4GB
......
......@@ -2,7 +2,7 @@
#SBATCH --job-name="Synthetic (ECCCo)"
#SBATCH --time=02:00:00
#SBATCH --ntasks=100
#SBATCH --ntasks=1000
#SBATCH --cpus-per-task=1
#SBATCH --partition=compute
#SBATCH --mem-per-cpu=4GB
......
......@@ -2,7 +2,7 @@
#SBATCH --job-name="Tabular (ECCCo)"
#SBATCH --time=05:00:00
#SBATCH --ntasks=100
#SBATCH --ntasks=1000
#SBATCH --cpus-per-task=1
#SBATCH --partition=compute
#SBATCH --mem-per-cpu=4GB
......
......@@ -2,7 +2,7 @@
#SBATCH --job-name="Grid-search Synthetic (ECCCo)"
#SBATCH --time=03:00:00
#SBATCH --ntasks=100
#SBATCH --ntasks=1000
#SBATCH --cpus-per-task=1
#SBATCH --partition=compute
#SBATCH --mem-per-cpu=4GB
......
......@@ -2,7 +2,7 @@
#SBATCH --job-name="Grid-search Tabular (ECCCo)"
#SBATCH --time=06:00:00
#SBATCH --ntasks=100
#SBATCH --ntasks=1000
#SBATCH --cpus-per-task=1
#SBATCH --partition=compute
#SBATCH --mem-per-cpu=4GB
......
# Training data:
dataname = "MNIST"
n_obs = 10000
counterfactual_data = load_mnist(n_obs)
counterfactual_data.X = ECCCo.pre_process.(counterfactual_data.X)
......@@ -11,39 +12,45 @@ counterfactual_data.generative_model = vae
# Test data:
test_data = load_mnist_test()
# Model tuning:
model_tuning_params = DEFAULT_MODEL_TUNING_LARGE
# Tuning parameters:
tuning_params = DEFAULT_GENERATOR_TUNING
# Additional models:
add_models = Dict(
"LeNet-5" => lenet5,
"ResNet-18" => resnet18(;epochs=10),
)
# Default builder:
n_hidden = 128
activation = Flux.swish
builder = MLJFlux.@builder Flux.Chain(
Dense(n_in, n_hidden, activation),
Dense(n_hidden, n_out),
"ResNet-18" => resnet18(; epochs=10),
)
# Number of individuals:
n_ind = N_IND_SPECIFIED ? N_IND : 10
# Run:
run_experiment(
counterfactual_data, test_data;
dataname="MNIST",
builder= builder,
𝒟x = Uniform(-1.0, 1.0),
α = [1.0,1.0,1e-2],
sampling_batch_size = 10,
# Parameter choices:
params = (
n_ind = N_IND_SPECIFIED ? N_IND : 10,
builder=default_builder(n_hidden=128, n_layers=2, activation=Flux.swish),
𝒟x=Uniform(-1.0, 1.0),
α=[1.0, 1.0, 1e-2],
sampling_batch_size=10,
sampling_steps=50,
use_ensembling = true,
n_individuals = n_ind,
use_variants = false,
use_class_loss = true,
use_ensembling=true,
use_variants=false,
additional_models=add_models,
epochs = 10,
nsamples = 10,
epochs=10,
nsamples=10,
nmin=1,
niter_eccco=100
)
\ No newline at end of file
)
if !GRID_SEARCH
run_experiment(
counterfactual_data, test_data;
dataname=dataname,
params...
)
else
grid_search(
counterfactual_data, test_data;
dataname=dataname,
tuning_params=tuning_params
)
end
\ No newline at end of file
......@@ -18,7 +18,7 @@ end
Default builder for MLPs.
"""
function default_builder(n_hidden::Int=16, n_layers::Int=3, activation::Function=Flux.swish)
function default_builder(;n_hidden::Int=16, n_layers::Int=3, activation::Function=Flux.swish)
builder = TuningBuilder(n_hidden=n_hidden, n_layers=n_layers, activation=activation)
return builder
end
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment