MSML 605 - Computing Systems for MAchine Learning



This course will deal with the programming, software and hardware design and implementation issues of computing systems for machine learning. Topics in the programming/software domain will include: basic Python program structure, variables and assignment, built-in data types, flow control, functions and modules; basic I/O, and file operations. Classes, object-oriented programming and exceptions. Regular expressions, database access, network programming and sockets. Introduction to the Numpy, Scipy and Matplotlib libraries. Topics in the hardware domain include computer architecture, CPUs, single- and multi-core architectures, GPUs, memory and I/O systems, persistent storage, and virtual memory. Parallel processing architectures, multiprocessing and cluster processing.

Schedule

Exam Dates


  • Midterm : Thursday, April 16, in Lecture.
  • Final Exam: Thursday, May 14, in Lecture.

Lectures


Date
Topic
02/27 Introduction
03/05 Python Contd.
03/12 More Python (classes) (ML demo file is on ELMS)
03/19 Spring break
03/26 List Comprehension / Numpy
04/02 More Numpy / OLS / Matplotlib
04/09 Scipy, Data Processing /
Pandas tutorial
04/16 Containers
04/23 Midterm
04/30 Version Control Systems
05/07 Version Control Systems Contd. /
ML hardware
05/14 Parallel Processing /
Final

Staff

Instructor
Mohammad Nayeem Teli (nayeem at cs.umd.edu)

Office: 1128 IRB
Office Hours: Th 5:00 - 6:00 PM



Class Resources

Online Course Tools
  • ELMS - This is where you can see your final grades and homework solutions.
  • Piazza - This is the place for class discussions. Please do not post homework solutions here.



Homeworks

Click the name of an assignment below to see its specifications.


Homework Name
Due Date*
Homework 1
(baby names file)
March 21, 2020
Homework 2 April 13, 2020
Homework 3 May 06, 2020
Homework 4 May 22, 2020

* All homeworks are due at 11:59 PM on the due date.