diff --git a/docs/components/README.md b/docs/components/README.md index 07ba46a13927bc4dec47f355d5574e86d8e5d8a6..f191aa8cef12caf67d2e42666683fb2155aae437 100644 --- a/docs/components/README.md +++ b/docs/components/README.md @@ -1,19 +1,26 @@ -## 介绍 -VisualDL拥有不同种类的组件,能够帮助开发者有效记录和监测训练中的各种指标和数据,为模型训练数据参考,及时发现错误,进而改进神经网络模型的设计 -使用组件之前必须先使用LogWriter创建一个记录器,如下: -```python -from visualdl import LogWriter -with LogWriter(logdir="./log") as writer: -``` -关于记录器的更多参数配置,请参考[VisualDL说明文档](../README.md) +# VisualDL 使用指南 + +### 概述 + +VisualDL 是一个面向深度学习任务设计的可视化工具。VisualDL 利用了丰富的图表来展示数据,用户可以更直观、清晰地查看数据的特征与变化趋势,有助于分析数据、及时发现错误,进而改进神经网络模型的设计。 + +目前,VisualDL 支持 scalar, image, high dimensional 三个组件,项目正处于高速迭代中,敬请期待新组件的加入。 + +| 组件名称 | 展示图表 | 作用 | +| :----------------------------------------------------------: | :--------: | :----------------------------------------------------------- | +| [ Scalar](#Scalar -- 折线图组件) | 折线图 | 动态展示损失函数值、准确率等标量数据 | +| [Image](#Image -- 图片可视化组件) | 图片可视化 | 显示图片,可显示输入图片和处理后的结果,便于查看中间过程的变化 | +| [High Dimensional](#High Dimensional -- 数据降维组件) | 数据降维 | 将高维数据映射到 2D/3D 空间来可视化嵌入,便于观察不同数据的相关性 | + + ## Scalar -- 折线图组件 ### 介绍 -Scalar 组件的输入数据类型为标量,该组件的作用是画折线图。将损失函数值、准确率等标量数据作为参数传入 scalar 组件,即可画出折线图,便于观察变化趋势。 +Scalar 组件的输入数据类型为标量,该组件的作用是将训练参数以折线图形式呈现。将损失函数值、准确率等标量数据作为参数传入 scalar 组件,即可画出折线图,便于观察变化趋势。 ### 记录接口 @@ -30,7 +37,7 @@ add_scalar(tag, value, step, walltime=None) |step|int|记录的步数| |walltime|int|记录数据的时间戳,默认为当前时间戳| -### demo +### Demo 下面展示了使用 Scalar 组件记录数据的示例,代码见[Scalar组件](../../demo/components/scalar_test.py) ```python from visualdl import LogWriter @@ -53,7 +60,57 @@ visualdl --logdir ./log --port 8080 接着在浏览器打开`http://127.0.0.1:8080`,即可查看以下折线图。

- + +

+ + + +### 功能操作说明 + +* 支持数据卡片「最大化」、「还原」、「坐标系转化」(y轴对数坐标)、「下载」折线图 + +

+ +

+ + + +* 数据点Hover展示详细信息 + +

+ +

+ + + +* 可搜索卡片标签,展示目标图像 + +

+ +

+ + + +* 可搜索打点数据标签,展示特定数据 + +

+ +

+ + +* X轴有三种衡量尺度 + +1. Step:迭代次数 +2. Walltime:训练绝对时间 +3. Relative:训练时长 + +

+ +

+* 可调整曲线平滑度,以便更好的展现参数整体的变化趋势 + +

+

@@ -61,7 +118,7 @@ visualdl --logdir ./log --port 8080 ### 介绍 -Image 组件用于显示图片。在程序运行过程中,将图片数据传入 Image 组件,就可在 VisualDL 的前端网页看到相应图片。 +Image 组件用于显示图片数据随训练的变化。在模型训练过程中,将图片数据传入 Image 组件,就可在 VisualDL 的前端网页查看相应图片。 ### 记录接口 @@ -78,8 +135,8 @@ add_image(tag, img, step, walltime=None) |step|int|记录的步数| |walltime|int|记录数据的时间戳,默认为当前时间戳| -### demo -下面展示了使用 Image 组件记录数据的示例,代码见[Image组件](../../demo/components/image_test.py) +### Demo +下面展示了使用 Image 组件记录数据的示例,代码文件请见[Image组件](../../demo/components/image_test.py) ```python import numpy as np from PIL import Image @@ -103,7 +160,7 @@ if __name__ == '__main__': for step in range(6): # 添加一个图片数据 writer.add_image(tag="doge", - img=random_crop("../../docs/images/dog.jpg"), + img=random_crop("../../docs/images/eye.jpg"), step=step) ``` 运行上述程序后,在命令行执行 @@ -111,10 +168,26 @@ if __name__ == '__main__': visualdl --logdir ./log --port 8080 ``` -接着在浏览器打开`http://127.0.0.1:8080`,即可拖动查看记录的不同图片。 +在浏览器输入`http://127.0.0.1:8080`,即可查看图片数据。 + +

+ +

+ + +### 功能操作说明 + +可搜索图片标签显示对应图片数据 + +

+ +

+ + +支持滑动Step/迭代次数查看不同迭代次数下的图片数据

- +

@@ -122,7 +195,7 @@ visualdl --logdir ./log --port 8080 ### 介绍 -High Dimensional 组件的作用就是将数据映射到 2D/3D 空间来做可视化嵌入,这有利于了解不同数据的相关性。High Dimensional 组件支持以下两种降维算法: +High Dimensional 组件将高维数据进行降维展示,用于深入分析高维数据间的关系。目前支持以下两种降维算法: - PCA : Principle Component Analysis 主成分分析 - t-SNE : t-distributed stochastic neighbor embedding t-分布式随机领域嵌入 @@ -142,7 +215,7 @@ add_embeddings(tag, labels, hot_vectors, walltime=None) |hot_vectors|numpy.array or list|与labels一一对应,每个元素可以看作是某个标签的特征| |walltime|int|记录数据的时间戳,默认为当前时间戳| -### demo +### Demo 下面展示了使用 High Dimensional 组件记录数据的示例,代码见[High Dimensional组件](../../demo/components/high_dimensional_test.py) ```python from visualdl import LogWriter @@ -172,5 +245,5 @@ visualdl --logdir ./log --port 8080 接着在浏览器打开`http://127.0.0.1:8080`,即可查看降维后的可视化数据。

- +