Course Information


This course is an advanced graduate course in cloud computing and machine learning. This course exposes students to various cloud computing models and introduces them to performing machine learning on the cloud. The course material introduces students to various cloud platforms and their machine learning service capabilities. Students will learn how to build cloud systems for machine learning, the application characteristics, and develop hands-on experience with programming machine learning applications on cloud platforms.


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

    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 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.