grenade-0.1.0: Practical Deep Learning in Haskell

Safe HaskellNone
LanguageHaskell98

Grenade.Recurrent.Layers.BasicRecurrent

Documentation

data BasicRecurrent :: Nat -> Nat -> * where Source #

Constructors

BasicRecurrent :: (KnownNat input, KnownNat output, KnownNat matrixCols, matrixCols ~ (input + output)) => !(R output) -> !(R output) -> !(L output matrixCols) -> !(L output matrixCols) -> BasicRecurrent input output 

Instances

Show (BasicRecurrent i o) Source # 
(KnownNat i, KnownNat o, KnownNat ((+) i o)) => UpdateLayer (BasicRecurrent i o) Source # 
(KnownNat i, KnownNat o, KnownNat ((+) i o), (<=) i ((+) i o), (~) Nat o ((-) ((+) i o) i)) => RecurrentUpdateLayer (BasicRecurrent i o) Source # 

Associated Types

type RecurrentShape (BasicRecurrent i o) :: Shape Source #

(KnownNat i, KnownNat o, KnownNat ((+) i o), (<=) i ((+) i o), (~) Nat o ((-) ((+) i o) i)) => RecurrentLayer (BasicRecurrent i o) (D1 i) (D1 o) Source # 

Associated Types

type RecTape (BasicRecurrent i o) (D1 i :: Shape) (D1 o :: Shape) :: * Source #

type Gradient (BasicRecurrent i o) Source # 
type RecurrentShape (BasicRecurrent i o) Source # 
type RecTape (BasicRecurrent i o) (D1 i) (D1 o) Source # 
type RecTape (BasicRecurrent i o) (D1 i) (D1 o) = (S (D1 o), S (D1 i))