工具对比 | 构图方式 | 展示维度 | 优点 | 缺点 | 适用范围 | 是否支持 在线使用 |
draw_convnet | Python脚本 | 二维 | 布局清晰, 可严格控制 | 编程构图, 不合适初学者 | 绝大多数网络 | 不支持 |
NN-SVG | 设置参数 | 二维/三维 | 方便,各层之间 界面控制增减; 选择空间大 | 功能不全面; 各层连接不美观 | FCNN、 LeNet、 AlexNet | 支持 |
ENNUI | 拖拽图形框 | 二维 | 操作简单方便 | 图形比较抽象化, 不易于新手学习 | 绝大多数网络 | 支持 |
Netscope CNN Analyzer | 代码编辑 | 二维 | 清晰看到 各层的参数情况 | 编程构图, 不合适初学者 | 卷积神经网络 (有向无环图) | 支持 |
PlotNeuralNet | Latex代码或者python脚本 | 三维 | 脚本化, 自由度高 | 上手有难度, 不适合新手 | 卷积神经网络 | 支持 |
Tensorboard | Tensorflow 结合Web | 二维 | 清晰感知 参数变化, 把握训练趋势 | 操作复杂, 不适合新手 | 绝大多数网络 | Tensorflow 自带可视化 工具 |
Netron | 上传模型文件, 生成网络结构 | 二维 | 操作简单, 方便使用 | 模型较大时, 时间会比较长 | 绝大多数网络 | 支持 |
TensorSpace | TensorFlow.js、Three.js和Tween.js 构建 | 三维 | 3D形式更加 直观清晰的 描述模型 | 缺乏模型 细节的展示, 参数变化未知 | 绝大多数网络 | 支持 |
Keras.js | Python脚本 | 二维 | 方便快捷, 可以直接 得出预测结果 | 创建新模型时 较复杂 | 绝大多数网络 | 支持 |
CNN explainer | 设置参数 | 二维 | 动态可解释视图, 清晰的看到模型 的内部运作, 使用起来非常方便 | 有局限性, 数据集较少, 网络类型较单一 | 分类、回归 | 支持 |
CNNVis | BaseCNN设计 | 二维 | 可视化分析系统 帮助机器学习 专家更好的理解、 分析、设计深度 卷积神经网络。 | 有局限性, 不能自己 设计神经网络 | BaseCNN 及其变体 | 支持 |