CS 4364 Lab 8

  • Lab 8, Due Wednesday, 04/01/2026, by midnight (23:59, EST)

Announcements

Goals

In this lab, you will:

  • learn the basic ideas of CNN (Convolutional Neural Networks),

  • connect CNN to your project if appropriate,

  • update your paper and code for peer review, and

  • complete a required individual in-class code demo.

1. Learn the CNN Model

  • Study the main parts of a CNN, including convolutional layers, pooling layers, activation functions, and fully connected layers.

  • Understand how these parts work together to extract features and make predictions.

  • If appropriate for your project, implement a CNN for a task such as image classification or pattern recognition.

  • Evaluate your model using basic metrics such as accuracy, precision, recall, or F1 score.

  • Document your understanding in ML_Algorithms.PDF.

    • Reflection: Briefly explain your current understanding of CNNs in your own words. You may discuss convolutional layers, pooling, activation functions, and real-world applications such as image classification, object detection, or pattern recognition.

    • Learning Gaps: List any questions, difficulties, or unclear points you still have while learning CNNs. Keep this specific and concise.

2. Connect CNN to Your Project

For this lab, the main focus is programming. I want you to spend most of your time getting your code working and learning from the process.

  • For Experiment Papers: Test whether CNN is useful for your task. If it is, implement or try a CNN-based approach and compare it with 1 to 2 baseline methods, such as SVM, KNN, or another relevant model. A simple comparison using metrics such as accuracy, precision, recall, or F1 score is enough for this lab.

  • For Review Papers: Keep the focus close to code and implementation. Briefly summarize how CNN-related methods are used in work relevant to your topic, and include at least 3 useful GitHub repositories or code resources. For each one, explain what it does and why it is relevant to your project.

This is the most important part of the lab. I care more about clear programming progress than polished writing at this stage.

  • Each team should submit one zip file for the group.

  • For Experiment Papers: Include your current code, your CNN work, brief notes on the baseline methods you tested, and a README file with instructions for running the code.

  • For Review Papers: Include a short summary of at least 3 useful GitHub repositories or code resources. For each one, briefly explain what it does and how it relates to your review topic.

  • Keep the zip file size 5 MB or less.

  • Organize the folder clearly and include a README file.

  • Do not include dataset files. If your code depends on a dataset, provide a link or access instructions in the README instead.

4. Update Your Final Paper

Keep the paper update light for this lab.

  • Add a short paragraph or a small table showing how this lab connects to your final paper.

  • The goal is simply to reflect your current progress, not to do a major rewrite.

  • For Labs 8 and 9, your main effort should go into programming and code understanding.

5. Double-Blind Preparation

Please keep your code and paper reasonably prepared for double-blind review by removing names and other identifying details.

6. Required Individual Code Demo

  • In addition to the team submission, each student must complete an individual in-class code demo.

  • Each student should sign up for one time slot during one of the next two class meetings after the lab due date.

  • Each demo should be about 3 to 5 minutes.

  • During the demo, each student should:

    • run the current code live if possible,

    • briefly explain what the code is doing,

    • explain their own contribution to the project, and

    • answer 1 to 2 short questions in class.

  • If the full code is not fully runnable, a clear code walkthrough is acceptable, but a live demo is preferred whenever possible.

  • This is a required individual component of the lab.

7. Submission Guide

  • Each team should submit one zip file on behalf of the group to Blackboard.

  • Ensure all team members' names are included in a file named authors.txt on the submission.

  • Name the file as follows: lab_8_lastname1_lastname2.zip

  • Your submission should include:

    1. Your_midterm_submission_order_Lab_8.pdf, a double-blind version of your updated paper draft.

    2. ML_Algorithms.PDF, your CNN reflection and learning notes.

    3. A well-organized code folder or code-related materials with a README file.

  • Do not include dataset files or other large raw data files in the zip file.

  • Reminder: this lab includes both a team submission and an individual code demo.

8. Notes

  • Submit your zip file for the lab to BlackBoard.

  • Lab assignments will typically be released on Thursday and will be due by midnight on the following Wednesday.

  • Lab 8, Due Wednesday, 04/01/2026, by midnight (23:59, EST)