Docstoc

Introduction to Artificial Neural Networks

Document Sample
Introduction to Artificial Neural Networks Powered By Docstoc
					  ‫‪Simple Neural Nets‬‬
  ‫‪for Pattern Classification‬‬


                ‫الشبكات العصبية البسيطة‬
                   ‫لتصنيف النمط‬


‫اعداد المهندسة : بنان عبد الكريم محمودي‬
     How are neural networks used?
          ‫كيف تستخدم الشبكات العصبية‬
 Typical architectures :
      It is convenient to visualize neurons as arranged in
          layers
                  ‫ من المناسب تخيل او تصور الخاليا العصبية كانها مرتبة في طبقات‬
      Neurons in the same layer behave in the same
          manner
                              ‫ الخاليا العصبية في نفس الطبقة تتصرف بنفس الطريقة‬
      Key factors in determining the behavior of a neuron
          are its activation function and pattern of weighted
          connections over which sends and receives signals
   ‫ العناصر االساسية في تقرير سلوك الخالية العصبية هو تابع تفعيلها ونمط ارتباطات‬
                                        ‫االوزان الذين يرسالن ويستقبالن االشارات‬
      Within each layer neurons usually have the same
          activation function and same pattern of weighted
          connections to other neurons
‫ ضمن كل طبقة الخاليا العصبية عادة لها نفس تابع التفعيل ونفس نمط االوزان المرتبطة‬
‫)الهندسة المعمارية النموذجية(: ‪Typical architectures‬‬

   ‫‪ The arrangement of neurons into layers and the‬‬
       ‫‪connection patterns within and between layers is‬‬
       ‫‪called the net architecture‬‬
‫‪ ‬ترتيب الخاليا العصبية داخل الطبقات وانماط االرتباط بين الطبقات‬
                                 ‫يسمى هندسة الشبكة المعمارية‬
   ‫‪ Many neural nets have an input layer in which the‬‬
       ‫‪activation of each unit is equal to an external input‬‬
       ‫‪signal‬‬
   ‫‪ ‬معظم الشبكات العصبية تملك طبقة ادخال حيث تفعيل كل وحدة‬
 ‫مساوي الشارة الدخل الخارجية مثال الشكل التالي الشبكة هنا‬
    ‫تتألف من وحدات ادخال ووحدات اخراج ووحدة واحدة مخفية‬
                                     ‫(ليست ادخال وال اخراج )‬
Typical architectures :(‫)الهندسة المعمارية النموذجية‬

 Neural nets classified as ( ‫)تصنف الشبكات العصبية‬
   Single layer ( ‫)طبقة واحدة‬
   Multilayer ( ‫)متعددة الطبقات‬
 In determining the number of layers the input units are not counted
  as a layer because they perform no computation .
          ‫ في تحديد عدد الطبقات وحدات االدخال التعد كطبقة النها التنجز اي حساب‬
 The number of layers in the net can be defined to be the number of
  layers of weighted interconnected links between the slabs of
  neurons
     ‫ عدد الطبقات في الشبكة يمكن ان يعرف بعدد طبقات خطوط االرتباطات الداخلية‬
              ‫الموزونة بين كتل الخاليا العصبية مثال الشكل السابق يتألف من طبقتين‬
Single layer net
 Has one layer of connection weights
                                             ‫ تملك طبقة واحدة من اوزان االرتباطات‬
 The units can be distinguished as input units which receive signals
    from the outside world and output units from which the response of
    the net can be read
    ‫ الوحدات يمكن ان توصف كوحدات ادخال التي تستقبل االشارات من العالم الخارجي‬
                            ‫ووحدات اخراج وهو استجابة الشبكة الذي يمكن ان تقرأه‬
 In typical single layer net shown in figure the input units are fully
    connected to output units but are not connected to other input units
    and output units are not connected to other output units
   ‫ في الشبكة وحيدة الطبقة النموذجية المبينة بالشكل التالي وحدات االدخال ترتبط بشكل‬
‫كامل بوحدات االخراج ولكنها التتصل بوحدات ادخال اخرى ووحدات االخراج الترتبط‬
                                                             ‫بوحدات اخراج اخرى‬
        A Single layer net


                         w11
  X1                                       y1
                         wi1

                        w1j          wn1


  Xi                           wij         yj
                                wnj
                                w1m
                               wim
 Xn                                        ym
                               wnm


Input           One layer             output
units           of weights            units
Single layer net
 For pattern classification each output unit corresponds
   to a particular category
             ‫ بالنسبة لنمط التصنيف كل وحدة اخراج تقابل صنف معين‬
 Note : in single layer net the weight for one output unit
   do not influence the weights for other output units
 ‫ مالحظة : في الشبكات وحيدة الطبقة وزن اي وحدة اخراج التؤثر على‬
                                        ‫اوزان وحدات اخراج اخرى‬
 For pattern association the same architecture can be
   used but now the overall pattern of output signals gives
   the response pattern associated with the input signal
   that caused it to be produced
   ‫ بالنسبة لنمط االرتباط نفس الهيكلية يمكن استخدامها ولكن االن جميع‬
 ‫االنماط الشارات الخرج تعطي نمط استجابة مرتبط باشارة الدخل التي‬
                                                ‫كانت سبب انتاجها‬
Multilayer net
 Net with one or more layers or levels of nodes (called
  hidden units) between the input units and the output
  units
  ‫ هي شبكة بطبقة او اكثر من العقد والتي تسمى الوحدات المختفية بين‬
                                     ‫وحدات الدخل ووحدات الخرج‬
 Can solve more complicated problems than can single
  layer nets
         ‫ بامكانها ان تحل مشاكل معقدة اكثر من الشبكات وحيدة الطبقة‬
 Training more difficult but some cases more successful
          ‫ التدريب اكثر تعقيدا فيها ولكن في بعض الحاالت اكثر نجاحا‬
                                                     y1


                                   w11
       v11                    Z1     w21       wp1
     v21
                  vn1                      w12       y2
                                         w22
                 v12

                                               wp2
           v22
                              Z2
                  vn2
                                           w13
           v2p          v1p              w13
                                                     y3
                                           wp
                                           3
            vnp               Zp
                                               w1m
                                    w2m



                                   wpm
n                                                    ym




    A multilayer neural net
Setting the weights
 The method of setting the values of the weights (training) is an
    important distinguishing characteristic of different neural nets
 ‫ طريقة اعداد قيم االوزان (التدريب ) تعتبرخاصية مميزة هامة لمختلف الشبكات العصبية‬
 Two types of training
     Supervised( ‫)مشرف‬
     Unsupervised(‫)غير مشرف‬
 There are nets whose weights are fixed without an iterative training
    process
                      ‫ هناك نوع من الشبكات اوزانها ثابتة بدون عملية تدريب تكرارية‬
 There is a useful correspondence between the type of training that is
    appropriate and the type of problem we wish to solve
           ‫ هناك مراسالت مفيدة بين نوع التدريب المالئم ونوع المشكلة التي نريد حلها‬
Supervised training
 Training is accomplished by presenting a sequence of training
    vectors or patterns each with an associated target output vector . The
    weights are then adjusted according to a learning algorithm. This
    process is known as Supervised training
      . ‫ التدريب يكتمل بتقديم سلسلة من التدريبات الموجهة او االنماط مع الناتج المرتبط‬
 ‫االوزان بعدها تضبط طبقا لخوارزمية التعليم هذه العملية تسمى بالتدريب المشرف عليه‬
 In pattern classification the output is an elements say 1 (if input
    vector belongs to the category )or -1 (if dose not belong)
     ‫ في تصنيف االنماط الخرج يكون 1 اذا كان الدخل يعود لصنف ويساوي -1 اذا كان‬
                                                                       ‫اليعود لصنف‬
 In pattern association if the desired output vector is the same as the
    input vector the net is an autoassociative memory
   ‫ في النمط المرتبط إذا كان الخرج المطلوب نفس الدخل الشبكة تكون ذاكرة ترابط آلي‬
Supervised training
 If the output target vector is different from the input vector the net is
      a heteroassociative memory
                              ‫ إذا كان الخرج الهدف يختلف عن الدخل الشبكة هي ذاكرة‬
 After training an associative memory can recall a stored pattern
      when it is given an input vector that is sufficiently similar to a
      vector it has learned
‫ بعد التدريب الذاكرة الترابطية يمكنها استرجاع االنماط المخزنة عندما تعطى مدخل مشابه‬
                                                                ‫للمدخل التي تعلمته‬
 The single layer nets (pattern classification nets )and (pattern
      association nets ) use Supervised training
    ‫ شبكة الطبقة الوحيدة (شبكات االنماط المصنفة ) و(شبكات االنماط المرتبطة ) تستخدم‬
                                                                       ‫هذا التدريب‬
Unsupervised training
 Self organizing neural nets group similar input vector together
   without the use of training data to specify what a typical member of
   each group
  ‫ الشبكات العصبية ذاتية التنظيم تجمع مدخالت متشابهة مع بعض بدون استخدام تدريب‬
                               ‫البيانات لتحديد ماهو العنصر النموذجي لكل مجموعة‬
 A sequence of input vectors is provided but no target vectors are
   assigned
                 ‫ سلسلة المدخالت الموجهة تجهز ولكن اليوجد هدف موجه مرتبط بها‬
 The net modifies the weights so that the most similar input vectors
   are assigned to the same output (or cluster) unit
 ‫ الشبكة تعدل االوزان لذلك معظم المدخالت الموجهة المتشابهة ترتبط بنفس وحدة الخرج‬
                                                                      ‫او تجتمع‬
 The neural net will produce an exemplar (representative) vector for
   each cluster formed
                        ‫ الشبكة العصبية سوف تنتج نموذج (تمثيلي ) لكل شكل مجمع‬
Fixed weight nets
 The weight are set to represent the constraints and
  the quantity to be maximized or minimized
     ‫ الوزن يوضع لتمثيل القيود والكمية اللتان ستزيدان او تقالن‬

 Fixed weights are also used in contrast enhancing
  nets
            ‫ تستخدم هذه الشبكات في شبكات تحسين المقارنة‬
             Summary of notation
 Xi,yj activations of units Xi,Yj , respectively :
                        for input units Xi,
                        xi = input signal
                        for other units Yj
                        yj= f (y-inj)
Wij weight on connection from unit Xi to unit Yj
            yj ‫ والخليه المخرجه‬Xi ‫الوزن لإلتصال بين الخليه المدخله‬
        beware : some authors use the opposite convention with wji
    denoting the weight from unit Yj to unit Xi

b j Bias on unit Yj( ‫)االنحراف لخلية الخرج‬
     A bias acts like a weight on a connection from a unit with a constant
     Activation of 1 (figure 1.11)
            ‫االنحراف يتصرف كالوزن في االتصال من الوحدة بوصلة تنشيط ثابتة تساوي الواحد‬
               Summary of notation
y _ in j     Net input to unit Yj:


                y _ in j = bi + Ʃ xi wij
                                i

w          weight matrix:
             W={ w ij }

 w ij      from unit i to unit j   i: row index; j: column index

 j        Threshold for Activation of neuron Yj :
              ‫‪Summary of notation‬‬
  ‫) ‪s  ( s1, s2 .......sn‬‬                   ‫‪training input vector‬‬
  ‫) ‪t  (t , t 2 ......t m‬‬                 ‫‪training(or target)output vector‬‬
  ‫) ‪x  ( x1 , x2 ......xn‬‬                ‫‪input vector‬‬                   ‫عباره عن مجموعه المدخالت للشبكه‬
                ‫‪ S‬عباره عن مجموعه التعليم وهي مجموعه المدخالت للشبكه من اإلشارات في مرحلة التعليم‬
       ‫‪t‬عبارة عن مجموعه المخرجات الهدف أي مجموعه اإلشارات المخرجه التي من المفترض أن تخرجها بعد أن تنهي مرحلة التعليم ..‬

  ‫‪wij Change in‬‬          ‫‪wij‬‬       ‫وهو عباره عن التغير في الوزن ‪wij‬‬
         ‫] ) ‪wij  [ wij (new)  wij (old‬‬
 ‫:‪‬‬                 ‫‪learning rate‬‬                      ‫معدل التعليم‬
‫‪The learning rate is used to control the amount of weight adjustment at each‬‬
‫‪step of training‬‬
                                   ‫يستخدم للتحكم بكمية الوزن المضبوطة في كل خطوة من التدريب‬
Matrix multiplication method for calculating
                     net input
       ‫طريقة ضرب المصفوفة لحساب مدخالت الشبكة‬

 If the connection weights for a neural net are stored in a
  matrix W={ w ij }, the net input to unit Yj (with no bias
  on unit j) is simply the dot product of the vectors
  x=(x1, x2, ……, xn( and w ij

                   y _ in j   =   Ʃ xi wij
                                  i
                             Bias
                             ‫االنحراف‬
 A bias can be included by adding a component x0= 1 to the
  vector x , i.e. (1,x1,………,xi, …….,xn(
 The bias is treated exactly like any other weight i.e w0j = bj
 The net input to unit Yj is given by
                            n
            y _ in j   =   Ʃ xi wij
                           i=0

                                     n
                       =    w0j +    Ʃ xi wij
                                     i=1

                                      n
                       =   bj    +   Ʃ xi wij
                                      i=1
Architecture
 The basic architecture of the simplest possible neural
  networks that perform pattern classification consists of
  a layer of input units and a single output unit.
 ‫ الهيكلية األساسية ألبسط الشبكات العصبية الممكنة الممثلة في تصنيف‬
           ‫النمط تتألف من طبقة وحدات الدخل وطبقة وحيدة للخرج‬
Neuron with a bias




                     output
                      unit
Input
units
Biases and Thresholds
 A bias acts exactly as a weight on a connection from a
  unit whose activation is always 1.increasing the bias
  increase the net input to the unit . If a bias is included ,
  the activation function is typically taken to be
    ‫ يتصرف االنحراف تماما كوزن في االتصال من الوحدة حيث تابع‬
                                                1 ‫تغعيله دائما‬
                          1            If net ≥ o
          F(net)=
                          -1           If net < o
Where
                 net   = b + Ʃ xi wi
                               i
Biases and Thresholds
 Some authors do not use a bias weight , but instead use
  a fixed threshold 
 For the activation function in that case
   ‫ بعض المؤلفين اليستخدموا وزن االنحراف ويستخدموا بدال منه حد‬
                                                           ‫العتبة‬
                           : ‫ يكون تابع التفعيل لهذه الحالة كما يلي‬
                     1           If net ≥    
      F(net)=
                    -1            If net <   
 Where
                  net    = Ʃ xi wi
                                  ‫ وهي تكافئ تماما استخدام االنحراف‬
  Linear Separability
 It a linear decision boundary exist that correctly classifies
  all the training samples .
                 ‫ هو وجود حد قرار خطي يصنف كل عينات التدريب بدقة‬
 The samples are said to be linearly separable
                                   ‫ يقال إن العينات مفصولة بشكل خطي‬
 The linear decision boundary is given by the equation:
              b + x1.w1+x2.w2 = 0
                     -w1           b
              x2 =         . X1-                   w2≠0
                     w2            w2
Linear Separability
 Problems that are not linear separable are sometimes
  referred to as nonlinearly separable or topologically
  complex.

    ‫ المشاكل التي التكون مفصولة بشكل خطي يشار لها كمفصولة غير‬
                                    ‫خطيا أو مركب طوبولوجي‬

 If the n training samples are linearly separable by
  linear decision boundary ,a single-layer feedforward
  network is capable of correctly classifying the samples
  .
Linear Separability
 Examples :
    Logic functions and decision regions
(0,1)         (1,1)    (0,1)        (1,1)   (0,1)          (1,1)

    0         1           1         1          1          0

    0         0           0         1          0          1

(0,0)          (1,0)   (0,0)        (1,0)   (0,0)         (1,0)

        AND                    OR                   XOR
Linear Separability
 Referring to figure we observe that some
  common logic functions OR and AND , are
  linearly separable and XOR is not linearly
  separable .
 ‫ من الشكل السابق نالحظ ان بعض التوابع المنطقية مفصولة‬
     ‫) غير مفصولة خطيا‬XOR( ‫) اما‬AND , OR( ‫خطيا‬
Learning Rule(‫( قاعدة التعليم‬
 Associated with each neural network is a learning
   rule ,which changes the input functions .
        ‫ ترتبط بكل شبكة عصبية قاعدة تعليم تغير بتوابع الدخل‬
 Normally the learning rule defines how to change
   the weights in response to given input / output
   pairs
‫ عادة تعرف قاعدة التعليم كيف تتغير االوزان في استجابة لمدخل‬
                                             ‫معطى او مخرج‬
Hebb’s Rule
 More than 50 years ago ,Donald O Hebb theorized that
   biological associative memory lies in the synaptic
   connections between nerve cells .
 ‫ من خمسين سنة فسر العالم هيب ان الذاكرة الترابطية الحيوية تكمن في‬
                              ‫الوصالت العصبية بين الخاليا العصبية‬
 He thought that the process of learning and memory
   storage involved changes in the strength with which
   nerve signals are transmitted across individual
   synapses .
‫ فكر بأن عملية التعليم وتخزين الذاكرة يتضمن التغيير في شدة االشارات‬
                        ‫العصبية المرسلة عبر وصالت عصبية فردية‬
Hebb’s Rule
 Hebb’s Rule states that pairs of neurons which are
   active simultaneously becomes stronger by weight
   changes.
 ‫ قاعدة هيب حددت ان ازواج الخاليا العصبية النشيطة تصبح بشكل اني‬
                                                ‫اقوى بتغير الوزن‬
 Hebb’s Rule : the learning rule that states that the
   synaptic weight changes are proportional to the product
   of the synaptic activities of both the sending and
   receiving cells:
 ‫ قاعدة التعليم التي حددت ان تغير وزن الوصلة العصبة نسبي لنشاطات‬
                 ‫الوصالت العصبية لكل الخاليا المرسلة والمستقبلة‬
Hebb’s Rule

         wij =      .   Xi .   Yj



   Where       is the learning rate
    Xi     is the input

    Yj     is the output of the receiving neuron
 Algorithm :Hebb net (supervised) learning
                       algorithm

 Step0 . initialize weights and bias
 Step1 . per each training sample s:t do steps 2 – 4
 Step2 . Set activations of input units :
                     xi = si
 STEP3 . Set activations of output units :
                     y=t
 Step4. update weight and bias :
             wi (new) = wi(old) + xi. y
             b (new) = b (old) + y
Application
 Bias types of input are not explicitly used in the original
  formulation of Hebb learning .
 ‫ انواع االنحرافات للدخل لم تستخدم بشكل واضح في الصيغة االصلية لتعليم‬
                                                               ‫هيب‬
 Logic functions
Examples: a Hebb net for the AND function : binary inputs
  and target
                input           y=target
              (x1,   x2,   1)
              (1,    1,    1)     1
              (1,    0,    1)     0
              (0,    1,    1)     0
              (0,    0,    1)     0
                                bias unit
Logic functions
 For each training input :target , the weight change is the
  product of the input vector and the target value i.e.

                   w1 = x t  1        w2      = x2 t      b   =     t


The new weights are the sum of the previous weights and the
weight change . Only one iteration through the training vectors is
required . The weight updates for the first input are as follows :

      input          Target           Weight changes                 Weights
(x1, x2, 1)                       (   w1   w2      b )        (w1       w2   b)
                                                                  (0        0   0)
(1,    1,     1)       1          (1        1        1)           (1        1   1)
Logic functions
 The separating line becomes
                     x2 = - x1 – 1
 The graph presented in figure 2.7 shows that the
  response of the net will now be correct for the first
  input pattern . Presenting the second ,third and fourth
  training input shows that because the target value is 0 ,
  no learning occurs . Thus using binary target values
  prevents the net from learning any pattern for which
  the target is “ off” :
Figure 2.7 decision boundary for binary AND function
using Hebb rule after first training pair


                    x2
                         0         +




                         0             0

                                                x1
        Logic functions

   input        Target         Weight changes         Weights
(x1,   x2, 1)            (Δw1     Δw2   Δb)     (w1    w2   b)

(1, 0, 1)         0      (0       0     0)      (1      1   1)

(0, 1, 1)         0       (0      0     0)      (1      1   1)

(0, 0, 1)         0       (0       0    0)      (1      1   1)
Logic functions
 Example 2.6 Hebb net for the AND function :
  binary inputs, bipolar targets

            input           Target

          (x1,   x2,   1)
          (1,    1,    1)       1
          (1,    0,    1)      -1
          (0,    1,    1)      -1
          (0,    0,    1)      -1
  Logic functions
  Presenting the first input including a value of 1
   for the third component yields the following:

      input        Target          Weight changes           Weights
(x1, x2, 1)                    (   w1   w2       b )   (w1   w2    b)
                                                           (0    0    0)
(1,    1,     1)      1         (1       1         1)      (1    1    1)


                   The separating line becomes

                                   x2 = - x1 – 1
Logic functions
 Figure 2.8 shows the response of the net will
  now be correct for the first input pattern.
 Presenting the second ,third and fourth training
  patterns shows that learning continues for each
  of these patterns (since the target value is now
  -1 rather than 0 as in example 2.5)
Figure 2.7 decision boundary for AND function using
Hebb rule after first training pair (binary inputs ,
bipolar targets )

                     x2
                          -         +




                          -             -

                                                 x1
        Logic functions

   input        Target         Weight changes            Weights
(x1,   x2, 1)            (Δw1     Δw2 Δb)          (w1    w2    b)

(1, 0, 1)         -1     (-1       0    -1 )       (0      1    0)

(0, 1, 1)         -1      (0      -1    -1)         (0     0    -1)

(0, 0, 1)         -1      (0       0     -1)        (0      0      -2)


  However these weights do not provide the correct response for the
  first input pattern
Logic functions
 The choice of training patterns can play a significant
   role in determining which problems can be solved
   using the Hebb rule .
 ‫ االختيار لتدريب االنماط يمكن ان يلعب دور هام في تقرير اي المشاكل‬
                                     ‫يمكن حلها باستخدام قاعدة هيب‬
 The next example shows that the AND function can be
   solved if we modify its representation to express the
   inputs as well as the targets in bipolar form
‫ يمكن ان يحل اذا عدلنا تمثيله الظهار‬AND ‫ المثال التالي يظهر ان تابع‬
                                 ‫المدخالت مثل الهدف في شكل قطبي‬
Logic functions
 Bipolar representation of the inputs and targets allows
    modification of a weight when the input unit and target
    value are both “on” at the same time and when they are
    both “of” at the same time .
‫ التمثيل القطبي للمدخالت واالهداف يسمح بتعديل الوزن عندما تكون قيم‬
‫ في‬off ‫ في نفس الوقت وعندما يكونوا‬on ‫وحدة الدخل والهدف كالهما‬
                                                      ‫نفس الوقت‬
 The algorithm is the same as that just given expect that
    now all units will learn whenever there is an error in
    the output
‫ الخوارزمية هي نفسها المعطاة من قبل نتوقع االن ان كل الوحدات سوف‬
                              ‫تتعلم عندما يكون هناك خطأ في الناتج‬
Logic functions
 Example 2.7 Hebb net for the AND function :
  bipolar inputs and targets

           input        Target
          (x1, x2, 1)
          (1, 1, 1)       1
          (1, -1, 1)     -1
          (-1, 1, 1)     -1
          (-1, -1, 1)    -1
  Logic functions
   Presenting the first input including a value of 1
    for the third component yields the following:

      input        Target          Weight changes           Weights
(x1, x2, 1)                    (   w1   w2       b )   (w1   w2    b)
                                                           (0    0    0)
(1,    1,     1)      1         (1       1         1)      (1    1    1)


                   The separating line becomes

                                   x2 = - x1 – 1
Logic functions
 Figure 2.9 shows the response of the net will
  now be correct for the first input point (and also
  by the way for the input point (-1,-1) ) .
  Presenting the second input vector and target
  results in the following situation:
Figure 2.9 decision boundary for AND function using
Hebb rule after first training pair (bipolar inputs ,
bipolar targets )

                     x2
             -                       +




                                                  x1




              -                       -
  Logic functions


      input        Target          Weight changes            Weights
(x1, x2, 1)                    (   w1   w2     b )      (w1   w2    b)
                                                            (1    1    1)
(1,    -1,    1)      -1        (-1         1       -1 )    (0   2     0)


                   The separating line becomes

                                   x2 = 0
Logic functions
 Figure 2.10 shows the response of the net will
  now be correct for the first two input point (1,1)
  and (1,-1) and also for input point (-1,-1)
 Presenting the third input vector and target
  yields the following :
Figure 2.10 decision boundary for bipolar AND
function using Hebb rule after second training pattern
(boundary is x1 axis )

                      x2
              -                       +




                                                    x1




              -                        -
  Logic functions


    input      Target          Weight changes            Weights
(x1, x2, 1)                (   w1   w2     b )      (w1   w2    b)
                                                        (0    2     0)
(-1, 1,   1)      -1        (1       -1         -1 )    (1   1     -1)


               The separating line becomes

                               x2 = -x1 +1
Logic functions
 Figure 2.11 shows the response of the net will
  now be correct for the first three input point (and
  also by the way for the input point (-1,-1) ) .
  Presenting the last point. we obtain the following:
Figure 2.11 decision boundary for bipolar AND
function using Hebb rule after third training pattern
                       x2

              -                        +




                                                        x1




              -                         -
  Logic functions


    input        Target            Weight changes        Weights
(x1, x2, 1)                    (   w1   w2   b )    (w1   w2    b)
                                                        (1    1     -1)
(-1, -1,    1)     -1           (1       1      -1 )    (2   2     -2)

     Even though the weights have changed The separating line is
     still :

                          x2 = -x1 +1
     So the graph of the decision regions (the positive response
     and the negative response) remains as in figure 2.11
           Character recognition
                 ‫تمييز االحرف‬
 Example 2.8 A Hebb net to classify two
  –dimensional input patterns (representing letters )
 A simple example of using the Hebb rule for
  character recognition involves training the net to
  distinguish between the pattern “X” and the pattern
  “O” . The pattern can be represented as
     # . . . #                  . # # # .
     . # . # .        and      # . . . #
     . . # . .                 # . . . #
     # . . . #                 . # # # .
      Pattern 1                 Pattern 2
Character recognition
 To treat this example as a pattern classification
  problem with one output class we will
  designate the class “X” and take the pattern
  “O” to be an example of output that is not “X” .
Character recognition
 The first thing we need to do is to convert the
  patterns to input vectors . That is easy to do by
  assigning each # the value 1 and each “.” the
  value -1 . To convert form the two dimensional
  pattern to an input vector we simply concatenate
  the rows , i.e. the second row of the pattern
  comes after the first row , the third row follows ,
  ect .
Character recognition
 Pattern 1 then becomes
1-1-1-11,-1 1 -1 1 -1 , -1 -1 1 -1 -1
  ,-1 1 -1 1 -1 , 1 -1 -1 -1 1
 and pattern 2 becomes

-1 1 1 1 -1 , 1 -1 -1 -1 1 , 1 -1 -1 -1
  1, 1 -1 -1 -1 1 , -1 1 1 1 -1
  Character recognition
 The correct response for the first pattern is “on” or +1 , so the
    weights after presenting the first pattern are simply the input
    pattern .
        ‫ يعني 1 وبالتالي الوزن اليتغير‬on ‫ االستجابة الصحيحة للنمط االول هي‬
 The bias weight after presenting this is +1 .
 The correct response for the second pattern is “off” or -1 . So
    the weight change when the second pattern is presented is
   1- ‫ أي 1- لذلك الوزن يتغير بضرب‬off ‫ االستجابة الصحيحة للنمط الثاني هي‬
                                                             ‫بالنمط الثاني‬
1 -1 -1 -1 1 ,-1 1 1 1 -1 , -1 1 1 1 -1 , -1 1 1 1 -1,1 -1 -1 -1 1
In addition the weight change for the bias weight is -1.
 Character recognition
 Adding the weight change to the weights representing the
  first pattern gives the final weights :
         2 -2 -2 -2 2 , -2 2 0 2 -2 , -2 0 2 0 -2 , -2 2 0 2 -2 , 2 -2 -2 -2 2
The bias weight is 0
 We compute the output of the net for each the training patterns
 The net input is the dot product of the input pattern with the weight vector
 For the first training vector the net inputs is 42 so the response is positive
    as desired
 For the second training pattern the net input is -42 so the response is clearly
    negative also as desired
Character recognition
 However the net can also give reasonable responses to
   input that are similar but not identical , to the training
   patterns
‫ بكل األحوال الشبكة يمكن ان تعطي استجابات معقولة لدخل مشابه ولكن‬
                                        ‫ليس مماثل النماط التدريب‬
 There are two types of changes can be made to one of
   the input patterns that will generate a new input pattern
   for which it is reasonable to expect a response
 ‫ هناك نوعين من التغييرات يمكن ان تصنع الحد ادخاالت النماذج التي‬
          ‫سوف تولد دخل نموذج جديد سيكون معقول لتوقع االستجابة‬
Character recognition
 The first type of change is usually referred to as “mistakes in the
    data “. In this case one or more components of the input vector
    (corresponding to one or more pixels in the original pattern) have
    had their sign reversed, changing a 1 to -1 or vice versa
 ‫ النوع االول من التغيير عادة يشار له بالخطأ في البيانات في هذه الحالة واحد او اكثر من‬
                     ‫مكونات الدخل تعكس اشاراتهم يتغير 1 الى -1 او العكس بالعكس‬
 The second type of change is called “missing data” . In this situation
    one or more of the components of the input vector have the value 0
    rather than 1 or -1
   ‫ النوع الثاني يسمى بيانات مفقودة في هذه الحالة واحد او اكثر من مكونات الدخل تملك‬
                                                              1- ‫قيمة 0 اكثر من 1 او‬
 In general a net can handle more missing components than wrong
    components in other words
              ‫ بشكل عام الشبكة يمكن ان تعالج مكونات مفقودة اكثر من مكونات خاطئة‬

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:31
posted:10/17/2012
language:
pages:63