Maintainer | Kiet Lam <ktklam9@gmail.com> |
---|
AI.Network
Description
Efficient representation of an Artificial Neural Network using vector to represent the weights between each layer
This module provides the neural network data representation that will be used extensively
- data Network = Network {
- activation :: Double -> Double
- derivative :: Double -> Double
- lambda :: Double
- weights :: Vector Double
- architecture :: [Int]
- toActivation :: Network -> Double -> Double
- toDerivative :: Network -> Double -> Double
- toLambda :: Network -> Double
- toWeights :: Network -> Vector Double
- toWeightMatrices :: Network -> [Matrix Double]
- toArchitecture :: Network -> [Int]
- setActivation :: Network -> (Double -> Double) -> Network
- setDerivative :: Network -> (Double -> Double) -> Network
- setLambda :: Network -> Double -> Network
- setWeights :: Network -> Vector Double -> Network
- setArchitecture :: Network -> [Int] -> Network
Documentation
The representation of an Artificial Neural Network
Constructors
Network | |
Fields
|
toActivation :: Network -> Double -> DoubleSource
toDerivative :: Network -> Double -> DoubleSource
toWeightMatrices :: Network -> [Matrix Double]Source
Get the list of matrices of weights between each layer. This can be more useful than the barebone vector representation of the weights
toArchitecture :: Network -> [Int]Source
setArchitecture :: Network -> [Int] -> NetworkSource