Neuro Fuzzy System
Neuro Fuzzy System
Neuro Fuzzy System
y
x1
A1
A2
A3
B1
B2
x2
C1
C2
x1
x1
x1
x2
x2
x2
B1
A2
B3
C2
C1
R1
R3
R5
R6
R4
R1
R5
R4
R6
R2
R3
R2
B3
A1
w
R3
w
R6
w
R1
w
R2
w
R4
w
R5
A3
B2
Each layer in the neuro-fuzzy system is associated
with a particular step in the fuzzy inference process.
Layer 1 is the input layer. Each neuron in this layer
transmits external crisp signals directly to the next
layer. That is,
Layer 2 is the fuzzification layer.
Neurons in this layer represent fuzzy sets used in the
antecedents of fuzzy rules.
A fuzzification neuron receives a crisp input and determines
the degree to which this input belongs to the neurons fuzzy
set.
) 1 ( ) 1 (
i i
x y =
1. The activation function of a membership neuron is
set to the function that specifies the neurons fuzzy
set.
2. We use triangular sets, and therefore, the activation
functions for the neurons in Layer 2 are set to the
triangular membership functions.
3. A triangular membership function can be specified
by two parameters {a, b} as follows:
+ >
+ < <
s
=
2
if , 0
2 2
if ,
2
1
2
if , 0
) 2 (
) 2 (
) 2 (
) 2 (
) 2 (
b
a x
b
a x
b
a
b
a x
b
a x
y
i
i
i
i
i
(b) Effect of parameter b.
0.2
0.4
0.6
0.8
1
a = 4, b =6
a = 4, b =4
0 4 6 8
0
1 2 3 5 7
X
(a) Effect of parameter a.
0.2
0.4
0.6
0.8
1
a = 4, b =6
a = 4.5, b =6
0 4 6 8
0
1 2 3 5 7
X
Neuro-fuzzy system
Layer 2 Layer 3 Layer 4 Layer 5 Layer 1
y
x1
A1
A2
A3
B1
B2
x2
C1
C2
x1
x1
x1
x2
x2
x2
B1
A2
B3
C2
C1
R1
R3
R5
R6
R4
R1
R5
R4
R6
R2
R3
R2
B3
A1
w
R3
w
R6
w
R1
w
R2
w
R4
w
R5
A3
B2
Layer 3 is the fuzzy rule layer.
1. Each neuron in this layer corresponds to
a single fuzzy rule.
2. A fuzzy rule neuron receives inputs from
the fuzzification neurons that represent
fuzzy sets in the rule antecedents.
3. For instance, neuron R1, which
corresponds to Rule 1, receives inputs
from neurons A1 and B1.
In a neuro-fuzzy system, intersection can
be implemented by the product operator.
Thus, the output of neuron i in Layer 3 is
obtained as:
1 1 1
) 3 (
1
R B A
R
y = =
Neuro-fuzzy system
Layer 2 Layer 3 Layer 4 Layer 5 Layer 1
y
x1
A1
A2
A3
B1
B2
x2
C1
C2
x1
x1
x1
x2
x2
x2
B1
A2
B3
C2
C1
R1
R3
R5
R6
R4
R1
R5
R4
R6
R2
R3
R2
B3
A1
w
R3
w
R6
w
R1
w
R2
w
R4
w
R5
A3
B2
Layer 4 is the
output membership layer. Neurons in this
layer represent fuzzy sets used in the
consequent of fuzzy rules.
An output membership neuron combines all
its inputs by using the fuzzy operation
union.
This operation can be implemented by the
probabilistic OR. That is,
The value of
C1
represents the integrated
firing strength of fuzzy rule neurons R3 and
R6.
1 6 3
) 4 (
1
C R R
C
y = =
Layer 5 is the defuzzification layer. Each
neuron in this layer represents a single
output of the neuro-fuzzy system. It takes
the output fuzzy sets clipped by the
respective integrated firing strengths and
combines them into a single fuzzy set.
Neuro-fuzzy systems can apply standard
defuzzification methods, including the
centroid technique.
We will use the sum-product composition /
weighted-average method.
Neuro-fuzzy system
Layer 2 Layer 3 Layer 4 Layer 5 Layer 1
y
x1
A1
A2
A3
B1
B2
x2
C1
C2
x1
x1
x1
x2
x2
x2
B1
A2
B3
C2
C1
R1
R3
R5
R6
R4
R1
R5
R4
R6
R2
R3
R2
B3
A1
w
R3
w
R6
w
R1
w
R2
w
R4
w
R5
A3
B2
The sum-product composition calculates
the crisp output as the weighted average of
the centroids of all output membership
functions.
For example, the weighted average of the
centroids of the clipped fuzzy sets C1 and
C2 is calculated as,
2 2 1 1
2 2 2 1 1 1
C C C C
C C C C C C
b b
b a b a
y
+
+
=
How does a neuro-fuzzy system learn?
A neuro-fuzzy system is essentially a multi-
layer neural network,
Thus it can apply standard learning
algorithms developed for neural networks,
including the back-propagation algorithm.
When a training input-output example is presented to the
system, the back-propagation algorithm computes the
system output and compares it with the desired output of
the training example.
The error is propagated backwards through the network
from the output layer to the input layer.
The neuron activation functions are modified as the error
is propagated.
To determine the necessary modifications, the back-
propagation algorithm differentiates the activation
functions of the neurons.
Neuro-fuzzy systems: summary
The combination of fuzzy logic and neural networks constitutes a
powerful means for designing intelligent systems.
Domain knowledge can be put into a neuro-fuzzy system by human
experts in the form of linguistic variables and fuzzy rules.
When a representative set of examples is available, a neuro-fuzzy
system can automatically transform it into a robust set of fuzzy IF-THEN
rules, and thereby reduce our dependence on expert knowledge when
building intelligent systems.