Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Machine Learning Projects

A collection of MATLAB/Octave machine learning programming exercises organized by week. These projects follow the classic Stanford / Coursera Machine Learning coursework structure and cover core topics from supervised learning, neural networks, support vector machines, clustering, anomaly detection, and recommender systems.

Overview

This repository is organized week by week. Each week contains one main programming exercise folder and its corresponding assignment PDF.

Table of Contents

Concept Roadmap

This repository progresses through the following machine learning topics:

  1. Linear Regression — basic supervised learning and gradient descent
  2. Logistic Regression — binary classification and decision boundaries
  3. Multi-class Classification — one-vs-all classification and neural network forward propagation
  4. Neural Network Training — backpropagation and parameter learning
  5. Bias vs Variance — regularization, learning curves, and polynomial regression
  6. Support Vector Machines — maximum-margin classification and kernels
  7. Unsupervised Learning — K-means clustering and dimensionality reduction with PCA
  8. Advanced Unsupervised / Recommendation Systems — anomaly detection and collaborative filtering

Weekly Project Breakdown

Week 2 — Linear Regression

Folder: week2/machine-learning-ex1

Focus: Introductory supervised learning using linear regression.

What this project covers:

  • linear regression with one variable
  • linear regression with multiple variables
  • cost function computation
  • gradient descent optimization
  • feature normalization
  • visualizing convergence and fitted models

Why it matters: This is the foundation for understanding how machine learning models learn from data by minimizing prediction error.


Week 3 — Logistic Regression

Folder: week3/machine-learning-ex2

Focus: Binary classification using logistic regression.

What this project covers:

  • sigmoid function
  • logistic regression cost and gradient
  • decision boundaries
  • prediction for classification tasks
  • regularized logistic regression
  • nonlinear classification using feature mapping

Why it matters: This introduces classification problems where the output is a category instead of a continuous value.


Week 4 — Multi-class Classification and Neural Networks

Folder: week4/machine-learning-ex3

Focus: Extending classification beyond two classes and using neural networks for inference.

What this project covers:

  • one-vs-all classification
  • multi-class prediction
  • vectorized implementation
  • neural network forward propagation
  • digit recognition style classification workflow

Why it matters: This project bridges classical machine learning and neural networks by showing how hidden layers can model more complex patterns.


Week 5 — Neural Network Learning

Folder: week5/machine-learning-ex4

Focus: Training neural networks using backpropagation.

What this project covers:

  • feedforward neural networks
  • cost function for neural networks
  • backpropagation algorithm
  • gradient checking intuition
  • regularization in neural networks
  • parameter optimization for training

Why it matters: This is the step where neural networks move from only making predictions to actually learning their internal parameters.


Week 6 — Regularized Linear Regression and Bias vs Variance

Folder: week6/machine-learning-ex5

Focus: Diagnosing model performance and improving generalization.

What this project covers:

  • regularized linear regression
  • bias vs variance analysis
  • training, validation, and test error
  • learning curves
  • polynomial regression
  • tuning model complexity

Why it matters: This project teaches how to tell whether a model is underfitting or overfitting and what to do about it.


Week 7 — Support Vector Machines

Folder: week7/machine-learning-ex6

Focus: Margin-based classification with kernel methods.

What this project covers:

  • linear SVMs
  • Gaussian kernel / RBF kernel
  • nonlinear decision boundaries
  • hyperparameter selection
  • spam classification workflow

Why it matters: SVMs are powerful classifiers that often perform well on complex classification tasks, especially with kernels.


Week 8 — K-Means Clustering and PCA

Folder: week8/machine-learning-ex7

Focus: Unsupervised learning and dimensionality reduction.

What this project covers:

  • K-means clustering
  • centroid assignment and update steps
  • image compression intuition using clustering
  • principal component analysis (PCA)
  • projection to lower-dimensional space
  • data visualization in reduced dimensions

Why it matters: This week introduces methods for finding structure in unlabeled data and compressing high-dimensional information.


Week 9 — Anomaly Detection and Recommender Systems

Folder: week9/machine-learning-ex8

Focus: Detecting rare events and building recommendation models.

What this project covers:

  • Gaussian-based anomaly detection
  • threshold selection using validation data
  • identifying outliers in high-dimensional datasets
  • collaborative filtering
  • recommendation system cost function
  • learning user and item features

Why it matters: These techniques are widely used in real systems such as fraud detection, monitoring, and personalized recommendations.

Key Concepts Covered

Across all folders, this repository demonstrates:

  • supervised learning
  • unsupervised learning
  • regression
  • binary and multi-class classification
  • optimization with gradient descent
  • regularization
  • neural networks
  • backpropagation
  • support vector machines
  • clustering
  • dimensionality reduction
  • anomaly detection
  • recommender systems
  • model evaluation and error analysis

Tools and Environment

  • Language: MATLAB / Octave
  • Project style: programming exercises and learning-oriented implementations
  • Typical contents: scripts, helper functions, datasets, plotting code, and assignment PDFs

Notes

This repository is a structured learning portfolio showing step-by-step implementation of core machine learning algorithms from scratch in MATLAB/Octave. It is useful for:

  • revising classical machine learning fundamentals
  • understanding algorithm implementation details
  • practicing numerical optimization and vectorized coding
  • building intuition before moving to modern ML frameworks

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages