微信扫码登录

其他登录方式

绑定手机号

注册

我同意用户协议

忘记密码

用户协议

绑定手机号

近期有不法分子打着爱盈利的旗号,制作“爱盈利”名称的App,并伪造爱盈利证件,骗取用户信任,以抖音点赞赚钱或其他方式赚钱为名义,过程中以升级会员获得高佣金为名让用户充值。
爱盈利公司郑重声明:我司没有研发或运营过任何名为“爱盈利”的APP,我司做任务赚钱类产品从没有让任何普通用户充值升级会员。我公司产品均在本网站可查询,请将网站拉至底部,点击“关于我们”可查看爱盈利相关产品与服务。
温馨提示:当遇到此类问题请拨打官方电话或添加官方微信,以免财产损失。爱盈利官网地址:www.aiyingli.com。
  • 推广与合作
X

AI产品经理必懂算法:支持向量机SVM

来源: 301111

作为AI产品经理必懂算法的第二篇,来了解一下支持向量机SVM算法,英文全称是“Support Vector Machine”。在机器学习中,SVM是监督学习下的二分类算法,可用于分类和回归任务。

AI产品经理必懂算法:支持向量机SVM

首先我们来玩儿一个分豆子的经典游戏,可以想象一堆的红豆、绿豆,散布在一个高维空间中,豆子的特征有多少,空间的维数就有多少。相应的,各个豆子的位置就是其对应各特征的坐标值。如果想尽可能完美地一下把豆分开,SVM就是用来找到分豆神器的方法,换个比较专业的说法就是寻找最优的“超平面”。

备注:超平面是纯粹的数学概念,不是物理概念,它是平面中的直线、空间中的平面的推广,只有当维度大于3,才称为“超”平面。

SVM的核心任务就是:构建一个N-1维的分割超平面来实现对N维样本数据放入划分,认定的分隔超平面两侧的样本点分属两个不同类别。

我们还是从一个最为简单的示例开始讲起(二维平面):

AI产品经理必懂算法:支持向量机SVM

情况1:请大家观察一下,A、B、C三条直线哪一条才是正确的分类边界呢?显而易见,只有A“完整”的区分了两种数据的决策边界。

AI产品经理必懂算法:支持向量机SVM

情况2:与情况1不同的是,上图中,A、B、C三条线都完整的区分了边界,那我们应该如何选择呢?既然能分豆的工具这么多,那我们理所当然应该找一个最好的是不是?最佳答案应该是B,因为B与边数据的距离是最远的,之所以选择边距最远的线,是因为这样它的容错率更高,表现更稳定,也就是说当我们再次放入更多的豆的时候,出错的概率更小。

那么由此推导出,SVM的分类方法,首先考虑的是正确分类;其次考虑的优化数据到边界的距离。

接下来更麻烦的情景出现了,请看下图,这堆豆子要怎么分?如果这是在一个二维平面上,这些豆子应该用一条什么线来划分呢?

AI产品经理必懂算法:支持向量机SVM

难道我们真的要在画一条无限曲折的线去划分吗?如果再怎样曲折还是无法区分又该怎么做呢?这就是线性不可分的情况,其实在现实生活中,大量的问题都线性不可分,而SVM正是处理这种线性不可分情况的好帮手。

处理这类问题的办法就是,将二维平面转化到一个三维空间,因为往往在低维空间下的非线性问题,转化到高维空间中,就变成了线性问题。比如说上面的图也许就变成了下方的情况。

AI产品经理必懂算法:支持向量机SVM

如上图所示,即三维样本数据被二维平面划分,在二维空间中的不可分问题也被转换成了三维线性可分问题,可以被支持向量机处理。基于这个思想,SVM采用核函数来实现低维空间到高维空间的映射,从而在一定程度上解决了低维空间线性不可分的问题。

下面我们简述一下关于核函数的定义,以利于进一步理解他的作用。

核函数:任意两个样本点在扩维后的空间的内积,如果等于这两个样本点在原来空间经过一个函数后的输出,那么这个函数就叫核函数。

作用:有了这个核函数,以后的高维内积都可以转化为低维的函数运算了,这里也就是只需要计算低维的内积,然后再平方。明显问题得到解决且复杂度极大降低。总而言之,核函数它本质上隐含了从低维到高维的映射,从而避免直接计算高维的内积。

常用的核函数有如下一些:例如线性核函数、多项式核函数、径向基核函数(RBF)、高斯核函数、拉普拉斯核函数、sigmoid核函数等等。

简单的理解了SVM的原理,我们再来了解一下模型的训练过程。

  1. 被所有的样本和其对应的分类标记交给算法进行训练。
  2. 如果发现线性可分,那就直接找出超平面。
  3. 如果发现现行不可分,那就映射到n+1维的空间,找出超平面。
  4. 最后得到超平面的表达式,也就是分类函数。

最后,我们要了解的是SVM的优势以及缺陷,以便进一步加深理解。

优点:

  • 效果很好,分类边界清晰;
  • 在高维空间中特别有效;
  • 在空间维数大于样本数的情况下很有效;
  • 它使用的是决策函数中的一个训练点子集(支持向量),所以占用内存小,效率高。

缺点:

  • 如果数据量过大,或者训练时间过长,SVM会表现不佳;
  • 如果数据集内有大量噪声,SVM效果不好;
  • SVM不直接计算提供概率估计,所以我们要进行多次交叉验证,代价过高。

相关阅读

AI产品经理必懂算法:k-近邻(KNN)算法

 

本文由 @燕然未勒 原创发布于人人都是产品经理。未经许可,禁止转载。

题图来自 Unsplash ,基于 CC0 协议。

爱盈利-运营小咖秀(www.aiyingli.com) 始终坚持研究分享移动互联网App运营推广经验、策略、全案、渠道等纯干货知识内容;是广大App运营从业者的知识启蒙、成长指导、进阶学习的集聚平台;

想了解更多移动互联网干货知识,请关注微信公众号运营小咖秀(ID: yunyingshow)

评论

相关文章推荐

SELECT dw_posts.ID,dw_posts.post_title,dw_posts.post_content FROM dw_posts INNER JOIN dw_term_relationships ON (dw_posts.ID = dw_term_relationships.object_id) WHERE 1=1 AND(dw_term_relationships.term_taxonomy_id = 3083 ) AND dw_posts.post_type = 'post' AND (dw_posts.post_status = 'publish') GROUP BY dw_posts.ID ORDER BY RAND() LIMIT 0, 6

京ICP备15063977号-2 © 2012-2018 aiyingli.com. All Rights Reserved. 京公网安备 11010102003938号