Program Sites

Concentration in Machine Learning

Machine Learning is an important area of research and practice influencing many diverse application domains and industries. Students may add this concentration to any degree within the College of Engineering.

Degree Type

  • Undergrad Concentrations

Minimum Requirements

  • 3 Courses
  • 12 Credits


  • In-Person


  • On-Campus


Machine Learning has emerged as an important area of research and practice influencing many diverse application domains and industries inclusive of all engineering disciplines. This concentration builds on common required coursework in the undergraduate engineering curriculum and offers a pathway for undergraduate engineering students to focus their studies in this area and demonstrate to future employers and graduate school admission committees that they have the necessary background. The goals of this concentration are to equip students with skills to select, adapt, optimize, or design machine learning algorithms for various applications, assess their performance, gain experience utilizing related software or hardware tools, curate, visualize, or analyze data of various types, and read and explain methods from the machine learning literature.

The 12-credit concentration is available to students in any of the College of Engineering’s bachelor’s degree programs. The concentration is noted on students’ official transcripts and will prepare students to work in the areas of Machine Learning applied to technological systems used for product design and function, as well as domain-specific data interpretation.

It is recommended that students interested in pursuing a concentration in Machine Learning declare their concentration as early as possible in their degree program in order to facilitate course planning, but in no case later than May 1 of a student’s junior year. Course requirements are found below, in addition to details regarding the required experience component.

Concentration Requirements:

  1. A sequence of three courses (12 credits) consisting of one required course (4 credits) and two additional courses (8 credits) chosen from any of the three lists below. The two additional courses need not be from the same list.  Students are expected to obtain the necessary background (prerequisites or equivalents) to complete their concentration courses. Any course required (by name/course number) as part of the major (excluding Technical/Advanced/Electives) cannot be counted toward the three courses (12 cr) required to fulfill the concentration.

Required Course: Choose one of the following:

ENG EC 414 – Introduction to Machine Learning
ENG EC 503 – Learning from Data

Additional Courses: Choose any two from any of the three lists below (the two courses need not be from the same list; the lists are for guidance purposes only and highlight thematic groupings):

Models, Learning, and Inference 

ENG EC 418 – (Olshevsky) Reinforcement Learning
ENG EC 505 – Stochastic Processes and Inference
ENG EC 517 – Introduction to Information Theory
ENG EC 523/ CAS CS 523 – Deep Learning

Optimization, Algorithms, and Programming 

ENG EC 525 – Optimization for Machine Learning
ENG EC 504 – Advanced Data Structures and Algorithms
ENG EC/SE 524 – Optimization Theory and Methods
ENG EC 526 – Parallel Programming for High Performance Computing
ENG EC 527 – High Performance Programming with Multicore and GPUs
ENG EC 528 – Cloud Computing


ENG BE 403 – Biomedical Signals and Controls
ENG BE 500†3 – AI and Systems Biology
ENG BE 500†6 – Deep Learning for Biomedical Images and Signals
ENG BE/EC 519 Speech Processing by Humans and Machines
ENG BE 562 – Computational Biology: Machine Learning Fundamentals
ENG BE 570 – Introduction to Computational Vision
ENG ME 404 – Dynamics and Control of Mechanical Systems
ENG ME 416 – Introduction to Robotics
ENG EK 505 – Introduction to Robotics and Autonomous Systems
ENG ME 570 – Robot Motion Planning
ENG EC 401 – Signals and Systems
ENG EC 402 – Control Systems
ENG EC 415 – Software Radios
ENG EC516 – Digital Signal Processing
ENG EC 518 – Robot Learning
ENG EC 500†5 – (Ohn-Bar) Robot Learning and Vision for Navigation
ENG EC 520 – Digital Image Processing and Communication

Note: the relevant BE/EC 500 courses above marked with this symbol were/will be taught in the following semesters:

1 Fall 2019, Fall 2021, Fall 2022
Spring 2021, Spring 2022
3 Spring 2020
4 Fall 2020, Fall 2022 (EC 418)
5 Fall 2023
6 Spring 2024

  1. Experiential Component Requirement: 

Completion of a well-defined experiential component, which must be clearly related to Machine Learning, is required. Options for experiences include a senior design project, laboratory research, internships, directed study, experiential courses, and others. Term projects in courses may satisfy the experiential requirement if they have sufficient Machine Learning content. Prior to proposing an experiential component, the student must have completed a required course. This requirement along with a proposal, must be approved by the Concentration Coordinator and the Experiential Component Approval form must be submitted to the Undergraduate Records Office. After its completion, a written summary of the experiential component must also be submitted for approval (see Experiential Component Approval form for more information).

Detailed Requirements and Instructions
Experiential Component Proposal
Experiential Component Summary
SARA Complaint Process
Machine Learning Summary Submission


Undergraduate Programs & Records Office: 617-353-6447 or
Concentration Coordinator: Prof. Prakash Ishwar (