Skip to content

Course Project for CS4263: Deep Learning by Quinn Murphey, Adrian Ramos, and Gabriel Soliz.

Notifications You must be signed in to change notification settings

qstickmurph/cs4263-project

Repository files navigation

cs4263-project

Course Project for CS4263: Deep Learning by Quinn Murphey, Adrian Ramos, and Gabriel Soliz.

Running the Code

To run the code, make sure that the package cs4263_project is in the same directory as your main.py file. Then, navigate to that directory and type python3 main.py.

If you want to tune any constant variables, all of them can be found at the top of main.py.

Most of the details are hidden away into the package, and the package does not have much documentation. However, most functions are self explanatory by their function names and the main.py code can be read as such.

Project Methodology

  • The project will be hosted at github.com/Nragis/cs4263-project.
    • Note: Since GitHub diff viewing for Jupyter Notebooks is not very effective, use ReviewNB for viewing changes to notebooks in commits and Pull Requests.
  • The model will be created using Tensorflow 2.8 and will use the Keras API
  • All required python modules will be noted in (requirements.txt)[#requirements.txt] and can be installed using pip install -r requirements.txt in the root directory.

Project Details

Inspiration (Reference Papers)

Data

Model

Results

Project Requirements

Proposal

This course aims to introduce you to deep learning by integrating the topics with your research interests. We will discuss this in more detail in the first week of class.

Write a brief proposal for your semester-long project. Your proposal must be less than 1 page, and include:

  • A title for your project
  • Your full name and UTSA ID (abc123)
  • Proposal draft:
    • Introduce your project idea. Be sure to include why the problem you are solving is important, and how deep learning might be useful to the solution.
    • Length: less is more! Write enough to convey your idea - maybe 3 sentence, maybe half of a page.
    • Format: any. Upload a .docx, .pdf, or .pages file here.
    • Your proposed project must include one of the topic modules of this course: CNNs, RNNs, GANs, or adversarial examples/learning/defenses.
    • If you have any prior experience with this project/topic, you must include at least 1 sentence describing what has been done and cite any of your previous work.
  • For undergraduates only, your proposal must also include:
    • The full names of your two team members (three names will be on your proposals - yours and 2 other people)
    • Your Communication Plan - write down a plan for communication with your teammates this semester. For example, you might have all decided to email every Tuesday, or Zoom meet on Fridays, or group text on Thursdays. Don't worry, your instructor won't join in! We just want to know you have actually met each other and have a plan :)
    • Your Research Plan - write down your plan for dividing the work throughout the semester. You might use the links to upcoming Updates 1-3 and final project deliverables to decide which team members will be responsible for writing certain parts, editing, revising, coding certain modules, running tests, data cleaning, and so on. This is to ensure all members are participating in both the coding and the technical writing components - it is not ok for any student to skip these critical learning tasks.
    • These sections can be as brief as 1 sentence, if you'd like.
    • Note that only 1 team member needs to submit this (and all) course project deliverable.

Update 1

With your project proposal approved, you should start working on your research. These updates are designed to keep you on track throughout the semester.

In this update, you'll start building a draft document for your final semester report. You will also frame your plan and goals for your project, by writing a concise overview of the project.

  1. Word or LaTeX?
    • Decide on your preferred format and download the template provided. Name the file LastName(s)_Update1.pdf
    • These templates are actually the author kits from a recent AI conference. There is a significant amount of formatting instructions included - remove these, replacing it with your information.
    • Keep a local copy of this document - you will submit a new one in each of the upcoming Updates and Final Report for this semester. If you select the LaTeX format, always submit a PDF.
    • Your submission must include a title, your full name (and any team member names!), and an abstract. You may also include a References section, if you already have any papers to cite.
  2. Abstract
    • The abstract in a research paper provides a concise but thorough overview of what to expect in the paper. We will discuss this further in class. Read some of the reference research papers in this course for some inspiration!
    • Your abstract must be no longer than 7 sentences. Use the format shared in class.

Update 2

It's been a while since our last check-in - how is your research going?

In this update, you'll demonstrate your plan for your proposed research, by identifying existing work and outlining your own approach to the problem. Rename your file to LastName(s)_Update2.pdf. Feel free to continue updating the remainder of your report, however these are the deliverables which will be assessed:

  1. Related Work
    • Cite at least 3 existing published papers, include these in the References section of your document.
    • Create a Related Work section of your report. Include in it a brief overview of the related works you have encountered so far - are there themes/clusters of ideas?. For each of the 3+ cited papers, write 1-2 sentences indicating what they have done differently than the other 2+ papers.
    • For help on writing these, as always, refer to other research papers to see their Related Work section.
  2. Proposed Approach
    • Once you have identified existing approaches, you can begin to propose your own approach to the problem.
    • Create a Proposed Approach section of your report. Include in it a few brief sentences indicating (1) how you plan to approach the problem, (2) why your approach should help to solve the problem, and (3) how your approach differs from the related works. Remember that this is research - it's possible that your proposed approach will change or it may not work out, and that's ok!
  3. Experiments
    • In order to evaluate your proposed approach, it is important to have a clear setup.
    • Create an Experiment Setup section of your report. Include the following:
      • Which related works you will compare with (this may be the 3+ from above!)
      • Data - which dataset will you report your results on? Include information about the dataset (even if we have covered it in class!). Cite the source, include its full name and acronym where applicable, describe the number of samples, labels, etc.
      • Evaluation metrics - which metric(s) will you use to report your results on this data? Include a full description of the metric (i.e. it is not enough to say "accuracy", that is not clear enough to implement)
  4. Note that if you chose to use the evaluation metrics and data used in the related works, you will not need to run their code. Instead report their numbers and cite their paper.

Update 3

The semester goes by quickly! It's time for another research check-in, focusing on drafting your final report and looking for any weak points.

  1. Results
    • As you are updating and improving your code, you should start to have some "preliminary" results. (*Results that may not be great, yet!)
    • Leverage the evaluation metrics you identified in the previous update. Include the results of these metrics in 2 figures in your paper. For example, you might need one table to compare your results with the related works.
  2. Introduction
    • Add a section after your abstract for Introduction.
      • This section should be readable by a non-expert. Use real-world examples and clear language to clarify all points made in your abstract.
    • Note: do not simply restate any part of your abstract. Instead, use it as a guide - the introduction should instead be an approachable section for motivating your work.
  3. Drafts & Revisions
    • Take a moment to read through your draft from beginning to end. Is it cohesive?
    • Start filling in the blanks and making changes to all sections as needed. Pay attention to incomplete sentences and grammar.

Final Submission & Presentation

TBA

About

Course Project for CS4263: Deep Learning by Quinn Murphey, Adrian Ramos, and Gabriel Soliz.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published