CS 7641 Supervised Learning Report | Questions and Answers
Latest Updated 2026/2027 | Georgia Institute of Technology
Supervised Learning Report
CS7641: Machine Learning
1 Assignment Weight
The assignment is worth 15% of the total points.
Read everything below carefully as this assignment has changed term-over-term.
2 Objective
The purpose of this project is to explore techniques in supervised learning. It is important to realize that
understanding an algorithm or technique requires understanding how it behaves empirically under a variety of
circumstances. As such, rather than implement each of the algorithms, you will be asked to experiment with
them and compare their performance. This is quite involved and also possibly quite different from what you
are used to; however, it is central and in many ways the essence of supervised learning.
3 Procedure
You are given two vastly different datasets. You will design two interesting classification problems after initial
data exploration. For the purposes of this assignment, a classification problem is a set of training examples
and a set of test examples. You will need to explain why the datasets are interesting from an ML practitioner
perspective and be able to discuss context with a deeper understanding of the datasets.
You will go through the process of exploring the data, develop a hypotheses, tune algorithms you’ve learned, and
write a thorough analysis of your findings. You need not implement any learning algorithm yourself; however,
you must participate in the journey of exploring, tuning, and analyzing. Concretely, this means:
• You may program in any language you wish and are allowed to use any library, as long as it was not
written specifically to solve this assignment.
• TAs must be able to recreate your experiments on a standard linux machine if necessary.
• The analysis you provide in the report is paramount.
You should experiment with these three learning algorithms on each dataset. They are:
• k-Nearest Neighbors. You must try significant values of k for comparison. Justification with comparison
will be necessary with your choices of k.
• Support Vector Machines. You must try at least two different kernel functions.
• Neural Networks. You may use networks of nodes with as many layers as you’d like. You must test
two distinct activation functions appropriate for your network and the data. Here is a nice reference from
a course blog post.
Each algorithm is described in detail in your textbook, the assigned readings on Canvas, and on the internet.
Instead of implementing the algorithms yourself, you should use libraries that do this for you and make sure to
1
, provide proper attribution. Also, note that you’ll need to do some tinkering to obtain good results and graphs,
and this might require you to modify these libraries in various ways.
Extra Credit Opportunity:
There is an opportunity to earn up to 5 points of extra credit for a deeper exploration of Neural Networks.
In addition to experimenting with two activation functions with both datasets, you must:
• Compare at least two different architectures paradigms (e.g., depth vs. width trade-offs),
• Evaluate the effect of different weight initialization schemes (e.g., Xavier, He, uniform), or
• Explore the impact of a regularization techniques such as dropout, batch normalization, and L2
regularization.
You must clearly explain the rationale behind your choices and analyze the outcomes using training/testing
performance curves. Your analysis should include both qualitative interpretation and quantitative justification
related to overfitting, convergence behavior, and network stability. This is not mandatory and may require
additional effort and experimentation.
3.1 Experiments and Analysis
Your report should contain:
• A description of your classification problems, and why you feel they are interesting from an ML perspective
(rather than descriptors or opinions). To be interesting the problems should be non-trivial on the one
hand, but capable of admitting comparisons and analysis of the various algorithms on the other.
• The training and testing error rates you obtained running the various learning algorithms on your problems.
At the very least you should include graphs that show performance on both training and test data as a
function of training size (note that this implies that you need to design a classification problem that has
more than a trivial amount of data) and – for the algorithms that are iterative – training times/iterations.
Both of these kinds of graphs are referred to as learning curves.
• You must contain a hypothesis about your datasets. This is open-ended as each of you will have a variety of
perspective on the features and attributes of the data that may or may not perform a certain way given the
required algorithms. Whatever hypothesis you choose, you will need to back it up with experimentation
and thorough discussion. It is not enough to just show results.
• Graphs for each algorithm showing training and testing error rates as a function of selected hyperparameter
ranges. This type of graph is referred to as a model complexity graph (also sometimes validation curve).
When experimenting with hyperparameters, a good rule of thumb is to test three or more values to make
initial inference. This analysis may lead you to explore the data and algorithms in different ways.
• Analyses of your results. The following are some questions to ask yourself as you go about your experi-
mentation and development of your analysis and discussion. Many of these questions can be posed at all
stages of the process. Why did you get the results you did? How do the algorithms compare and contrast?
What sort of changes might you make to each of those algorithms to improve performance? How do
the datasets compare with your hypothesis? How fast were each algorithm in terms of wall clock time?
Iterations? How does cross-validation help with understanding bias in results? How much performance
was due to data cleaning or preprocessing? Which algorithm performed best? Can I be certain? How do
you define best? Be creative and think of as many questions you can, and as many answers as you can.
Analysis writeup is limited to 8 pages. The page limit includes your citations. Citations must be in IEEE,
MLA, or APA format. Anything past 8 pages will not be read. Please keep your analysis as concise while still
covering the requirements of the assignment. As a final check during your submission process, download the
submission to double-check everything looks correct on Canvas. Try not wait until the last minute to submit
as you will only be tempting Murphy’s Law.
In addition, your report must be written in LaTeX on Overleaf. You can create an account with your
Georgia Tech email (e.g. ). When submitting your report, you are required to include
a ’READ ONLY’ link to the Overleaf Project. If a link is not provided in the report or Canvas submission
comment, 5 points will be deduced from your score. Do not share the project directly with the Instructor or
TAs via email. For a starting template, please use the IEEE Conference template.
2
Latest Updated 2026/2027 | Georgia Institute of Technology
Supervised Learning Report
CS7641: Machine Learning
1 Assignment Weight
The assignment is worth 15% of the total points.
Read everything below carefully as this assignment has changed term-over-term.
2 Objective
The purpose of this project is to explore techniques in supervised learning. It is important to realize that
understanding an algorithm or technique requires understanding how it behaves empirically under a variety of
circumstances. As such, rather than implement each of the algorithms, you will be asked to experiment with
them and compare their performance. This is quite involved and also possibly quite different from what you
are used to; however, it is central and in many ways the essence of supervised learning.
3 Procedure
You are given two vastly different datasets. You will design two interesting classification problems after initial
data exploration. For the purposes of this assignment, a classification problem is a set of training examples
and a set of test examples. You will need to explain why the datasets are interesting from an ML practitioner
perspective and be able to discuss context with a deeper understanding of the datasets.
You will go through the process of exploring the data, develop a hypotheses, tune algorithms you’ve learned, and
write a thorough analysis of your findings. You need not implement any learning algorithm yourself; however,
you must participate in the journey of exploring, tuning, and analyzing. Concretely, this means:
• You may program in any language you wish and are allowed to use any library, as long as it was not
written specifically to solve this assignment.
• TAs must be able to recreate your experiments on a standard linux machine if necessary.
• The analysis you provide in the report is paramount.
You should experiment with these three learning algorithms on each dataset. They are:
• k-Nearest Neighbors. You must try significant values of k for comparison. Justification with comparison
will be necessary with your choices of k.
• Support Vector Machines. You must try at least two different kernel functions.
• Neural Networks. You may use networks of nodes with as many layers as you’d like. You must test
two distinct activation functions appropriate for your network and the data. Here is a nice reference from
a course blog post.
Each algorithm is described in detail in your textbook, the assigned readings on Canvas, and on the internet.
Instead of implementing the algorithms yourself, you should use libraries that do this for you and make sure to
1
, provide proper attribution. Also, note that you’ll need to do some tinkering to obtain good results and graphs,
and this might require you to modify these libraries in various ways.
Extra Credit Opportunity:
There is an opportunity to earn up to 5 points of extra credit for a deeper exploration of Neural Networks.
In addition to experimenting with two activation functions with both datasets, you must:
• Compare at least two different architectures paradigms (e.g., depth vs. width trade-offs),
• Evaluate the effect of different weight initialization schemes (e.g., Xavier, He, uniform), or
• Explore the impact of a regularization techniques such as dropout, batch normalization, and L2
regularization.
You must clearly explain the rationale behind your choices and analyze the outcomes using training/testing
performance curves. Your analysis should include both qualitative interpretation and quantitative justification
related to overfitting, convergence behavior, and network stability. This is not mandatory and may require
additional effort and experimentation.
3.1 Experiments and Analysis
Your report should contain:
• A description of your classification problems, and why you feel they are interesting from an ML perspective
(rather than descriptors or opinions). To be interesting the problems should be non-trivial on the one
hand, but capable of admitting comparisons and analysis of the various algorithms on the other.
• The training and testing error rates you obtained running the various learning algorithms on your problems.
At the very least you should include graphs that show performance on both training and test data as a
function of training size (note that this implies that you need to design a classification problem that has
more than a trivial amount of data) and – for the algorithms that are iterative – training times/iterations.
Both of these kinds of graphs are referred to as learning curves.
• You must contain a hypothesis about your datasets. This is open-ended as each of you will have a variety of
perspective on the features and attributes of the data that may or may not perform a certain way given the
required algorithms. Whatever hypothesis you choose, you will need to back it up with experimentation
and thorough discussion. It is not enough to just show results.
• Graphs for each algorithm showing training and testing error rates as a function of selected hyperparameter
ranges. This type of graph is referred to as a model complexity graph (also sometimes validation curve).
When experimenting with hyperparameters, a good rule of thumb is to test three or more values to make
initial inference. This analysis may lead you to explore the data and algorithms in different ways.
• Analyses of your results. The following are some questions to ask yourself as you go about your experi-
mentation and development of your analysis and discussion. Many of these questions can be posed at all
stages of the process. Why did you get the results you did? How do the algorithms compare and contrast?
What sort of changes might you make to each of those algorithms to improve performance? How do
the datasets compare with your hypothesis? How fast were each algorithm in terms of wall clock time?
Iterations? How does cross-validation help with understanding bias in results? How much performance
was due to data cleaning or preprocessing? Which algorithm performed best? Can I be certain? How do
you define best? Be creative and think of as many questions you can, and as many answers as you can.
Analysis writeup is limited to 8 pages. The page limit includes your citations. Citations must be in IEEE,
MLA, or APA format. Anything past 8 pages will not be read. Please keep your analysis as concise while still
covering the requirements of the assignment. As a final check during your submission process, download the
submission to double-check everything looks correct on Canvas. Try not wait until the last minute to submit
as you will only be tempting Murphy’s Law.
In addition, your report must be written in LaTeX on Overleaf. You can create an account with your
Georgia Tech email (e.g. ). When submitting your report, you are required to include
a ’READ ONLY’ link to the Overleaf Project. If a link is not provided in the report or Canvas submission
comment, 5 points will be deduced from your score. Do not share the project directly with the Instructor or
TAs via email. For a starting template, please use the IEEE Conference template.
2