@@ -1700,9 +1700,15 @@ def __init__(
17001700 Optimizer options. See :meth:`fides.minimize.Optimizer.minimize`
17011701 and :class:`fides.constants.Options` for details.
17021702 hessian_update:
1703- Hessian update strategy. If this is ``None``, a hybrid approximation
1704- that switches from the ``problem.objective`` provided Hessian (
1705- approximation) to a BFGS approximation will be used.
1703+ Hessian update strategy. Defaults to a BFGS approximation if
1704+ ``problem.objective`` does not provide a Hessian. Otherwise, it is
1705+ assumed that the ``problem.objective`` Hessian is actually the
1706+ Fisher information matrix (FIM), and hence a Hessian approximation
1707+ strategy is the default, which uses the FIM initially but switches
1708+ to BFGS during later iterations.
1709+ If your ``problem.objective`` Hessian is actually the Hessian,
1710+ then use ``None`` to have Fides use the ``problem.objective``
1711+ Hessian for all iterations.
17061712 """
17071713 super ().__init__ ()
17081714
@@ -1762,15 +1768,23 @@ def minimize(
17621768
17631769 if self .hessian_update == "default" :
17641770 if not problem .objective .has_hess :
1765- warnings . warn (
1771+ logger . debug (
17661772 "Fides is using BFGS as hessian approximation, "
17671773 "as the problem does not provide a Hessian. "
1768- "Specify a Hessian to use a more efficient "
1769- "hybrid approximation scheme." ,
1774+ "Specify a Hessian (or Fisher information matrix, to use "
1775+ "a more efficient hybrid approximation scheme. See the "
1776+ "docstring for `hessian_update` in the class constructor "
1777+ "for more details." ,
17701778 stacklevel = 1 ,
17711779 )
17721780 _hessian_update = fides .BFGS ()
17731781 else :
1782+ logger .debug (
1783+ "A hybrid Hessian approximation strategy will be "
1784+ "employed. See the docstring for `hessian_update` in "
1785+ "the class constructor for more details." ,
1786+ stacklevel = 1 ,
1787+ )
17741788 _hessian_update = fides .HybridFixed ()
17751789 else :
17761790 _hessian_update = self .hessian_update
0 commit comments