hann1 | R Documentation |
This optimizes a one-layer Hopfield-based artificial neural
network. The structure of the network is quite simple: a Hopfield
network with N input neurons all connected to C output neurons. The
number of parameters (N and C) is determined by the input data:
xi
has N columns (which is also the length of sigma
) and
the number of unique values of classes
is equal to C.
See the vignette of this package for an example and some background.
hann1(xi, sigma, classes, net = NULL, control = control.hann())
## S3 method for class 'hann1'
print(x, details = FALSE, ...)
xi |
a matrix of patterns with K rows. |
sigma |
a vector coding the Hopfield network. |
classes |
the classes of the patterns (vector of length K). |
net , x |
an object of class |
control |
the control parameters. |
details |
a logical value (whether to print the parameter values of the network). |
... |
further arguments passed to |
By default, the parameters of the neural network are initialized with random values from a uniform distribution between -1 and 1 (except the biases which are initialized to zero).
If an object of "hann1"
is given to the argument net
,
then its parameter values are used to initialize the parameters of the
network.
The main control parameters are given as a list to the control
argument. They are detailed in the page of the function
control.hann()
.
an object of class "hann1"
with the following elements:
parameters |
a list with one matrix, |
sigma |
the Hopfield network. |
beta |
the hyperparameter of the activation function. |
call |
the function call. |
Emmanuel Paradis
Hopfield, J. J. (1982) Neural networks and physical systems with emergent collective computational abilities. Proceedings of the National Academy of Sciences, USA, 79, 2554–2558. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1073/pnas.79.8.2554")}.
Krotov, D. and Hopfield, J. J. (2016) Dense associative memory for pattern recognition. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.48550/ARXIV.1606.01164")}.
buildSigma
, predict.hann1
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.