liblaf.peach.optim.base
¤
Classes:
-
Callback– -
Objective– -
Optimizer– -
Result– -
Solution– -
State– -
Stats– -
SupportsFun– -
SupportsGrad– -
SupportsHessDiag– -
SupportsHessProd– -
SupportsHessQuad– -
SupportsValueAndGrad–
Callback
¤
Bases: Protocol
flowchart TD
liblaf.peach.optim.base.Callback[Callback]
click liblaf.peach.optim.base.Callback href "" "liblaf.peach.optim.base.Callback"
Methods:
-
__call__–
__call__
¤
__call__(
objective: Objective[X],
model_state: X,
opt_state: S,
opt_stats: T,
) -> None
Source code in src/liblaf/peach/optim/base/_types.py
62 63 64 | |
Objective
¤
Bases: Protocol
flowchart TD
liblaf.peach.optim.base.Objective[Objective]
click liblaf.peach.optim.base.Objective href "" "liblaf.peach.optim.base.Objective"
Methods:
-
update–
update
¤
update(state: X, params: Vector) -> X
Source code in src/liblaf/peach/optim/base/_objective.py
11 | |
Optimizer
¤
Parameters:
Methods:
-
init– -
minimize– -
postprocess– -
step– -
terminate– -
update_stats–
Attributes:
-
jit(bool) –
init
¤
init[X](
objective: P, model_state: X, params: Vector
) -> tuple[S, T]
Source code in src/liblaf/peach/optim/base/_optimizer.py
20 21 22 23 24 25 26 | |
minimize
¤
minimize[X](
objective: P,
model_state: X,
params: Vector,
callback: Callback[X, S, T] | None = None,
) -> tuple[Solution[S, T], X]
Source code in src/liblaf/peach/optim/base/_optimizer.py
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 | |
postprocess
¤
postprocess[X](
objective: P,
model_state: X,
opt_state: S,
opt_stats: T,
) -> Solution[S, T]
Source code in src/liblaf/peach/optim/base/_optimizer.py
54 55 56 57 58 59 60 61 62 63 64 | |
step
¤
step[X](
objective: P, model_state: X, opt_state: S
) -> tuple[X, S]
Source code in src/liblaf/peach/optim/base/_optimizer.py
28 29 30 31 32 33 34 | |
terminate
¤
terminate[X](
objective: P,
model_state: X,
opt_state: S,
opt_stats: T,
) -> BooleanNumeric
Source code in src/liblaf/peach/optim/base/_optimizer.py
45 46 47 48 49 50 51 52 | |
update_stats
¤
update_stats[X](
objective: P,
model_state: X,
opt_state: S,
opt_stats: T,
) -> T
Source code in src/liblaf/peach/optim/base/_optimizer.py
36 37 38 39 40 41 42 43 | |
Result
¤
Bases: StrEnum
flowchart TD
liblaf.peach.optim.base.Result[Result]
click liblaf.peach.optim.base.Result href "" "liblaf.peach.optim.base.Result"
Methods:
-
__bool__–
Attributes:
-
MAX_STEPS_REACHED– -
NAN– -
PRIMARY_SUCCESS– -
SECONDARY_SUCCESS– -
STAGNATION– -
SUCCESS– -
UNKNOWN_ERROR–
Solution
¤
Parameters:
Attributes:
-
params(Vector) – -
result(Result) – -
state(S) – -
stats(T) – -
success(bool) –
State
¤
Stats
¤
Methods:
-
__pdoc__– -
__rich_repr__–
Attributes:
-
time(float) –
__pdoc__
¤
__pdoc__(**kwargs) -> AbstractDoc | None
Source code in src/liblaf/peach/optim/base/_types.py
47 48 | |
__rich_repr__
¤
__rich_repr__() -> RichReprResult
Source code in src/liblaf/peach/optim/base/_types.py
50 51 52 | |
SupportsFun
¤
Bases: Protocol
flowchart TD
liblaf.peach.optim.base.SupportsFun[SupportsFun]
click liblaf.peach.optim.base.SupportsFun href "" "liblaf.peach.optim.base.SupportsFun"
Methods:
-
fun–
fun
¤
fun(state: X) -> Scalar
Source code in src/liblaf/peach/optim/base/_objective.py
16 | |
SupportsGrad
¤
Bases: Protocol
flowchart TD
liblaf.peach.optim.base.SupportsGrad[SupportsGrad]
click liblaf.peach.optim.base.SupportsGrad href "" "liblaf.peach.optim.base.SupportsGrad"
Methods:
-
grad–
grad
¤
grad(state: X) -> Vector
Source code in src/liblaf/peach/optim/base/_objective.py
21 | |
SupportsHessDiag
¤
Bases: Protocol
flowchart TD
liblaf.peach.optim.base.SupportsHessDiag[SupportsHessDiag]
click liblaf.peach.optim.base.SupportsHessDiag href "" "liblaf.peach.optim.base.SupportsHessDiag"
Methods:
-
hess_diag–
hess_diag
¤
hess_diag(state: X) -> Vector
Source code in src/liblaf/peach/optim/base/_objective.py
36 | |
SupportsHessProd
¤
Bases: Protocol
flowchart TD
liblaf.peach.optim.base.SupportsHessProd[SupportsHessProd]
click liblaf.peach.optim.base.SupportsHessProd href "" "liblaf.peach.optim.base.SupportsHessProd"
Methods:
-
hess_prod–
hess_prod
¤
hess_prod(state: X, p: Vector) -> Vector
Source code in src/liblaf/peach/optim/base/_objective.py
31 | |
SupportsHessQuad
¤
Bases: Protocol
flowchart TD
liblaf.peach.optim.base.SupportsHessQuad[SupportsHessQuad]
click liblaf.peach.optim.base.SupportsHessQuad href "" "liblaf.peach.optim.base.SupportsHessQuad"
Methods:
-
hess_quad–
hess_quad
¤
hess_quad(state: X, p: Vector) -> Scalar
Source code in src/liblaf/peach/optim/base/_objective.py
41 | |