Practice Neural Network Learning Assignment

Question 1

The following is the same data from the DT practice assignment

 
Example  bought edu first visited more_info
e1 false  true  false  false  true
e2 true  false  true  false  false
e3 false  false  true  true  true
e4 false  false  true  false  false 
e5 false  false  false  true  false 
e6 true  false  false  true  true
e7 true  false  false  false  true
e8 false  true  true  true  false
e9 false  true  true  false  false
e10 true  true  true  false  true
e11 true  true  false  true  true
e12 false  false  false  false  true
We want to use this data to learn the value of more_info as a function of the values of the other variables.

In this assignment we will consider neural network learning for this data. We have a Java applet that can be used to answer this assignment.  Load (using the file->load sample graph" option) the sample network "assignment 12a". Then go in "options -> learning options" and set "number of iterations+ to 200  and "learning rate" to 0.5. In  "solve" mode, select "show plot" to see the learning curve as the NN learning algorithm runs.

  1. Consider neural network learning with no hidden layers. After the network has converged, what are the parameter values?
  2. What is the Boolean function that the network represents?
  3. Are all the training examples classified correctly (if not, which aren't)?
  4. Give two examples, not in the training set, and specify what the predicted values are.

Solution

  1. Consider neural network learning with no hidden layers.
    1. After the network has converged, what are the parameter values?

    2.  

       
       
       

      After 200 iterations with a learning rate of 0.5 the parameter values should be approximately the following. The threshold value in the applet is represented here by the  w0 parameter, as we discussed in class

       
      Parameter  Parent  Value 
      w0 1.58
      w4 bought  3.96 
      w3 edu  3.52 
      w2 first  -7.42
      w1 visited  -3.40
    3. What is the Boolean function that the network represents?
    4. To answer, you need to consider how the linear expression representing the output of the read node
    5. w0+bought*w4 +edu*w3 +first*w2 + visited*w1
    6.  varies with the input

    7.  

       
       
       

      When first is true, the value of the linear expression  is negative unless bought and edu are true and visited is false.

      When first is false, the value of the linear expression is positive unless bought and edu are false and visited is true.

      This can be written as the decision tree:

      So the boolean expression is:
      (first &bought &edu &not visited) or
      (not first &bought) or
      (not first &edu) or
      (not first &not visited).
    8. Are all the training examples classified correctly (if not, which aren't)?

    9.  

       
       
       

      No. e3 is misclassified. The neural network classifies it as false.

    10. Give two examples, not in the training set, and specify what the predicted values is.

    11.  

       
       
       

      The following

       
      bought edu first visited more_info
      true  true  true  true  false
      true  true  false  false  true
      true  false  true  true  false
      false  true  false  true  true