Assessment Information
Assignment Number | 2 (of 2) |
Weighting | 15% |
Assignment Circulated | Friday 20 November 2020 |
Deadline | Friday 15 January 2021, 15:00 |
Submission Mode | Electronic |
Learning outcome assessed |
3. Ability to explain how deep neural networks are constructed and trained, and apply deep neural networks to work with large scale datasets
|
Purpose of assessment | To design and implement deep learning agents for classifification task |
Marking criteria | The marking scheme can be found in Section 2.2 |
Submission necessary in order to satisfy Module requirements? | No |
Late Submission Penalty | Standard UoL Policy. |
1 Objective
- Optical recognition of handwritten digits dataset
- RCV1 dataset
2 DNN-based Classifification
2.1 Requirement and Description
Language and Platform Python (version 3.5 or above) and Tensorflflow or Keras (latest version). You can use some libraries available on Python platform, including numpy, scipy, scikit-learn, and matplotlib. If you intend to use libraries other than these, please consult the demonstrator or the lecturer.
Learning Task You can choose either classifification (preferred) or regression, but needs to be the same choice as your Assignment 1 submission.
Assignment Tasks You need to implement the following functionalities:
f1 design and build two difffferent deep neural networks, one with convolutional layer and the other without convolutional layer;f2 apply model evaluation on the learned models. For the materials on model evaluation, you may take a look at the metrics explained in the lecture “model evaluation”. You are required to implement by yourself (i.e., do not call built-in libraries)
(a) the cross-validation of 5 subsamples,(b) the confusion matrix, and(c) the ROC curve for one class vs. all other classesfor(a) the two neural networks you trained in f1, and(b) the two traditional machine learning algorithms in the fifirst assignment.Please also summarise your observation on the results.
Additional Requirements We have additional requirements that,
1. the marker can run your code directly, i.e., see the results of functionality f1 by loading the saved models, without training.2. You need to provide clear instructions on how to train the two models. The instructions may be e.g., a difffferent command or an easy way of adapting the source code.
Documentation You need to write a proper document
1. detailing how to run your program, including the software dependencies,2. explaining how the functionalities and additional requirements are implemented, and3. providing the details of your implementation, including e.g., the meaning of parameters and variables, the description of your model evaluation, etc.
Submission fifiles Your submission should include the following fifiles:
- a fifile for source code,
- two fifiles for saved models, and
- a document.
2.2 Marking Criteria
Note 1 At the beginning of the document, please include a check list indicating whether the below marking points have been implemented successfully. Unless exceptional cases, the length of the submitted document needs to be within 4 pages (A4 paper, 11pt font size).
functionality f1: 50%
3functionality f2: 50%
- cross validation (10%)
- confusion matrix (10%)
- ROC curve (20%)
- discussion on the discovery (10%)
3 Deadlines and How to Submit
- Deadline for submitting the fifirst assignment is given at the beginning of this document.
- Please submit all the fifiles in a single compressed fifile with the fifilename
”
For example, “201191838.tar” or “201191838.zip” if your student number is 201191838.
Submissions with other fifilename will not be accepted. Also, in the submission fifiles, please do not include your name.
- Submission is via CANVAS system.
4 Q&A
A: As indicated, you can have one class vs. all other classes, where all other classes are deemed as a single class.
A: If you think some functionality is hard to implement, please explain in the document. The marker will then evaluate your explanation to give you a reasonable mark.
A: You can upload them again if needed. Note that, the marker won’t be able to access the fifirst assignment when they are marking the second assignment.
A: Marking is based on the quality of your implementation and your documentation, and will not take the runtime into consideration. On the other hand, you are recommended to explain the details of your program (including the runtime) in your document.
Q: Which version of Tensorflflow shall we use?