Paul Bodily About Courses Research Outreach Tips for Communicating Teaching Philosophy Vitae

Group Project

Your goal in the group project is to get the highest possible generalization accuracy on a real world application of your own creation. You will come up with some task which you believe could be generalized with machine learning and as a group you will go through all the steps from beginning to end to get a good result. A large part of the project will be deciding on and developing appropriate input features, followed by gathering sufficient labeled data. After you have come up with basic features and data, you will choose machine learning model(s), and format the data to fit the model(s). Expect that initial results may not be as good as you would like. You will then begin the iterative process of a) trying adjusted/improved data/features, and b) adjusted/different machine learning models in order to get the best possible results. You may use your own implementations of models and we encourage you to consider resources such as Scikit, Tensorflow or WEKA for doing simulations on multiple models. It is fine/great if you also want to try deep learning or other models not implemented in class for some of your models. Your written report and oral presentation (formats below) should contain at least the following:

  1. Motivation and discussion of your chosen task
  2. The features used to solve the problem and details on how you gathered and represented the features, including critical decisions/choices made along the way
  3. Your initial results with your initial model
  4. The iterative steps you took to get better results (improved features and/or learning models)
  5. Clear reporting and explanation of your final results including your training/testing approach
  6. Conclusions, insights, and future directions you would take if time permitted


  1. Prepare and submit a polished paper describing your work. Submit one hard copy at the beginning of class on the due date. You should use the IEEE Manuscript Template (available from the in either LaTeX (which is *the* way to write nice looking papers) or Word format. Page limit is six A4 size pages. Color images are fine. I will not be getting out a ruler to make sure you match format exactly, but it is a good experience to put together a professional looking paper. Your paper should look like a conference paper, including Title, Author Affiliations, Abstract, Introduction, Methods, Results and Conclusion (Bibliographical references are optional for this, but do include them if you have any). Here are some examples of a well written write-ups from a previous semesters. The specifications for this report have been defined to allow for quick submission to the i-ETC conference in January, which I am happy to help with if you are interested.
  2. Prepare a polished oral presentation, including slides, that communicates your work. Your presentation should take 10 minutes and allow 3 minutes for questions (a rough guide for slide preparations is about 1 slide per 1-2 minutes). Practice in advance to insure a quality appropriately timed presentation. You will be graded by your peers on your presentation using this rubric.
  3. Complete the assignment titled "Evaluate Your Project Group" with an honest evaluation of the contributions of your group members (including yourself). For each, include a score from 0 to 10 indicating your evaluation of their work (10 meaning they were a valuable member of the team that made significant contributions to the project and were good to work with, 0 meaning they contributed nothing). If you would like, you may also include any clarifying comments, etc.


Click here to see examples from a previous course.

CS 5599 Final (Group) Project

Students taking the course for graduate credit will also have a Final Group Project, but with some additional requirements. The goal of the CS 5599 Final Project is to provide a structured opportunity for graduate students to incorporate machine learning solutions into a graduate-level research project at ISU. Machine learning is increasingly being incorporated into a variety of disciplines and the skills you gain in this class prepare you well to participate in collaborative, (potentially) cross-discipline research. The project you choose may relate to your graduate research or that of another graduate student in the course. As with the Final Group Project for the CS 4499 students, you should implement and experiment with machine learning model(s) that are appropriate to the project you choose. You are encouraged to work as a group with other CS 5599 students, but you may work alone or with a CS 4499 student (if the latter is willing to agree to the more difficult requirements for the CS 5599 Final Project).

The conference-style report for the CS 5599 Final Group project should include a related works section and compare the performance of the student's implemented model with that of other models (as implemented possibly by third-party software such as Weka) designed to solve the same task.

CS 5599 students will give an oral presentation with the same requirements as those for the CS 4499 students. Your report and oral presentation should answer the following questions:

  1. What problem do you want to solve?
  2. Who cares about this problem and why?
  3. What have others done to solve this problem and why is this inadequate?
  4. What is your proposed solution to this problem?
  5. How can you demonstrate that this is a good solution?

Your oral presentation will be evaluated by your peers using a rubric similar to this. Your group should plan to take 12 minutes to present with time for Q&A to follow.


Thanks to Dr. Tony Martinez for help in designing this course.