SPRING 2020
Instructor: Prof. Christian Lopez, 569 Rockwell Integrated Science Center, lopezbec@lafayette.edu
Class: (SEE MOODLE/BANNER)
Office Hours: (SEE MOODLE)
Prerequisite: CS 202 ,co-req. MATH 272
________________________________________________________________________________________________________
Course Description
This course is an introduction to both the theoretical and practical aspects of the design and implementation of algorithms that enable machines to “learn” from examples (i.e., Machine Learning). Instead of programing machines by specifying a set of instructions that dictate exactly how they should perform a task, a new paradigm is developed whereby machines are presented with examples from which they can automatically identify (“learns”) suitable rules to perform a task. This allows computer programs to improve their performance on a given task through experience (i.e., more data).
This course will provide students an in-depth introduction to the areas of Supervised and Unsupervised Machine Learning. The course will cover core Machine Learning algorithms for classification, regression, clustering, and dimensionality reduction.
On the theory side, the course will focus on understanding algorithms and the relationships between them. On the applied side, the course will focus on effectively using machine learning methods to solve real-world problems with an emphasis on model selection, regularization, hyperparameter optimization, and presentation and interpretation of results. Specific topics will include linear and logistic regression, support vector machines, artificial neural networks and deep learning, principal component analysis, k-means clustering, decision trees, and random forests.
Student Learning Outcomes
Upon completion of this course, students will be able to:
- Understand the paradigms of supervised and unsupervised machine learning.
- Explain the fundamental issues and challenges of machine learning.
- Identify the strengths and weaknesses of multiple machine learning approaches.
- Formalize a task as a machine learning problem.
- Identify suitable algorithms to tackle different machine learning problems.
- Develop models and apply machine learning frameworks to solve practical problems.
*(this is just an example of the syllabus. To get the up to date syllabus please visit the Moodle page of this course)