PRE2019 3 Group10: Difference between revisions
Line 60: | Line 60: | ||
== Deliverables and Milestones == | == Deliverables and Milestones == | ||
Week 3: Have a working website with at least 1 visualization. | Week 3: Have a working website with at least 1 visualization. | ||
*Fully functional front | *Fully functional front-end that has implemented all functionality needed for finalizing this project. | ||
*Back-end must have a general framework for supporting several different networks/datasets. | *Back-end must have a general framework for supporting several different networks/datasets. | ||
*One visualization must be completed and fully functional to the user. | *One visualization must be completed and fully functional to the user. |
Revision as of 12:10, 8 February 2020
Group Members
Name | Student Number | Study | |
---|---|---|---|
Joris Goddijn | 1244648 | Computer Science | j.d.goddijn@student.tue.nl |
Daniël Verloop | 1263544 | Computer Science | a.c.verloop@student.tue.nl |
Ka Yip Fung | 1245300 | Computer Science | k.y.fung@student.tue.nl |
Rik Maas | 1244503 | Computer Science | r.maas@student.tue.nl |
Jeroen Struijk | 1252070 | Computer Science | j.j.struijk@student.tue.nl |
Problem Statement
Neural Networks have been used extensively in a wide variety of fields. In health care, neural networks are used for detecting certain diseases, for example tumor detection. In businesses, neural networks are used to filter job applicants: this way the business only has to take the best applicants in for interviews. In self driving cars neural networks are used to parse the visual input of the sensors of the car.
A big issue of modern neural networks is that it is a black box approach. Experts do not understand what is going on inside the neural network. This is an issue when people use neural networks to make decisions with real impactful consequences.
Our aim is to provide a tool which our users can use to have a better understanding of how the neural network they are using is making decisions.
Objectives
We are going to make a web application in which users can see visualizations of the inner workings of a neural network. We will focus on showing visualizations of the individual layers of a neural network. The goal of our web application is to help users understand how their neural network is making decisions.
Users and what they need
The users are people who make use of Neural Networks, e.g. people in the health care or students.
These users have need of an environment in which the inner workings of a neural network is visualized in such a way that these inner workings become more understandable.
It also needs to be understandable for people who do not have much pre-knowledge about neural networks or machine learning. This explanation will be a combination of some kind of model and pictures together with text that explains what is happening. Furthermore, users need to be able to explore the model freely, in such a way that they can discover different aspects of the models with various inputs.
Approach
We will use a website where we can visualize the activation of the layers in the neural network by uploading a picture/file. Based on the neural net, the website runs a forward pass on a trained network. This yields a layer activation which is returned to the user to gain information on how the neural net detect these objects.
We will need both front-end and back-end development.
Front-end: Bootstrap with Less.
- Visualizations with explanation.
- Vue
Back-end: Node.js/Django wtih Vue.
- Network structures saved on the server-side.
- Our own datasets on the server available to the user.
- All computations will be done in the back-end.
Deliverables and Milestones
Week 3: Have a working website with at least 1 visualization.
- Fully functional front-end that has implemented all functionality needed for finalizing this project.
- Back-end must have a general framework for supporting several different networks/datasets.
- One visualization must be completed and fully functional to the user.
Week 7/8: Website ready for deployment, finish the project.
- Extending our visualizations with choices for several working datasets/networks.
If time allows, we want to make it possible to the user to construct his own networks for simple neural network tasks.
We want to deliver a website that is finished and user friendly. Using the site, users are able to get a better understanding of the inner workings of a convolutional neural network. This is done through visualizing the computations and transformations on the input data. Wherever necessary, we will add text to further explain the visualizations to the user.
State of the Art
^________________________________________________^
Task Division
^________________________________________________^
References
^________________________________________________^
Joris:
AlexNet: Krizhevsky, A., Sutskever, I., & Hinton, G. E. (2012). Imagenet classification with deep convolutional neural networks. In Advances in neural information processing systems (pp. 1097-1105).
VGGNet: Simonyan, K., & Zisserman, A. (2014). Very deep convolutional networks for large-scale image recognition. arXiv preprint arXiv:1409.1556.
ResNet: Ren, S., He, K., Girshick, R., & Sun, J. (2015). Faster r-cnn: Towards real-time object detection with region proposal networks. In Advances in neural information processing systems (pp. 91-99).
Survey: Qin, Z., Yu, F., Liu, C., & Chen, X. (2018). How convolutional neural network see the world-A survey of convolutional neural network visualization methods. arXiv preprint arXiv:1804.11191.
TODO: reference slideset: http://cs231n.stanford.edu/slides/2019/cs231n_2019_lecture13.pdf