Idris2Doc : NN.Architectures.LossFunctions

NN.Architectures.LossFunctions

(source)

Definitions

Loss : AddCont -> AddCont -> Type
  A loss is a parametric map whose parameter is the label
It is not a `Model` because there is no concept of initialisation

Totality: total
Visibility: public export
Label : Loss y l -> Type
  The "parameter" object of the loss function is the type of supervised
learning labels

Totality: total
Visibility: public export
pairLossFunctions : {auto {conArg:898} : Num l} -> Loss y (Const l) -> Loss z (Const l) -> Loss (y >*< z) (Const l)
  Run two losses in parallel, add their results

Totality: total
Visibility: public export
chosenBranchLoss : ((i : c .Pos (shapeExt branches)) -> Loss (index branches i) l) -> Loss (Section (index branches)) l
  The loss of a section against a labelled branch
We always choose the branch the label chooses

Totality: total
Visibility: public export
matchedBranchLoss : IsDecidable c => ((i : c .Pos (shapeExt branches)) -> Loss (index branches i) l) -> Loss (Coproduct branches) (Maybe l)
  Same as above, except we take an already chosen branch, and fail if 
label disagrees with it

Totality: total
Visibility: public export
madeChoice : {auto {conArg:1110} : IsNaperian ax} -> DecEq (Log ax) => AddContDPair f =%+> (Simplex ax >*< AddContDPair f)
  Given a made choice, pair with with a dirac delta distribution

Totality: total
Visibility: public export
SquaredError : {auto {conArg:1170} : Num a} -> Neg a => Loss (Const a) (Const a)
Totality: total
Visibility: public export
MeanSquaredError : IsCubical n => {auto {conArg:1214} : TensorMonoid (n .cont)} -> {auto {conArg:1220} : Num a} -> Neg a => Fractional a => Cast Nat a => Loss (Const (Tensor [n] a)) (Const (Tensor [] a))
Totality: total
Visibility: public export
softargmaxCrossEntropyLogits : IsNaperian a => IsFoldable (a .cont) => (Simplex a >*< Simplex a) =%+> Const (Tensor [] Double)
  The payoff object is the rank-0 tensor, not `Double`
Defined for Naperian axes, where the prediction and the label have one shape
TODO the prediction and the label can be distributions of different shapes!

Totality: total
Visibility: public export
SoftargmaxCrossEntropyLogits : IsNaperian a => IsFoldable (a .cont) => Loss (Simplex a) (Const (Tensor [] Double))
Totality: total
Visibility: public export