最新要闻
- 凤凰公园在哪里_凤凰公园占地面积|每日快报
- 女主变成拉拉 索尼大作《西之绝境》DLC评分再跌 差评持续上涨-全球聚焦
- 订不到酒店咋办?淄博一影院看末场电影可免费夜宿至早晨7点
- 人工智能会如何影响东南亚的产业发展︱南洋飞语 环球关注
- 周四周五举行!郑州助企用工专场招聘会提供万余就业岗位
- 王俊凯是农历多少_王俊凯农历生日是几月几日
- 2023年4月票房已破20亿:2部日本电影出彩 《灌篮高手》情怀刷满
- 重磅微视频:读书之美 世界聚焦
- 全球微头条丨如何判断你整体的学业运势
- 天天热推荐:不会主动告知风险!ChatGPT生成代码被指并不安全
- 教练妻子等丈夫下班 教7岁女儿在驾校学车 导致驾校停业整顿|全球要闻
- 环球新资讯:vivo Y系列首款曲面屏!vivo Y78+开启预售:1599元起
- 网红购买500万日元NFT暴跌近9成 吐槽真实网络诈骗
- 成都武侯祠门票需要提前预约吗
- 为亲朋好友非法牟利罪的犯罪数额有什么限制
- 硬刚苹果、高通?消息称ARM要自己搞先进芯片:进军手机、PC
广告
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
【环球聚看点】线性SVM决策过程的可视化
线性 SVM 决策过程的可视化
导入模块
from sklearn.datasets import make_blobsfrom sklearn.svm import SVCimport matplotlib.pyplot as pltimport numpy as np
实例化数据集,可视化数据集
x, y = make_blobs(n_samples=50, centers=2, random_state=0, cluster_std=0.5)# plt.scatter(x[:, 0], x[:, 1], c=y, cmap="rainbow")# plt.xticks([])# plt.yticks([])
画决策边界
# 首先要有散点图plt.scatter(x[:, 0], x[:, 1], c=y, s=50, cmap="rainbow")# 获取当前的子图,如果不存在,则创建新的子图ax = plt.gca()# 获取平面上两条坐标轴的最大值和最小值xlim = ax.get_xlim() # (-0.46507821433712176, 3.1616962549275827)ylim = ax.get_ylim() # (-0.22771027454251097, 5.541407658378895)# 在最大值和最小值之间形成30个规律的数据axisx = np.linspace(xlim[0], xlim[1], 30) # shape(30,)axisy = np.linspace(ylim[0], ylim[1], 30) # shape(30,)# 将axis(x, y)转换成二维数组axisx, axisy = np.meshgrid(axisx, axisy) # axisx, axisy = shape((30, 30)# 将axisx, axisy 组成 900 * 2 的数组xy = np.vstack([axisx.ravel(), axisy.ravel()]).T # shape(900, 2)# 展示xy画出的网格图# plt.scatter(xy[:, 0], xy[:, 1], s=1, c="grey", alpha=0.3)
(资料图片仅供参考)
建模,计算决策边界并找出网格上每个点到决策边界的距离
# 建模,通过fit计算出对应的决策边界clf = SVC(kernel="linear").fit(x, y)# 重要接口decision_function,返回每个输入的样本所对应的到决策边界的距离z = clf.decision_function(xy).reshape(axisx.shape) # shape(30, 30)plt.scatter(x[:, 0], x[:, 1], c=y, s=50, cmap="rainbow")ax = plt.gca()# 画决策边界和平行于决策边界的超平面ax.contour( axisx, axisy, z, colors="k", levels=[-1, 0, 1], linestyles=["--", "-", "--"], alpha=0.5,)# 设置xyk刻度ax.set_xlim(xlim)ax.set_ylim(ylim)
(-0.22771027454251097, 5.541407658378895)
将绘图过程包装成函数
# 将上述过程包装成函数:def plot_svc_decision_function(model: SVC, ax=None): """画出线性数据中策边界和平行于决策边界的超平面 Args: model (SVC): 模型 ax (_type_, optional): 子图. Defaults to None. """ if ax is None: ax = plt.gca() # 获取子图或新建子图 xlim = ax.get_xlim() # 获取子图x轴最大值和最小值 ylim = ax.get_ylim() # 获取子图y轴最大值和最小值 # 在最大值和最小值之间形成30个规律的数据 x = np.linspace(xlim[0], xlim[1], 30) y = np.linspace(ylim[0], ylim[1], 30) # 将x,y转换成x^2, y^2的二维数组 Y, X = np.meshgrid(y, x) # 组成 xy * 2 的数组 xy = np.vstack([X.ravel(), Y.ravel()]).T # 获取每个输入的样本所对应的到决策边界的距离 P = model.decision_function(xy).reshape(X.shape) # 画图 ax.contour( X, Y, P, colors="k", levels=[-1, 0, 1], alpha=0.5, linestyles=["--", "-", "--"] ) ax.set_xlim(xlim) ax.set_ylim(ylim)
clf = SVC(kernel="linear").fit(x, y)plt.scatter(x[:, 0], x[:, 1], s=50, cmap="rainbow", c=y)plot_svc_decision_function(clf)
# 测试x1, y1 = make_blobs(n_samples=500, centers=2, cluster_std=0.9)clf1 = SVC(kernel="linear").fit(x1, y1)plt.scatter(x1[:, 0], x1[:, 1], c=y1, s=25, cmap="rainbow")plot_svc_decision_function(clf1)
探索模型
# 根据决策边界,对X中的样本进行分类,返回的结构为n_samplesclf.predict(x)
array([1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0])
# 返回给定测试数据和标签的平均准确度clf.score(x, y)
1.0
# 返回支持向量clf.support_vectors_
array([[0.5323772 , 3.31338909], [2.11114739, 3.57660449], [2.06051753, 1.79059891]])
# 返回每个类中支持向量的个数clf.n_support_
array([2, 1], dtype=int32)
推广到非线性情况
from sklearn.datasets import make_circlesx, y = make_circles(n_samples=300, factor=0.1, noise=0.1)# x.shape(300, 2)# y.shape(300,)plt.scatter(x[:, 0], x[:, 1], c=y, s=50, cmap="rainbow")plt.show()
# 测试plot_svc_decision_functionclf = SVC(kernel="linear").fit(x, y)plt.scatter(x[:, 0], x[:, 1], s=50, cmap="rainbow", c=y)plot_svc_decision_function(clf)clf.score(x, y)
0.6733333333333333
为非线性数据增加维度并绘制 3D 图像
r = np.exp(-(x**2).sum(1)) # r.shape(300,)rlim = np.linspace(min(r), max(r), 100)
from mpl_toolkits import mplot3d# 定义一个绘制三维图像的函数# elev表示上下旋转的角度# azim表示平行旋转的角度def plot_3D(elev=30, azim=30, x=x, y=y): ax = plt.subplot(projection="3d") ax.scatter3D(x[:, 0], x[:, 1], r, c=y, s=50, cmap="rainbow") ax.view_init(elev=elev, azim=azim) ax.set_xlabel("x") ax.set_ylabel("y") ax.set_zlabel("r") plt.show()plot_3D()
将上述过程放到 Jupyter Notebook 中运行
# 如果放到jupyter notebook中运行from sklearn.svm import SVCimport matplotlib.pyplot as pltimport numpy as npfrom sklearn.datasets import make_circlesX, y = make_circles(100, factor=0.1, noise=0.1)plt.scatter(X[:, 0], X[:, 1], c=y, s=50, cmap="rainbow")def plot_svc_decision_function(model, ax=None): if ax is None: ax = plt.gca() xlim = ax.get_xlim() ylim = ax.get_ylim() x = np.linspace(xlim[0], xlim[1], 30) y = np.linspace(ylim[0], ylim[1], 30) Y, X = np.meshgrid(y, x) xy = np.vstack([X.ravel(), Y.ravel()]).T P = model.decision_function(xy).reshape(X.shape) ax.contour( X, Y, P, colors="k", levels=[-1, 0, 1], alpha=0.5, linestyles=["--", "-", "--"] ) ax.set_xlim(xlim) ax.set_ylim(ylim)clf = SVC(kernel="linear").fit(X, y)plt.scatter(X[:, 0], X[:, 1], c=y, s=50, cmap="rainbow")plot_svc_decision_function(clf)r = np.exp(-(X**2).sum(1))rlim = np.linspace(min(r), max(r), 100)from mpl_toolkits import mplot3ddef plot_3D(elev=30, azim=30, X=X, y=y): ax = plt.subplot(projection="3d") ax.scatter3D(X[:, 0], X[:, 1], r, c=y, s=50, cmap="rainbow") ax.view_init(elev=elev, azim=azim) ax.set_xlabel("x") ax.set_ylabel("y") ax.set_zlabel("r") plt.show()from ipywidgets import interact, fixedinteract(plot_3D, elev=[0, 30], azip=(-180, 180), X=fixed(X), y=fixed(y))plt.show()
interactive(children=(Dropdown(description="elev", index=1, options=(0, 30), value=30), IntSlider(value=30, de…
关键词:
-
【环球聚看点】线性SVM决策过程的可视化
线性SVM决策过程的可视化导入模块fromsklearn datasetsimportmake_blobsfromsklearn svmimportSVCimportmatp
来源: 【环球聚看点】线性SVM决策过程的可视化
凤凰公园在哪里_凤凰公园占地面积|每日快报
女主变成拉拉 索尼大作《西之绝境》DLC评分再跌 差评持续上涨-全球聚焦
订不到酒店咋办?淄博一影院看末场电影可免费夜宿至早晨7点
人工智能会如何影响东南亚的产业发展︱南洋飞语 环球关注
世界焦点!kafka设计理念解析
Geotools基本增删改查Feature-天天精选
周四周五举行!郑州助企用工专场招聘会提供万余就业岗位
王俊凯是农历多少_王俊凯农历生日是几月几日
2023年4月票房已破20亿:2部日本电影出彩 《灌篮高手》情怀刷满
重磅微视频:读书之美 世界聚焦
Matter 与ZigBee、蓝牙、Wi-Fi的关系_环球新视野
世界速递!俄罗斯与联合国将磋商黑海港口农产品外运协议前景
全球微头条丨如何判断你整体的学业运势
天天热推荐:不会主动告知风险!ChatGPT生成代码被指并不安全
教练妻子等丈夫下班 教7岁女儿在驾校学车 导致驾校停业整顿|全球要闻
环球新资讯:vivo Y系列首款曲面屏!vivo Y78+开启预售:1599元起
网红购买500万日元NFT暴跌近9成 吐槽真实网络诈骗
成都武侯祠门票需要提前预约吗
ASP.NET Core MVC 从入门到精通之Razor语法 当前观点
焦点速看:05 第一个c函数
为亲朋好友非法牟利罪的犯罪数额有什么限制
【财经分析】TCL科技扣非净利巨亏27亿创历史新低 比2021年下滑121亿元 全球报道
硬刚苹果、高通?消息称ARM要自己搞先进芯片:进军手机、PC
180°可躺倒设计+活水杀菌!米家无线洗地机2图赏 焦点热门
理想汽车L系列喜迎4.4大版本更新:增加哨兵模式 全球速读
全球简讯:你觉得调休日上班效率有区别吗?
提高开发生产力的4大敲门砖_当前观点
JavaScript 使用 splice 方法删除数组元素可能导致的问题
199元就能买到这么顶的1/6手办?|焦点精选
多只债券基金遭遇大额赎回 机构:债市或维持震荡格局
张超文会长与中国医药报社总编辑王春梅交流座谈-天天热议
RTX 4070卖不动?NV反击:186W下性能2倍于272W功耗3070 Ti显卡-天天热头条
热消息:Vue3 +element-plus+ wangEditor 富文本编辑器+前端七牛云上传
《Redis设计与实现》读书笔记 焦点简讯
2023年团体程序设计天梯赛 题解
环球观天下!并发编程(1)-线程与锁
前沿资讯!性能测试工具Locust和JMeter比较-及相关书籍下载
滚动:新金路(000510.SZ):提请股东大会授权董事局办理以简易程序向特定对象发行股票
英足总杯丨马赫雷斯“戴帽”,曼城挺进决赛|精选
让老外爱上“砍一刀”!拼多多Temu英国站已正式上线 天天亮点
每日播报!圆球停在斜坡顶端 网友称物理学不存在了 体彩中心:可能是天气原因
美国多个州要求召回韩国汽车:缺乏基本的防盗装置 危及公共安全
环球快消息!比亚迪百万豪车!仰望U8开车第一视角曝光:马路都感觉变窄了
蛋蛋面膜真的能去皱纹吗_蛋蛋面膜
「学习笔记」重修 FHQ-treap
Godot 4.0 设置应用程序图标、项目图标
Springboot yml配置参数加密 ,jasypt自定义解密器|当前简讯
国家能源局:截至3月底全国累计发电装机容量约26.2亿千瓦 同比增长9.1%
亚香股份: 2022年年度报告摘要
全球速读:劳斯莱斯不让进展台 小姐姐直接买了仰望U8、仰望U9两款车
【时快讯】广州街头大众CC变道不成 倒车怒撞奔驰E 网友直呼太恶劣
华为宣布开放5G网络能力 自家5.5G比5G快10倍|焦点速读
什么是期货对冲交易 全球独家
每日观点:歌词那些遗憾留在心底_心中的遗憾歌词
人机识别技术再升级,AIGC为验证码带来万亿种新变化_环球关注
从热爱到深耕,全国Top10开源软件出品人手把手教你如何做开源 微头条
当前观察:今日沈阳老凤祥黄金价格查询(2023年4月23日)
全球快播:提车时大风吹倒墙壁新车被砸 男子:4S店只修不换不退
【当前独家】抖音推出种草产品有柿App 由头条搜索升级而来
体彩开奖球停在斜坡不下滚遭质疑是什么情况
观察:厦门国际银行助力企业赴澳发行首笔“深合债”
詹姆斯:我职业生涯中和很多人有过对决 所以我不想谈狄龙 焦点快播
重返韩国!2023《英雄联盟》S13全球总决赛10月开战:赛程抢先看-全球快看
穿一次扔了都不亏!阿里工厂店大促:船袜6毛4一双起
全球报道:傅索安巴甫洛夫 傅索安怎么死的
优化数据呈现方式,分组双轴图是最佳选择|实时焦点
天天百事通!Transformer
无惧百万级并发,GaussDB(for Cassandra)让华为推送服务更快触达
使用手机在网状态查询 API 有效防止虚假注册的设计思路 全球简讯
视焦点讯!CAS的service参数验证
头条焦点:缬怎么读(缬字怎么读“缬”的读音是:[xié]【释义】)
上不上名校的区别,藏在李雪琴陈都灵的采访中,演员层次分出来了
环球简讯:奇瑞艾瑞泽STAR概念实车现身 网友:换个BBA的标 能卖百万
被泰国红牛告了 禁止生产销售!中国红牛回应:系网络水军抹黑-世界热点
【速看料】燕矶长江大桥北锚碇填芯混凝土大方量浇筑打破项目纪录
NGINX 备忘清单_开发速查表分享_时讯
孕产妇营养饮食大全 全球今头条
环球热门:雀巢丝滑拿铁咖啡15瓶到手59.8元:榛果、焦糖等多种口味
外观大变 增插混版!全新广汽本田雅阁将于5月底上市 全球快资讯
SpaceX星舰发射导流槽都没挖!马斯克:大意了 焦点短讯
4种口味任选 超划算:和路雪千层雪冰淇淋3.87元大促 _世界新要闻
有望下跌!国内油价五一节前调整 预计下调0.07元/升-微资讯
最新资讯:泡菜坛口用水密封的目的 泡菜坛口为什么要用水密封呢
华为云GaussDB支撑华为MetaERP系统全面替换
券商业绩大反攻!“券茅”获基金大幅加仓
15平方米公共绿地被居民私自硬化,路长、物业齐出手
具俊晔有孩子吗?具俊晔个人资料简介
超频冲上3.1GHz!索泰RTX 4070天启OC评测:远超公版的2K游戏最香显卡 天天新要闻
天天精选!公司要求开宝马卖车否则开除!员工回应:没人开宝马
黑猫警长一只耳的耳朵是怎么没的?黑猫警长中一只耳的娘舅是谁?
回家的诱惑宝莲身世第几集揭晓?回家的诱惑宝莲最后和谁在一起了?
张萌制片的作品有哪些?男制片人张萌简介
西海情歌的原唱是谁?西海情歌背后真实的故事
outlook怎么设置msn邮箱?outlook怎么撤回邮件?
第四范式联合创始人胡时伟:AIGC可能带来企业生产要素的变化
塞班s60v3还能用微信吗?塞班手机性能排行
三星笔记本r23plus黑屏怎么解决?三星笔记本r23plus配置
地下城与勇士刺客刷图厉害吗?地下城与勇士刺客转职什么好?
常用的 API 大全整理|全球热消息