【AI白身境】深度学习中的数据可视化​​​​​​​

一文搞定深度学习中的数据可视化 【AI白身境】深度学习中的数据可视化 - 知乎 https://zhuanlan.zhihu.com/p/55422235 阅读详情

文章首发于微信公众号《有三AI》

【AI白身境】深度学习中的数据可视化

今天是新专栏《AI白身境》的第八篇,所谓白身,就是什么都不会,还没有进入角色。

上一节我们已经讲述了如何用爬虫爬取数据,那爬取完数据之后就应该是进行处理了,一个很常用的手段是数据可视化。

通过数据可视化,可以更加直观地表征数据,在深度学习项目中,常需要的数据可视化操作包括原始图片数据的可视化,损失和精度的可视化等。

作者 | 言有三 臧小满 

编辑 | 言有三 臧小满 

 

01 什么是数据可视化?

每每提到数据可视化,大家脑中可能会浮现很各种图表、西装革履的分析师、科幻大片中酷炫的仪表。

其实不用那么复杂,数据可视化早就融合进你我的生活,地铁线路图、公交时刻表,天气预报中的气象地图等都是很常见的。

为什么要进行可视化?

因为人是视觉动物,对于图像的敏感度要比对纯数字的敏感度高的多。

人类对图像的处理速度比文本快6万倍,同时人类右脑记忆图像的速度比左脑记忆抽象文字快100万倍。数据可视化正是利用人类天生技能来增强数据处理和组织效率。

举个简单的例子,计划买一套房产作为投资, 想要了解“去年上海房价哪里涨幅最大”,现以图作答, 把去年的增长率体现在图上,以20%作为分界, 增长超过20%的标红色, 超过越多则越大, 不足的标记成蓝色, 如下图,可以很快get到哪个区域的大幅度涨幅。

可视化将数字抽象成了更方便我们观察和感受的图表,因此需要熟悉使用。

 

02 低维数据可视化

数据有不同的维度,我们最常接触的就是一维,二维的数据,在机器学习任务中,包括损失函数等统计指标。

2.1 散点图

散点图,常用于分析离散数据的分布。比如我们有一个数据集,里面的图片有不同的大小,我们可以利用x,y轴分别对应图片的宽高,从而画出图片尺度的空间分布情况。越密集的地方,说明该尺度类型的图越多,如下图所示。

2.2 折线图

折线图是用于分析变量随另一个变量的变化关系,我们平常接触最多的loss曲线图,accuracy曲线图就是这一种,可以看指标随着训练过程的变化判断收敛情况,从而推测模型训练的好坏,折线图被广泛应用于各类分析,如下图所示。

2.3 直方图,饼状图

这两种图,都常用于统计数据的分布比例以及响应幅度,比如一幅图片的亮度分布情况,不同网络层的参数量,计算时间代价。

这几种图,适合对有时序变化的一维向量,有统计分布的一维向量,或者二维图像的尺度等信息进行可视化。

 

03 高维数据可视化

在机器学习任务中,数据通常是用成百上千维的向量表示,而超过3维的向量,就已经超过了人类的可视化认知,因此通常需要对数据进行降维。

数据降维方法可以分为线性方法和非线性方法。其中线性方法包括PCA和LDA,而非线性方法有保留局部特征、基于全局特征等方法,以t-SNE为代表。下面我们主要介绍PCA和t-SNE方法。

3.1  PCA降维

PCA,全称是Principal components analysis,这是一种分析、简化数据集的技术。PCA常用于减少数据集的维数,同时保持数据集中对方差贡献最大的特征,原理是保留低阶主成分,忽略高阶主成分,因为低阶成分保留了数据最多的信息。

假定X是原始数据,Y是降维后的数据,W是变换矩阵,Y=XW。假如我们需要降到3 维以便于我们可视化,那就取Y的前三个主成分作为原始属性X的代表。

我们采用Google开源的网页版数据可视化工具Embedding Projector来进行可视化,链接如下:

http://projector.tensorflow.org/

选择MNIST作为可视化例子,它的原始维度为10000×784,即10000张28×28的图像。

利用这个工具我们进行PCA的可视化,降低到3个维度后,我们可以选择某个数字进行可视化。下图就是数字9的分布,可以看到,总共有1009个样本,数据的分布在物理空间上具有一定的聚类特性。

还可以用不同的颜色查看全体数据的分布,从这里可以更好的看出不同类的分布规律。

 

3.2  t-SNE降维

SNE全称是Stochastic Neighbor Embedding,它将数据点之间高维的欧氏距离转换为表示相似度的条件概率,目标是将高维数据映射到低维后,尽量保持数据点之间的空间结构,从而那些在高维空间里距离较远的点,在低维空间中依然保持较远的距离。

t-SNE即t-distributed stochastic neighbor embedding,t-SNE用联合概率分布替代了SNE中的条件概率分布,解决了SNE的不对称问题。通过引入t分布,解决了同类别之间簇的拥挤问题。

t-SNE方法实质上是一种聚类的方法,对于一个空间中的点,周围的其他点都是它的“邻居”,方法就是要试图使所有点具有相同数量的“邻居”。

t-SNE经过学习收敛后,通过投影到2维或者3维的空间中可以判断一个数据集有没有很好的可分性,即是否同类之间间隔小,异类之间间隔大。如果在低维空间中具有可分性,则数据是可分的,如果不具有可分性,可能是数据不可分,也可能仅仅是因为不能投影到低维空间。

下图是t-SNE可视化结果图,可以看出,数字都有很明显的聚类效果。

在进行一个机器学习任务之前,通过可视化来对数据集进行更深刻的认识,有助于预估任务的难度,在遇到困难后也会更加容易找到解决方案。

 

04 python数据可视化项目

考虑到python是第一大机器学习编程语言,同时开源项目居多,所以我们只关心python相关的工具,而且python也基本可以满足需求。

可视化的项目太多了,下面基于python和GitHub的数据,随便推荐几款。

1. tensorboard和tensorboardX,想必不需要多做介绍,后者大家可能不熟悉,被开发用来支持chainer, mxnet,numpy,4000+star。

https://github.com/lanpa/tensorboardX

2. visdom,支持numpy和torch的工具,常用于pytorch数据可视化,很强大,5000+star。

https://github.com/facebookresearch/visdom

3. seaborn:一款基于matplotlib的工具,简单来说,就是有更高的API,画出的图也好看,5000+star,主要处理低维数据。

https://github.com/mwaskom/seaborn

4. holoviews:很酷炫的工具,与season差不多,1000+star。

https://github.com/ioam/holoviews

5. missingno:一款缺失数据可视化工具,非常适合分析数据集的完整性,1000+star。

https://github.com/ResidentMario/missingno

就这么多,以后再集中讲可视化工具。

 

总结

数据可视化抽象了数据本身真正的价值,熟练掌握可视化对于分析数据的特征和深度学习模型的性能是必要的技能。

下期预告:下一期我们讲入行AI必备的数学基础,如果你有建议,欢迎留言,我们会及时采纳的。

 

转载文章请后台联系

侵权必究

AI白身境系列完整阅读:

第一期:【AI白身境】深度学习从弃用windows开始

第二期:【AI白身境】Linux干活三板斧,shell、vim和git

第三期:【AI白身境】学AI必备的python基础

第四期:【AI白身境】深度学习必备图像基础

第五期:【AI白身境】搞计算机视觉必备的OpenCV入门基础

第六期:【AI白身境】只会用Python?g++,CMake和Makefile了解一下

第七期:【AI白身境】学深度学习你不得不知的爬虫基础

第八期: 【AI白身境】深度学习中的数据可视化

第九期:【AI白身境】入行AI需要什么数学基础:左手矩阵论,右手微积分

第十期:【AI白身境】一文览尽计算机视觉研究方向

第十一期:【AI白身境】AI+,都加在哪些应用领域了

第十二期:【AI白身境】究竟谁是paper之王,全球前10的计算机科学家

AI初识境系列完整阅读

第一期:【AI初识境】从3次人工智能潮起潮落说起

第二期:【AI初识境】从头理解神经网络-内行与外行的分水岭

第三期:【AI初识境】近20年深度学习在图像领域的重要进展节点

第四期:【AI初识境】激活函数:从人工设计到自动搜索

第五期:【AI初识境】什么是深度学习成功的开始?参数初始化

第六期:【AI初识境】深度学习模型中的Normalization,你懂了多少?

第七期:【AI初识境】为了围剿SGD大家这些年想过的那十几招

第八期:【AI初识境】被Hinton,DeepMind和斯坦福嫌弃的池化,到底是什么?

第九期:【AI初识境】如何增加深度学习模型的泛化能力

第十期:【AI初识境】深度学习模型评估,从图像分类到生成模型

第十一期:【AI初识境】深度学习中常用的损失函数有哪些?

第十二期:【AI初识境】给深度学习新手开始项目时的10条建议

感谢各位看官的耐心阅读,不足之处希望多多指教。后续内容将会不定期奉上,欢迎大家关注有三公众号 有三AI!

 

github-watch:分析和可视化github数据 github-watch 分析和可视化github数据 唯一的仓库由名称和创建时间定义,通过以下方式创建唯一的仓库名称 - 回购页面 名称、创建时间、网址、语言、详细信息、星星、加星人 星形直方图(1w、1m、1y、2y、3y、4y、5y) 相关回购,不同语言不同颜色 用户页面 名称,网址 已加星标的回购, 执行 使用弹性搜索提供restful api 相似度测量算法 S(r_i, r_j) = (r_i .* r_j) / 范数(r_i) / 范数(r_j) 增量更新 假设 K(i, j) = r_i .* r_j K(i, j) 是稀疏的 对于每个 i,保留一组由 j 索引的 K(i, j) i 和 j 可以是 repo url 保持一组 M(i) = K(i, i) 对于每个用户 u,保留一组带星号的 repo url 对于每个开始事件 (u_k, r_i) 将 r 立即下载

相关推荐

博途AI助手演示,完成简单且重复的梯形图代码,并导入到博途

自写个博途AI助手,下面演示AI帮我生成完善多个模拟量输入转换的代码,

gsjkwg的博客 1530

【AI白身境】深度学习中的数据可视化

今天是新专栏《AI白身境》的第八篇,所谓白身,就是什么都不会,还没有进入角色。上一节我们已经讲述了如何用爬虫爬取数据,那爬取完数据之后就应该是进行处理了,一个很常用的手段...

hacker_long的专栏 1101

spring boot 集成cas(一) 服务端搭建

简单点就是统一服务认证,多个系统一次登录。俗称单点登录。

慕孑晨的博客 1958

深度学习模型特征可视化(以yolov4为例)

一般来说,深度学习模型中的可视化分为两种:GAM/Grad_GAM、特征图可视化。

weixin_44944382的博客 1万+

微信小程序scroll-view,点击menu,滚动到锚点;滚动到锚点,激活menu。

首先看看效果图1、首先是点击菜单,滚动列表,这个实现比较简单。直接使用scroll-view 的 scroll-into-view属性,小程序文档。<view class='container'> <!-- 菜单 --> <view class='menu'> <ul> <!-- scrollList 修改cate --&g...

weixin_39834214的博客 1万+

猫耳语音下载(mediadown)

西宾猫耳语音下载工具,能够帮助你下载猫耳音频节目。如果你是会员,它还能帮你下载会员节目。

new_stranger的专栏 2492

CV之CNN可视化:mNeuron(Matlab插件+可视化和解释单个神经元响应)的简介、安装、使用方法之详细攻略

​ CV之CNN可视化:mNeuron(Matlab插件+可视化和解释单个神经元响应)的简介、安装、使用方法之详细攻略 目录 mNeuron的简介、安装、使用方法 mNeuron的安装 mNeuron的使用方法 mNeuron的简介、安装、使用方法 CNN的卷积层中提取的信息。第1层的神经元对边缘或斑块有响应,第3层对纹理有响应,第5层对物体部件有响应,最后的全连接层对物体的类别(狗或车)响应。 0、论文简介 论文 Arxiv地址:http://vision03.csai

头部AI社区如有邀博主AI主题演讲请私信—心比天高,仗剑走天涯,保持热爱,奔赴向梦想!低调,专注,谦虚,自律,反思,成长,还算比较正能量的博主,公益免费传播…内心特别想在AI界做出一些可以推进历史进程影响力的技术(兴趣使然,有点小情怀,也有点使命感呀 1万+

本地部署大模型 vs 网页版大模型区别

fill:#333;color:#333;color:#333;fill:none;本地服务器/工作站硬件资源私有化部署GPU集群高速存储模型文件训练框架推理引擎。

Ds-Rag的博 1715

这个图聚类 Python 开源工具火了:可对社群结构进行可视化、检测

最近,又有一款Python可视化工具火了。 这一次,功能是针对图聚类问题的社群结构进行检测、可视化。 该项目的帖子在reddit上一经发布,就被顶到了“机器学习板块”的榜首。 一起来看看它究竟都能用来做什么吧~ 功能亮点 这款工具叫作communities, 是一个Python库,用于图聚类问题的社群结构检测。 它支持多种算法,包括: Louvain算法; Girvan-Newman算法; 层次聚类算法; 光谱聚类算法; Bron-Kerbosch算法。 更赞的是,communities还可以实现这

osfront的博客 679

烧录代码显示:no st-link 和Targrt DLL has been cancelled,如何解决?

🏆 本文收录于《全栈Bug调优(实战版)》专栏,致力于分享我在项目实战过程中遇到的各类Bug及其原因,并提供切实有效的解决方案。无论你是初学者还是经验丰富的开发者,本文将为你指引出一条更高效的Bug修复之路,助你早日登顶,迈向财富自由的梦想🚀!同时,欢迎大家关注、收藏、订阅本专栏,更多精彩内容正在持续更新中。让我们一起进步,Up!Up!Up!    备注: 部分问题/难题源自互联网,经过精心筛选和整理,结合数位十多年大厂实战经验资深大佬经验总结所得,数条可行方案供所需之人参考。

**My Coding Family** 1580

YOLO26改进策略【卷积层】| 引入注意力卷积模块RFAConv,关注感受野空间特征 助力YOLO26精度提升

RFAConv:创新空间注意力和标准卷积运算感受野空间特征是针对卷积核设计的,根据卷积核大小动态生成。以3×3卷积核为例,它由非重叠滑动窗口组成,每个窗口代表一个感受野滑块。

Limiiiing的博客 195

Github上10个最流行的数据可视化项目

Github上10个最流行的数据可视化项目   1.  D3   Stars: 46561, Forks: 12465   D3 是一个 JavaScript 数据可视化库用于 HTML 和 SVG。它旨在将数据带入生活,强调 Web 标准,将强大的可视化技术与数据驱动的文档对象模型(DOM)操作方法相结合。 D3 是 Github 上最流行的数据可视化项目,在数据科学界有很好的表现。

YaoXTao的专栏 6345

【YOLO系列】YOLOv4详解:模型结构、损失函数、训练方法及代码实现

摘要:YOLOv4在目标检测领域实现了精度与速度的平衡,通过CSPDarknet53骨干网络、SPP+PANet特征融合及CIoU损失函数等创新,在MS COCO数据集达到65.7% AP50,V100显卡实现62FPS实时检测。核心优化包括Mosaic数据增强、自对抗训练和解耦头结构,显著提升小目标检测和遮挡场景鲁棒性。代码实现采用CSP模块和SPP多尺度池化,兼顾计算效率与检测性能,为工业落地提供高效解决方案。(149字)

一碗白开水一 1358

github可视化工具_「AI白身境」深度学习中的数据可视化

今天是新专栏《AI白身境》的第八篇,所谓白身,就是什么都不会,还没有进入角色。上一节我们已经讲述了如何用爬虫爬取数据,那爬取完数据之后就应该是进行处理了,一个很常用的手段是数据可视化。通过数据可视化,可以更加直观地表征数据,在深度学习项目中,常需要的数据可视化操作包括原始图片数据的可视化,损失和精度的可视化等。作者 | 言有三 臧小满编辑 | 言有三01 什么是数据可视化?每每提到数据可视化,大家...

weixin_39616056的博客 158

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

tensorboard 数据降维分布图_「AI白身境」深度学习中的数据可视化

今天是新专栏《AI白身境》的第八篇,所谓白身,就是什么都不会,还没有进入角色。上一节我们已经讲述了如何用爬虫爬取数据,那爬取完数据之后就应该是进行处理了,一个很常用的手段是数据可视化。通过数据可视化,可以更加直观地表征数据,在深度学习项目中,常需要的数据可视化操作包括原始图片数据的可视化,损失和精度的可视化等。作者 | 言有三 臧小满编辑 | 言有三01 什么是数据可视化?每每提到数据可视化,大家...

weixin_39644614的博客 330

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

对pca降维后的手写体数字图片数据分类_【AI白身境】深度学习中的数据可视化...

今天是新专栏《AI白身境》的第八篇,所谓白身,就是什么都不会,还没有进入角色。上一节我们已经讲述了如何用爬虫爬取数据,那爬取完数据之后就应该是进行处理了,一个很常用的手段是数据可视化。通过数据可视化,可以更加直观地表征数据,在深度学习项目中,常需要的数据可视化操作包括原始图片数据的可视化,损失和精度的可视化等。 ...

weixin_39609500的博客 297

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

python的所有基本函数图像_【AI白身境】学AI必备的python基础

原标题:【AI白身境】学AI必备的python基础今天是新专栏《AI白身境》的第三篇,所谓白身,就是什么都不会,还没有进入角色。上一篇给大家介绍了如何正确使用Linux,如何利用shell,vim,git这三大神器。相信大家也掌握的差不多了,今天就和大家分享下对于python,我们应该如何掌握,如何正确把它和深度学习完美的结合起来。作者 | 汤兴旺 言有三编辑 | 汤兴旺 言有三1 基础操作人生苦...

weixin_39982580的博客 412

数据可视化第一篇

占坑,这个栏目将成为未来的一个知识板块 分为 机器学习的可视化 深度学习的可视化 图像分类可视化的地方有哪些? 目标检测可视化的地方有哪些? 图像分割可视化的地方有哪些? 人类识别检测的地方有哪些? 其他一些有意思的 图像深度学习领域可视化的地方? 以上都等待补充。 以后这里将成为知识领域的一个汇总点。 ...

TEDDY的博客 229

【AI白身境】学AI必备的python基础

今天是新专栏《AI白身境》的第三篇,所谓白身,就是什么都不会,还没有进入角色。上一篇给大家介绍了如何正确使用Linux,如何利用shell,vim,git这三大神器。相信...

hacker_long的专栏 598

【AI白身境】学AI必备的python基础​​​​​​​

文章首发于微信公众号《有三AI》 【AI白身境】学AI必备的python基础 今天是新专栏《AI白身境》的第三篇,所谓白身,就是什么都不会,还没有进入角色。 上一篇给大家介绍了如何正确使用Linux,如何利用shell,vim,git这三大神器。相信大家也掌握的差不多了,今天就和大家分享下对于python,我们应该如何掌握,如何正确把它和深度学习完美的结合起来。 作者|汤兴旺言有三 ...

hacker_long的专栏 643

AI修行三十篇文章到不惑,已经掌握了什么,接下来还要说什么

文/编辑 | 言有三AI修行之路系列文章是有三AI的代表性作品,共分为5个系列,分别是AI白身境,AI初识境,AI不惑境,AI有识境,不可知。其中前4个系列我们会推出对应...

hacker_long的专栏 571

【硬核科技】转行AI,从零出发

文/编辑 | 言有三AI修行之路系列文章是有三AI的代表性作品,共分为5个系列,分别是AI白身境,AI初识境,AI不惑境,AI有识境,不可知。其中前4个系列我们会推出对应...

湾区人工智能 308

ai python入门_【AI白身境】学AI必备的python基础

今天是新专栏《AI白身境》的第三篇,所谓白身,就是什么都不会,还没有进入角色。上一篇给大家介绍了如何正确使用Linux,如何利用shell,vim,git这三大神器。相信大家也掌握的差不多了,今天就和大家分享下对于python,我们应该如何掌握,如何正确把它和深度学习完美的结合起来。作者 | 汤兴旺 言有三编辑 | 汤兴旺 言有三01基础操作人生苦短,必须学好python!python现在火的程度...

weixin_36090062的博客 309

array python 交集_【AI白身境】学AI必备的python基础

今天是新专栏《AI白身境》的第三篇,所谓白身,就是什么都不会,还没有进入角色。上一篇给大家介绍了如何正确使用Linux,如何利用shell,vim,git这三大神器。相信大家也掌握的差不多了,今天就和大家分享下对于python,我们应该如何掌握,如何正确把它和深度学习完美的结合起来。作者 | 汤兴旺 言有三 编辑 | 汤兴旺 言有三01基础操作人生苦短,必须学好python!pyt...

weixin_34616304的博客 233

python jpg转数组_【AI白身境】学AI必备的python基础

今天是新专栏《AI白身境》的第三篇,所谓白身,就是什么都不会,还没有进入角色。上一篇给大家介绍了如何正确使用Linux,如何利用shell,vim,git这三大神器。相信大家也掌握的差不多了,今天就和大家分享下对于python,我们应该如何掌握,如何正确把它和深度学习完美的结合起来。作者 | 汤兴旺 言有三 编辑 | 汤兴旺 言有三01基础操作人生苦短,必须学好python!pyt...

weixin_39861054的博客 187

言有三文章 - AI系列完整阅读

言有三文章 - AI系列完整阅读 第一期:【AI白身境】深度学习从弃用windows开始 第二期:【AI白身境】Linux干活三板斧,shell、vim和git 第三期:【AI白身境】学AI必备的python基础 第四期:【AI白身境】深度学习必备图像基础 第五期:【AI白身境】搞计算机视觉必备的OpenCV入门基础 第六期:【AI白身境】只会用Python?g++,CMake和...

喜欢打酱油的老鸟 1155
上一篇: 【AI白身境】学深度学习你不得不知的爬虫基础​​​​​​​
下一篇: 【模型解读】深度学习网络之Siamese Network网络
言有三
言有三 领域专家: 人工智能技术领域 领域专家: 人工智能技术领域
博客等级 码龄15年 3635粉丝 976原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

言有三

三人行必有AI

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值