**Courses**

CSCI 8590: Fundamentals of Deep Learning

This course is an introduction to deep learning, a branch of machine learning concerned with the development and application of neural networks. Deep learning trains the machine to learn patterns that it is presented with rather than requiring the human operator to define the patterns that the machine should look for. Deep learning is behind many recent advances in artificial intelligence, such as face recognition, speech recognition and autonomous driving. This course will cover the fundamentals of deep learning, learning theory, basic/advanced neural networks, and problem domains of many selected applications.

Spring 2021

CSCI 8110: Advanced Topics in Artificial Intelligence (Advanced Machine/Deep Learning Applications)

Machine learning is the scientific study of models that computers use to perform a specific task without explicit instructions. This graduate-level seminar-based course discusses machine(deep) learning applications that are essential in recent advances. Contents of this course will include various applications such as Autoencoders, Self-supervised Learning, Explainable Machine Learning, Object Detection, Knowledge Transfer, Generative Machine Learning Models, Robustness and Compression. More selected topics such as the Meta Learning and Image Semantic Segmentation can also be discussed based on the time availability.

Fall 2020, Fall 2021

This course discusses the fundamentals and algorithms of machine learning. Machine learning, as a subset of artificial intelligence, is the scientific study of models that computer systems use to perform a specific task without explicit instructions. Topics in this course will include discussions of: (i) supervised learning methods such as Classification, Support Vector Machine, and Regression; (ii) unsupervised learning methods such as Clustering, Dimensionality Reduction, and Autoencoders; and (iii) more methods such as Self-supervised Learning and Semi- supervised Learning. Learning theories such as bias/variance trade-offs, Generalization and Under-/Over-fitting could be discussed, as necessary.

Fall 2021

This is a course on data-structures and algorithms, with an emphasis on algorithm design techniques and analysis of algorithms. Introductory topics include algorithm analysis techniques such as worst case and average-case analysis, induction, recursion, recurrence relations, and divide-and-conquer design technique. Advanced topics include data structure and algorithms such as priority queues, hash tables, binary-search trees, balanced search trees, sorting algorithms; other design techniques such as graph algorithms, and data processing algorithms.

Fall 2019, Spring 2020, Spring 2021