Unsupervised Machine Learning involves finding patterns in datasets.
After taking this course, students will be able to understand, implement in Python, and apply algorithms of Unsupervised Machine Learning to real-world datasets.
This course is designed for:
- Scientists, engineers, and programmers and others interested in machine learning/data science
- No prior experience with machine learning is needed
- Students should have knowledge of
- Basic linear algebra (vectors, transpose, matrices, matrix multiplication, inverses, determinants, linear spaces)
- Basic probability and statistics (mean, covariance matrices, normal distributions)
- Python 3 programming
The core of this course involves detailed study of the following algorithms:
Clustering: Hierarchical, DBSCAN, K Means & Gaussian Mixture Model
Dimension Reduction: Principal Component Analysis
The course presents the math underlying these algorithms including normal distributions, expectation maximization, and singular value decomposition. The course also presents detailed explanation of code design and implementation in Python, including use of vectorization for speed up, and metrics for measuring quality of clustering and dimension reduction.
The course codes are then used to address case studies involving real-world data to perform dimension reduction/clustering for the Iris Flowers Dataset, MNIST Digits Dataset (images), and BBC Text Dataset (articles).
Plenty of examples are presented and plots and animations are used to help students get a better understanding of the algorithms.
Course also includes a number of exercises (theoretical, Jupyter Notebook, and programming) for students to gain additional practice.
All resources (presentations, supplementary documents, demos, codes, solutions to exercises) are downloadable from the course Github site.
Students should have a Python installation, such as the Anaconda platform, on their machine with the ability to run programs in the command window and in Jupyter Notebooks
Who this course is for:
- Scientists, engineers and programmers interested in data science/machine learning
- Basic knowledge of Linear Algebra including vectors, matrices, transpose, matrix multiplications, linear spaces
- Basic knowledge of Probability and Statistics including mean, covariance, and normal distributions
- Ability to program in Python 3
- Ability to run Python 3 programs on local machine in Jupyter notebooks and command window
Last Updated 4/2021