COMP3010 Machine Learning ASSIGNMENT
Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit
Machine Learning
COMP3010
ASSIGNMENT
Due Date: Week 12 - 18 May 2023 at 11:59pm.
Weight: 20% of the unit mark.
1 Overview
This assignment provides an opportunity for you to demonstrate how you can use what you have learned from lectures and tutorials to train deep neural network efficiently and investigate the methods to speed up the training and inference. External codes are allowed but you must cite them properly in your report. Feel free to use the work you have done in your practical exercises.
A substantial attempt for this assignment is required to pass this unit. A mark of 20% or more is considered a substantial attempt. You will not pass this unit if your total mark of this assignment is lower than 20%, even if you achieve full marks in your mid-semester test and final exam.
2 Background
The training and performance of neural networks depend on many factors such as the neural network architectures, the regularization methods, and the hyper-parameters (e. g. learning rates, epoch numbers, etc). For a given machine learning task, it might be difficult and time-consuming to find efficient methods to train the neural networks fast and achieve the best performance. In this assignment, you are requested to first read a series of tutorials regarding the training of residual neural networks, then to implement the ideas you learnt from the tutorials for the training of the residual network proposed in the textbook for image classifications on the databases CIFAR-10 and FashionMNIST, and finally to report your findings and experimental results.
3 The Tasks
3.1 Task 1: Read the tutorials athttps://myrtle.ai/learn/how-to-train-your-resnet/on how to train your ResNet efficiently and summarize the key factors which can affect the training of residual neural networks. [10 marks]
3.2 Task 3: Efficient Training of Residual Networks for Image Classification on the FashionMNIST Dataset . [30 marks]
• Use the source code resnet.jpynb provided in Section 8.6 of the textbook “Dive Into Deep Learning” as a template, run the algorithm and report the accuracy, total training time and the average training time of one epoch.
• Use the ideas learnt from Task 1 to minimize the training time while achieving similar accuracies (around 80%) for this dataset.
• You are expected to report the changes of the neural network architectures, the changes of hyper-parameters, regularization methods and the corresponding performances (including accuracy and training time) of the trained neural networks.
3.3 Task 3: Efficient Training of Residual Networks for Image Classification on the CIFAR- 10 Dataset . [30 marks]
• Use the source code resnet.jpynb provided in Section 8.6 of the textbook “Dive Into Deep Learning” as a template, make necessary changes for image classification on the CIFAR-
10 dataset, and report the accuracy, total training time and the average training time of one epoch.
• Use the ideas learnt from Task 1 to minimize the training time while achieving 90% accuracy for this dataset. From the post, the target of the accuracy is 94% but you may not be able to implement all the ideas in the tutorials. Try your best to achieve 90% or above.
• You are expected to report the changes of the neural network architectures, the changes of hyper-parameters, regularization methods and the corresponding performances of the trained neural networks.
• If there is any gap between the performance, including accuracy and training time, of your trained models and those reported in the tutorials at https://myrtle.ai/learn/how-to-train- your-resnet/ , explain the possible causes and what needs to be done to achieve a better performance.
4 Specifications and Marking Guide
A written report must be submitted, in PDF format, to Blackboard by the due date. This submission must contain the following items:
• A completed assignment cover sheet
• Printout of your source code
• A document that includes:
– Statements on how much you have attempted the assignment.
– The detail of your implementation for each task: this must clearly indicate your approach, and the methods you use to improve the accuracy and/or training speed. It must allow the marker to understand the details of your methods and experimental results.
– Supporting diagrams, figures, tables that help describe your programs and performance clearly.
– References that your implementation is based on or inspired from.
Your report will be marked based on: 1) clarity and presentation (20%); 2) the description of your implementation and the judgements of your design (40%); and 3) experimental results (e.g. accuracy and training time) and discussions (40%).
5 Assignment Test (30 marks)
An Assignment Test will be conducted in Week 13 during the lecture time. The purpose of this test is to test how you understand the ideas and their implementations of the tutorials at https://myrtle.ai/learn/how-to-train-your-resnet/ and the implementations of the resnet.jpynb and your source codes. This test also aims to test whether you did your own work in your submission. If your assignment test mark score is very low, say 10 marks or below, you may be requested to have an oral test on your report and the marks of your written report may be reduced.
6 Submission
You are required to submit your written report including a printout of source codes, by Sunday 21- May-2023, 11:59pm Perth time.
You are responsible for ensuring that your submission is correct and not corrupted. You may make multiple submissions, but only your newest submission will be marked.
You will need to make yourself available for the demonstration session. Exact date and time will be announced on Blackboard.
The late submission policy (see the Unit Outline) will be strictly enforced. A submission 1 second late, according to Blackboard, will be considered 1 day late. A submission 24 hours and 1 second late will be considered 2 days late, and so on.
You must also submit a completed, signed “Declaration of Originality” form.
2023-05-08