Project 4: Supervised Learning Networks

This project will focus on superised learning networks of multiple forms. The network is a self-supervised supervised learning network using backpropagation. We will build our code from an ODE, building on the framework from previous projects.

Developing your Backpropagation Network

First, you will need to develop a backpropagation algorithm. Develop a two-layer backpropagation algorithm code that can have an arbitrary number of Having these items as parameters will be essential for using and reusing your code that you will develop. You will want to submit your code as a separate file.

A test dataset: Google has a site for a straight-forward, two-input, one output classification network ( NN Playground) that has a graphical interface to try many different cases. It is a fun application to experiment as you are working through the supervised learning concepts. It is suggested that you train your network using this dataset, particularly the dataset for the two spiral dataset. You would still only have a single hidden layer in your case. Their output sigmoid goes from +1 to -1. They have their code for their networks at Github. Their training set is in their code (they generate a random dataset for the particular 2-D function).

Items for Backpropagation Learning:

Items that require an artistic touch:

Self-Supervised Backpropagation Network with Sound Input

Train your network for a self-supervised algorithm. In this particular self-supervised learning case, use low-gain sigmoids (e.g. a gain of 2 to 4), and you can use linear elements for the final layer. Self-supervised networks will not require having a labeled data set as you already have the desired training signal. You will train your network using a piece of music (voice, instruments, etc.) as your training set. Likely you will need to repeat your piece of music multiple times for the weights to converge. You should identify the piece of music, and the type of music, etc, in your report. If you can submit an mp4 or similar version of the music, that would be appreciated. Train this network (remember to use your ODE formulation) in two cases. You will want to submit your code for the self-supervised algorithm (first part) as a separate file. <\html>