Giter VIP home page Giter VIP logo

hard-margin-svm-tutorial-by-cvxopt's Introduction

hard-margin-SVM-tutorial-by-cvxopt

Author: Yin-tao Xu | Date: 2018/9/10

Introduction

This repository is an interactive guidance for setting up a hard-margin SVM binary classifer. The interactive tutorial bases on cvxopt and Jupyter notebook. The very beginning idea to start this repository is to offer a case study for my blog: author's CSDN blog(Chinese).

screenshot of the jupyter notebook

Hard-Margin SVM can be transformed into a standard QP problem. For beginners or researchers focusing on application, it is challenging to implement very detailed numerical optimization method. Rely on magic boxes in cvxopt package, you are able to derive the solution with only one command! At the same time, you are able to grasp critical points of SVM modeling.

Feature

  • Well-designed visualization of the decision boundary!
  • A quick start to get familiar with cvxopt .

Prerequisite

  1. Get familiar with the basic modeling of the hard-margin SVM.

  2. Get familiar with the idea of how to transforming into a QP-Problem

  3. Have cvxopt installed. Install insturction

  4. Python 3(Basic Concept of function, import, OOP, etc.)

  5. Numpy,Jupyter Notebook, matplotlib, etc, Anaconda is a one-stage solution instead of manually installing these frequently used 3-rd party package.

Here are two tutorials in English (Note from standformd CS229) and Chinese(author's CSDN blog).

Note: For notes in standford, first 7 pages will provide you with enough background knowledge about SVM(before lagrange duality).

Quick start

  1. Open terminal at target directory(anywhere you want to start this interactive tutorial)
  2. follow these steps:
git clone https://github.com/liubai01/hard-margin-SVM-tutorial-by-cvxopt.git
cd hard-margin-SVM-tutorial-by-cvxopt/
jupyter notebook

Finally, open your browser to connect your Jupyter session. Open SVM_HARD.ipynb directly.

More case studies of machine learning can be found in my repositories[link]!

hard-margin-svm-tutorial-by-cvxopt's People

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

liuxing1122

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.