Teaching

Deep Learning for Healthcare AI

Deep learning for medical images, electronic health records, clinical text and genomics, with multimodal and generative models, interpretability, ethics and privacy. I thank Professor Serena Yeung (Stanford) for many of the course materials.

  1. Lec 1Introduction
  2. Lec 2Medical Images Classification
  3. Lec 3Classification and Segmentation
  4. Lec 4Advanced Vision Model for Medical Imaging
  5. Lec 5Electronic Health Record Intro
  6. Lec 6EHR: RNN, LSTM
  7. Lec 7Text Representation: Transformer and BERT
  8. Lec 8Multimodal Model and Contrastive Learning
  9. Lec 9More on Transformer: GPT & CLIP
  10. Lec 10Genomics
  11. Lec 11Unsupervised & Reinforcement Learning
  12. Lec 12Interpretability and AI Ethics
  13. Lec 13Federated Learning & Privacy

Cloud Computing

Modern AI cloud systems: AI data centers, networks and software. The course is taught with AI-assisted tools; see Learning with AI: Strengthening Computing Education in an AI-Shaped World.


Convex Optimization and its Applications in Computer Science

Theory, algorithms and software of convex optimization: cone programming (linear, quadratic and semidefinite programming) and geometric programming; decomposition, convex relaxation and proximal algorithms for large-scale and non-convex problems. Applications are drawn from graphs, Internet and wireless networks, social networks, machine learning and artificial intelligence. Textbook: S. Boyd and L. Vandenberghe, Convex Optimization, Cambridge University Press, 2004. Software: CVXPY (Stanford).

I thank Professors Stephen Boyd (Stanford), Mung Chiang (Princeton) and Steven Low (Caltech) for many of the course materials.

  1. Lec 1Introduction
  2. Lec 2Convex Functions and Sets; Solving Inequalities
  3. Lec 3Convex Optimization and Lagrange Duality; Disciplined Convex Programming and CVX (slides from Boyd's EE364a)
  4. Lec 4Linear and Quadratic Programming; CVXPY Software Demo
  5. Lec 5Applications of Least-Squares
    Reading: S. Teng, Scalable Algorithms for Data and Network Analysis, FnT TCS, 2016.
  6. Lec 6Unconstrained Optimization Algorithms
  7. Lec 7Primal and Dual Decomposition: Theory and Distributed Algorithms
  8. Lec 8Internet Network Utility Maximization
    Reading: S. Shakkottai and R. Srikant, Network Optimization and Control, FnT Networking, 2007; S. Low, FAST TCP and Layering as Optimization Decomposition, Cambridge tutorial 2011 (video 1, video 2).
  9. Lec 9Constrained Optimization Algorithms; Open-Source Optimization Solvers
    Reading: A. Forsgren, P. Gill and M. H. Wright, Interior Methods for Nonlinear Optimization, SIAM Review, 2002; S. Boyd, Domain-specific Languages for Convex Optimization, 2017 (video).
  10. Lec 10Geometric Programming; Disciplined GP
    Reading: M. Chiang, Geometric Programming for Communication Systems, FnT Communications and Information Theory, 2005.
  11. Lec 11Wireless Network Optimization
    Reading: C. W. Tan, Wireless Network Optimization by Perron-Frobenius Theory, FnT Networking, 2015.
  12. Lec 12Semidefinite Programming
    Reading: L. Vandenberghe and S. Boyd, Semidefinite Programming, SIAM Review, 1996.
  13. Lec 13Proximal Algorithms; Applications by ADMM
    Reading: N. Parikh and S. Boyd, Proximal Algorithms, FnT Optimization, 2014; S. Boyd et al., Distributed Optimization and Statistical Learning via ADMM, FnT Machine Learning, 2010.
  14. Lec 14Optimization Methods for Nonconvex Problems
    Reading: Y. LeCun, Y. Bengio and G. Hinton, Deep Learning, Nature, 2015; F. Bach et al., Optimization with Sparsity-inducing Penalties, FnT Machine Learning, 2011.
  15. ReviewRevision Lecture and project demo

Artificial Intelligence: Past, Present, Future

A general-audience course on the history and ideas of AI, from logic to machine learning and chatbots.

  1. IntroCourse Introduction
  2. Lec 1Birth of AI
  3. Lec 2Mathematical Logic in AI
  4. Lec 3AI Games
  5. Lec 4AI Games and Search
  6. Lec 5Maze-Solving and Retros
  7. Lec 6Human-assisted Computation
  8. Lec 7Robots
  9. Lec 8AI Chatbots
  10. Lec 9Neural Network Applications
  11. Lec 10Automated Reasoning
  12. Lec 11Machine Learning
  13. Lec 12Deep Learning

Digital Logic and Computer Organization

Data Structures

  1. IntroIntroduction
  2. Lec 1Complexity
  3. Lec 2Recursion and Binary Search
  4. Lec 3Linked List, Stack, Queue
  5. Lec 4Bubble and Insertion Sort
  6. Lec 5Divide and Conquer, Merge Sort
  7. Lec 6Quick Sort
  8. Lec 7Heap and Radix Sort
  9. Lec 8Hash Map
  10. Lec 9Binary Search Tree
  11. Lec 10AVL Tree, Stern–Brocot Tree
  12. Lec 11Permutations, Disjoint Sets, Kruskal's Algorithm
  13. Lec 12Revision

Creative Geometry and Computer Science