Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update VisualDL documentation structure on PPO #416

Merged
merged 6 commits into from
Apr 20, 2018

Conversation

jetfuel
Copy link
Collaborator

@jetfuel jetfuel commented Apr 20, 2018

This one completely updates the documentation structure on the PPO.
We now change the structure to the following.

  • Getting Started
    • Introduction
    • Installation
    • Setting up First Visualization
    • Examples
  • API
    • Initialize Logger
    • Write Logs
  • Develop
    • How To Contribute
    • Backend Architecture
    • Frontend Guide

@jetfuel jetfuel self-assigned this Apr 20, 2018
@@ -1,4 +1,4 @@
# VisualDL Backend / SDK structure and Develop Guide
# Backend Architecture
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe just call Backend Guide? We have a Frontend Guide already. Also this doc talks about how to dev and architecture is a sub session.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Backend Guide works for me too.

@@ -0,0 +1,124 @@
# 后台架构
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh...i can translate this to chinese later

@@ -1,4 +1,4 @@
# VisualDL Web app Develop
# Frontend Guide
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmmm even its in How to develop section, but maybe change to Frontend Develop Guide/ Backend Develop Guide seems clear than just Frontend Guide / Backend Guide

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have develop appears again is repetitive. I tried Backend Develop Guide and it doesn't look so good

If you still have issues installing VisualDL, try installing from sources as in following section.


### Install from source
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I made a mistake before, it should be "##" instead of "###"

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will update them.

@@ -0,0 +1,100 @@
# Installation

### How to install from pypi
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Most issues are not coming from pip install, they show up when user launch visualdl, so it should include running the demo script and launch visualdl to verify installation is good.

I think "Install with native pip" would be a better title, coz either using Virtualenv or Anaconda or none of them, we are also still installing from pypi

I think just copied the "Quick Start" section from what we had and change title to "Install with native pip" should be good as following:

Install with native pip

# Install the VisualDL. Preferably under a virtual environment or anaconda.
pip install --upgrade visualdl

# run a demo, vdl_create_scratch_log will create logs for testing.
vdl_create_scratch_log
visualdl --logdir=scratch_log --port=8080

# visit http://127.0.0.1:8080

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is no native pip. pip is the method.
I will add the vdl_create_scratch_log part. to help the users to test. Good suggestion.

Copy link
Collaborator

@daming-lu daming-lu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left some comments 😄


VisualDL has three components.
1. The Python/C++ SDK that logs the data during training.
1. The single page client side app that visualized training data.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

visualizes

VisualDL has three components.
1. The Python/C++ SDK that logs the data during training.
1. The single page client side app that visualized training data.
1. The server (powered on Flask) that reads the logs data and delivers it to the client side app for displaying graphs (scalars/histograms) and embeddings.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

powered by Flask, reads the log data


## Tests

Modification in SDK API and any major function changes should be adding test cases.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Modification in SDK API or any major function

- defines server arguments and config
- provides API and router for front end
- ```lib.py``` : delegate wrapper for function calls
- read and caches log data
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

read and cache

- ```Storage``` : main set of data with different modes such as "train" or "test", contain multiple ```Tablet```
- ```Tablet``` : group a single type of data with ```tag```. One tablet will only represent one data type such as scalar, histogram, image and contains multiple ```Record```. For example one tablet represents a line in scalar chart.
- ```Record``` : represent any data structure for any component
- Handles the actual logic to serialized to disk and deserialized from disk
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

serialize & deserialize

@@ -0,0 +1,78 @@
# 前端指南
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can translate this front-end intro into Chinese

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


如果以上步骤出现问题,很可能是因为python或pip不同版本或不同位置所致,以下安装方法能解决。

## 使用 virtualenv 安装
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we move away from 'virtualenv' towards Anaconda's 'conda create' ? Because we tried 'virtualenv' but got some issues, right?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's valid point. In general we need to understand what exactly causes the issue.

I don't think this PR is suitable to address this. Let's sit down together and research more on this topic.

@jetfuel jetfuel merged commit c5b5dc0 into PaddlePaddle:develop Apr 20, 2018
@jetfuel jetfuel deleted the updateDoc branch April 20, 2018 23:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants