art1s
所属分类:人工智能/神经网络/深度学习
开发工具:matlab
文件大小:7KB
下载次数:21
上传日期:2009-09-19 07:33:30
上 传 者:
chong258
说明: Adaptive Resonance Theory (ART) Neural Network
文件列表:
art1s (0, 1998-10-29)
art1s\art1s.m (3914, 1998-10-29)
art1s\letno.m (5898, 1998-10-29)
art1s\letplot.m (882, 1998-10-29)
art1s\noisy.m (801, 1998-10-29)
Adaptive Resonance Theory (ART) Neural Network
art1.zip contains:
art1s.m M-file for simulation of ART1 NN
letno.m M-file for generating input binary patterns (letters A-Z) for
use with art1s.m
noisy.m M-file which introduces noise in the patterns. Used by letno.m
letplot.m M-file for plotting a binary pattern (one at a time)
readme.txt this file
Author: Valentin Ninov, e-mail: valninov@total.net
Graduate Student, Dept. of Electrical Engineering
Concordia University, Montreal, Canada
(c) April, 1997
These M-files were tested with Matlab v.4.0 and v. 5.0 and run equally
well under both versions.
A brief explanation of ART NN is included below. For more information see the references.
Example of how to use these functions:
Ex1: Use all 26 letters and vigilance parameter rho=0.8
P = letno;
art1s(P, 0.8);
Ex2: Use the letters from A to M with 2 pixels inverted (5.7% noise), rho=0.55.
Supplying a third input argument will enable the printing of the processes
in the net.
P = letno(2);
P = P(:, 1:13);
art1s(P, 0.55,1);
The function art1s.m accepts input binary patterns as column vectors of any
length and of any batch size. For more details type "help atrt1s". If you want
to see how a given pattern looks like, use letplot.m. Example:
P = letno;
letplot(P(:,5));
will plot the fifth pattern (letter E).
Note: One of the first versions of Matlab Neural Network Toolbox contains
a function for simulating ART1 network. This function did not function correctly
and not surprisingly it was excluded from the later versions of the NNET toolbox.
Now this one, art1s.m, uses a small part of the old structure but it is a completely
new version that functions correctly and according to the theory (see the references).
The ART neural network is a vector classifier. An input vector is classified into one of a
number of categories depending on similarity with the previous patterns. If the similarity
criterion is not satisfied, a new category is created. Thus, the ART network solves
the dilemma between plasticity and stability by enabling the learning to occur only in
a resonance state. In this way the network learns new information without destroying the
old one. The ART1 NN works with binary input patterns which are compared to prototype vectors
in order of decreasing similarity until either an adequate match is found or a new category
is created. The prototype patterns (vectors) are stored in the network as connection weight
vectors of the Top-Down Long Term Memory (T-D LTM) traces. The prototype vectors that have
not been used until a certain time are set to 1 . These T-D LTMs give the crucial property
of code self-stabilization [1]. The new input patterns are also in part encoded in the
Bottom-Up LTM traces (the B-U adaptive filter). The B-U LTMs play role in the first stage
of determining the degree of similarity between the input pattern and the prototypes
represented by the active output nodes in the F2 layer. This is a "coarse classification"
of the input in one of the active categories. The active state of an output unit
(the winner), denoted by j,indicates that the input vector x belongs to the cluster
represented by this unit j.
The second stage of finding the similarity is the comparison of the feedback pattern from
F2 with the input pattern. The vigilance parameter rho , 0<=rho<=1, is used to determine
whether the input vector x and the output of F1 (in the program this is vector a1) are
similar enough. vj is the T-D LTMs associated with the winner j in F2 and represent an
already stored cluster. The ratio
sum(a1(:,q))/ sum(p(:,q));
gives the fraction of 1's in x that are also in vj . A vigilance parameter rho = 0.7 means
that an input vector x with 10 ones will resonate with a winner vector vj that has at least
7 ones of the same position as the input x. If the vigilance test is not satisfied for
all cathegories and the input pattern cannot be clasified to neither of the existing
categories,a new category is created.
In Ex1 of ART1S the input patterns from "A" to "Z" are supplied to the program in a batch
matrix P (35x26). The vigilance parameter rho is also supplied to the program as an input
argument. The size of layers F1 and F2 is determined according to the size of the input
vectors (1x35) and the maximum number of categories (the batch size Q which in this
case is 26 patterns).
References:
[1] Carpenter, G. A. and S. Grossberg, "ART2: self-organization
of stable category recognition codes for analog input patterns."
Applied Optics, vol. 26, no. 23, Dec. 1***7, pp. 4919-4930.
[2] J. Freeman and D. Skapura, Neural Networks: Algorithms,
Applications, and Programming Techniques. Addison Wesley
近期下载者:
相关文件:
收藏者: