$25
Your goal is to implement some of our algorithms and report on how accurate they should be for generalization.
You will implement the following algorithms:
(1) perceptron algorithm . (Your own code. The sets are not linearly separable; but you should indicate how you discover this when running the perceptron.)
(2) Adaline algorithm . (Your own code. After training the adaline, you can impose a cut-off to decide which class the data point belongs to. For example, if you try to train the adaline to +1 for Recurring and -1 for Non-recurring then you can use 0 as a cut-off; i.e. a positive result means recurring and negative non-recurring.)
(3) Backpropagation algorithm. Here you have a choice between your own code and the code of a package. (i) For your own code, use only one hidden level; and experiment with how many neurons there will be here. Report on how it worked for each number of neurons and how much time it took. I suggest you use the same activation function on all neurons; but you can experiment on this if you wish. Be sure to report on the results of all your choices. (ii) Alternatively you can use a package on this problem from a package (like MATLAB or (for those who took the course in deep learning (Tensorflow)). Other packages are also OK probably (I am not sure what is in WEKA, for example.)