联系方式

您当前位置:首页 >> Java编程Java编程

日期:2024-11-23 10:46

Coursework 2: Neural networks

ENG4200 Introduction to Artificial Intelligence and Machine Learning 4

1. Key Information

• Worth 30% of overall grade

• Submission 1 (/2): Report submission

• Deadline uploaded on Moodle

• Submission 2 (/2): Code submission to CodeGrade

• Deadline uploaded on Moodle (the same as for report)

2. Training data

The training dataset has been generated by maximum flow analysis between nodes 12 and 2. The

feature dataset has 19 fields, which of each represents the maximum flow capacity of each of the

19 edges, taking the values of 0, 1, and 2. The output dataset has 20 fields, where the first 19

fields refer to the actual flow taking place on each of the 19 edges, and the last one refers to the

maximum flow possible between nodes 12 and 2.

Figure 1 The network used to generate training dataset. This information is just to help you understand the training

dataset; you must not generate additional training dataset to train your neural network.

3. What you will do

You have to create and train a neural network with the following requirement/note:

• Only the provided training dataset should be used, i.e. furthur traning dataset must NOT be

created by performing maximum flow analysis over the network in Figure 1.

• The accuracy on a hidden test dataset will be evaluated by a customised function as

follows, where the accuracy on the maximum flow field is weighted by 50%, and other 19

fields share the rest 50% (you may design your loss function accordingly):

You should prepare two submissions, code submission and report submission. In blue colour are

assessment criteria.

• Code submission should include two files (example code uploaded on Moodle):

o A .py file with two functions

▪ demo_train demonstrates the training process for a few epochs. It has three

inputs: (1) the file name of taining feature data (.csv), (2) the file name of

training output data (.csv), and (3) the number of epochs. It needs to do two

things: (1) it needs to print out a graph with two curves of training and

validation accuracy, respectively; and (2) save the model as .keras file.

▪ predict_in_df makes predictions on a provided feature data. It has two

inputs: (1) the file name of a trained NN model (.keras) and (2) the file name

of the feature data (.csv). It needs to return the predictions by the NN model

as a dataframe that has the same format as ‘train_Y’.

o A .keras file of your trained model

▪ This will be used to test the hidden test dataset on CodeGrade.

o You can test your files on CodeGrade. There is no limit in the number of

submissions on CodeGrade until the deadline.

o Assessment criteria

▪ 5% for the code running properly addressing all requirements.

▪ 10% for a third of the highest accuracy, 7% (out of 10%) for a third of the

second highest accuracy, and 5% (out of 10%) for the rest.

• Report submission should be at maximum 2 pages on the following three questions and

one optional question:

o Parametric studies of hyperparameters (e.g. structure, activators, optimiser, learning

rate, etc.): how did you test different values, what insights have you obtained, and

how did you decide the final setting of your model?

o How did you address overfitting and imbalanced datasets?

o How did you decide your loss function?

o [Optional] Any other aspects you’d like to highlight (e.g. using advanced methods

such as graphical neural network and/or transformer)?

o [Formatting] Neither cover page nor content list is required. Use a plain word

document with your name and student ID in the first line.

o Assessment criteria

▪ 5% for each of the questions, evaluated by technical quality AND

writing/presentation

▪ Any brave attempts of methods (e.g. Graphical Neural Network, Transformer,

or Physics-Informed Neural Network using physical relationships e.g. that

the flows going in and out of a node should be balanced) that go beyond

what we learned in classroom will earn not only the top marks for report, but

also (unless the accuracy is terribly off) will earn a full 10% mark for

accuracy in the code submission part. If you have made such attempts, don’t

forget to highlight your efforts on the report.


版权所有:留学生编程辅导网 2020 All Rights Reserved 联系方式:QQ:821613408 微信:horysk8 电子信箱:[email protected]
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:horysk8