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 @@ ...@@ -2,6 +2,18 @@
dataname = "California Housing" dataname = "California Housing"
counterfactual_data, test_data = train_test_split(load_california_housing(nothing); test_size=TEST_SIZE) 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:
model_tuning_params = DEFAULT_MODEL_TUNING_LARGE model_tuning_params = DEFAULT_MODEL_TUNING_LARGE
...@@ -17,7 +29,8 @@ params = ( ...@@ -17,7 +29,8 @@ params = (
sampling_batch_size=10, sampling_batch_size=10,
sampling_steps=30, sampling_steps=30,
use_ensembling=true, use_ensembling=true,
opt=Flux.Optimise.Descent(0.05) opt=Flux.Optimise.Descent(0.05),
dim_reduction=true,
) )
# Best grid search params: # Best grid search params:
......
...@@ -94,7 +94,8 @@ function run_experiment(exper::Experiment; save_output::Bool=true, only_models:: ...@@ -94,7 +94,8 @@ function run_experiment(exper::Experiment; save_output::Bool=true, only_models::
if FROM_GRID_SEARCH if FROM_GRID_SEARCH
# Just load the best model from the 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 else
# Run the experiment: # Run the experiment:
outcome = ExperimentOutcome(exper, nothing, nothing, nothing) outcome = ExperimentOutcome(exper, nothing, nothing, nothing)
......
...@@ -2,6 +2,18 @@ ...@@ -2,6 +2,18 @@
dataname = "German Credit" dataname = "German Credit"
counterfactual_data, test_data = train_test_split(load_german_credit(nothing); test_size=TEST_SIZE) 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:
model_tuning_params = DEFAULT_MODEL_TUNING_LARGE model_tuning_params = DEFAULT_MODEL_TUNING_LARGE
...@@ -17,7 +29,8 @@ params = ( ...@@ -17,7 +29,8 @@ params = (
sampling_batch_size=10, sampling_batch_size=10,
sampling_steps=30, sampling_steps=30,
use_ensembling=true, use_ensembling=true,
opt=Flux.Optimise.Descent(0.05) opt=Flux.Optimise.Descent(0.05),
dim_reduction=true,
) )
# Best grid search params: # Best grid search params:
......
...@@ -3,6 +3,18 @@ dataname = "GMSC" ...@@ -3,6 +3,18 @@ dataname = "GMSC"
counterfactual_data, test_data = train_test_split(load_gmsc(nothing); test_size=TEST_SIZE) counterfactual_data, test_data = train_test_split(load_gmsc(nothing); test_size=TEST_SIZE)
nobs = size(counterfactual_data.X, 2) 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:
model_tuning_params = DEFAULT_MODEL_TUNING_LARGE model_tuning_params = DEFAULT_MODEL_TUNING_LARGE
...@@ -18,7 +30,8 @@ params = ( ...@@ -18,7 +30,8 @@ params = (
sampling_batch_size = 10, sampling_batch_size = 10,
sampling_steps = 30, sampling_steps = 30,
use_ensembling = true, use_ensembling = true,
opt = Flux.Optimise.Descent(0.05) opt=Flux.Optimise.Descent(0.05),
dim_reduction=true,
) )
# Best grid search params: # 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