From e4bade74f4d71d79b7e45d6e9c8c375880123a01 Mon Sep 17 00:00:00 2001 From: daminglu Date: Tue, 16 Jan 2018 03:39:57 +0800 Subject: [PATCH] GitHub homepage readme (#163) --- docs/introduction_cn.md => README.cn.md | 18 +++- README.md | 136 +++++++++++++++++++++++- docs/introduction_en.md | 124 --------------------- 3 files changed, 149 insertions(+), 129 deletions(-) rename docs/introduction_cn.md => README.cn.md (79%) delete mode 100644 docs/introduction_en.md diff --git a/docs/introduction_cn.md b/README.cn.md similarity index 79% rename from docs/introduction_cn.md rename to README.cn.md index 2e376e13..dd3fbe50 100644 --- a/docs/introduction_cn.md +++ b/README.cn.md @@ -1,3 +1,7 @@ +

+ +

+ # VisualDL (Visualize the Deep Learning) ## 介绍 @@ -21,21 +25,21 @@ VisualDL 目前支持4种组件: 兼容 ONNX(Open Neural Network Exchange)[https://github.com/onnx/onnx], 通过与 python SDK的结合,VisualDL可以兼容包括 PaddlePaddle, pytorch, mxnet在内的大部分主流DNN平台。

- +

### scalar 可以用于展示训练测试的误差趋势

- +

### image 可以用于可视化任何tensor,或模型生成的图片

- +

### histogram @@ -43,7 +47,7 @@ VisualDL 目前支持4种组件: 用于可视化任何tensor中元素分布的变化趋势

- +

## SDK @@ -110,3 +114,9 @@ board 还支持一下参数来实现远程的访问: - `--host` 设定IP - `--port` 设定端口 - `--model_pb` 指定 ONNX 格式的模型文件 + + +### 贡献 + +VisualDL 是由 [PaddlePaddle](http://www.paddlepaddle.org/) 和 +[ECharts](http://echarts.baidu.com/) 合作推出的开源项目。我们欢迎所有人使用,提意见以及贡献代码。 diff --git a/README.md b/README.md index e59a747e..23138a06 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,131 @@ -# VisualDL +

+ +

+ +# VisualDL (Visualize the Deep Learning) + +## Introduction +VisualDL is a deep learning visualization tool that can help design deep learning jobs. +It includes features such as scalar, parameter distribution, model structure and image visualization. +Currently it is being developed at a high pace. +New features will be continuously added. + +At present, most DNN frameworks use Python as their primary language. VisualDL supports Python by nature. +Users can get plentiful visualization results by simply add a few lines of Python code into their model before training. + + +Besides Python SDK, VisualDL was writen in C++ on the low level. It also provides C++ SDK that +can be integrated into other platforms. + + +## Component +VisualDL now provides 4 components: + +- graph +- scalar +- image +- histogram + +### Graph +Graph is compatible with ONNX(Open Neural Network Exchange)[https://github.com/onnx/onnx], +Cooperated with Python SDK, VisualDL can be compatible with most major DNN frameworks, including +PaddlePaddle, PyTorch and MXNet. + +

+ +

+ +### Scalar +Scalar can be used to show the trends of error during training. + + +

+ +

+ +### Image +Image can be used to visualize any tensor or intermediate generated image. + +

+ +

+ +### Histogram +Histogram can be used to visualize parameter distribution and trends for any tensor. + +

+ +

+ +## SDK +VisualDL provides both Python SDK and C++ SDK in order to fit more use cases. + + +### Python SDK +Below is an example of creating a simple Scalar component and inserting data from different timestamps: + +```python +import random +from visualdl import LogWriter + +logdir = "./tmp" +logger = LogWriter(dir, sync_cycle=10) + +# mark the components with 'train' label. +with logger.mode("train"): + # create a scalar component called 'scalars/scalar0' + scalar0 = logger.scalar("scalars/scalar0") + + +# add some records during DL model running, lets start from another block. +with logger.mode("train"): + # add scalars + for step in range(100): + scalar0.add_record(step, random.random()) +``` + +### C++ SDK +Here is the C++ SDK identical to the Python SDK example above: + +```c++ +#include +#include +#include "visualdl/sdk.h" + +namespace vs = visualdl; +namepsace cp = visualdl::components; + +int main() { + const std::string dir = "./tmp"; + vs::LogWriter logger(dir, 10); + + logger.SetMode("train"); + auto tablet = logger.NewTablet("scalars/scalar0"); + + cp::Scalar scalar0(tablet); + + for (int step = 0; step < 1000; step++) { + float v = (float)std::rand() / RAND_MAX; + scalar0.AddRecord(step, v); + } + + return 0; +} +``` + +## Launch Board +After some logs have been generated during training, users can launch board to see real-time data visualization. + + +``` +visualDL --logdir +``` + +Board also supports the parameters below for remote access: + +- `--host` set IP +- `--port` set port +- `--model_pb` specify ONNX format for model file ### How to install @@ -13,3 +140,10 @@ vdl_scratch.py visualDL --logdir=scratch_log ``` that will start a server locally. + + +### Contribute + +VisualDL is initially created by [PaddlePaddle](http://www.paddlepaddle.org/) and +[ECharts](http://echarts.baidu.com/). +We welcome everyone to use, comment and contribute to Visual DL :) diff --git a/docs/introduction_en.md b/docs/introduction_en.md deleted file mode 100644 index 15191940..00000000 --- a/docs/introduction_en.md +++ /dev/null @@ -1,124 +0,0 @@ -# VisualDL (Visualize the Deep Learning) - -## Introduction -VisualDL is a deep learning visualization tool that can help design deep learning jobs. -It includes features such as scalar, parameter distribution, model structure and image visualization. -Currently it is being developed at a high pace. -New features will be continuously added. - -At present, most DNN frameworks use Python as their primary language. VisualDL supports Python by nature. -Users can get plentiful visualization results by simply add a few lines of Python code into their model before training. - - -Besides Python SDK, VisualDL was writen in C++ on the low level. It also provides C++ SDK that -can be integrated into other platforms. - - -## Component -VisualDL now provides 4 components: - -- graph -- scalar -- image -- histogram - -### Graph -Graph is compatible with ONNX(Open Neural Network Exchange)[https://github.com/onnx/onnx], -Cooperated with Python SDK, VisualDL can be compatible with most major DNN frameworks, including -PaddlePaddle, PyTorch and MXNet. - -

- -

- -### Scalar -Scalar can be used to show the trends of error during training. - - -

- -

- -### Image -Image can be used to visualize any tensor or intermediate generated image. - -

- -

- -### Histogram -Histogram can be used to visualize parameter distribution and trends for any tensor. - -

- -

- -## SDK -VisualDL provides both Python SDK and C++ SDK in order to fit more use cases. - - -### Python SDK -Below is an example of creating a simple Scalar component and inserting data from different timestamps: - -```python -import random -from visualdl import LogWriter - -logdir = "./tmp" -logger = LogWriter(dir, sync_cycle=10) - -# mark the components with 'train' label. -with logger.mode("train"): - # create a scalar component called 'scalars/scalar0' - scalar0 = logger.scalar("scalars/scalar0") - - -# add some records during DL model running, lets start from another block. -with logger.mode("train"): - # add scalars - for step in range(100): - scalar0.add_record(step, random.random()) -``` - -### C++ SDK -Here is the C++ SDK identical to the Python SDK example above: - -```c++ -#include -#include -#include "visualdl/sdk.h" - -namespace vs = visualdl; -namepsace cp = visualdl::components; - -int main() { - const std::string dir = "./tmp"; - vs::LogWriter logger(dir, 10); - - logger.SetMode("train"); - auto tablet = logger.NewTablet("scalars/scalar0"); - - cp::Scalar scalar0(tablet); - - for (int step = 0; step < 1000; step++) { - float v = (float)std::rand() / RAND_MAX; - scalar0.AddRecord(step, v); - } - - return 0; -} -``` - -## Launch Board -After some logs have been generated during training, users can launch board to see real-time data visualization. - - -``` -visualDL --logdir -``` - -Board also supports the parameters below for remote access: - -- `--host` set IP -- `--port` set port -- `--model_pb` specify ONNX format for model file -- GitLab