Skip to content
This repository has been archived by the owner on May 7, 2021. It is now read-only.

ZohebAbai/DSE220x

Repository files navigation

UCSanDiegoX: DSE220x : Machine Learning Fundamentals

Course Instructor: Sanjoy Dasgupta, Professor of Computer Science and Engineering, UC San Diego

Learning Objectives

This course is an intensive introduction to the most widely-used machine learning methods.

  • The first goal is to provide a basic intuitive understanding of these techniques: what they are good for, how they work, how they relate to one another, and their strengths and weaknesses.
  • The second goal is to provide a hands-on feel for these methods through experiments with suitable data sets, using Jupyter notebooks.
  • The third goal is to understand machine learning methods at a deeper level by delving into their mathematical underpinnings. This is crucial to being able to adapt and modify existing methods and to creatively combining them.

Topics Covered

  • Taxonomy of prediction problems
  • Basics of Linear Algebra and Probability
  • Nearest neighbor methods and families of distance functions
  • Generalization: what it means; overfitting; selecting parameters using cross-validation
  • Generative modeling for classification, especially using the multivariate Gaussian
  • Linear regression and its variants
  • Logistic regression
  • Optimization: deriving stochastic gradient descent algorithms and testing convexity
  • Linear classification using the support vector machine
  • Nonlinear modeling using basis expansion and kernel methods
  • Decision trees, boosting, and random forests
  • Methods for flat and hierarchical clustering
  • Principal component analysis
  • Autoencoders, distributed representations, and deep learning

Opinion/Comments

I audited for this course and pledged to complete it. I finished every Engagement, Quiz, Problem Set and Programming Assignment. I believe this is one of the best online course on fundamentals of ML as it maintains a right balance between theory and programming.

I have provided my Assignments here (as an evidence of finishing and maintaining a repository for the course), which I completed during a month's time with whatever knowledge I gathered during the course without any help. They are definitely not the efficient ones but correct for sure. Iff you fork it, found an efficient solution, don't forget to send a pull request.

Thanks for passing by!