CS 5665: Introduction to Data Science

Fall 2021, 1:30 pm to 2:45 pm on TR in Old Main 115 and via WebBroadcast

Course Descriptions

Data science is an inter-disciplinary field that uses scientific methods, processes, algorithms and systems to extract knowledge and insights from many structural and unstructured data. Data science is related to data mining, deep learning and big data [link]. In recent years, deep learning approaches have obtained very high performance on various data analysis tasks. This course focuses on introducing the basic deep learning approaches. The goal of this course is for students to learn how to use deep learning for solving real-world data analysis problems, especially in the fields of computer vision and natural language processing.

Topics include: Linear Regression, Logistic Regression, Feed-forward Neural Network, Convolutional Neural Network, Recurrent Neural Network, Transformers.

Prerequisites

  • A solid Python programming skill
    • All class assignments will be in Python.
  • Basic probability and statistics
    • Understand basics of probabilities, gaussian distributions, mean, standard deviation, etc.
  • Basic calculus, linear algebra
    • Be comfortable taking derivatives and understanding matrix/vector notation and operations. (e.g., matrix multiplication).

Course Material

  • Aston Zhang, Zachary C. Lipton, Mu Li and Alexander J. Smola. (2020). Dive into Deep Learning. Available Online.
  • Ian Goodfellow, Yoshua Bengio and Aaron Courville. (2016). Deep Learning. Available Online.

The following textbooks/websites are useful as additional reference:

  • Eli Stevens, Luca Antiga, Thomas Viehmann. (2020). Deep Learning with PyTorch. Available Online.
  • Michael Nielsen. Neural Networks and Deep Learning. Available Online.
  • Deisenroth, Marc Peter, A. Aldo Faisal, and Cheng Soon Ong. (2020). Mathematics for machine learning. Available Online.
    • Chapters 5, 6 7 are useful to understand vector calculus and continuous optimization

Grading

  • Homework (50%)
    • Six programming assignments
  • Course Project (30%)
    • Students do course projects as groups
  • Final Exam (20%)
  • Bonus

Attendance

  • Attendance is not mandatory but encouraged

Schedule

DateTopic
Aug 31Introduction
Sep 2Introduction
Sep 7Linear Regression
Sep 9Linear Regression
Sep 14Linear Regression
Sep 16Linear Regression
Sep 21Bias and Variance
Sep 23Perceptron
Sep 28Logistic Regression
Sep 30Logistic Regression
Oct 5Multiclass Classification
Oct 7Multilayer Neural Network
Oct 12Multilayer Neural Network
Oct 14Deep Learning Package
Oct 19Convolutional Neural Network-I
Oct 21Convolutional Neural Network-II
Oct 26Bag of Tricks-I
Oct 28Bag of Tricks-II
Nov 2Auto-encoder
Nov 4Text Data Processing and Word Embeddings
Nov 9Recurrent Neural Networks-I
Nov 11Recurrent Neural Networks-II
Nov 16LSTM and GRU
Nov 18Machine Translation
Nov 23Canceled
Nov 30Project Presentation
Dec 2Project Presentation
Dec 7Project Presentation
Dec 9Final Review