Introduction to Machine Learning
A comprehensive overview of supervised machine learning. Regression/classification with linear and neighbor methods, neural networks, trees and ensembles, kernel methods, SVMs, recommendation systems, evaluation metrics, ethical/social considerations.
After completing this course, students are able to:
Identify relevant real-world problems as instances of canonical machine learning problems (e.g. clustering, regression, dimensionality reduction, etc.)
Design and implement an effective solution to a regression, binary classification, or multi-class classification problem, using available open-source libraries when appropriate and writing from-scatch code when necessary.
Compare and contrast appropriate evaluation metrics for supervised learning predictive tasks (such as confusion matrices, receiver operating curves, precision-recall curves).
Design and implement effective strategies for preprocessing data representations, partitioning data into training and heldout sets, and selecting hyperparameters.
Identify relevant ethical and social considerations when deploying a supervised learning or representation learning method into society, including fairness to different individuals or subgroups.
Describe basic dimensionality reduction and recommendation system algorithms.
Packages/tools utilized include:
To provide a lot of hands-on experience with common ML techniques/tools, this course featured regular labs, homeworks, and projects. An example project can be seen below. The goal of the project was to perform sentiment analysis on movie reviews to predict whether movies were "good" or "bad":