KalmanProcessUtils
CalibrateEDMF.KalmanProcessUtils.PiecewiseConstantDecay
— TypePiecewiseConstantDecay{FT <: Real, IT <: Int} <: LearningRateScheduler
Piecewise constant decay learning rate scheduler.
Halves the time step periodically with period τ
.
Fields
Δt_init::Real
: Initial learning rateτ::Int64
: Halving time
Constructors
PiecewiseConstantDecay(Δt_init, τ)
defined at /home/runner/work/CalibrateEDMF.jl/CalibrateEDMF.jl/src/KalmanProcessUtils.jl:54
.
CalibrateEDMF.KalmanProcessUtils.PiecewiseConstantGrowth
— TypePiecewiseConstantGrowth{FT <: Real, IT <: Int} <: LearningRateScheduler
Piecewise constant growth learning rate scheduler.
Doubles the time step periodically with period τ
.
Fields
Δt_init::Real
: Initial learning rateτ::Int64
: Doubling time
Constructors
PiecewiseConstantGrowth(Δt_init, τ)
defined at /home/runner/work/CalibrateEDMF.jl/CalibrateEDMF.jl/src/KalmanProcessUtils.jl:76
.
CalibrateEDMF.KalmanProcessUtils.get_Δt
— FunctionRetrieve learning rate Δt
from a LearningRateScheduler
CalibrateEDMF.KalmanProcessUtils.generate_ekp
— Functiongenerate_ekp(
ref_stats::ReferenceStatistics,
process::Process,
u::Union{Matrix{T}, T} = nothing;
failure_handler::String = "ignore_failures",
localizer::LocalizationMethod = NoLocalization(),
outdir_path::String = pwd(),
to_file::Bool = true,
verbose::Bool = true,
) where {T}
Generates, and possible writes to file, an EnsembleKalmanProcess from a parameter ensemble and reference statistics.
Inputs:
- ref_stats :: ReferenceStatistics defining the inverse problem.
- process :: Type of EnsembleKalmanProcess used to evolve the ensemble.
- u :: An ensemble of parameter vectors, used if !isa(process, Unscented).
- failure_handler :: String describing what failure handler to use.
- localizer :: Covariance localization method.
- outdir_path :: Output path.
- to_file :: Whether to write the serialized prior to a JLD2 file.
- verbose :: Whether to use verbose EKP object
Output:
- The generated EnsembleKalmanProcess.
CalibrateEDMF.KalmanProcessUtils.generate_tekp
— Functiongenerate_tekp(
ref_stats::ReferenceStatistics,
priors::ParameterDistribution,
process::Process,
u::Union{Matrix{T}, T} = nothing;
l2_reg::Union{Dict{String, Vector{R}}, R} = nothing,
failure_handler::String = "ignore_failures",
localizer::LocalizationMethod = NoLocalization(),
outdir_path::String = pwd(),
to_file::Bool = true,
verbose::Bool = true,
) where {T, R}
Generates, and possible writes to file, a Tikhonov EnsembleKalmanProcess from a parameter ensemble and reference statistics.
Tikhonov regularization is implemented through output state augmentation with the input parameter vector. The input L2 regularization hyperparameter should be interpreted as the inverse of the variance of our prior belief in the magnitude of the parameters.
Inputs:
- ref_stats :: ReferenceStatistics defining the inverse problem.
- priors :: Parameter priors used for L2 (i.e., Tikhonov) regularization
- process :: Type of EnsembleKalmanProcess used to evolve the ensemble.
- u :: An ensemble of parameter vectors, used if !isa(process, Unscented).
- l2_reg :: L2 regularization hyperparameter driving parameter values toward prior. May be a float (isotropic regularization) or a dictionary of regularizations per parameter.
- failure_handler :: String describing what failure handler to use.
- localizer :: Covariance localization method.
- outdir_path :: Output path.
- to_file :: Whether to write the serialized prior to a JLD2 file.
- verbose :: Whether to use verbose EKP object
Output:
- The generated augmented EnsembleKalmanProcess.
CalibrateEDMF.KalmanProcessUtils.get_sparse_indices
— FunctionReturns the sparse parameter indices given the sparsity configuration and the number of parameters.
CalibrateEDMF.KalmanProcessUtils.get_regularized_indices
— FunctionReturns the indices of parameters to be regularized, given the l2 regularization configuration dictionary.