相关链接:

【一】AI Studio 项目详解【(一)VisualDL工具、环境使用说明、脚本任务、图形化任务、在线部署及预测】PARL_汀、的博客-CSDN博客

isualDL 是一个面向深度学习任务设计的可视化工具。VisualDL 利用了丰富的图表来展示数据,用户可以更直观、清晰地查看数据的特征与变化趋势,有助于分析数据、及时发现错误,进而改进神经网络模型的设计。

目前,VisualDL 支持 scalar, image, audio, graph, histogram, pr curve, high dimensional 七个组件.

组件名称 展示图表 作用
Scalar 折线图 动态展示损失函数值、准确率等标量数据
Image 图片可视化 显示图片,可显示输入图片和处理后的结果,便于查看中间过程的变化
Audio 音频播放 播放训练过程中的音频数据,监控语音识别与合成等任务的训练过程
Graph 网络结构 展示网络结构、节点属性及数据流向,辅助学习、优化网络结构
Histogram 直方图 展示训练过程中权重、梯度等张量的分布
PR Curve 折线图 权衡精度与召回率之间的平衡关系,便于选择最佳阈值
High Dimensional 数据降维 将高维数据映射到 2D/3D 空间来可视化嵌入,便于观察不同数据的相关性

1.在训练程序使用添加如下:

from visualdl import LogWriter
#参数记录参考,程序中填写参考这个
"""
def train():
writer=LogWriter("./log/scalar_test")
writer1=LogWriter("./log/scalar_test1") writer.add_scalar(tag="train/loss", step=global_step, value=loss_avg) writer1.add_scalar(tag="train/precision", step=global_step, value=precision)
writer1.add_scalar(tag="train/recall", step=global_step, value=recall)
writer1.add_scalar(tag="train/f1", step=global_step, value=f1) with LogWriter(logdir="paddle_lenet_log/lr0.001") as writer:
# 使用scalar组件记录一个标量数据
if step % 10 == 0:
# add scalar
writer.add_scalar(tag="train/loss", step=step, value=cost)
writer.add_scalar(tag="train/acc", step=step, value=accuracy) """

分别记录loss、F1等指标

2.在本地执行相关指令、多个记录器

添加两个记录器

from visualdl import LogWriter

if __name__ == '__main__':
value = [i/1000.0 for i in range(1000)]
# 初始化一个记录器
with LogWriter(logdir="./log/scalar_test/train") as writer:
for step in range(1000):
# 向记录器添加一个tag为`acc`的数据
writer.add_scalar(tag="acc", step=step, value=value[step])
# 向记录器添加一个tag为`loss`的数据
writer.add_scalar(tag="loss", step=step, value=1/(value[step] + 1))

终端指令:

#在命令行执行:

visualdl --logdir ./log --port 8080

# 路径:(paddlenlp) C:\Users\admin\Desktop\nlp>visualdl --logdir ./log --port 8080   在log文件夹前执行

add_scalar(tag, value, step, walltime=None)

tag string  记录指标的标志,如train/loss,不能含有%

value   float   要记录的数据值

step    int 记录的步数

walltime    int 记录数据的时间戳,默认为当前时间戳

from visualdl import LogWriter

if __name__ == '__main__':
value = [i/1000.0 for i in range(1000)]
# 步骤一:创建父文件夹:log与子文件夹:scalar_test
with LogWriter(logdir="./log/scalar_test") as writer:
for step in range(1000):
# 步骤二:向记录器添加一个tag为`train/acc`的数据
writer.add_scalar(tag="train/acc", step=step, value=value[step])
# 步骤二:向记录器添加一个tag为`train/loss`的数据
writer.add_scalar(tag="train/loss", step=step, value=1/(value[step] + 1))
# 步骤一:创建第二个子文件夹scalar_test2
value = [i/500.0 for i in range(1000)]
with LogWriter(logdir="./log/scalar_test2") as writer:
for step in range(1000):
# 步骤二:在同样名为`train/acc`下添加scalar_test2的accuracy的数据
writer.add_scalar(tag="train/acc", step=step, value=value[step])
# 步骤二:在同样名为`train/loss`下添加scalar_test2的loss的数据
writer.add_scalar(tag="train/loss", step=step, value=1/(value[step] + 1))

3.PR Curve--PR曲线组件

from visualdl import LogWriter
import numpy as np with LogWriter("./log/pr_curve_test/train") as writer:
for step in range(3):
labels = np.random.randint(2, size=100)
predictions = np.random.rand(100)
writer.add_pr_curve(tag='pr_curve',
labels=labels,
predictions=predictions,
step=step,
num_thresholds=5)

PR Curve以折线图形式呈现精度与召回率的权衡分析,清晰直观了解模型训练效果,便于分析模型是否达到理想标准。

4.High Dimensional--数据降维组件

if __name__ == '__main__':
hot_vectors = [
[1.3561076367500755, 1.3116267195134017, 1.6785401875616097],
[1.1039614644440658, 1.8891609992484688, 1.32030488587171],
[1.9924524852447711, 1.9358920727142739, 1.2124401279391606],
[1.4129542689796446, 1.7372166387197474, 1.7317806077076527],
[1.3913371800587777, 1.4684674577930312, 1.5214136352476377]] labels = ["label_1", "label_2", "label_3", "label_4", "label_5"]
# 初始化一个记录器
with LogWriter(logdir="./log/high_dimensional_test/train") as writer:
# 将一组labels和对应的hot_vectors传入记录器进行记录
writer.add_embeddings(tag='default',
labels=labels,
hot_vectors=hot_vectors)

5.HyperParameters--超参可视化组件

from visualdl import LogWriter

# 此demo演示了两次实验的超参数记录,以第一次实验数据为例,首先在`add_hparams`接口中记录
# 超参数`hparams`的数据,再标定了稍后要记录的`metrics`名称,最后通过`add_scalar`再具体
# 记录`metrics`的数据。此处需注意`add_hparams`接口中的`metrics_list`参数需要包含`add_scalar`
# 接口的`tag`参数。
if __name__ == '__main__':
# 记录第一次实验数据
with LogWriter('./log/hparams_test/train/run1') as writer:
# 记录hparams数值和metrics名称
writer.add_hparams(hparams_dict={'lr': 0.1, 'bsize': 1, 'opt': 'sgd'},
metrics_list=['hparam/accuracy', 'hparam/loss'])
# 通过将add_scalar接口中的tag与metrics名称对应,记录一次实验中不同step的metrics数值
for i in range(10):
writer.add_scalar(tag='hparam/accuracy', value=i, step=i)
writer.add_scalar(tag='hparam/loss', value=2*i, step=i) # 记录第二次实验数据
with LogWriter('./log/hparams_test/train/run2') as writer:
# 记录hparams数值和metrics名称
writer.add_hparams(hparams_dict={'lr': 0.2, 'bsize': 2, 'opt': 'relu'},
metrics_list=['hparam/accuracy', 'hparam/loss'])
# 通过将add_scalar接口中的tag与metrics名称对应,记录一次实验中不同step的metrics数值
for i in range(10):
writer.add_scalar(tag='hparam/accuracy', value=1.0/(i+1), step=i)
writer.add_scalar(tag='hparam/loss', value=5*i, step=i)

paddle之visualDL工具使用,可视化利器。的更多相关文章

  1. 大数据时代的图表可视化利器——highcharts,D3和百度的echarts

    大数据时代的图表可视化利器——highcharts,D3和百度的echarts https://blog.csdn.net/minidrupal/article/details/42153941   ...

  2. 可视化利器Visdom

    可视化利器Visdom 最近在使用Pytorch炼丹,单纯地看命令行输出已经无法满足调试的需求,尝试了facebook开源的visdom,感觉非常优雅,支持numpy和torch 安装 $ pip i ...

  3. 【可视化】DataV接入ECharts图表库 可视化利器强强联手

    DataV接入ECharts图表库 可视化利器强强联手 摘要: 两个扛把子级产品的结合,而且文末有彩蛋. DataV 数据可视化是搭建每年天猫双十一作战大屏的幕后功臣,ECharts 是广受数据可视化 ...

  4. 【python可视化系列】python数据可视化利器--pyecharts

    学可视化就跟学弹吉他一样,刚开始你会觉得自己弹出来的是噪音,也就有了在使用python可视化的时候,总说,我擦,为啥别人画的图那么溜: [python可视化系列]python数据可视化利器--pyec ...

  5. [工具.tfs]可视化的TFS命令工具——Team Foundation Sidekicks

    工具介绍:http://www.attrice.info/cm/tfs/index.htm Team Foundation Sidekicks is a suite of tools for Micr ...

  6. NuGet命令行工具和可视化工具

    Nuget出了命令行工具之外,还有一个可视化工具,下载地址如下: 命令行(推荐官网下载,有中文提示!):https://dist.nuget.org/index.html 可视化(简单.方便.易用): ...

  7. 剖析管理所有大数据组件的可视化利器:Hue

    日常的大数据使用都是在服务器命令行中进行的,可视化功能仅仅依靠各个组件自带的web界面来实现,不同组件对应不同的端口号,如:HDFS(50070),Yarn(8088),Hbase(16010)等等, ...

  8. Shader 学习工具篇 可视化公式工具ZGrapher

    大家好,我是怒风,本篇介绍公式可视化公式工具ZGrapher,尝试通过可视化的方式分析一下Shader中应用的公式,以求帮助初学者快速理解Shader编程中的一些常用公式 本篇的目的两个, 第一,介绍 ...

  9. iOS 测试工具reveal可视化调试工具的使用

    简单翻译一下reveal可视化图形工具插入项目的官方文档(官方英文版file:///Applications/Reveal.app/Contents/SharedSupport/Documentati ...

  10. 数据可视化利器pyechart和matplotlib比较

    python中用作数据可视化的工具有多种,其中matplotlib最为基础.故在工具选择上,图形美观之外,操作方便即上乘. 本文着重说明常见图表用基础版matplotlib和改良版pyecharts作 ...

随机推荐

  1. ORM之Sequelize

    一.环境: Vue.Quasar.Electron.Postgres.Sequelize.sequelize-auto 二.安装 (1)添加Sequelize(全局安装) $npm install - ...

  2. CPU--实模式与保护模式

    一.实模式(实地址访问模式) 是Intel公司80286及以后的x86(80386,80486和80586等)兼容处理器(CPU)的一种操作模式. 实模式被特殊定义为20位地址内存可访问空间上,这就意 ...

  3. 它来了!真正的 python 多线程

    哈喽大家好,我是咸鱼 几天前,IBM 工程师 Martin Heinz 发文表示 python 3.12 版本回引入"Per-Interpreter GIL",有了这个 Per-I ...

  4. 图解 Promise 实现原理(一)—— 基础实现

    本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/UNzYgpnKzmW6bAapYxnXRQ作者:孔垂亮 很多同学在学习 Promise 时,知 ...

  5. Web Components从技术解析到生态应用个人心得指北

    Web Components浅析 Web Components 是一种使用封装的.可重用的 HTML 标签.样式和行为来创建自定义元素的 Web 技术. Web Components 自己本身不是一个 ...

  6. Vue源码编译过程

    Vue源码编译过程一.挂载初始化$mounted会挂载组件,不存在 render 函数时需要编译(compile);二.compile1.compile 分为 parse,optimize 和 gen ...

  7. [工程开发]当我们写一个tcp服务端的时候,我们在写什么?(一)

    当我们写一个tcp服务器和客户端的时候,我们在写什么?(一) 本篇只聊服务端. 最近想搞一个服务器的协议,然后捏,简单搓个tcp服务器协议看看效果,主要是最近实在是没事干,闲得没事搓个服务器看看,当然 ...

  8. P1164-DP【橙】

    这道题让我更深入的理解了记忆化搜索的过程,既然记忆化搜索的结果要靠返回值来传递,那么记忆化搜索解决问题的必须是倒序的,即记忆化搜索是一个简化问题倒序解决的过程,普通搜索是一个复杂化问题逐步尝试并记录尝 ...

  9. C# WPF侧边栏导航菜单(Dropdown Menu)

    时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...

  10. 问题--在C++使用strcpy等函数时发生C4996报错

    1.问题如下: C4996:'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To ...