Copyright | (c) Amy de Buitléir 2012-2015 |
---|---|
License | BSD-style |
Maintainer | amy@nualeargais.ie |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell98 |
A module containing private SSOM
internals. Most developers should
use SSOM
instead. This module is subject to change without notice.
- exponential :: Floating a => a -> a -> a -> a
- data SSOM t x k p = SSOM {
- sMap :: Map k p
- learningRate :: t -> x
- difference :: p -> p -> x
- makeSimilar :: p -> x -> p -> p
- counter :: t
- toMap :: SSOM t x k p -> Map k p
- trainNode :: (Num t, Ord k) => SSOM t x k p -> k -> p -> SSOM t x k p
- incrementCounter :: Num t => SSOM t x k p -> SSOM t x k p
- justTrain :: (Num t, Ord k, Ord x) => SSOM t x k p -> p -> SSOM t x k p
Documentation
exponential :: Floating a => a -> a -> a -> a Source
A typical learning function for classifiers.
returns the learning rate at time exponential
r0 d tt
.
When t = 0
, the learning rate is r0
.
Over time the learning rate decays exponentially; the decay rate is
d
.
Normally the parameters are chosen such that:
- 0 < r0 < 1
- 0 < d
where << means "is much smaller than" (not the Haskell <<
operator!)
A Simplified Self-Organising Map (SSOM).
x
is the type of the learning rate and the difference metric.
t
is the type of the counter.
k
is the type of the model indices.
p
is the type of the input patterns and models.
SSOM | |
|
toMap :: SSOM t x k p -> Map k p Source
Extracts the current models from the SSOM.
A synonym for
.sMap
trainNode :: (Num t, Ord k) => SSOM t x k p -> k -> p -> SSOM t x k p Source
Trains the specified node to better match a target.
Most users should use
, which automatically determines
the BMU and trains it.train
incrementCounter :: Num t => SSOM t x k p -> SSOM t x k p Source