SimPEG.directives.BetaEstimateMaxDerivative#
- class SimPEG.directives.BetaEstimateMaxDerivative(beta0_ratio=1.0, seed=None, **kwargs)[source]#
Bases:
BaseBetaEstimator
Estimate initial trade-off parameter (beta) using largest derivatives.
The initial trade-off parameter (beta) is estimated by scaling the ratio between the largest derivatives in the gradient of the data misfit and model objective function. The estimated trade-off parameter is used to update the beta property in the associated
SimPEG.inverse_problem.BaseInvProblem
object prior to running the inversion. A separate directive is used for updating the trade-off parameter at successive beta iterations; seeBetaSchedule
.- Parameters:
Notes
Let \(\phi_d\) represent the data misfit, \(\phi_m\) represent the model objective function and \(\mathbf{m_0}\) represent the starting model. The first model update is obtained by minimizing the a global objective function of the form:
\[\phi (\mathbf{m_0}) = \phi_d (\mathbf{m_0}) + \beta_0 \phi_m (\mathbf{m_0})\]where \(\beta_0\) represents the initial trade-off parameter (beta).
We define \(\gamma\) as the desired ratio between the data misfit and model objective functions at the initial beta iteration (defined by the ‘beta0_ratio’ input argument). Here, the initial trade-off parameter is computed according to:
\[\beta_0 = \gamma \frac{| \nabla_m \phi_d (\mathbf{m_0}) |_{max}}{| \nabla_m \phi_m (\mathbf{m_0 + \delta m}) |_{max}}\]where
\[\delta \mathbf{m} = \frac{m_{max}}{\mu_{max}} \boldsymbol{\mu}\]and \(\boldsymbol{\mu}\) is a set of independent samples from the continuous uniform distribution between 0 and 1.
Attributes
The estimated ratio is multiplied by this to obtain beta.
verbose.debug has been deprecated.
Data misfit associated with the directive.
Inverse problem associated with the directive.
Inversion object associated with the directive.
Optimization algorithm associated with the directive.
Regularization associated with the directive.
Random seed to initialize with.
Return simulation for all data misfits.
Return survey for all data misfits
Whether or not to print debugging information.
Methods
endIter
()Update inversion parameter(s) according to directive at end of iteration.
finish
()Update inversion parameter(s) according to directive at end of inversion.
Initialize inversion parameter(s) according to directive.
validate
(directive_list)Validate directive.