其他分享
首页 > 其他分享> > SVM——针对线性可分(下)

SVM——针对线性可分(下)

作者:互联网

一、SMO算法

   我们回顾一下上一篇文章推出来的公式:

 

 

   为了和代码对应,我们替换了一下字母。。。

  上述式子是一个二次规划问题,我们选用SMO算法来解决。

   1.SMO的基本思路

  (1)先固定除λi之外的所有参数,然后求λi上的极值

    由于存在约束条件,不可以只固定一个,所以我们选择一对需要更新的两个变量αi和αj 

  (2)固定αi和αj以外的参数,求解总式获得更新后的αi和αj

   不断执行上述两个步骤直至收敛

   这样把原始问题的求解 n个参数二次规划问题分解成多个二次规划问题求解,每个子问题只需要求解2个参数,节省了时间成本和内存需求。

  2.算法原理

  (1)获得没有修剪的原始解

     假设我们选取的两个需要优化的参数α1和α2,剩下的α3,α4,……,αn则固定,作为常数处理

     将SVM优化问题展开可得:

     将<xi,xj>内积定义为Ki,j,将要优化的公式定义为T,将与α1,α2无关的项合并为常数C

     于是目标函数就被我们转换为一个二元函数的优化问题:

 

     方法是更新迭代。

 

 

 

 

 

 

 

 

  (2)对原始解进行修剪

 

 

 

 

  (3)更新阈值b

 

 

 

 

 

标签:问题,SVM,求解,更新,SMO,针对,参数,线性,优化
来源: https://www.cnblogs.com/hm0419/p/16176652.html