讲解 program、辅导 Python/Java程序语言
Coursework: Classification Task using ANN Supervised Algorithm
In this coursework, you will be performing an image classification experiment using ANN supervised learning on a specific dataset. This coursework is worth 100% of the module mark. Also, for the artificial neural network implementation you must have atleast two hidden layers and then build upon more layers systematically. The goal is to make a good prediction or decision while checkmating different performance evaluation metrics. Throughout the task, you will document the steps involved, including data preprocessing, data split, model construction, model training, and model testing. You will also analyze and present your results using various performance evaluation metrics such as loss, accuracy, ROC curve, recall, precision, confusion matrix, and f1-score without using the inbuilt functions. The assignment aims to assess your ability to apply machine learning concepts to real-world scenarios, encourage critical thinking and problem-solving skills, and enhance your scientific writing and presentation abilities.
Note: If you don’t follow any of the instructions, you will lose 20 score of each.
Dataset
The datasets has been given to you as a zip file.
Machine Learning and Evaluation
For this coursework, you will program and use ANN supervised learning algorithm. The network implementation of the ANN must have atleast two hidden layers to begin with.
Experiments must at least show:
The training and test loss performance.
The comparison of different hidden layer sizes for the ANN model.
It is vital to show meaningful pre-processing steps and deeper analysis of the ANN model for the classification tasks. Look out for additional features of the model interpretation or explainability and also for proposing new loss function.
The entire experiment should be submitted as jupyter notebook script (.ipynb) which can be reproduced.
Report structure and assessment (70% of module mark)
1)Brief Introduction: (10%)
a)Give a succinct explanation of the classification problem and how it connects to real-life problems.
b)Explain what the dataset is about and what its contents are, what relevant size characteristics are.
c)Describe the ANN model and its potential parameters.
d)Summarize how the dataset will be infused to the ANN model.
2)Implement and document the ensemble learning model and the training algorithm (20%)
a)Build your code up systematically step by step and test. Provide evidence of both code and explanation on your submitted report of the entire process on how the dataset was handle (data cleaning, scaling, normalization, split ratio), the model development starting with two hidden layers ANN model and performance by using the necessary evaluation metrics.
b)You need to define the custom loss, accuracy, roc-auc, sensitivity/recall, specificity, confusion matrix, precision, F1-score, rather than using in-built functions. The use of in-built loss is not allowed, accuracy, roc-auc, sensitivity/recall, specificity, confusion matrix, precision, F1-score functions, please define them before using it.
3)Hyper-parameter tweaking of the model while dealing with more hidden layers of the ANN model which include optimizers, learning rate, etc. Use appropriate illustrations and diagrams as well as statistics in the written report and code. (20%). During the hyper-parameter tweaking, pay rapid attention to finding an appropriate learning parameters with the best hidden layer of the ANN model as you continue to explore systematically.
b)This experiment can be conducted without a full back-propagation implementation as long as the forward propagation and the learning of the output layer works.
4a) Additional features of the model or experiment see above Explainability/ Interpretability eg LIME, SHAP, GRADCAM . (5%).
4b) Also, you need to propose a new custom loss function supported by mathematical equation and observable evidence in the model performance which is supposed to be better than the conventional loss function. (5%)
5)Write a brief conclusion on the results and compare your result with other algorithms with similar dataset from the homepage or from good articles. Explain possible current limitations of your solutions and possible further strategies/work to improve on the results (10%).
Note: Ensure you have a running code and also a corresponding report, effectively written. Also, you are not expected to screenshot your running codes to the written report, rather only the necessary results should be reported in the written report.
Instructions for Referencing
There are two ways of citation in Computer Science: IEEE or ACM. We recommend using IEEE style. IEEE citation style is used primarily for electronics, engineering, telecommunications, software engineering, computer science, and information technology reports. The three main parts of a reference are as follows:
1.Author’s name listed as first initial of first name, then full last.
2.Title of article, patent, conference paper, etc., in quotation marks.
3.Title of journal or book in italics
Each reference number should be enclosed in square brackets on the same line as the text, before any punctuation, with a space before the bracket.
Examples of in-text citation:
“. . .end of the line for my report [1].”
“The theory was first put forward in 1987 [2].”
“Scholtz [3] has argued. . . .” “For example, see [4].”
“Several recent studies [3, 4, 15, 22] have suggested that. . . .”
Reference
[1] S. Bhanndahar. ECE 4321. Class Lecture, Topic: “Bluetooth can’t help you.” School of Electrical and Computer Engineering, Georgia Institute of Technology, Atlanta, GA, Jan. 9, 2008.