Students looking to pursue the machine learning specialization are required to complete the lower level courses (MATH140, MATH141, CMSC131, CMSC132, CMSC216, CMSC250), the additional required courses (CMSC330, CMSC351, STAT4xx with a MATH141 prerequisite, and MATH240), and the upper level concentration requirements. The difference in the specialization is the upper level computer science courses. Students must fulfill their computer science upper level course requirements from at least 3 areas.
Students must fulfill their computer science upper level course requirements from at least 3 areas. Students may fulfill an area requirement under the Upper Level Elective Courses requirement. Courses that fall within each area are listed in the CS Distributive Areas and Electives document.
The five areas are:
- Area 1: Systems;
- Area 2: Information Processing;
- Area 3: Software Engineering and Programming Languages;
- Area 4: Theory;
- Area 5: Numerical Analysis.
MATH 240 (4) Linear Algebra or
MATH 461 (3) Linear Algebra for Scientists and Engineers or
MATH 341 (4) Multivariable Calculus, Linear Algebra, Differential Equations II*
CMSC 320 (3) Introduction to Data Science
CMSC 421 (3) Introduction to Artificial Intelligence
CMSC 422 (3) Introduction to Machine Learning *
Choose two courses from:
CMSC 426 (3) Computer Vision *
CMSC/AMSC 460 (3) Computational Methods * or
CMSC/AMSC 466 (3) Introduction to Numerical Analysis I * or
MATH 401 (3) Applications of Linear Algebra *
CMSC 470 (3) Natural Language Processing *
CMSC 472 (3) Introduction to Deep Learning (formerly CMSC 498L)
CMSC 473 (3) Capstone in Machine Learning (formerly CMSC 498P)
CMSC 474 (3) Introduction to Computational Game Theory
CMSC 476 (3) Robotics and Perception
Upper Level Elective Courses
Six credits from CMSC 3XX or CMSC 4XX excluding CMSC330 and CMSC351
*Indicates this course has unique prerequisites.