RSNNS (version 0.4-9)

assoz: Create and train an (auto-)associative memory

Description

The autoassociative memory performs clustering by finding a prototype to the given input. The implementation assumes two-dimensional input and output (cf. art1).

Usage

assoz(x, ...)
"assoz"(x, dimX, dimY, maxit = 100, initFunc = "RM_Random_Weights", initFuncParams = c(1, -1), learnFunc = "RM_delta", learnFuncParams = c(0.01, 100, 0, 0, 0), updateFunc = "Auto_Synchronous", updateFuncParams = c(50), shufflePatterns = TRUE, ...)

Arguments

x
a matrix with training inputs for the network
...
additional function parameters (currently not used)
dimX
x dimension of inputs and outputs
dimY
y dimension of inputs and outputs
maxit
maximum of iterations to learn
initFunc
the initialization function to use
initFuncParams
the parameters for the initialization function
learnFunc
the learning function to use
learnFuncParams
the parameters for the learning function
updateFunc
the update function to use
updateFuncParams
the parameters for the update function
shufflePatterns
should the patterns be shuffled?

Value

an rsnns object. The fitted.values member contains the activation patterns for all inputs.

Details

The default initialization and update functions are the only ones suitable for this kind of network. The update function takes one parameter, which is the number of iterations that will be performed. The default of 50 usually does not have to be modified. For learning, RM_delta and Hebbian functions can be used, though the first one usually performs better.

A more detailed description of the theory and the parameters is available from the SNNS documentation and the other referenced literature.

References

Palm, G. (1980), 'On associative memory', Biological Cybernetics 36, 19-31.

Rojas, R. (1996), Neural networks :a systematic introduction, Springer-Verlag, Berlin.

Zell, A. et al. (1998), 'SNNS Stuttgart Neural Network Simulator User Manual, Version 4.2', IPVR, University of Stuttgart and WSI, University of Tübingen. http://www.ra.cs.uni-tuebingen.de/SNNS/

See Also

art1, art2

Examples

Run this code
## Not run: demo(assoz_letters)
## Not run: demo(assoz_lettersSnnsR)


data(snnsData)
patterns <- snnsData$art1_letters.pat

model <- assoz(patterns, dimX=7, dimY=5)

actMaps <- matrixToActMapList(model$fitted.values, nrow=7)

par(mfrow=c(3,3))
for (i in 1:9) plotActMap(actMaps[[i]])

Run the code above in your browser using DataLab