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

数据派THU

共 1384字,需浏览 3分钟

 ·

2022-05-23 01:07


来源:量子位(公众号id:qbitai)

本文约1100,建议阅读6分钟

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


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

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


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


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


可视化AI工作流程


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


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

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


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


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


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

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


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


二维视角
三维视角
标注卷积结果的平面图
纯卷积结果的数值平面图


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

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


△图注:激活层特征图

△图注:池化层特征图


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


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


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


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


Zetane Engine用法速览


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

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

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


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

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


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


△图注:Zetane Engine的模型库


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


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

参考链接:

[1]https://github.com/Zetane/viewer
[2]https://www.youtube.com/watch?v=J3Zd5GR_lQs

编辑:黄继彦



浏览 38
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报