Undergraduate Concentrations
Focus your passion
Our flexible curriculum provides opportunities for you to deepen your knowledge by concentrating in Machine Learning or Software Engineering.
Completion of a concentration requires a minimum of five courses.
These requirements can be met within the general requirements of the ECE major and do not require any additional courses. However, the choice of classes has been constrained to fit concentration requirements.
Concentrations
Important Notes
- The ECE major requirement being fulfilled appears in square brackets: […]
- No course may be used to fulfill more than one requirement
- Completion is noted on your official transcript
-
- ECE 480: Applied Probability for Statistical Learning
[ECE Area Elective #1—Signal Processing, Communications and Control Systems (SPC&C)] - ECE 580: Introduction to Machine Learning
[ECE Area Elective #2—SPC&C] - One of the following:
[ECE Area Elective #3—any area, including SPC&C]:- ECE 588: Image & Video Processing
- ECE 661: Computer Engineering Machine Learning & Deep Neural Networks
- ECE 662: Machine Learning Acceleration & Neuromorphic Computing
- ECE 663: Machine Learning in Adversarial Settings
- ECE 682D/CS 571/Stat 561: Probabilistic Machine Learning
- ECE 684: Natural Language Processing
- ECE 685D: Deep Learning
- ECE 687D/CS 671D/Stat 671D: Machine Learning
- ECE Special Topic courses on Machine Learning that are approved area electives (with DUS approval)
- ECE 495 (F24, F25): Introduction to Natural Language Processing
- ECE 590 (S25, S26): Neural-net-based Large Language Models
- One of the following:
[ECE Free Elective]:- Any course not already taken from Requirement #3 above
- ECE 689/CS 676: Advanced Topics in Deep Learning
- ECE Special Topic courses on Machine Learning (with DUS approval):
- ECE 590: Brain Computer Interfaces
- ME 555 / ECE 590: Robot Learning
- One of the following:
[ECE Extension Elective]:- Any course not already taken from Requirements #3 or #4 above
- COMPSCI 371: Elements of Machine Learning
- COMPSCI 372: Introduction to Applied Machine Learning
- COMPSCI 527: Computer Vision
- MATH 412 / COMPSCI 434: Topological Data Analysis
- MATH 465/COMPSCI 445: Introduction to High-Dimensional Data Analysis
- STA 340: Introduction to Statistical Decision Analysis
- STA 360: Bayesian Inference and Modern Statistical Methods
- Non-ECE Special Topic courses on Machine Learning (with ECE DUS approval):
- BME 590 (F23): Machine Learning in Pharmacology
- COMPSCI 590: Generative Models: Foundations and Applications
- ME 555 Data-Driven Dynamic Systems
- ECE 590: Brain Computer Interfaces
- ECE 480: Applied Probability for Statistical Learning
-
- Software Engineering
[ECE Area Concentration Elective #1—Software Engineering Foundation]- ECE 351: Software Engineering
- One of the following:
[ECE Area Concentration Elective #2—Human-Centered Interaction (HCI) and User Experience (UX)]- ECE 653/CS 653: Human-Centered Computing
- ECE 657/CS 586: Usable Security and Privacy
- ECE 590: Cross Platform Mobile Application Development
- ECE 490/495/496/590: Special Topic courses on HCI/UX (with DUS approval)
- One of the following:
[ECE Area Concentration Elective #3—Systems course]:- ECE 353/CS 310: Introduction to Operating Systems
- ECE 356/CS 356: Computer Network Architecture
- ECE 553/CS 553: Compiler Construction
- ECE 560: Computer and Information Security
- ECE 566: Enterprise Storage Architecture
- One of the following:
[ECE Free Elective #4—Software Engineering-focused course]:- Any course not already taken from requirement #2
- Any course not already taken from requirement #3
- ECE 458: Engineering Software for Maintainability
- ECE 568: Engineering Robust Server Software
- ECE 661: Computer Engineering Machine Learning and Deep Neural Nets
- ECE 490/495/496/590: Special Topic courses on Software Engineering (with DUS approval)
- One of the following:
[ECE Extension Elective #5—Software Engineering-focused course]:- Any course from requirement #2 (not already taken)
- Any course from requirement #3 (not already taken)
- Any course from requirement #4 (not already taken)
- Other software-focused Computer Science classes with DUS approval
- Software Engineering
Add This to Your Academic Plan
Complete an Academic Plan Change form in DukeHub.
Michael Richard Gustafson
ECE Director of Undergraduate Studies, Associate Professor of the Practice
Rabih Younes
Associate Director of Undergraduate Studies, Associate Professor of the Practice in the Department of ECE