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

uhlala

parent f53fe37b
No related branches found
No related tags found
1 merge request!7669 initial run including fmnist lenet and new method
......@@ -2,6 +2,18 @@
dataname = "California Housing"
counterfactual_data, test_data = train_test_split(load_california_housing(nothing); test_size=TEST_SIZE)
# VAE:
using CounterfactualExplanations.GenerativeModels: VAE, train!
X = counterfactual_data.X
y = counterfactual_data.output_encoder.y
vae = VAE(size(X, 1); nll=Flux.Losses.mse, epochs=100, λ=0.01, latent_dim=5)
train!(vae, X, y)
counterfactual_data.generative_model = vae
# Dimensionality reduction:
maxout_dim = vae.params.latent_dim
counterfactual_data.dt = MultivariateStats.fit(MultivariateStats.PCA, counterfactual_data.X; maxoutdim=maxout_dim);
# Model tuning:
model_tuning_params = DEFAULT_MODEL_TUNING_LARGE
......@@ -17,7 +29,8 @@ params = (
sampling_batch_size=10,
sampling_steps=30,
use_ensembling=true,
opt=Flux.Optimise.Descent(0.05)
opt=Flux.Optimise.Descent(0.05),
dim_reduction=true,
)
# Best grid search params:
......
......@@ -94,7 +94,8 @@ function run_experiment(exper::Experiment; save_output::Bool=true, only_models::
if FROM_GRID_SEARCH
# Just load the best model from the grid search:
outcome = Serialization.deserialize(joinpath(exper.output_path, "grid_search", "$(exper.save_name)_best_eccco_delta.jls"))
outcomes = Serialization.deserialize(joinpath(exper.output_path, "grid_search", "$(exper.save_name).jls"))
outcome = best_absolute_outcome_eccco_Δ(outcomes)
else
# Run the experiment:
outcome = ExperimentOutcome(exper, nothing, nothing, nothing)
......
......@@ -2,6 +2,18 @@
dataname = "German Credit"
counterfactual_data, test_data = train_test_split(load_german_credit(nothing); test_size=TEST_SIZE)
# VAE:
using CounterfactualExplanations.GenerativeModels: VAE, train!
X = counterfactual_data.X
y = counterfactual_data.output_encoder.y
vae = VAE(size(X,1); nll=Flux.Losses.mse, epochs=100, λ=0.01, latent_dim=5)
train!(vae, X, y)
counterfactual_data.generative_model = vae
# Dimensionality reduction:
maxout_dim = vae.params.latent_dim
counterfactual_data.dt = MultivariateStats.fit(MultivariateStats.PCA, counterfactual_data.X; maxoutdim=maxout_dim);
# Model tuning:
model_tuning_params = DEFAULT_MODEL_TUNING_LARGE
......@@ -17,7 +29,8 @@ params = (
sampling_batch_size=10,
sampling_steps=30,
use_ensembling=true,
opt=Flux.Optimise.Descent(0.05)
opt=Flux.Optimise.Descent(0.05),
dim_reduction=true,
)
# Best grid search params:
......
......@@ -3,6 +3,18 @@ dataname = "GMSC"
counterfactual_data, test_data = train_test_split(load_gmsc(nothing); test_size=TEST_SIZE)
nobs = size(counterfactual_data.X, 2)
# VAE:
using CounterfactualExplanations.GenerativeModels: VAE, train!
X = counterfactual_data.X
y = counterfactual_data.output_encoder.y
vae = VAE(size(X, 1); nll=Flux.Losses.mse, epochs=100, λ=0.01, latent_dim=5)
train!(vae, X, y)
counterfactual_data.generative_model = vae
# Dimensionality reduction:
maxout_dim = vae.params.latent_dim
counterfactual_data.dt = MultivariateStats.fit(MultivariateStats.PCA, counterfactual_data.X; maxoutdim=maxout_dim);
# Model tuning:
model_tuning_params = DEFAULT_MODEL_TUNING_LARGE
......@@ -18,7 +30,8 @@ params = (
sampling_batch_size = 10,
sampling_steps = 30,
use_ensembling = true,
opt = Flux.Optimise.Descent(0.05)
opt=Flux.Optimise.Descent(0.05),
dim_reduction=true,
)
# Best grid search params:
......
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