3. 模型可视化: VisualDL实现paddle框架模型的可视化
VisualDL 是 paddle 可视化分析工具, 以丰富的图表呈现: 训练参数变化趋势、 模型结构、数据样本、直方图、PR曲线、高维数据分布。
3.1 VisualDL 工具介绍
- 1)安装方式
- pip安装
pip install --upgrade --pre visualdl
- 使用代码安装
git clone ... cd VisualDL python setup.py bdist_wheel pip install --upgrade dis/visual-*.whl
- 2)使用方式
VisualDL 将训练过程中的数据、参数等信息存储到日志文件中后,启动面板即可查看可视化结果。- 1.记录日志
- 2.启动面板
- 在命令行中启动
- 在python脚本中启动
- 3)可视化功能概览
- Scalar: 标量数据;训练参数展示,如 loss,acc等
- 动态展示
- 多实验对比
- Image: 样本数据-图像
- Audio: 样本数据-语音
- Graph: 网络结构
- Histogram: 直方图
- Offset模式
- Overlay模式
- PR Curve: PR曲线
- High Dimensional: 高维数据映射
- Scalar: 标量数据;训练参数展示,如 loss,acc等
3.2 VisualDL 使用指南
3.2.1 概述
VisualDL 支持 scalar、image、audio、graph、histogram、pr curve、high dimentioal 七个组件
组件 | 展示图表 | 作用 |
---|---|---|
Scalar | 折线图 | 动态展示 loss、acc等标量数据 |
Image | 图片可视化 | 显示图片, 可显示输入图片和处理后的结果,便于查看中间过程的变化 |
Audio | 音频播放 | 播放训练过程中的音频数据 |
Graph | 网络结构 | 展示网络结构、节点属性、数据流向,辅助学习、优化网络结构 |
Histogram | 直方图 | 展示训练过程中 权重、梯度等张量的分布 |
PR Curve | 折线图 | 权衡精度和召回率之间的平衡关系,便于选择最佳阈值 |
High Dimensional | 数据降维 | 将高维数据映射到2D/3D空间来可视化嵌入 |
-
Scalar--折线图组件
- 接口记录:
add_scalar(tag, value, step, walltime=None)
-
Image -- 图片可视化组件
- 接口记录
add_image(tag, img, step, walltime= None)
-
Audio -- 音频播放插件
- 接口记录
add_audio(tag, audio_array, step, sample_rate)
-
Graph--网络结构组件
Graph组件一键可视化模型的网络结构。用于查看 模型属性、节点信息、节点输入输出等,并进行节点搜索,协助开发者们快速分析模型结构和了解数据流向。-
前端文件拖拽上传
如果需要其他功能,则可使用命令行指定 日志文件路径,启动面板进行上传visualdl --logdir ./log --port 8080
-
后端启动 Graph
在命令行中加入 参数 --model 并指定 模型文件路径(非文件夹路径),即可启动查看网络结构可视化visualdl --model ./log/model --port 8080
-
-
Histogram -- 直方图插件
- 记录接口
add_histogram(tag, values, step, walltime= None, buckets= 10)
- 功能操作说明:
- 数据点 Hover 展示参数值、训练步数、频次
-
PR Curve -- PR 曲线插件
- 接口记录
add_pr_curve(tag, labels, predictions, step= None, num_thresholds= 10)
- 功能操作说明