神经网络一键可视化

来源:投稿 作者:ΔU
编辑:学姐

不知道大家在刚接触神经网络时有没有这样的感觉?在搭建神经网络时总是觉得神经网络就是个黑盒子,完全搞不清盒子内部发生了什么。

其实所谓的神经网络就是对人脑运作模式的一种模拟,神经网络模型的强大能力是基于成百上千万的神经元相互作用的结果。

那么理解神经网络的内部工作机制就显得尤为重要,今天给大家分享一款由加拿大蒙特利尔一家公司开发的一款免费的神经网络可视化工具 Zetane Viewer,Zetane Viewer是一个帮助理解和加速机器学习和人工神经网络的工具。它可以通过可视化的方式理解模型的架构和内部数据(特征图、权重、偏差和层输出张量)来打开人工智能的黑盒子,目前各个版本已经在github开源。

神经网络一键可视化_第1张图片

Zetane Viewer展示

如何加载模型?

Zetane Viewer同时支持 .onnx和 .ztn文件。ZTN文件是从这个Git存储库中共享的Keras和Pytorch脚本生成的。要加载Zetane模型,只需单击DATA I/O菜单中的“Load Zetane Model”。要加载Onnx模型,请在同一菜单中点击“Import ONNX Model”

神经网络一键可视化_第2张图片

当一个模型在Zetane引擎中显示时,该模型的任何组件都可以在几次点击中访问。

在最高层上,我们有由相互连接的节点和张量组成的模型体系结构。每个节点表示计算图的一个算子。通常,一个输入张量被传递给模型,当它经过节点时,它会被转换成中间张量,直到我们到达模型的输出张量。

神经网络一键可视化_第3张图片

如何导航?

您可以通过右键单击和拖动来浏览模型查看器窗口,并使用滚动轮来放大和缩小。以下是完整的导航说明列表。您可以通过顶部菜单中的鼠标缩放切换来改变鼠标滚轮的行为(缩放或导航)。

加载自定义模型输入

加载模型之后,您可能希望将自己的输入发送到模型中进行推断。Zetane支持加载 npy; npz; png; jpg; pb (protobuf);tiff和hdr文件,以匹配模型的输入尺寸。Zetane引擎将尝试智能调整文件加载的大小(如果可能的话),以发送数据到模型。加载并运行输入之后,您将能够详细研究模型是如何解释输入数据的。

神经网络一键可视化_第4张图片

神经网络一键可视化_第5张图片

神经网络一键可视化_第6张图片

如何检查不同的层和特征图?

对于每一层,您可以通过单击每个节点上的“显示特征地图”来查看所有的特征地图和过滤器。您可以使用张量视图条检查输入和输出、权重和偏差。

神经网络一键可视化_第7张图片

张量视图工具栏

通过点击相关的按钮,您可以可视化每个图层的输入、输出、权重和偏差(如果适用的话)。你也可以研究每个张量的形状、类型、平均值和标准偏差。

神经网络一键可视化_第8张图片

张量值及其分布的统计信息在顶部面板的直方图中给出。你也可以看到张量的名称和形状。张量及其值在中间面板中表示,底部部分包含张量可视化参数和一个允许用户刷新张量的刷新按钮。当输入或权值实时变化时,这是非常有用的。

神经网络一键可视化_第9张图片

张量可视化的类型

张量可以以不同的方式进行检查,包括有或没有实际值的3D视图和2D视图。

神经网络一键可视化_第10张图片

1.三维空间中n维张量的投影:

神经网络一键可视化_第11张图片

2.n维张量在二维空间上的投影:

神经网络一键可视化_第12张图片

3.张量值和每个值的颜色表示基于分布直方图x轴上显示的梯度:

神经网络一键可视化_第13张图片

4.张量值:

神经网络一键可视化_第14张图片

5.当张量的形状为3维时,特征映射视图:

神经网络一键可视化_第15张图片

点击卡片关注

回复“惊呆”领取本文项目代码

你可能感兴趣的:(粉丝的投稿,深度学习干货,深度学习,人工智能,神经网络)