C++ Neural Networks and Fuzzy Logic by Valluru B. Rao M&T Books, IDG Books Worldwide, Inc. ISBN: 1558515526 Pub Date: 06/01/95 |

Previous | Table of Contents | Next |

You may think that the last column of *W* being all zeros presents a problem in that when the input is **X _{1}** and whatever the output, when this output is presented back in the backward direction, it does not produce

1 if y_{j}> 0 1 if x_{i}> 0 b_{j}|_{t+1}= b_{j}|_{t}if y_{j}= 0 and a_{i}|_{t+1}= a_{i}|_{t}if x_{i}= 0 0 if y_{j}< 0 0 if x_{i}< 0

where *x _{i}* and

If **X _{1}** = (1, 0, 0, 1) is presented to the input neurons, their activations are given by the vector (–4, 4, 0). The output vector, after using the

With A field input **X _{2}** you get B field activations (4, -4, 0), giving the output vector as (1, 0, 1), which is

Let us modify our **X _{1}** to be (1, 0, 1, 1). Then the weight matrix

1 [-1 1 1] -1 [1 -1 1] -2 2 0 W = -1 + 1 = 2 -2 0 1 1 0 0 2 1 -1 -2 2 0

and

-2 2 0 -2 W_{T}= 2 -2 0 2 0 0 2 0

Now this is a different set of two exemplar vector pairs. The pairs are **X _{1}** = (1, 0, 1, 1),

Input vector | activation | output vector |
---|---|---|

X_{1} = (1, 0, 1, 1) | (-4, 4, 2) | (0, 1, 1) = Y_{1} |

X_{2} = (0, 1, 1, 0) | (2, -2, 2) | (1, 0, 1) = Y_{2} |

Y_{1} = (0, 1, 1) | (2, -2, 2, 2) | (1, 0, 1, 1) = X_{1} |

Y_{2} = (1, 0, 1) | (-2, 2, 2, -2) | (0, 1, 1,0) = X_{2} |

You may think that you will encounter a problem when you input a new vector and one of the neurons has activation 0. In the original example, you did find this situation when you got the third output neuron’s activation as 0. The thresholding function asked you to use the same output for this neuron as existed in the earlier time cycle. So you took it to be 1, the third component in (0, 1, 1). But if your input vector is a new **X** vector for which you are trying to find an associated **Y** vector, then you do not have a **Y** component to fall back on when the activation turns out to be 0. How then can you use the **thresholding** function as stated? What guidance do you have in this situation? If you keep track of the inputs used and outputs received thus far, you realize that the **Field B** (where you get your **Y** vector) neurons are in some state, meaning that they had some outputs perhaps with some training vector. If you use that output component as the one existing in the previous cycle, you have no problem in using the **thresholding** function.

As an example, consider the input vector **X _{3}** = ( 1, 0, 0, 0), with which the activations of neurons in

Previous | Table of Contents | Next |

Copyright © IDG Books Worldwide, Inc.

C++ Neural Networks and Fuzzy Logic

ISBN: 1558515526

EAN: 2147483647

EAN: 2147483647

Year: 1995

Pages: 139

Pages: 139

Authors: Valluru B. Rao, Hayagriva Rao

Similar book on Amazon

flylib.com © 2008-2017.

If you may any questions please contact us: flylib@qtcs.net

If you may any questions please contact us: flylib@qtcs.net