romtools.workflows.inverse.full_covariance_mf_vi_drivers#

Full-covariance multifidelity variational inference.

The MF control variate acts on the complete packed Gaussian natural-score contribution [delta, svec(delta delta.T - Sigma)]. Analytic entropy is added once after the stochastic HF/LF control-variate estimator.

Functions

mf_vi_with_auto_rom(*args[, ...])

Delegate the existing auto-ROM API unless full covariance is requested.

run_mf_vi(model, rom_model_builder, ...[, ...])

Run MF-VI with an optional true full-covariance Gaussian family.

romtools.workflows.inverse.full_covariance_mf_vi_drivers.mf_vi_with_auto_rom(*args, variational_distribution=None, max_covariance_log_step=1.0, **kwargs)[source]#

Delegate the existing auto-ROM API unless full covariance is requested.

romtools.workflows.inverse.full_covariance_mf_vi_drivers.run_mf_vi(model, rom_model_builder, prior_parameter_space, observations, observations_covariance, parameter_mins=None, parameter_maxes=None, initial_variational_parameter_space=None, restart_file=None, optimizer_method='gradient', optimizer_config=None, line_search_method='stochastic_nonmonotone', line_search_config=None, absolute_work_dir=None, fom_sample_size=10, rom_extra_sample_size=30, rom_tolerance=0.005, max_rom_training_history=1, random_seed=1, sampling_method='mc', fom_evaluation_concurrency=10, rom_evaluation_concurrency=1, covariance_regularization=1e-07, restart_files_to_keep=10, correlation_estimator='in_sample', correlation_k_folds=5, elbo_scaling_factor='diag_mean', elbo_relative_tolerance=None, baseline_method=None, use_mfmc_control_variate=True, mfmc_control_variate_mode='componentwise', rom_base_sampling_strategy='coupled', bounded_parameter_handling='transform', transform_interior_margin=1e-08, transform_map='sigmoid', min_physical_variational_std_fraction=1e-08, dispatcher=None, *, absolute_vi_directory=None, score_function_entropy_strategy='analytic', variational_distribution=None, max_covariance_log_step=1.0, create_run_directories=True, sample_reuse_config=None, rom_substep_start_iteration=0, rom_substep_end_iteration=None, num_rom_substeps=0, rom_substep_newton_config=None)[source]#

Run MF-VI with an optional true full-covariance Gaussian family.

Parameters:
  • observations (ndarray)

  • observations_covariance (ndarray)

  • parameter_mins (ndarray)

  • parameter_maxes (ndarray)

  • restart_file (str)

  • optimizer_method (str)

  • line_search_method (str)

  • absolute_work_dir (str)

  • fom_sample_size (int)

  • rom_extra_sample_size (int)

  • rom_tolerance (float)

  • max_rom_training_history (int)

  • random_seed (int)

  • sampling_method (str)

  • covariance_regularization (float)

  • restart_files_to_keep (int)

  • correlation_estimator (str)

  • correlation_k_folds (int)

  • elbo_relative_tolerance (float)

  • baseline_method (str)

  • use_mfmc_control_variate (bool)

  • mfmc_control_variate_mode (str)

  • rom_base_sampling_strategy (str)

  • bounded_parameter_handling (str)

  • transform_interior_margin (float)

  • transform_map (str)

  • min_physical_variational_std_fraction (float)

  • absolute_vi_directory (str)

  • score_function_entropy_strategy (str)

  • variational_distribution (str)

  • max_covariance_log_step (float)

  • create_run_directories (bool)

  • rom_substep_start_iteration (int)

  • num_rom_substeps (int)