MSE-AI Degree Requirements

The online AI degree program requires the completion of 10 courses made up of seven core courses, two technical electives and 1 free elective. All courses are fully online and there are no required real-time sessions.

Note: MSE-AI Online students are waived from needing to complete CIT 5910, CIT 5920, CIT 5930, CIT 5940, CIT 5950, and CIT 5960 as pre-req requirements.

Core Courses

7 Course Units.

Either CIS 5550 Internet and Web Systems or the new GPU Programming course, but not both, must be taken as one of the 7 core courses.

CIS 5210 Artificial Intelligence

CIS 5210

Artificial Intelligence

This course investigates algorithms to implement resource-limited knowledge-based agents which sense and act in the world. Topics include: search, machine learning, probabilistic reasoning, natural language processing, knowledge representation and logic. After a brief introduction to the language, programming assignments will be in Python.

Pre-Requisites

CIT 5910, CIT 5920, CIT 5940, and CIT 5960

CIS 5300 Natural Language Processing

CIS 5300

Natural Language Processing

This course provides an overview of the field of natural language processing. The goal of the field is to build technologies that will allow machines to understand human languages. Applications include machine translation, automatic summarization, question answering systems, and dialog systems. NLP is used in technologies like Amazon Alexa and Google Translate.

Pre-Requisites

CIT 5910 Introduction to Software Development, CIT 5920 Mathematical Foundations of Computer Science , and CIT 5940 Data Structures & Software Design. Recommended: CIT 5960

CIS 5550 Internet and Web Systems

CIS 5550

Internet and Web Systems

This course focuses on the issues encountered in building Internet and Web systems, such as scalability, interoperability, consistency, replication, fault tolerance, and security. We will examine how services like Google or Amazon handle billions of requests from all over the world each day, (almost) without failing or becoming unreachable. We will study how to collect massive-scale data sets, how to process them, and how to extract useful information from them, and we will have a look at the massive, heavily distributed infrastructure that is used to run these services (and similar cloud-based services) today.

An important feature of the course is that we will not just discuss issues and solutions but also provide hands-on experience, using web search as our case study. There will be several substantial implementation projects throughout the semester, each of which will focus on a particular component of the search engine, such as frontend, storage, crawler, or indexer. The final project will be to build a Google-style search engine, and to deploy and run it on the cloud.

Notice that this is NOT a course on web design, or on web application development! Instead of learning how to use a web server such as Apache or a scalable analytics system such as Spark, we will actually build our own little web server, and a little mini-“Spark”, from scratch. As a side effect, you will learn about some aspects of large-scale software development, such as working with APIs and specifications, thinking about modularity, reading other people’s code, managing versions, and debugging.

Pre-Requisites

CIT 5950 Computer Systems Programming. Suggested: CIS 5470 Software Analysis, CIS 5490 Wireless Communications for Mobile Networks and Internet of Things, CIS 5510 Computer & Network Security, CIS 5530 Networked Systems, or CIT 5820 Blockchains & Cryptography (or any course that has students write a substantial program)

ESE 5410 Machine Learning for Data Science

ESE 5410

Machine Learning for Data Science

Machine Learning for Data Science is a foundational course designed to equip students with the essential skills necessary for a career in data science and machine learning. This comprehensive course delves into the fundamentals of machine learning, addressing key concepts such as the curse of dimensionality, model selection and validation, regularization, bootstrap and uncertainty quantification. Students will gain hands-on experience with a variety of machine learning models including regression and classification trees, ensemble learning, boosting, support vector machines, neural networks, hierarchical clustering and K-means. The curriculum is structured to provide practical Python programming skills, which are crucial for succeeding in subsequent courses. By applying these techniques to real-world scenarios in finance, business and industry, the course ensures that students not only understand the theory behind machine learning but also how to apply it effectively in professional settings. This course is an indispensable part of the educational journey for aspiring data scientists, laying the groundwork for further studies and applications in the field.

Pre-Requisites

CIT 5920 Mathematical Foundations of Computer Science, Programming background, Basic Probability

ESE 5420 Statistics for Data Science

ESE 5420

Statistics for Data Science

The course covers the methodological foundations of data science, emphasizing basic concepts in statistics and learning theory, but also modern methodologies. Learning of distributions and their parameters. Testing of multiple hypotheses. Linear and nonlinear regression and prediction. Classification. Uncertainty quantification. Model validation. Clustering. Dimensionality reduction. Probably approximately correct (PAC) learning. Such theoretical concepts are further complemented by exemplar applications, case studies (datasets), and programming exercises (in Python) drawn from electrical engineering, computer science, the life sciences, finance, and social networks.

Pre-Requisites

CIT 5920 Mathematical Foundations of Computer Science, Programming background, Basic Probability

ESE 5460 Principles of Deep Learning

ESE 5460

Principles of Deep Learning

Deep networks are at the heart of modern approaches in computer vision, natural language processing and robotics. Design of these networks requires a combination of intuition, theoretical foundation and empirical experience; this course discusses general principles of deep learning that cut across these three. It develops insight into popular empirical practices with a focus on the training of deep networks, builds theoretical skills to develop new ideas in deep learning and to deploy deep networks in real world applications. A fair degree of mathematical and programming proficiency is necessary to complete the coursework.

Pre-Requisites

MCIT Online Students must have completed 4 of their core courses and CIS 5150 or ESE 5420 | MSE-DS Online Students must have completed 5 courses including CIS 5150 or ESE 5420.

TBD 0000 AI Ethics (Tentative Title) – Coming Soon!

TBD 0000

AI Ethics (Tentative Title) – Coming Soon!

Coming Soon!

Pre-Requisites

No Pre-Requisites

TBD 0001 GPU Programming for AI (Tentative Title) – Coming Soon!

TBD 0001

GPU Programming for AI (Tentative Title) – Coming Soon!

Coming Soon!

Pre-Requisites

No Pre-Requisites


Technical Electives

Choose 2 Course Units.  If you take eight core courses, one can be used to fulfill a technical elective requirement.

CIS 5530 Networked Systems

CIS 5530

Networked Systems

This course provides an introduction to fundamental concepts in the design and implementation of networked systems, their protocols, and applications. Topics to be covered include: Internet architecture, network applications, addressing, routing, transport protocols, peer-to-peer networks, software-defined networks, and distributed systems. The course involves regular quizzes, two large group-based networked systems implementation projects, and two written exams.

Pre-Requisites

CIT 5950 Computer Systems Programming; Data structures and basic probability. Course projects require knowledge of C/C++.

CIS 5810 Computer Vision & Computational Photography

CIS 5810

Computer Vision & Computational Photography

This is an introductory course to computer vision and computational photography. This course will explore four topics: 1) image feature detection, 2) image morphing, 3) image stitching, and 4) deep learning related to images. This course is intended to provide a hands-on experience with interesting things to do on images/pixels. The world is becoming image-centric. Cameras are now found everywhere: in our cell phones, automobiles, and even in medical surgery tools. In addition, computer vision technology has led to innovations in areas such as movie production, medical diagnosis, biometrics, and digital library. This course is suited for students with any engineering background who have a basic understanding of linear algebra and programming, along with plenty of imagination.

Pre-Requisites

CIT 5910 Introduction to Software Development, CIT 5920 Mathematical Foundations of Computer Science, CIT 5930 Introduction to Computer Systems and CIT 5940 Data Structures & Software Design. Students may take CIT 5950 Computer Systems Programming and/or CIT 5960 Algorithms & Computation concurrently with this elective.

TBD 0002 AI Practicum (Tentative Title) – Coming Soon!

TBD 0002

AI Practicum (Tentative Title) – Coming Soon!

Coming Soon!

Pre-Requisites

No Pre-Requisites


Free Elective

Choose 1 Course Unit.

Any online EAS/CIS/ESE course

*Courses subject to change