2. CSC 578 Own Project Details

The Final Project is an individual project. Each student may choose either a project provided by the instructor or a topic that he/she is interested in implementing or studying further.

Topics for self-proposed ("Own") Project must be approved by the instructor, and that approval will not come easily. In order for a proposal to be approved, you must provide me with a strong justification for the topic and a firm, a clear, detailed list of resources that you will consult, and a step-by-step weekly plan for how you will accomplish the project. I will also expect weekly updates on your progress.

Proposal

If you want to do your own project:

  1. Do a good amount of preliminary research on the topic,
  2. Send an email to the instructor, with the subject line "CSC 578 Final Project Proposal" before the end of Monday, June 3.
  3. Describe your planned project, addressing these points. Each point must consist of at least one paragraph (where one paragraph must have minimally three sentences).
    • project title,
    • detailed description of the problem to solve,
    • motivation (why you came up with this idea),
    • detailed description of tools and dataset(s),
    • fully specified references (URL's, paper info, etc.) including authors, dates, where published, and
    • what you expect to learn from the project.

NOTE: Plagiarism, or use of Large Language Models (such as ChatGPT) will not be tolerated. Your proposal and every aspect of your report will be submitted to TurnItIn. All text must be written in your own words, unless it is:

  • a minor part of your submission,
  • is clearly quoted and cited, and
  • full references are supplied.

Example projects from previous classes:

  • "Neural Networks using GAN Architecture + Labels"
  • "(Yet another) Text Generating Recurrent Neural Network"
  • "Identifying Potholes Using On-Board Images of a Roadway"
  • Using RNN to distinguish text from different languages
  • CNN for Autonomous driving using TensorFlow
  • CNN for MNIST from scratch (and not using NNDL code)
  • NN Ensemble with random subspaces for linear regression problems
  • Character-level RNN, LSTM from scratch and with Keras
  • Sarcasm identification comparing MLP, LSTM, and GRU
  • Classifying baseball pitch types with R (nnet), Keras, Theano.
  • Distributed training for Deep Learning
  • Web applications with embedded Deep Learning
  • Deep Learning on mobile platforms
  • Autonomous driving simulation using Deep Learning

Deliverables

  1. An executive summary document summarizing the project goals, methods used, and conclusions. A one-page pdf.
  2. The main report. A pdf file with at least 6.5 pages (including References but excluding tables/charts and Appendices).
    • The report must minimally have the following labeled sections:
      1. Introduction
      2. Project description including details on the data set(s) used, description of the model development process/journey and different models you experimented with
      3. Results, including visualizations
      4. Discussion: analysis of the results, what worked well, and what didn't
      5. Conclusions and future work
      6. References for all sources that you consulted
      7. Appendices as extra pages including data samples (not long), examples of dataset inputs and outputs, and fully documented critical code segments
  3. Source code files. If any of them are a Jupyter notebook file, include the pdf or html version as well.
    • Note: This project is expected to require significant coding beyond anything that you might get from other sources. All code should be very well-commented. You should very clearly indicate what code came from other sources and how you extended it.

Evaluation criteria

The "own project" will be evaluated based on the following criteria, modeled after Dr. Bamshad Mobasher's DSC 478 course project page.

  1. Quality and Soundness:
    • Clear statement of objectives of the project, and discussion/justification of the appropriateness of approaches and neural network models and hyperparameters used to accomplish the objectives. The discussion must show the student's deep understanding of the concepts of the models and hyperparameters used, and explicitly write the justification of the appropriateness of using them in the given project.
    • Literature review – Description of example prior work that used the same data.
    • Discussion of the structure and characteristics of the data, including the results of any exploratory data analysis and data visualization performed on the data.
    • Thorough discussion and analysis of the results, including an analysis of how the approaches used worked in accomplishing the project objectives. Example results must be shown in the Appendix.
  2. Scope (Breadth and Depth):
    • The project must have enough breadth and depth. The project must include the exploration of various data variables (input as well as output), data transformations and augmentations, along with various models of different complexity and characteristics.
  3. Evaluation:
    • Justification of the evaluation metrics used. Discussion of other (applicable) metrics as well.
    • Evaluation of the results comparing to previously reported/published results of comparable work.
    • Error analysis.
  4. Future work
    • Description of how you would do differently/more next time based on the results and self-reflection.