Sie sind auf Seite 1von 8

Jahangirnagar University, Savar, Dhaka

Course No.: CSE-451


Course Title: Machine Learning and Artificial Neural Networks

Assignment on FAM

Submitted by:
Ananya Zabin (357)
Badrunnesa Barsha (366)
Joyeeta Sen Rimpee (353)
Tasmia Tasrin (362)
Tasmina Sharmin (364)

4th year 2nd semester


Session: 2006-07

Date of Submission: 12 March, 2011

Department of Computer Science and Engineering


Fuzzy Associative Memory (FAM):
Associative memories (AMs) allow for the storage of pattern associations and the
retrieval of the desired output pattern upon presentation of a possible noisy or incomplete
version of an input pattern.

Fuzzy Associative Memory (FAM) belongs to the class of fuzzy neural networks (FNNs).
A FNN is an artificial neural network (ANN) whose input patterns, output patterns and/or
connection weights are fuzzy valued.

A "fuzzy" associative memory system, and a related method for its use, the system
having a large data vector memory for the storage of a large number of vectors having
multiple data fields, to be compared with a number of comparison windows defined by
upper and lower limits for each data field of the vectors.

Output results in the form of match indications are accumulated in an output buffer for
output to a host computer, which also initiates the searches.

The large data vector memory facilitates window searching and searching for the closest
neighbors to a given vector. It also provides a technique for searching large numbers of
windows, and for classifying unknown patterns even when pattern classes are irregular in
shape.

Like many other associative memory models, Kosko’s FAM consists of a single layer
feed forward FNN that stores the fuzzy rule “If x is Xk, then y is Yk” using a fuzzy
Hebbian learning rule in terms of max-min or max-product compositions for the synthesis
of its weight matrix W where,

W= XTY
Here, X is the input pattern and Y is the output pattern.

Features:
Properties of Fuzzy Associative Memory:
• It is a Fuzzy Truth Table
• Shows all possible outputs for all possible inputs.
• Easy to create.
• FAM is Bi-directional.
• Not just “True” and “False.” Takes on a range of values such as:
– True
– Mostly True
– Half True

– Kind of True
– False
• Values range from 0 to 1.
– Including decimal values (0.2, 0.7, etc.).
• FAM is heteroassociative.
• The weight matrix of FAM is a fuzzy matrix

• The activations of the neurons in such a network have to be determined by rules of


fuzzy logic and fuzzy set operations.

FAM is hetero-associative:
An associative memory is a content-addressable structure that maps a set of input patterns to a
set of output patterns. FAM is hetero-associative; auto-association is a fact in FAM. So FAM is
more general and powerful than the hop-field auto-associative memory

Neural vs. fuzzy representation of structured knowledge:

Fuzzy Associative Memory systems directly encode the linguistic sample


(HEAVY,LONGER) in a matrix.
It also combine the numerical approaches with the symbolic one.
Fuzzy approach does not abandon neural-network, it limits them to unstructured
parameter and state estimate, pattern recognition and cluster formation.

Fuzzy vector-matrix multiplication:

Max-min composition “ o ” : A M B
nxp
Where, A = (a1,…,an), B = (b1,….,bp) & M is a fuzzy n-by-p matrix (a point in I )

Bj max{min( Ai , M i , j )}
1 i n
Comparison Between FAM Hop-field Netwrok and BAM:

Topics FAM Hop-Field Network BAM


Association Hetero-associative Auto-associative Hetero-
type associative

Generalization More General & Special case of FAM Generalize form.


pattern powerful than hop-field.

Height Essential. Not necessary Not necessary


maintenance

Stability There is no unstable It has unstable stages No unstable


stages in FAM. stages.

Pattern FAM are well suited for Not well suited. Well suited
Recognition pattern Recognition.

Storage FAM is unconditionally Maximum number of BAM is


capacity stable storage capacity Mmax = unconditionally
0.15n stable

Matrix In FAM max-min Satlings function is used Satlings function


calculation combination is used .

Network architecture of FAM:


The network architecture of Fuzzy associative memory mainly consists of two layers. They are:

Input layer
Output layer
But it can also contain some hidden layers. Neurons of each layer are connected with neurons of
adjacent layers in fully connected manner.
Figure: Network Architecture of Fuzzy Associative Memory

Applications of FAM:
1. Voice cell control in ATM network.
2. Developing flying vehicle control system.
3. Electric power system control
4. It can be applicable in earth quake prediction.

Example: Suppose we want to write fuzzy logic rules for a video game monster. We decide to
start with two variables: hit points (HP) and firepower (FP). We might start with this:

HP/FP Very low HP Low HP Medium HP High HP Very high HP


Very weak FP Retreat! Retreat! Defend Defend Attack
Weak FP Retreat! Defend Defend Attack Attack
Medium FP Retreat! Defend Attack Attack Full attack!
High FP Retreat! Defend Attack Attack Full attack!
Very high FP Defend Attack Attack Full attack! Full attack!
This translates to:

1. IF MonsterHP IS VeryLowHP AND MonsterFP IS VeryWeakFP THEN Retreat


2. IF MonsterHP IS VeryLowHP AND MonsterFP IS WeakFP THEN Retreat
3. IF MonsterHP IS VeryLowHP AND MonsterFP IS MediumFP THEN Retreat
4. IF MonsterHP IS VeryLowHP AND MonsterFP IS HighFP THEN Retreat
5. IF MonsterHP IS VeryLowHP AND MonsterFP IS VeryHighFP THEN Defend

6. IF MonsterHP IS LowHP AND MonsterFP IS VeryWeakFP THEN Retreat


7. IF MonsterHP IS LowHP AND MonsterFP IS WeakFP THEN Defend
8. IF MonsterHP IS LowHP AND MonsterFP IS MediumFP THEN Defend
9. IF MonsterHP IS LowHP AND MonsterFP IS HighFP THEN Defend
10. IF MonsterHP IS LowHP AND MonsterFP IS VeryHighFP THEN Attack

11. IF MonsterHP IS MediumHP AND MonsterFP IS VeryWeakFP THEN Defend


12. IF MonsterHP IS MediumHP AND MonsterFP IS WeakFP THEN Defend
13. IF MonsterHP IS MediumHP AND MonsterFP IS MediumFP THEN Attack
14. IF MonsterHP IS MediumHP AND MonsterFP IS HighFP THEN Attack
15. IF MonsterHP IS MediumHP AND MonsterFP IS VeryHighFP THEN Attack

16. IF MonsterHP IS HighHP AND MonsterFP IS VeryWeakFP THEN Defend


17. IF MonsterHP IS HighHP AND MonsterFP IS WeakFP THEN Attack
18. IF MonsterHP IS HighHP AND MonsterFP IS MediumFP THEN Attack
19. IF MonsterHP IS HighHP AND MonsterFP IS HighFP THEN Attack
20. IF MonsterHP IS HighHP AND MonsterFP IS VeryHighFP THEN Full Attack

21. IF MonsterHP IS VeryHighHP AND MonsterFP IS VeryWeakFP THEN Attack


22. IF MonsterHP IS VeryHighHP AND MonsterFP IS WeakFP THEN Attack
23. IF MonsterHP IS VeryHighHP AND MonsterFP IS MediumFP THEN Full Attack
24. IF MonsterHP IS VeryHighHP AND MonsterFP IS HighFP THEN Full Attack
25. IF MonsterHP IS VeryHighHP AND MonsterFP IS VeryHighFP THEN Full
Attack

Here, we can associate the translated sentences with two fuzzy sets:
R1: {VeryLowHP, LowHP, MediumHP, HighHP, VeryHighHP}
R2: {VeryWeakFP, WeakFP, MediumFP, HighFP, VeryHighFP}

Here, we choose the two discrete sets


A = {0.2, 0.4, 0.6, 0.75, 0.8}
B = {0.15, 0.35, 0.55, 0.8, 0.95}
Where, these two sets are basically the numerical representations of the two fuzzy sets R 1 and R2.

Now, we can use FAM to determine the above table as well.


FAM follows the following criterion to calculate the result of two fuzzy sets;

XT = A1 Y = [ B1 B2 B3 B4 B5 ]
A2
A3
A4
A5
Max{Min(A1,B1)} Max{Min(A1,B2)} Max{Min(A1,B3)} Max{Min(A1,B4)} Max{Min(A1,B5)}
Max{Min(A2,B1)} Max{Min(A2,B2)} Max{Min(A2,B3)} Max{Min(A2,B4)} Max{Min(A2,B5)}
W= Max{Min(A3,B1)} Max{Min(A3,B2)} Max{Min(A3,B3)} Max{Min(A3,B4)} Max{Min(A3,B5)}
Max{Min(A4,B1)} Max{Min(A4,B2)} Max{Min(A4,B3)} Max{Min(A4,B4)} Max{Min(A4,B5)}
Max{Min(A5,B1)} Max{Min(A5,B2)} Max{Min(A5,B3)} Max{Min(A5,B4)} Max{Min(A5,B5)}

So here,
W = XT Y

= 0.2 · [ 0.15 0.35 0.55 0.8 0.95 ]


0.4
0.6
0.75
0.8

= Max{Min(.2,.15)} Max{Min(.2,.35)} Max{Min(.2,.55)} Max{Min(.2,.8)} Max{Min(.2,.95)}


Max{Min(.4,.15)} Max{Min(.4,.35)} Max{Min(.4,.55)} Max{Min(.4,.8)} Max{Min(.4,.95)}
Max{Min(.6,.15)} Max{Min(.6,.35)} Max{Min(.6,.55)} Max{Min(.6,.8)} Max{Min(.6,.95)}
Max{Min(.75,.15)} Max{Min(.75,.35)} Max{Min(.75,.55)} Max{Min(.75,.8)} Max{Min(.75,.95)}
Max{Min(.8,.15)} Max{Min(.8,.35)} Max{Min(.8,.55)} Max{Min(.8,.8)} Max{Min(.8,.95)}

= 0.15 0.20 0.20 0.20 0.20


0.15 0.35 0.40 0.40 0.40
0.15 0.35 0.55 0.60 0.60
0.15 0.35 0.55 0.75 0.75
0.15 0.35 0.55 0.80 0.80

Now, as we have both the input and output sets, we can define both sets from one another.
Determining the output set from input set,

Yo = XW
= [0.2 0.4 0.6 0.75 0.8] · 0.15 0.20 0.20 0.20 0.20
0.15 0.35 0.40 0.40 0.40
0.15 0.35 0.55 0.60 0.60
0.15 0.35 0.55 0.75 0.75
0.15 0.35 0.55 0.80 0.80
= [Max(.15,.15,.15,.15,.15) Max(.2,.35,.35,.35,.35) Max(.2,.4,.55,.55,.55) Max(.2,.4,.6,.75,.8) Max(.2,.4,.6,.75,.8)]
= [ 0.15 0.35 0.55 0.8 0.8 ]

We can see that there is a slight difference of one variable between Y and Yo.

Again, determining the output set from input set,


Xo= YWT
= [ 0.15 0.35 0.55 0.8 0.95 ] · 0.15 0.15 0.15 0.15 0.15
0.20 0.35 0.35 0.35 0.35
0.20 0.40 0.55 0.55 0.55
0.20 0.40 0.60 0.75 0.80
0.20 0.40 0.60 0.75 0.80

= [Max(.15,.15,.15,.15,.15) Max(.15,.35,.4,.4,.4) Max(.15,.35,.55,.6,.6) Max(.15,.35,.55,.75,.75) Max(.15,.35,.55,.8,.8)]

= [0.15 0.40 0.60 0.75 0.80]

We can see that there is a slight difference of one variable between X and Xo.

Advantages of FAM:
1. Capable of storing multiple pairs of fuzzy patterns.
2. Target tracking.
3. Can be applied to control flying vehicles intelligently.
4. Can determine lithology from well logs

Disadvantages of FAM:

1. Suffers from low storage capacity for some rules in fuzzy matrix.

Discussion: A fuzzy system must not be sloppy. Depending on the system, it might get away
with being sloppy, but it will underperform. While the rules are fairly arbitrary, they should be
chosen carefully. If possible, an expert should decide on the rules, and the sets and rules should
be tested vigorously and refined as needed. In this way, a fuzzy system is like an expert system.
(Fuzzy logic is used in many true expert systems, as well.)

Das könnte Ihnen auch gefallen