

Training Neural Networks online website
For a web development module at university, I am planning to create a website where the user will be able to train a neural network 'live'. They will be able to select the parameters for the training, and will be able to view the dataset on the website.
This project is being completed in collaboration with a PhD student at Coventry University, who is doing research on Emotional Recognition and Empathy Imitation in a social robot, using neural networks. We are planning to incorporate a network they have created into the website, and allow the user to select which attributes they want to put forward for the training. The development environment I am using to code the website is c9.io, a cloud based IDE.
The initial paper sketches for the structure of the website are shown below:



The planned functionality of the website is explained below:
-
The user selects the attributes they want to use during the training. There will be more than one dataset for the user to choose from, so certain combinations of selections will be invalid. Once the user has decided the dataset they want, they click the select button.
-
From the selection, the database of datasets is queried using SQL, to pull only the relevant data the user wants for the training. The images from the datasets are then going to be displayed on the screen, for the user to select one.
-
The selected image will then be passed through the network to be classified, and will be displayed on the screen along with the results of the classification. The website will be created using a combination of the following: HTML, CSS, JavaScript, incorporating an SQL database, Python scripts, Flask, and a neural network created using C++/Matlab.
I have created a prototype of the website moqups, a web wire-framing tool that allows you to create dynamic and interactive prototypes. The prototype can be found at the following link: https://moqups.com/neuralnetworks
If I have time to add extra functionality, the user will have the option to select their own topology for training. This can only be done for an entire dataset however, so the selection process will have to be altered. Once the user has selected their attributes and the network has been trained, the results will be displayed in a confusion matrix.
