
It looks like you want this instead:
nActivationSum :: [(Float, Float)] -> [Float]
nActivationSum (xy : xys) = nActivation xy : nActivationSum xys
nActivationSum [] = []
This pattern is more commonly expressed with map like this:
nActivationSum :: [(Float, Float)] -> [Float]
nActivationSum inputsAndWeights = map nActivation inputsAndWeights
Or you could write it a bit shorter in point-free style:
nActivationSum :: [(Float, Float)] -> [Float]
nActivationSum = map nActivation
On Sun, Apr 14, 2013 at 4:04 PM, Miro Karpis
Please can you help me with this? What I want is to have on input a list of tuple (size 2) and on output list of floats. So now I'm returning only float instead of a list. But unfortunately I can't figure out how to implement the list......
sigmoid :: Float -> Float sigmoid x = 1.0 / (1 + exp (-x))
nActivation :: (Float,Float) -> Float nActivation (x,y) = sigmoid(x*y)
nActivationSum :: [(Float, Float)] -> [Float] nActivationSum [] = [] nActivationSum (inputs:weights) = *nActivation* (inputs, weights)
Couldn't match expected type `[Float]' with actual type `Float' In the return type of a call of `nActivation' In the expression: nActivation (inputs, weights) In an equation for `nActivationSum': nActivationSum (inputs : weights) = nActivation (inputs, weights)
thanks, m.
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners