minekirito的个人博客分享 http://blog.sciencenet.cn/u/minekirito

博文

数据挖掘领域必须熟悉的十大经典算法其三——SVM

已有 3335 次阅读 2019-1-19 11:50 |个人分类:数据挖掘算法介绍|系统分类:科研笔记| SVM

国际权威学术组织IEEE International Conference on Data Mining评出了数据挖掘领域的十大经典算法。在真正进入数据挖掘算法的学习之前,这十个在该领域产生了深远影响的算法应该优先学习一下。    

        注:本文是对《大数据、数据挖掘与智慧运营综述》第一章的重新梳理,并加入了自己的理解。每个算法只是简单介绍,日后会详细研究。

    3.svm:支持向量机

    它是一种监督式学习方法,广泛应用于统计分类以及回归分析中。svm的思想是使用一种非线性映射将向量映射到一个更高维的空间,寻找在此空间下最大间隔的超平面(也可成为决策边界)。只要维足够高,非线性映射足够合适,这个最大间隔平面总会找到。超平面可以有无数个。在超平面的两边建立两个互相平行的超平面。分隔超平面使两个平行超平面的距离最大化。距离越大,总误差就越小。

095042Fc-8.gif

svm最大的两个优点,一是计算简单,二是鲁棒性强,不需要额外的微调。

 

    svm可以利用已知的有效算法来优化自身,但我们使用时需要提供其他参数。其中最关键的三个:使用的核函数参数g,为了引入数据变化所需的惩罚系数C,不敏感损失函数参数ε。

    svm的惩罚系数C、核函数参数g、不敏感损失函数参数ε等3个关键参数直接影响预测精度。不敏感损失函数参数ε值越大支持向量数越少,得到的解表达式越稀疏,回归预测的精度降低;惩罚系数C小于一定值时训练误差变大,大于一定值时模型泛化能力变差;核函数参数g小于一定值时易产生过学习,大于一定值时易造成欠学习。所以对svm算法的研究大部分都是针对这三个函数取值的优化。如何不费时又能找到最佳参数,下面总结一点近期论文的方法。

 

PSO-svm(Particle Swarm Optimization):粒子群算法优化支持向量机

    这种方法引入粒子群算法对支持向量机模型参数寻优过程进行优化,将对训练集进行交叉验证法下(svm寻找三个参数的通常方法)的最小均方差作为PSO中的适应度函数值,通过粒子在解空间追随最优的粒子进行搜索,寻求最优解。

    它首先对样本数据进行归一化处理。归一化处理的目的在于将不同量纲的原始数据规整到固定区间,如:[0,1]。再划分训练集和预测集,建立支持向量机模型,结合PSO算法找到参数[C,g,ε]的最优解。随后对得出的模型进行评估

MFO-svm(Moth-Flame Optimization):飞蛾扑火算法优化支持向量机

  飞蛾在飞行中保持相对于月球的固定角度,当飞蛾看到人造光时,它们会试图保持与光线相似的角度直线飞行,但由于这样的光线比月球的光线距离近很多,因此与光源保持相似的角度会导致飞蛾无用的或致命的螺旋飞行路径,飞蛾最终会向光收敛.通过对该行为建模,提出(MFO)算法.将c和g两个参数作为MFO算法的优化变量,将SVM作为MFO的评估函数,这就是MFO-svm的核心思想了。

GA-svm(Genetic Algorithm):遗传算法优化svm

    遗传算法是基于自然选择和生物遗传机制,用于全局优化、分类以及其他数据挖掘技术的适合度进行评价的方法。

大致流程为:

 

有机会我会对大部分的svm优化算法做一下横向比较。




https://blog.sciencenet.cn/blog-3401624-1157930.html

上一篇:数据挖掘领域必须熟悉的十大经典算法其二——CART算法
下一篇:数据挖掘领域必须熟悉的十大经典算法其一——Apriori算法
收藏 IP: 180.212.235.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-1 00:57

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部