基于源代码:《机器学习——支持向量机SVM之python实现简单实例一》进行讲解

1、线性模型

这里以二特征三类,一对多策略为案例

kernel = “linear”:线性核,参数有w,b

线性模型的决策边界是:w0iTx0i + w1iTx1i + bi = 0

注:w0iTx0i + w1iTx1i + bi = 1和w0iTx0i + w1iTx1i + bi = -1是穿过支持向量的决策面,边界

i的大小由类别的个数决定,i = n,说明决策函数有n个,因此查看参数的时候,w为一个nx2的数组,2代表的是特征的个数

classifier=svm.SVC(C=100,kernel='linear',gamma=100,decision_function_shape='ovr') # ovr:一对多策略
classifier.coef_#参数w
#[[-6.28425012  5.14207649][-8.45820407  6.92112224][-0.99813811 -2.00212539]]
classifier.intercept_#参数b
# [-0.07076934 -0.08011805  0.12861107]

图中实线为分界面,虚线为决策边界,穿过支持向量的边界

#绘制边界和分界面
def plot_boundary(w,b):plot_x1 = np.linspace(x[:, 0].min(), x[:, 0].max(), 200)#分界面w0x0 + w1x1 + b = 0plot_x21 = -w[0][0] / w[0][1] * plot_x1 - b[0] / w[0][1]plot_x31 = -w[1][0] / w[1][1] * plot_x1 - b[1] / w[1][1]plot_x41 = -w[2][0] / w[2][1] * plot_x1 - b[2] / w[2][1]#上边界w0x0 + w1x1 + b = 1plot_up_x21 = -w[0][0] / w[0][1] * plot_x1 - b[0] / w[0][1] + 1/w[0][1]plot_up_x31 = -w[1][0] / w[1][1] * plot_x1 - b[1] / w[1][1] + 1/w[1][1]plot_up_x41 = -w[2][0] / w[2][1] * plot_x1 - b[2] / w[2][1] + 1/w[2][1]#下边界w0x0 + w1x1 + b = -1plot_down_x21 = -w[0][0] / w[0][1] * plot_x1 - b[0] / w[0][1] - 1/w[0][1]plot_down_x31 = -w[1][0] / w[1][1] * plot_x1 - b[1] / w[1][1] - 1/w[1][1]plot_down_x41 = -w[2][0] / w[2][1] * plot_x1 - b[2] / w[2][1] - 1/w[2][1]#分界面plt.plot(plot_x1, plot_x21, c="black")plt.plot(plot_x1, plot_x31, "r")plt.plot(plot_x1, plot_x41, c="b")#上边界plt.plot(plot_x1, plot_up_x21, "g--")plt.plot(plot_x1, plot_up_x31, "r--")plt.plot(plot_x1, plot_up_x41, "b--")#上边界plt.plot(plot_x1, plot_down_x21, "g--")plt.plot(plot_x1, plot_down_x31, "r--")plt.plot(plot_x1, plot_down_x41, "b--")plot_boundary(w,b)

其中:

w=ceof_:
[[-6.28425012  5.14207649][-8.45820407  6.92112224][-0.99813811 -2.00212539]]
b=intercept_:
[17.45202353 23.14272776 11.8943489 ]

2、非线性模型

非线性模型使用的是高斯核,kernel = “rbf”,参数有:b

,w不需要计算

classifier=svm.SVC(C=100,kernel='rbf',gamma=100,decision_function_shape='ovr') # ovr:一对多策略
classifier.intercept_#参数b
# [-0.07076934 -0.08011805  0.12861107]

机器学习——python实现SVM模型w,b的查看相关推荐

  1. python sklearn svm 模型训练后的参数说明

    在调用sklearn的SVM时,如果设置verbose=True,模型训练结束后会显示一些训练过程的说明信息,如下(以下是OCSVM的返回结果): * optimization finished, # ...

  2. python sklearn svm模型的保存与加载调用

    对于机器学习的一些模型,跑完之后,如果下一次测试又需要重新跑一遍模型是一件很繁琐的事,这时候我们就需要保存模型,再加载调用. 楼主发现有这些保存模型的方法,网上有很多错误的例子,所以给大家在整理一下. ...

  3. Python ,SVM模型效果的评估指标

    混淆矩阵中: 模型整体效果:准确率: 1. 准确率Accuracy就是所有预测正确的所有样本除以总样本,通常来说越接近1越好 2.捕捉少数类的艺术:精确度,召回率和F1 score: 精确度Preci ...

  4. python支持向量机模型_【Spark机器学习速成宝典】模型篇08支持向量机【SVM】(Python版)...

    目录 什么是支持向量机(SVM) 引例 假定有训练数据集 ,其中,x是向量,y=+1或-1.试学习一个SVM模型. 分析:将线性可分数据集区分开的超平面有无数个,但是SVM要做的是求解一个最优的超平面 ...

  5. 【Python机器学习】之 SVM 支持向量机算法(二)

    SVM 支持向量机(二) 1.支持向量机 ​ 这样,由于w,x\mathbf{w,x}w,x初始值的不同,最后得到的分割超平面也有可能不同,那么一定存在一个最优的超平面,这种方法就是支持向量机. ​ ...

  6. 5.7 程序示例--基于 SMO 的 SVM 模型-机器学习笔记-斯坦福吴恩达教授

    程序示例–基于 SMO 的 SVM 模型 在这里,我们会实现一个基于 SMO 的 SVM 模型,在其中,提供了简化版 SMO 和 完整版 SMO 的实现. 简化版 SMO:不使用启发式方法选择 (α( ...

  7. 使用Python+PCA+SVM算法实现人脸识别模型

    在本文中,我们将使用主成分分析和支持向量机来建立人脸识别模型. 首先,让我们了解PCA和SVM是什么: 主成分分析: 主成分分析(PCA)是一种机器学习算法,广泛应用于探索性数据分析和建立预测模型,它 ...

  8. python应用(3)svm模型预测股票涨跌

    最近接了一个私活,指导学妹完成毕业设计.核心思想就是利用SVM模型来预测股票涨跌,并完成策略构建,自动化选择最优秀的股票进行资产配置. 在做这个项目的过程中,我体会到想成为一个合格的数据分析或者数据挖 ...

  9. 机器学习实战5-sklearn训练SVM模型分类回归(make_moons数据集)

    先上公式推导吓吓萌新...嘻嘻 上图中两个决策边界(虚线)的间隔为,可以把它看做求两条平行直线的距离,只是这里是超直线罢了, 例如:两平行线方程分别是:Ax+By+C1=0和Ax+By+C2=0 则它 ...

最新文章

  1. 怎么理解ASM中的Failgroup
  2. xshell连接Linux、ngix部署
  3. 生产者与消费者(二)---await与 signal
  4. 2017 企业服务创新大会启动,助力中国企业敏捷发展
  5. AppFabric Caching Admin Tool
  6. 系统补丁自动批量安装
  7. CSS3 选择器(Selector)
  8. Android之高仿墨迹天气桌面组件(AppWidgetProvider)
  9. 云桥网络 unity学习素材整理合集包 可自行获取
  10. 1999-2018年地级市经济增长数据(GDP、人均GDP、各产业产值占比等)
  11. 二、安装配置java和hadoop程序
  12. JDK安装 Java环境配置
  13. 股票中的KDJ三根线分别代表什么?
  14. 我的世界python——方块朋友(方块设置移动路径getline)
  15. 让Crystal Report【水晶报表】助你编程马到成功!
  16. 威斯康星麦迪逊计算机专业排名,恭喜L同学获得威斯康星大学麦迪逊分校计算机专业(专业排名TOP10)EA录取...
  17. AAA和RADIUS
  18. java系统高并发的解决方案
  19. 小桥流水人家(python)
  20. Java求矩形三角形圆形梯形的面积和周长小程序页面

热门文章

  1. command line
  2. Oracle 随机获取N条数据
  3. vue中使用Vue-pdf在线预览
  4. vim下更省心地用中文
  5. Angular 路由守卫
  6. 用servlet设计OA管理系统时遇到问题
  7. Linux 系统目录
  8. 130242014018-郑志良-第2次实验
  9. 属性名、变量名与 内部关键字 重名 加
  10. ASP.NET Web API 应用教程(一) ——数据流使用