Course Information


Embark on an advanced journey into the dynamic realm of cloud computing and machine learning. This graduate-level course explores the powerful synergy between these domains, covering essential fundamentals such as cloud infrastructure, artificial neural networks, Kubernetes orchestration, and practical applications. Students will delve into various cloud computing models, gaining insights into their capabilities. Additionally, they'll discover the art of performing machine learning on the cloud, including hands-on experience with cloud platforms. With guidance, students will not only build cloud systems for machine learning but also learn to characterize performance, ensuring proficiency in this ever-evolving technological landscape. Join us to unlock the full potential of cloud-based machine learning and elevate your expertise in this advanced field.


Research papers and other important material on relevant topics will be made available during the course.


    Introduction to cloud computing

    Introduction to machine learning on the cloud: Domains, Frameworks, Use cases

    Getting started with machine learning on the cloud

    Compute, network, storage infrastructure organization in the clouds

    Artificial Neural Network

    Virtual Machine, Container


    Performance characterization and modeling

    Invited talks

Recommended Prerequisites

CSCI-GA.1170 Fundamental Algorithms

Understanding of important algorithms such as sorting, searching, graphs, etc.

CSCI-GA.2110 Programming Languages

Understanding of the design, use, and implementation of imperative, object-oriented, and functional programming languages.

CSCI-GA.2250 Operating Systems

Understanding of Computer Architecture, C/C++ programming, OS design, process, stack/heap, threads, file-system, IO, Networks.

Python programming

Intermediate programming skills.

Linux Skills

The students are expected to know basic Linux commands and configurations.

Software Tools

Software communication and development tools such as Slack and Github will be used.


There are no exams for this class.
Grades are based on the project work, homework assignments, class presentation, and class participation.

Two projects

Project 1: 20%
Using the existing dataset, DNN topology, and SaaS to train for a target with performance profiling/analysis.

Project 2: 30%
Identify a problem that DNN training can be applied to. Implement the training in the cloud computing.

Class presentations


Two or three students per group

Class participation


This is a graduate-level class, so we are looking for your active participation in the class.
Your attendance alone does not qualify as active participation.



5-6 homework hands-on assignments are expected.