导包并创建数据

#导包
import numpy as np
import matplotlib.pyplot as plt
from sklearn.svm import SVC
from mpl_toolkits.mplot3d import Axes3D
#数据创建
X=np.random.randn(1000,2)
y=[1 if i>0 else 0 for i in X[:,0]*X[:,1]]
plt.scatter(X[:,0],X[:,1],c=y)
plt.savefig('./1.png',dpi=300) ;
  • 绘制出我们创建的数据
  • 我们利用SVM原理进行建模
#建模
svc=SVC(kernel='poly',degree=2) #这里kernel属于我们超参数
svc.fit(X,y)
svc.score(X,y)
#创建预测数据
f1=np.linspace(-3,3,200)
f2=np.linspace(-3,3,180)
F1,F2=np.meshgrid(f1,f2)
X_test=np.column_stack([F1.ravel(),F2.ravel()])
plt.scatter(X_test[:,0],X_test[:,1])
plt.savefig('./2.png',dpi=300)
  • 预测数据
  • 算法预测
y_=svc.predict(X_test)
plt.scatter(X_test[:,0],X_test[:,1],c=y_)
plt.savefig('./3.png',dpi=300)

  • 绘制预测轮廓线
d=svc.decision_function(X_test)   #d是我们边界点距离轮廓线距离
plt.figure(figsize=(6,6))
plt.contour(F1,F2,d.reshape(180,200))
plt.savefig('./4.png',dpi=300)

  • 轮廓面
plt.figure(figsize=(6,6))
plt.contourf(F1,F2,d.reshape(180,200))
plt.savefig('./5.png',dpi=300)

  • 预测面三维图
plt.figure(figsize=(9,6))
ax=plt.subplot(111,projection='3d')
ax.contourf(F1,F2,d.reshape(-1,200))
ax.view_init(40,-50)
plt.savefig('./6.png',dpi=300)

支持向量机SVM原理及代码推导相关推荐

  1. 统计学习方法|支持向量机(SVM)原理剖析及实现

    欢迎直接到我的博客查看最近文章:www.pkudodo.com.更新会比较快,评论回复我也能比较快看见,排版也会更好一点. 原始blog链接: http://www.pkudodo.com/2018/ ...

  2. 机器学习(三):支持向量机SVM(含代码和注释)

    目录 1. 线性可分 2. 支持向量机SVM 1. 线性可分 二维空间中,线性可分数据表示为可用一条直线分开两类数据:若不存在一条直线分开两类数据,则为非线性可分 可以把它拓展到更高维度空间.若在三维 ...

  3. 机器学习:支持向量机SVM原理与理解

    引言 --"举牌子:Support Vector Machines " 一直在犹豫要不要写SVM,因为网上已经有很多详细的SVM原理的解释甚至详细推导,而这东西又庞大复杂,想了解的 ...

  4. 影像组学视频学习笔记(12)-支持向量机(SVM)参数优化(代码)、Li‘s have a solution and plan.

    本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(12)主要介绍: SVM参数优化(代码) 参数优化: 自动寻找最合适的γ和C组合. 原理:遍历所有给定的参数组合,对数据进行训练,找到最 ...

  5. SVM原理及代码实现(学习笔记)

    1.概念 支持向量机(Support Vector Machine, SVM)是一类按监督学习(supervised learning)方式对数据进行二元分类的广义线性分类器(generalized ...

  6. 支持向量机SVM原理解析

    支持向量机(SVM) 支持向量机(support vector machine,SVM)使用训练集中的一个子集来表示决策边界,边界用于样本分类,这个子集称作支持向量(support vector). ...

  7. 支持向量机——SVM原理

    SVM--Support Vector Machine 5.11 update:拉格朗日对偶问题的推导 5.15 update:SMO算法推导 5.17 update:sklearn实现 文章目录 S ...

  8. 机器学习-分类之支持向量机(SVM)原理及实战

    支持向量机(SVM) 简介 支持向量机(Support Vector Machine,SVM),是常见的一种判别方法.在机器学习领域,是一个监督学习模型,通常用来进行模式识别.分类及回归分析.与其他算 ...

  9. 支持向量机(SVM)原理及实现

    一.原理: 以一个二分类为例(y = -1,1):希望支持向量间的距离尽可能远. 我们可以看到上面三个方法的效果: 分类 效果 H1 无法完成分类 H2 robost性较差(在新的数据集上健壮性较差) ...

最新文章

  1. Matlab数据的可视化 -- 条形图
  2. css3弹性盒子模型之box-flex
  3. 的工作空间查看_【工作推荐】裱花师、现金会计、汽车维修等热门岗位汇总!...
  4. java 方块_哈工大java实验 移动小方块
  5. 将 gitblog 的博客内容搬迁到 CSDN
  6. 第三次学JAVA再学不好就吃翔(part92)--Map集合的遍历
  7. simulink怎么生成vxworks的执行程序_Matlab/Simulink基础了解(五):基础Simulink模型搭建及Embedded基础使用...
  8. bash脚本 文件_如何使用Bash脚本来管理从AWS S3存储桶下载和查看文件
  9. 95-872-058-源码-CEP-CEP规则匹配
  10. [BZOJ1877][SDOI2009]SuperGCD
  11. 程序员大部分时间都在“熟悉系统”
  12. Linux 常用名利总结
  13. Jmeter集成Jira提交缺陷
  14. 【转】专利申请前的技术交底书是什么?怎么写?
  15. “(null)” is of a model that is not supported by this version of Xcode. Ple
  16. 十进制转换为N进制C语言
  17. 骗子借新浪微博三周年活动为名诈骗
  18. Mockjs-官网学习总结
  19. 关于android各平台上架心得
  20. 大家有哪些舍不得拿出来分享的网站?你有吗?这几个抓紧收藏起来

热门文章

  1. Servlet过滤器(Filter)不过滤登录页面、JS和CSS文件
  2. npoco oracle,NPOCO总结 - 木筏笔歆的个人空间 - OSCHINA - 中文开源技术交流社区
  3. 好佳居窗帘十大品牌-窗帘卧室的精巧搭配
  4. MBR10200CT-ASEMI肖特基二极管MBR10200CT
  5. 值得收藏的146条民间小偏方
  6. 吊死鬼游戏Hangman游戏的C语言实现代码
  7. Android 开发高手课 温故知新篇
  8. 基于Hopfield的TSP问题求解软件程序设计与实现
  9. 远程桌面按键失效变成快捷键
  10. 【初见ZBRUSH】