GithubHelp home page GithubHelp logo

quyanh2005 / homemade-machine-learning Goto Github PK

View Code? Open in Web Editor NEW
5.0 1.0 3.0 6.87 MB

Understand and code some basic algorithms in machine learning from scratch

Jupyter Notebook 98.86% Python 1.14%
machine-learning algorithms decision-tree implementation-from-scratch k-means-clustering linear-regression logistic-regression naive-bayes pca support-vector-machine theory machine-learning-algorithms python bagging-ensemble random-forest boosting-ensemble gradient-boosting random-forest-algorithm scikit-learn

homemade-machine-learning's Introduction

homemade-machine-learning

Implement some ML algorithms from scratch.

Content

  • Linear Regression
    • Model
    • Least Square Method
    • Test Your Model
  • Gradient with Linear Regression
    • Gradient Formula
    • Implement
    • Apply Model
  • Regression and Sigmoid
  • Cost function and Gradient
    • Cost function
    • Partial derivative of $J(\theta)$
    • Update the weights
    • Implement gradient descent function
  • Training model
  • Test model
    • Your model
    • Sklearn model
  • Why Need to Reduce Dimensionality?
  • Main Approaches for Dimensionality Reduction
    • Projection
    • Manifold Learning
  • Principle Compent Analysis
    • Preserving the Variance
    • Principal Components
    • Projecting Down to d Dimensions
  • PCA in Sklearn
  • What is k-means clustering?
  • Pros and cons of k-means
  • K-means algorithm and implementation
  • K-means algorithm in sklearn
  • What is Decision Tree?
  • Important Terminology related to Decision Trees
  • How do Decision Trees work?
  • ID3 Algorithm
    • Entropy
    • Infomation Gain
    • Split a node into branches
  • Model from scratch and predict
  • Decision Tree in sklearn and some notes
    • CART cost function for classification
    • CART cost function for regression
  • Pros and cons
  • SVMs - Gradient Descent
    • What is SVMs?
    • Primal Support Vector Machine
      • Distance between Two Parallel Lines
      • Optimal Hyperplane
    • Hard Margin
    • Soft Margin
    • Solve SVMs by Gradient Descent
      • Hard Margin by Gradient Descent
      • Soft Margin by Gradient Descent
  • SVMs - Lagrange Method
    • Review about Primal Support Vector Machine
    • Dual Support Vector Machine
    • Hard - Soft Margin
      • Implementation
      • Sklearn
    • Kernel SVM
      • Implementation
      • Sklearn
    • Visualization
    • References
  • Gaussian Naive Bayes
    • Naive Bayes Rule
    • Gaussian Naive Bayes
    • Gaussian Naive Bayes Model from Scratch
    • Gaussian Naive Bayes Model in Sklearn
  • Multinomial Naive Bayes
    • Multinomial Naive Bayes
    • Multinomial Naive Bayes Model from Scratch
    • Multinomial Naive Bayes Model in Sklearn
    • Multinomial Naive Bayes for Out of Vocabulary
  • Bagging
  • What is Random Forest?
  • Important Features of Random Forest
  • Important Hyperparameters
  • Pseudo-code
  • Implementation
  • Advantages and Disadvantages
  • References
  • Introduction
    • Definnition of Gradient Boosting
    • Overview of ensemble learning
  • Theoretical foundations of Gradient Boosting
    • Introduction to decision trees
    • Mathematical formulation of Gradient Boosting
  • Implementation
  • Pros and cons

Other Algorithms

Besides the above algorithms, I have researched some other algorithms and will publish as soon as possible. A list of algorithms:

  • SVD
  • LDA
  • DBSCAN
  • ...

Contact

If you have any problems, please contact me:

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.