3D 可视化卷积、池化!终于能看懂神经网络到底在干啥了...

点击上方“小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

神经网络在工作的时候,里面到底是什么样?

为了能透视这个“AI黑箱”中的过程,加拿大蒙特利尔一家公司开发一个3D可视化工具Zetane Engine。

只需要上传一个模型,Zetane Engine就可以巡视整个神经网络,并且还可以放大网络中的任何一层,显示特征图,看清流水线上的每一步:

d0092fac4e77da3e4166be39f001ef39.png
图注:卷积层的特征图(左)和特征图的3D可视化(右)

目前Zetane Engine不同系统的版本都可以在GitHub中找到(安装包见文末链接),话不多说,来看看Zetane Engine具体的用法吧~

可视化AI工作流程

首先,我们需要上传一个模型,例如一个识别手写数字的神经网络,输入的图片是一个手写的“2”:

958bc04846ca08371a1a9123a0a3a0a5.png

上传之后,Zetane Engine就绘制出了一条“流水线”,每一层神经网络就像一个个工作间:

从输入到卷积,再到连接、激活、池化

dc2d1d542ebb245f5f1c2aa81fed3676.png

这些个小工作间的进展也是透明的,不信我们聚焦到一个卷积层工作间,点这个图片形状的按钮:

cf0aaee02ccb38e2c4259dd38ac59f31.png

然后这个卷积层的所有特征图都会在上面显示出来,卷积数值的不同体现为颜色的不同,蓝紫色代表数值较小,红黄色代表数值较大:

0e4255495d50cc85fe206fe2f6aa114b.png

只有这些还不够,高能现在才刚开始,注意图片按钮右边九个点形状的按钮了吗?

点击它,Zetane Engine会在界面右边展示出一个工具栏,把刚才显示在卷积层上面的图片呈现出各种各样的形式~

ba326722c680cabec517e8e3fee3ef9e.png

其中有排列成三维立体的、标注卷积结果数值的,以及纯数值的应有尽有:

二维视角

bf780a6668cda14ef387559dc4f2880f.png

三维视角

956ece88f2bbacb3cb0c18841b66ce02.png

标注卷积结果的平面图

81c884459e7ce0b2be84d0813ed6e019.png

纯卷积结果的数值平面图

0e672d9908a1a53ebc4b3412bad58839.png

这样的“工作报告”,谁看了不喜欢?不仅能够可视化地看到卷积过程,还可以调出每一个像素点上的卷积结果。

这还没完,这种多角度的图像处理在连接层、激活层、池化层等工作间也同样适用:

25d06668ffa4c8e67632fb7b6ae29db8.png
图注:激活层特征图

ea95f0afb526237bcebc5e01be4765bd.png
图注:池化层特征图

一整个看下来,神经网络的工作流程都清清楚楚:

3fa63ed2baf1f2085b322dfcbfb8957f.png

到了最后的全连接输出层,模型会输出一个十列的一维向量(下图右边),用来判断手写数字是0-9的哪一个。

75ee9b93c85e4f2a5e4baa3adfbc9727.png

在这个例子中,模型给出了可能性最高的就是数字2。

d802d8742d1e8d947c8f73123bbdac6a.png

怎么样?有了这样可视化的工具,是不是感觉AI模型不再是一个黑箱了?

Zetane Engine用法速览

Zetane Engine不同系统的版本(Windows、Linux、Mac)都可以在GitHub中找到。

这里我们简单介绍一下Zetane Engine的界面和启动台,方便大家快速熟悉。

打开之后界面是比较简洁的,只有左上角和右上角有一些按钮。我们先看左上角。

19de756d8818485ae48abfe806801c6e.png

上传模型的按钮在启动台左上角Z字标志这里,Zetane Engine支持ONNX、Keras(.h5)以及ZTN三种模型文件。

Z字按钮旁边两个按钮依次是启动模型和清除模型:

ac5479367f66b741d41dc38c509eeba1.png

如果手头上还没有模型也没关系,点击界面右上角的Z形图标可以到Zetane Engine的模型库中下载模型:

0e0721ef4584f029dbff24291b711c80.png

08836aa8beb5e49cae32c1bfe8ac6b81.png
图注:Zetane Engine的模型库

另外在启动台SNAPSHOTS按钮这里也有一些经典模型可以选择:

331913356c7bc936b2f89a90046eec00.png

感兴趣的同学可以从文末链接中找到Zetane Engine的下载包,来试试吧~

下载1:OpenCV-Contrib扩展模块中文版教程

在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。


下载2:Python视觉实战项目52讲
在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。


下载3:OpenCV实战项目20讲
在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。


交流群

欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值