Idris2Doc : NN.Optimisers.Definition

NN.Optimisers.Definition

(source)

Definitions

recordDOptimiser : (inputTy->AddCont) ->Type->Type
  Dependent stateful optimiser, modelled as a dependent lens
Dependent version of section 8.1.3 of https://arxiv.org/abs/2403.13001
Because we use dependent Para, optimiser can depend on the input

Totality: total
Visibility: public export
Constructor: 
MkDOptimiser : ((x : inputTy) -> (Const ((paramContx) .Shp) ><ConststateTy) =%>UC (paramContx)) ->DOptimiserparamContstateTy

Projection: 
.opt : DOptimiserparamContstateTy-> (x : inputTy) -> (Const ((paramContx) .Shp) ><ConststateTy) =%>UC (paramContx)
  Notably this produces an ordinary dependent lens, not an additive one
.opt : DOptimiserparamContstateTy-> (x : inputTy) -> (Const ((paramContx) .Shp) ><ConststateTy) =%>UC (paramContx)
  Notably this produces an ordinary dependent lens, not an additive one

Visibility: public export
opt : DOptimiserparamContstateTy-> (x : inputTy) -> (Const ((paramContx) .Shp) ><ConststateTy) =%>UC (paramContx)
  Notably this produces an ordinary dependent lens, not an additive one

Visibility: public export
recordOptimiser : AddCont->Type->Type
Totality: total
Visibility: public export
Constructor: 
MkOptimiser : (Const (paramCont.Shp) ><ConststateTy) =%>UCparamCont->IO (paramCont.Shp) ->IOstateTy->OptimiserparamContstateTy

Projections:
.initParam : OptimiserparamContstateTy->IO (paramCont.Shp)
  Procedure for initialising parameters
.initState : OptimiserparamContstateTy->IOstateTy
  Procedure for initialising state
.opt : OptimiserparamContstateTy-> (Const (paramCont.Shp) ><ConststateTy) =%>UCparamCont
  Notably, this is an ordinary dependent lens, not an additive one
.opt : OptimiserparamContstateTy-> (Const (paramCont.Shp) ><ConststateTy) =%>UCparamCont
  Notably, this is an ordinary dependent lens, not an additive one

Visibility: public export
opt : OptimiserparamContstateTy-> (Const (paramCont.Shp) ><ConststateTy) =%>UCparamCont
  Notably, this is an ordinary dependent lens, not an additive one

Visibility: public export
.initParam : OptimiserparamContstateTy->IO (paramCont.Shp)
  Procedure for initialising parameters

Visibility: public export
initParam : OptimiserparamContstateTy->IO (paramCont.Shp)
  Procedure for initialising parameters

Visibility: public export
.initState : OptimiserparamContstateTy->IOstateTy
  Procedure for initialising state

Visibility: public export
initState : OptimiserparamContstateTy->IOstateTy
  Procedure for initialising state

Visibility: public export
.fwd : Optimiserps-> (p.Shp, s) ->p.Shp
Visibility: public export
.bwd : (opt : OptimiserpContstateTy) -> (ps : (pCont.Shp, stateTy)) ->pCont.Pos (opt.fwdps) -> (pCont.Shp, stateTy)
Visibility: public export
composeParallel : OptimiserpConts->OptimiserqContt->Optimiser (pCont><qCont) (s, t)
  From 8.1.3. "Can we compose optimisers?" of https://arxiv.org/abs/2403.13001
Not used yet

Visibility: public export