k Back Propagation Neural Network For the multi – layer neural network that you

k
Back Propagation
Neural Network
For the multi

layer neural network that you will be implementing in the following problems, you may use 
either the hyperbolic tangent or the sigmoid for the activation function.  Obviously you will be implementing 
the back propagation method to train the n
etwork.  Your code should include an arbitrary method that allows 
you to code it for any number of input dimensions, hidden layers, neurons and output neurons, (i.e. you need 
it to be able to allow you to change a variable and it changes the number of laye
rs, or the number of neurons 
at a given layer, or the number of dimensions, or the number of output layers…in other words this cannot be 
hard coded
for a specific data set
).   
1.
(25pts) 
Develop a multi

layer neural network to solve the 
regression problem: f
(x) = 1/x
, (for only the 
positive values of x)
.  Be sure to create a testing and training set.  
I am 
NOT
providing you with data. 
The 
number of hidden layers and neurons 
is your discretion, however, you must provide an explanation as to why 
the number of l
ayers and nodes you used was a good choice.  You will need to create multiple different 
structures that you train and p
lot this error for the different models to show why you chose the final model 
that you did for this problem.
Report your network configu
ration, and comment on your observations 
regarding the performance of your network as you try to determine the number of hidden layers and hidden 
nodes of your final network, once you determine the correct model
:
a.
(10pts) 
T
rack 
your training and testing history.  
This means that you 
check your training performance 
and your testing performance at multiples of some fixed number of 
iterations
(and over many Epochs 
also)
[thus you will provide a graph of this information]
, implement 
the online learning method.
Be 
sure to label plots appropriately.
(Remember to scale the data in the range that provides the best 
results for your activation function
… normalization is a must)
b.
(5pts) 
What did you observe regarding the value of the learni
ng parameter and how the network 
performed given

(do one of each)  
i.
(2.5pts)
a fixed value, 
ii.
(2.5pts) 
and a time decreasing value 
c.
(2.5pts) 
Choose a couple of points beyond your training set (i.e., if your max training input 
is 
x=10, 
try testing your netw
ork with, say, x=10.5, x=
12
, and x=
30
).  What do you observe regarding the 
networks ability to generalize for data that is beyond its training set (note, you may have to increase 
the v
alue of x 
to a large number 
to get a good idea
to answer this
)
.
d.
(2.5pts)
Briefly comment on 
the extrapolation capability 
compared 
to the interpolation capability
of 
the network.
e.
(5pts) 
Plot the final results
showing the capability of your network to determine the function f(x) = 
1/x versus the function f(x) = 1/x.
2.
(25pts)
Develop a multi

layer neural network to
classif
y
the 
IRIS 
data set.  
Use K

Fold Cross Validation for 
this problem.
The code you use for thi
s problem will be an extension of the code you created for problem 1.
a.
(12pts) Implement the NN and r
eport your network configuration: number of hidden layers, number 
of nodes per hidden layer, learning rate/learning schedule, encoding of the output
, etc.
b.
(
5pts) 
Plot 
the 
error metric versus the number of training steps (similar to problem 
1
).
c.
(8pts) 
Comment on how well your network learned the data.  Things to think about: did the network 
classify the data well (or not), and why (or why not); how well did it
classify each class independently 
(you might consider contingency
table
s for this
); and what observation do you have regarding number 
of training samples
: was the normalization technique I used adequat

Leave a comment

Your email address will not be published. Required fields are marked *