QBUS6840 Group Assignment (30 marks)
October 13, 2020
1 Background and Task
In this group project, your task is to develop a predictive model to forecast the daily confirmed
cases of COVID-19 of a country given its historical daily confirmed cases. The COVID-19 data set
Covid_19_train.csv contains the COVID-19 daily cases observed from 29/02/2020 to 20/09/2020.
This data set is based on a real COVID-19 data set with some added noise for the de-identification
purposes. The test data set Covid_19_test.csv (not provided) has the same structure as the training
data, and contains the COVID-19 daily cases from 21/09/2020 to 05/10/2020 (15 days).
Your task is to develop a predictive model, using Covid_19_train.csv, to forecast the COVID-19
daily cases of the country from 21/09/2020 to 05/10/2020. Note that, this is a multiple-step-ahead
forecast problem.
Test error
For the measure of forecast accuracy, please use mean squared error (MSE). The MSE, computed
on the test data, is defined as follows. Let ybT+hj1:T be the h-step-ahead forecast of yT+h, based on
the training data y1:T, where yT+h is the h-th value in the test data Covid_19_test.csv. The test
error is computed as follows
| test_error = | ∑h=1 (ybT+hj1:T – yT+h)2, |
1
15
15
where 15 is the number of observations in the test data.
2 Submission Instructions
1. Each group needs to submit TWO files (or more if necessary) via the link in the Canvas site.
• A document file, named Group_xxx_document.pdf, that reports your data analysis
procedure and results. You should replace the xxx in the file name with your group ID.
• A Python file, named Group_xxx_implementation.ipynb (or
Group_xxx_implementation.py) that implements your data analysis procedure
and produces the test error. You might submit additional files that are needed
for your implementation, the names of these files must follow the same format
Group_xxx_<name>.py. You should replace the xxx in the python file name with your
group ID.
2. About your document file Group_xxx_document.pdf
1
• Describe your data analysis procedure in detail: how the Exploratory Data Analysis
(EDA) step is done, what and why models/methods are used, how the models are
trained, etc. with sufficient justifications. The description should be detailed enough so
that other data scientists, who are supposed to have background in your field, understand and are able to implement the task. All the numerical results are reported up to
four decimal places.
• Clearly and appropriately present any relevant graphs and tables.
• The page limit is 25 pages including EVERYTHING: appendix, computer output,
graphs, tables, etc.
• You must use the cover sheet provided on Canvas.
3. The Python file is written using Jupyter Notebook or Spyder as the editors, with the assumption that all the necessary data files (Covid_19_train.csv and Covid_19_test.csv) are in the
same folder as the Python file. If you use deep learning models, then please assume that
Keras (with Tensorflow backend) has been installed.
• If the training of your model involves generating random numbers, the random seed
in Group_xxx_implementation.ipynb (or Group_xxx_implementation.py) must be
fixed, e.g. np.random.seed(0), so that the marker expects to have the same results
as you had.
• The Python file Group_xxx_implementation.ipynb (or
Group_xxx_implementation.py) must include the following code
import pandas as pd
covid_19_test = pd.read_csv(‘Covid_19_test.csv’)
# YOUR CODE HERE: code that produces the test error test_error
print(test_error)
The idea is that, when the marker runs Group_xxx_implementation.ipynb (or
Group_xxx_implementation.py), with the test data Covid_19_test.csv in the same
folder as the Python file, he/she expects to see the same test error as you would if
you were provided with the test data. The file should contain sufficient explanations so
that the marker knows how to run your code.
• In case you want to test your code to see if a test error is produced, a “fake” test data
is provided. This data set has the same format as the real test data Covid_19_test.csv,
except that the COVID-19 cases in there are not the actual values. Don’t worry about
the test error produced with this “fake” test data – this is just to test if your code runs
smoothly.
• You should ONLY use the methods covered in the lectures and tutorials in this assignment. You are free to use any Python libraries to implement your models as long as
these libraries are be publicly available on the web.
4. Your group is required to submit meeting minutes. You may use the templates provided
for preparing agendas and meeting minutes. The more detailed the meeting minutes, the
better (who does what next, what has been done by whom, etc.). In case of a dispute within
a group, I will use the meeting minutes and/or request for more information to make adjustment to the individual marks. Should a dispute occurs, please treat each other in a
professional and respectful manner.
2
5. Each member of the group is also required to submit a peer assessment,
named Group_xxx_Peer_Assessment_<your SID>, via the link on Canvas under
Assignments/Peer-review submission (this is for submitting the peer assessment only).
Please use the peer criteria sheet Peer Assessment Criteria and assessment form Peer Assessment of Team Members, provided on Canvas, for this purpose. It’s important to have a fair
and objective assessment of your team members.
3 Marking Criteria
This assignment weighs 30 marks in total. The content in Group_xxx_document.pdf contributes
15 marks, and the Python implementation contributes 15 marks. The marking is structured as
follows.
1. The accuracy of your forecast: Your test error will be compared against the smallest test
error among all groups. The marker first runs Group_xxx_implementation.ipynb (or
Group_xxx_implementation.py)
• Given that this file runs smoothly and a test error is produced, the 15 marks will be
allocated based on your prediction accuracy, compared to the smallest MSE produced
by the best group, and the appropriateness of your implementation.
• If the marker cannot get Group_xxx_implementation.ipynb (or
Group_xxx_implementation.py) run or a test error isn’t produced, some partial marks (maximum 5) will be allocated based on the appropriateness of
Group_xxx_implementation.ipynb (or Group_xxx_implementation.py).
2. Your report described in Group_xxx_document.pdf: The maximum 15 marks are allocated
based on
• the appropriateness of the chosen forecasting method.
• the details, discussion and explanation of your data analysis procedure.
4 Errors
If you believe there are errors with this assignment please email the coordinator immediately at
minh-ngoc.tran@sydney.edu.au.
3