tensor-ops-0.1.0.0: Tensor manipulation operations with tensorflow-style automatic differentiation

Safe HaskellNone
LanguageHaskell2010

TensorOps.Learn.NeuralNet.FeedForward

Documentation

data Network :: ([k] -> Type) -> k -> k -> Type where Source #

Constructors

N :: {..} -> Network t i o 

Fields

Instances

Category k (Network k t) Source # 

Methods

id :: cat a a #

(.) :: cat b c -> cat a b -> cat a c #

NFData1 [k] t => NFData (Network k t i o) Source # 

Methods

rnf :: Network k t i o -> () #

buildNet :: SingI ps => TOp ('[i] ': ps) '['[o]] -> Prod t ps -> Network t i o Source #

runNetwork :: (RealFloat (ElemT t), Tensor t) => Network t i o -> t '[i] -> t '[o] Source #

trainNetwork :: forall i o t. (Tensor t, RealFloat (ElemT t)) => TOp '['[o], '[o]] '['[]] -> ElemT t -> t '[i] -> t '[o] -> Network t i o -> Network t i o Source #

induceNetwork :: forall i o t. (Tensor t, RealFloat (ElemT t), SingI i) => TOp '['[o], '[o]] '['[]] -> ElemT t -> t '[o] -> Network t i o -> t '[i] -> t '[i] Source #

nmap :: SingI o => (forall a. RealFloat a => a -> a) -> Network t i o -> Network t i o Source #

(~*) :: TOp '['[a]] '['[b]] -> Network t b c -> Network t a c infixr 4 Source #

(*~) :: Network t a b -> TOp '['[b]] '['[c]] -> Network t a c infixl 5 Source #

liftNet :: TOp '['[i]] '['[o]] -> Network t i o Source #

netParams :: Network t i o -> (forall ps. SingI ps => Prod t ps -> r) -> r Source #

networkGradient :: forall i o t r. (Tensor t, RealFloat (ElemT t)) => TOp '['[o], '[o]] '['[]] -> t '[i] -> t '[o] -> Network t i o -> (forall ps. SingI ps => Prod t ps -> r) -> r Source #

genNet :: forall k o i m t. (SingI o, SingI i, PrimMonad m, Tensor t) => [(Integer, Activation k)] -> Activation k -> Gen (PrimState m) -> m (Network t i o) Source #

ffLayer :: forall i o m t. (SingI i, SingI o, PrimMonad m, Tensor t) => Gen (PrimState m) -> m (Network t i o) Source #