Git Product home page Git Product logo

statistical-learning-lihang's Introduction

《统计学习方法》

以《统计学习方法》(李航)的内容为基础,综合了《机器学习》(周志华)、《机器学习基石》和《机器学习技法》(林轩田)等内容,并从零实现了部分算法的代码,同时也有相关模型在Scikit-Learn中的使用介绍。

第6章-Logistic回归&最大熵模型

一. 线性可分支持向量机与硬间隔最大化

  • 从训练数据集线性可分的假设开始,引出支持向量机的概念——最大间隔的线性分类器;
  • 定义了函数间隔与几何间隔,并推导出Hard-margin SVM的primal问题;
  • 支持向量的含义:一部分位于边界上的点,决定着分离平面的位置;
  • 推导对偶问题(Standard hard-margin SVM dual),对支持向量的再理解;

二. 线性支持向量机与软间隔最大化

  • 取消训练数据集线性可分的假设,对原Hard-margin的primal做出初步修正(林轩田);
  • 引入松弛变量,得到被标准的软间隔最大化的primal问题,即线性SVM;
  • Soft-margin SVM dual的推导,重点关注KKT条件;
  • 支持向量的再理解:Free SV和Bounded SV(林轩田);
  • Soft-margin primal经过变形,等价于合页损失函数+L2正则化;

三. 非线性支持向量机与核函数(林轩田)

  • 使用核技巧的动机;
  • Kernel Function = Non-linear transformation+Inner product;
  • 多项式核与高斯核;
  • 核函数的充要条件:Mercer's conditions,对称函数与半正定矩阵;

四. 序列最小最优化算法(SMO)

  • 训练样本的容量非常大时,用QP程式解dual也很慢;
  • 利用KKT条件,开发专门解决SVM二次规划的算法;
  • SMO要解决的是Soft-margin svm dual:
    • 选择两个变量,一个是违反KKT条件最严重的那一个,另一个由约束条件自动确定;
    • 固定其他变量,解针对上述两个变量的子二次规划问题;
    • 直到所有alpha都满足KKT条件。

statistical-learning-lihang's People

Contributors

lobbyboy-dray avatar

Watchers

James Cloos avatar

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.