Final Project

For the course’s final project, you have two options

  1. Select a paper and reproduce their results
  2. Work on a problem you like

We also have a 15 bonus points on the final project’s grade. Find out more at the bottom of this page.

Important Notes:

  • 20% of the project grade is for the final presentation.
  • The projects should be done individually.
  • Please finalize your choice by 30 Mehr 1401.

Working on a Problem of Your Own

If you have a particular problem/dataset in mind, please send us an email with your proposal. Once it is approved, you can start ahead and work on the project.

Reproducing the Result of a Paper

For the first option, you can select a paper and then reproduce their results. Please go find 3 candidate papers and share them with us and we finalize one together.

  • If you could not find a proper paper, we will provide a list of suggested options and you can select from them in the second half of Mehr.

List of suggested papers

Type Goal Paper Title Link
Generative adversarial networks Deepfake detection Machine learning based medical image deepfake detection: A comparative study Link
Clustering Patient stratification Accounting for diverse feature-types improves patient stratification on tabular clinical datasets Link
Classification, Adaptive Boosting address the problem of imbalanced data in classification A Statistical Approach to Cost-Sensitive AdaBoost for Imbalanced Data Classification Link
Ensemble, Classification detection of fake news related to COVID-19 on social media A Heuristic-driven Ensemble Framework for COVID-19 Fake News Detection Link
NLP, Classification, Deep learning predicting an individual’s gender based on their first name Predicting Gender by First Name Using Character-level Machine Learning Link
Deep learning, Explainable AI development of robust vision pipelines using XAI A novel application of XAI in squinting models: A position paper Link
Supervised Machine learning predicting heart disease using ML algorithms Supervised Machine Learning-Based Cardiovascular Disease Analysis and Prediction Link
NLP, Transfer learning explore a novel approach to text classification Classifying Textual Data with Pre-trained Vision Models through Transfer Learning and Data Transformations Link
CNN, Image classification develop an efficient CNN Integrated Image Sensor and Light Convolutional Neural Network for Image Classification Link
CNN, Classification Using CNN for gender recognition 11K Hands: Gender recognition and biometric identification using a large dataset of hand images Link
Supply-Demand Prediction, Deep learning predicting real-time car-hailing supply-demand DeepSD: Supply-Demand Prediction for Online Car-Hailing Services Using Deep Neural Networks Link
Image classification non-parametric Nearest-Neighbor based image classification In defense of Nearest-Neighbor based image classification Link
Classification breast cancer classification Using Machine Learning Algorithms for Breast Cancer Risk Prediction and Diagnosis Link
Deep convolutional neural network, Classification recognizing handwritten Bangla digits Bangla handwritten digit recognition using autoencoder and deep convolutional neural network Link
Stock Market Prediction predicting stock market prices A Machine Learning Model for Stock Market Prediction Link
Fraud detection, Machine learning models, Deep learning detecting credit card fraud efficiently Financial Fraud Detection in Healthcare Using Machine Learning and Deep Learning Techniques Link
Regression predict daily air pollutants Short-Term Air Quality Prediction Based on Fractional Grey Linear Regression and Support Vector Machine Link
Ensmble Models enhancing solar energy prediction using a hybrid model integrating ML and statistics Forecasting Solar Energy Production Using Machine Learning Link
Classification improving breast cancer recognition accuracy Breast Cancer Identification Using Machine Learning Link
Deep learning, Classification classifying human activities Human activity classification using deep learning based on 3D motion feature Link

Bonus Points

You can also enter a competetion on Kaggle (which will be introduced later on).

Here’s how the points are allocated:

  • 2 points: Each indivdiual with a successful entry
  • Points on scoring compared to class-mates:
    • 5 Points: best result among class mates
    • 2 Points: second-best result among class mates
    • 1 Points: third-best result among class mates
  • Points on scoring compared to other contestants:
    • 8 Points: result scored among top 100 contestants
    • 5 Points: result scored among top 300 contestants
    • 3 Points: result scored among top 500 contestants
    • 1 Points: result scored among top 1000 contestants

Project's Presentation

Part of the final project is presenting your work in the class.

  • You’ll have 15 minutes to present your project (excluding Q&A)
  • The presentation should be done in the form of slides, prepared by Powerpoint, Google Slides, Keynote, PDF, etc. In other words, you are free to choose the tool you use to prepare slides, but they need to be well-structured.
    • Therefore, handwritten notes or photos of handwritten slides do not qualify ;)

Grading

As mentioned above, from the 100 points for the final project, 20 points is dedicated to the final presentation, broken down as follows:

  • 10 from the teaching staff
  • 7 from other classmates: we will conduct a poll at the end of each presentation and get feedback from your classmates.
  • 3 bonus points: participating in grading other classmate’s presentation and giving them feedback

The criteria for grading the presentations are as follows:

  • 30% on Structure (i.e. form):
    • Punctuality: you have 15 minutes to present you work. Starting and finishing on time is crucial.
    • Structure: your presentation should have a title page, table of contents, main body and a conclusion.
    • Looks: please choose proper font type, font size, colors (for fonts, images, background, etc.). Presentations are among the few places that looks matter ;)
    • Conveying information/Story telling: no matter what you present, your goal is to convey some knowledge or information to your audience. In fact, the presentation is for your audience, as you know already what you want to say! So the more your audience understand your points, the closer you have gotten to your ultimate goal. So don’t take this part lightly :)
    • References: whatever you use from external resources (table/image/text/…) please make sure to put a reference in the slide or in the end of your presentation
  • 70% on the Content:
    • The problem: please clearly explain the problem you have worked on.
    • Its importance: tell us why this is an important problem (and the great things that could happen if it is solved!)
    • Previous work on the topic: briefly review what others have done on this topic
    • Your approach: now that we are ready, explain what approach you (or the paper you are trying to reproduce) used to tackle the problem
    • Results: share the results you’ve achieved with us and your intuition about them
    • Conclusion and future work: summarize your achievements and maybe share some of the challenges ahead with the class

By the way a lot of these points also apply in writing scientific papers or business proposals ;)

Some Resources to Help You

Many think that presentation is actually an art, through which you can dazzle your audience, and a good presenter is an artist (think of Steve Jobs for instance).

Here are some external resources to hopefully help you (and me of course!) to master this art:

These were only a few suggestions. Feel free to search for other resources and share your findings with us :)

Project's Report and Notebook

The other important part of final project is its report and notebook.

  • You must submit your compiled notebook (Google Colab/Jupyter notebook) by Sunday, 10 Bahman 1400, 23:59 Tehran Time.
    • The notebook should be well-commented and have lots of explanation about what different blocks of code do and why a particular algorithm/library is used.
    • You must clearly show that you have understood the algorithms you have used and not just copy-pasted them to achieve the results. So please take this part seriously.
    • In other words, having learned the path towards achieving the paper/project’s objective is as important (if not more important) as accomplishing the objective itself!
  • You need to submit a report as part of your final project as well.
    • This report can be a separate PDF file, or it can be integrated within the notebook itself
  • The report should contain suffcient information about the whole project, and it shoudl especially cover the following parts:
    • Explaining the problem at hand
    • Why the problem is important
    • Previous work on the topic (mentioned in the paper or something you have encountered in the past)
    • The approach you have used in the project (and the reason behind it) to solve the problem (or reproduce the resuults of the problem)
    • Results of running the algorithm, and how it compares to other approaches or previous work
    • Conclusions and future work
  • In essence, think of the project’s report as a mini-paper
    • In fact, I strongly encourage writing the report in English and as a separate PDF file, as you can extend it later to a full paper and submit it for peer review if you were interested.
  • Do not forget to provide reference to any piece of code, text, image, etc. that you reuse in your project.

Grading

As mentioned above, from the 100 points for the final project, 70 points is dedicated to the final notebook and report:

  • 50 Points on the notebook:
    • 15 points: notebook running correctly and without a bug
    • 20 points: sufficient comments that clearly explains what each code block does, and that you have mastered the code you have used in the notebook
    • 15 points: the results of the algorithm are correct, i.e. the code correctly reproduces the paper it is based on or if it is a personal project, the results are in line with project’s definition and objectives.
  • 30 Points on the two progress reports.
    • For the first report:
      • 5 points: explaining the problem at hand and its importance
      • 5 points: previous work
      • 5 points: the approach you have selected
    • For the second report:
      • 5 points: comparison of different algorithms
      • 10 points: results and how they compare to other approaches/algorithms
    • Clear and informative visualizatins help here a lot

Some Resources to Help You

Like presentation, wiring a clear and informative report/paper/article is considered an art by many.

Here are some resources to hopefully help all of us to master this art:

Additionally, here are some examples of nice notebook/code examples (the codes themselves are not relevenat, but how the notebooks are structured overall might be helpful):