SlideShare a Scribd company logo
Dataflow Visualization
Using ASCII DAG
Junji Hashimoto(GREE, Inc.)
2018/12/04 rev0.2
1
Outline
● Why we visualize DAG?
● Background and Motivation
● Left Aligned ASCII DAG(Proposed Visualization)
● Result and Future Works
2
Outline
● Why we visualize DAG?
● Background and Motivation
● Left Aligned ASCII DAG(Proposed Visualization)
● Result and Future Works
3
DAG(Directed Acyclic Graph)?
● What is DAG?
○ Directed graph.
○ No loop.
● Why we visualize DAG?
○ Tensorflow’s computation graph == DAG
○ DAG is a machine learning core.
○ Have to review and debug DAG.
○ DAG is too long for reviewing it today.
4
Outline
● Why we visualize DAG?
● Background and Motivation
○ Development Flow
○ Long Dataflow
● Left Aligned ASCII DAG(Proposed Visualization)
● Result and Future Work
5
Agile: Development Flow
1. Check Requirement
2. Design the codes for the requirement.
3. Build and Test the codes
4. Review
a. Confirm the requirement.
b. Compare the changes of the code.
c. If it is OK, go to deployment.
5. Deploy
a. Merge the code
b. Apply the code for a production.
6
Req.
Design
Build
Deploy
Test
1 or 2 Weeks
Repeat small tasks.
Review: github flow known as Pull Request
7
Review: github flow known as Pull Request
8
Review: github flow known as Pull Request
9
We want to review the changes of
both the code and the dataflow on this UI.
Tensorboard can not show the changes of the dataflow.
Long Dataflow (Inception-V3)
10
65 Layers
Complex and Long Dataflow
11
AlexNet
GoogLeNet
Inception-V3
Inception-V4
These data from ICLR 2017:AN ANALYSIS OF DEEP NEURAL NETWORK MODELS FOR PRACTICAL APPLICATIONS
VGG is here.
Outline
● Why we visualize DAG?
● Background and Motivation
● Left Aligned ASCII DAG(Proposed Visualization)
○ Project Goal
○ Developed Visualization Tool
● Result and Future Work
12
Project Goal
● Make visualization-tool for DAG.
● The tool is available in current development flow.
○ Github flow : Pull Request.
● Compare the changes of DAG easily.
● Scalability of showing large dataflow.
13
Left Aligned DAG(Proposed Visualization)
● Feature
○ Use ASCII
○ Left Aligned
○ Compact 14
Proposed Visualization Graphviz(Conventional Visualization)
The changes of the codes in proposed visualization.
15
Original Insert
L8
Diff
Performance for large DAG: Inception-V3
16
Graphviz : 44 sec
Proposed method: 14sec
It looks nice?
Result And Future Works
● Make visualization-tool for DAG using ASCII.
○ Registered in PyPi.
○ https://pypi.org/project/stackeddag/
● Work with Pull Request together.
● Can show a large graph of dataflow.
● Using this on actual product/development flow is a
future work.
17
18
END
Jupyter Notebook
19
Rendering Algorithm
1. Get depth of nodes
2. Gen reversed DAG and Get reversed depth of nodes.
3. Order nodes by the depth.
4. If the depth is the same, order nodes by the reversed
depth.
5. If the reversed depth is the same, order nodes by the
label of nodes
6. Connect nodes by using ascii text.
20
Rendering Algorithm: Get The Depth of All Nodes
21
Rendering Algorithm
22
0
Rendering Algorithm
23
1
0
Rendering Algorithm
24
2 2 2 2
1
0
Rendering Algorithm
25
33
2 2 2 2
1
0
Rendering Algorithm: Get The Reverse Depth
26
33
2 2 2 2
1
0
00
1 0 0 0
2
3
Rendering Algorithm: Allocate Nodes
27
33
2 2 2 2
1
0
00
1 0 0 0
2
3
Rendering Algorithm: Write All Edges
28
33
2 2 2 2
1
0
00
1 0 0 0
2
3
Benchmark: Inception-V3
29
Related Work for visualization of DAG
30
● Use Image
○ Tensorboard
○ tfGraphviz using graphviz
● Use Ascii
○ graph-easy
○ git
○ graphterm
○ leaf
These do not focus on the changes of codes.
Tensorboard
31
● Pros
○ Sophisticated UI
● Cons
○ Can not compare
a difference of
graphs.
○ Use wide space
tfGraphviz == graphviz
32
● Pros
○ Sophisticated
visualization
● Cons
○ Can not compare
a difference of
graphs.
Limit of using image.
33
● If we use image for
graph,
● We have to compare
the difference
side by side.
graph-easy
34
● Pros
○ We can compare
the difference by
diff-command.
● Cons
○ Use wide space
git
35
● Pros
○ We can compare
the difference by
diff-command.
● Cons
graphterm
36
● Pros
○ We can compare
the difference by
diff-command.
● Cons
○ Not design with
diff-command.
graphterm
37
● Pros
○ We can compare
the difference by
diff-command.
● Cons
○ Not design with
diff-command.
o new node
leaf
38
● Pros
○ We can compare
the difference by
diff-command.
● Cons
○ Not design with
diff-command.
Project Goal
● Make visualization-tool for DAG.
● The tool is available in current development flow.
○ Github flow : Pull Request.
● Compare the changes of DAG easily.
● Scalability of showing large dataflow.
39
If the visualization is ASCII,
we can solve the problems of both flow and changes.
Proposed Visualization
40
Proposed Visualization of DAG
graphviz
Left Aligned ASCII Format
Background
● Complex and Long Dataflow
● Want to use a visualization tool on today’s development flow.
○ We need a visualization tool for the dataflow.
● How to visualize Dataflow(As Conventional Method)
● Requirement of what we improve
○ reviewable
○ compact
○ fast
● Conventional Method
41
Goal
● Why Agile?
○ A project’s goal is always changed.
○ We have to keep
42
Outline
● What is a problem?
● Agile Development Flow
● Why we focus on a visualization of DAG? Why we use ASCII?
● Compare with other visualization.
● Left Aligned ASCII DAG
● About rendering algorithm
● Evaluation by using Google Inception V3
● Results and Future works
43
Long Dataflow (Inception-V3)
44
65 Layers
Compex and Long Dataflow
45
AlexNet
GoogLeNet
Inception-V3
Inception-V4
These data from ICLR 2017:AN ANALYSIS OF DEEP NEURAL NETWORK MODELS FOR PRACTICAL APPLICATIONS
VGG is here.
Development Flow (Agile)
46
Requirements
Waterfall
Design Build Test Release
Agile
1 Year
Req.
Design
Build
Deploy
Test
Req.
Design
Build
Deploy
Test
Req.
Design
Build
Deploy
Test
1 or 2 Weeks
Agile
● Split large task into small tasks.
● One task takes short term.
● Pros
○ Keep the systems available
○ Can catch up the requirement quickly, when requirements are changed.
● Cons
○ Goal is not so clear.
■ Almost OSS like HTTP server do not have clear goal.
47
Practical Development flow for agile
1. Check a issue(== Requirement)
2. Design and make the codes for the issue
3. Build and Test with CI
4. Review
a. Confirm the issue
b. Compare the difference of the code.
c. If it is OK, go to deployment.
5. Deploy
a. Merge the code
b. Apply the code for a production.
48
Req.
Design
Build
Deploy
Test
1 or 2 Weeks
Review: github flow known as Pull Request
49
Review: github flow known as Pull Request
50
Review: github flow known as Pull Request
51
We want to review the code and the dataflow.
Requirement for our development flow
● Review the dataflow and the code by PullRequest-View/Tool.
● Compare the difference of the dataflow
● If the parts of dataflow are not changed, Do not show any difference.
52
Conventional Visualization of Datafllow
● Tensorboard
● tfgraphviz
● Review the dataflow and the code by PullRequest-View/Tool.
● Compare the difference of the dataflow
● Goal
○ Reviewable
■ Compare original graph with modified graph easily.
■ We need ascii graph.
○ Scalability
■ Google’s network has hundred layer of operations.
53
Related Work for visualization of DAG
54
● Use Image
○ Tensorboard
○ tfGraphviz using graphviz
● Use Ascii
○ graph-easy
○ git
○ graphterm
○ leaf
Tensorboard
55
● Pros
○ Sophisticated UI
● Cons
○ Can not compare
a difference of
graphs.
○ Use wide space
tfgraphviz == graphviz
56
● Pros
○ Sophisticated
visualization
● Cons
○ Can not compare
a difference of
graphs.
Limit of using image.
57
● If we use image for
graph,
● We have to compare
the difference
side by side.
graph-easy
58
● Pros
○ We can compare
the difference by
diff-command.
● Cons
○ Use wide space
git
59
● Pros
○ We can compare
the difference by
diff-command.
● Cons
graphterm
60
● Pros
○ We can compare
the difference by
diff-command.
● Cons
○ Not design with
diff-command.
graphterm
61
● Pros
○ We can compare
the difference by
diff-command.
● Cons
○ Not design with
diff-command.
o new node
leaf
62
● Pros
○ We can compare
the difference by
diff-command.
● Cons
○ Not design with
diff-command.
Goal
● Make visualization-tool for DAG.
● The tool is available in current development flow.
○ Github flow : Pull Request.
● Compare the difference of DAG easily.
● Scalability of showing large dataflow.
63

More Related Content

PDF
MPLS Presentation
PPT
Massive mimo
PPTX
Global platform
PPT
PDF
LoRa I/Oコントローラー LTシリーズ 日本語マニュアル
PPTX
PDF
Wi-Fi Roaming Security and Privacy
PDF
LoRaWAN v1.1仕様読解 Class A
MPLS Presentation
Massive mimo
Global platform
LoRa I/Oコントローラー LTシリーズ 日本語マニュアル
Wi-Fi Roaming Security and Privacy
LoRaWAN v1.1仕様読解 Class A

What's hot (20)

PPTX
Coffee can radar
PDF
Building the SD-Branch using uCPE
PPTX
14 things you need to be a successful software developer (v3)
PPTX
Enabling AirPrint & AirPlay on Your Network
PDF
Signalwing 5g das and 5g distribute small cell introduction
PPTX
Optical Fiber Communication
PPTX
PDF
LoRaWAN 対応温度・湿度センサ LHT65 ユーザーマニュアル
PDF
HP C7000 Cconfiguration Guide v.10
PDF
Gerd Keiser - Optical Fiber Communications-McGraw-Hill Education (2010).pdf
PDF
IPv6 Fundamentals
PPTX
Introduction To LoRaWan
PPTX
ppt presentation on vsat technology
PDF
TechWiseTV Workshop: 5th Generation UCS
PPTX
DOCX
How to configure static nat on cisco routers
PPTX
Data Center Interconnect
PPTX
5G NR (New Radio) Training : Tonex Training
PDF
Zephyr-Overview-20230124.pdf
PDF
WiFi – Mobile BNG Offload Deployments
Coffee can radar
Building the SD-Branch using uCPE
14 things you need to be a successful software developer (v3)
Enabling AirPrint & AirPlay on Your Network
Signalwing 5g das and 5g distribute small cell introduction
Optical Fiber Communication
LoRaWAN 対応温度・湿度センサ LHT65 ユーザーマニュアル
HP C7000 Cconfiguration Guide v.10
Gerd Keiser - Optical Fiber Communications-McGraw-Hill Education (2010).pdf
IPv6 Fundamentals
Introduction To LoRaWan
ppt presentation on vsat technology
TechWiseTV Workshop: 5th Generation UCS
How to configure static nat on cisco routers
Data Center Interconnect
5G NR (New Radio) Training : Tonex Training
Zephyr-Overview-20230124.pdf
WiFi – Mobile BNG Offload Deployments
Ad

Similar to Dataflow Visualization using ASCII DAG (20)

PPTX
MathWorks Interview Lecture
PPTX
ExtraV - Boosting Graph Processing Near Storage with a Coherent Accelerator
PPTX
Group discussion Presentation uit rgpv
PDF
Time-evolving Graph Processing on Commodity Clusters: Spark Summit East talk ...
PDF
Technical documentation support in Pharo
PDF
Apache spark - Spark's distributed programming model
PDF
Ling liu part 02:big graph processing
PDF
Final Algos
PPTX
PPT.pptx
PPTX
Lecture Note DL&NN Tensorflow.pptx
PPTX
Tensorflow
PDF
Understanding Connected Data through Visualization
PDF
S12075-GPU-Accelerated-Video-Encoding.pdf
PDF
Graph Stream Processing : spinning fast, large scale, complex analytics
PDF
Big Data Computing Architecture
PDF
Pregel: A System for Large-Scale Graph Processing
PPT
Chapter9 graph data structure
PPTX
An Introduction to TensorFlow architecture
PPTX
Unit II_Graph.pptxkgjrekjgiojtoiejhgnltegjte
PDF
Distributed Graph Algorithms
MathWorks Interview Lecture
ExtraV - Boosting Graph Processing Near Storage with a Coherent Accelerator
Group discussion Presentation uit rgpv
Time-evolving Graph Processing on Commodity Clusters: Spark Summit East talk ...
Technical documentation support in Pharo
Apache spark - Spark's distributed programming model
Ling liu part 02:big graph processing
Final Algos
PPT.pptx
Lecture Note DL&NN Tensorflow.pptx
Tensorflow
Understanding Connected Data through Visualization
S12075-GPU-Accelerated-Video-Encoding.pdf
Graph Stream Processing : spinning fast, large scale, complex analytics
Big Data Computing Architecture
Pregel: A System for Large-Scale Graph Processing
Chapter9 graph data structure
An Introduction to TensorFlow architecture
Unit II_Graph.pptxkgjrekjgiojtoiejhgnltegjte
Distributed Graph Algorithms
Ad

More from gree_tech (20)

PPTX
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
PDF
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
PPTX
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
PPTX
アプリ起動時間高速化 ~推測するな、計測せよ~
PPTX
長寿なゲーム事業におけるアプリビルドの効率化
PPTX
Cloud Spanner をより便利にする運用支援ツールの紹介
PPTX
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
PPTX
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
PPTX
海外展開と負荷試験
PPTX
翻訳QAでのテスト自動化の取り組み
PPTX
組み込み開発のテストとゲーム開発のテストの違い
PPTX
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
PPTX
データエンジニアとアナリストチーム兼務になった件について
PPTX
シェアドサービスとしてのデータテクノロジー
PPTX
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-
PPTX
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話
PPTX
比較サイトの検索改善(SPA から SSR に変換)
PPTX
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行
PPTX
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
PPTX
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
アプリ起動時間高速化 ~推測するな、計測せよ~
長寿なゲーム事業におけるアプリビルドの効率化
Cloud Spanner をより便利にする運用支援ツールの紹介
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
海外展開と負荷試験
翻訳QAでのテスト自動化の取り組み
組み込み開発のテストとゲーム開発のテストの違い
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
データエンジニアとアナリストチーム兼務になった件について
シェアドサービスとしてのデータテクノロジー
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話
比較サイトの検索改善(SPA から SSR に変換)
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)

Recently uploaded (20)

DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PPT
Project quality management in manufacturing
PDF
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PPTX
web development for engineering and engineering
PPTX
UNIT 4 Total Quality Management .pptx
PPTX
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PDF
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
PPTX
additive manufacturing of ss316l using mig welding
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PPT
introduction to datamining and warehousing
PPTX
bas. eng. economics group 4 presentation 1.pptx
PPT
Introduction, IoT Design Methodology, Case Study on IoT System for Weather Mo...
PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
DOCX
573137875-Attendance-Management-System-original
PPTX
Safety Seminar civil to be ensured for safe working.
PDF
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
PDF
PPT on Performance Review to get promotions
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
Project quality management in manufacturing
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
web development for engineering and engineering
UNIT 4 Total Quality Management .pptx
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
Operating System & Kernel Study Guide-1 - converted.pdf
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
additive manufacturing of ss316l using mig welding
UNIT-1 - COAL BASED THERMAL POWER PLANTS
Foundation to blockchain - A guide to Blockchain Tech
introduction to datamining and warehousing
bas. eng. economics group 4 presentation 1.pptx
Introduction, IoT Design Methodology, Case Study on IoT System for Weather Mo...
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
573137875-Attendance-Management-System-original
Safety Seminar civil to be ensured for safe working.
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
PPT on Performance Review to get promotions

Dataflow Visualization using ASCII DAG

  • 1. Dataflow Visualization Using ASCII DAG Junji Hashimoto(GREE, Inc.) 2018/12/04 rev0.2 1
  • 2. Outline ● Why we visualize DAG? ● Background and Motivation ● Left Aligned ASCII DAG(Proposed Visualization) ● Result and Future Works 2
  • 3. Outline ● Why we visualize DAG? ● Background and Motivation ● Left Aligned ASCII DAG(Proposed Visualization) ● Result and Future Works 3
  • 4. DAG(Directed Acyclic Graph)? ● What is DAG? ○ Directed graph. ○ No loop. ● Why we visualize DAG? ○ Tensorflow’s computation graph == DAG ○ DAG is a machine learning core. ○ Have to review and debug DAG. ○ DAG is too long for reviewing it today. 4
  • 5. Outline ● Why we visualize DAG? ● Background and Motivation ○ Development Flow ○ Long Dataflow ● Left Aligned ASCII DAG(Proposed Visualization) ● Result and Future Work 5
  • 6. Agile: Development Flow 1. Check Requirement 2. Design the codes for the requirement. 3. Build and Test the codes 4. Review a. Confirm the requirement. b. Compare the changes of the code. c. If it is OK, go to deployment. 5. Deploy a. Merge the code b. Apply the code for a production. 6 Req. Design Build Deploy Test 1 or 2 Weeks Repeat small tasks.
  • 7. Review: github flow known as Pull Request 7
  • 8. Review: github flow known as Pull Request 8
  • 9. Review: github flow known as Pull Request 9 We want to review the changes of both the code and the dataflow on this UI. Tensorboard can not show the changes of the dataflow.
  • 11. Complex and Long Dataflow 11 AlexNet GoogLeNet Inception-V3 Inception-V4 These data from ICLR 2017:AN ANALYSIS OF DEEP NEURAL NETWORK MODELS FOR PRACTICAL APPLICATIONS VGG is here.
  • 12. Outline ● Why we visualize DAG? ● Background and Motivation ● Left Aligned ASCII DAG(Proposed Visualization) ○ Project Goal ○ Developed Visualization Tool ● Result and Future Work 12
  • 13. Project Goal ● Make visualization-tool for DAG. ● The tool is available in current development flow. ○ Github flow : Pull Request. ● Compare the changes of DAG easily. ● Scalability of showing large dataflow. 13
  • 14. Left Aligned DAG(Proposed Visualization) ● Feature ○ Use ASCII ○ Left Aligned ○ Compact 14 Proposed Visualization Graphviz(Conventional Visualization)
  • 15. The changes of the codes in proposed visualization. 15 Original Insert L8 Diff
  • 16. Performance for large DAG: Inception-V3 16 Graphviz : 44 sec Proposed method: 14sec It looks nice?
  • 17. Result And Future Works ● Make visualization-tool for DAG using ASCII. ○ Registered in PyPi. ○ https://pypi.org/project/stackeddag/ ● Work with Pull Request together. ● Can show a large graph of dataflow. ● Using this on actual product/development flow is a future work. 17
  • 20. Rendering Algorithm 1. Get depth of nodes 2. Gen reversed DAG and Get reversed depth of nodes. 3. Order nodes by the depth. 4. If the depth is the same, order nodes by the reversed depth. 5. If the reversed depth is the same, order nodes by the label of nodes 6. Connect nodes by using ascii text. 20
  • 21. Rendering Algorithm: Get The Depth of All Nodes 21
  • 26. Rendering Algorithm: Get The Reverse Depth 26 33 2 2 2 2 1 0 00 1 0 0 0 2 3
  • 27. Rendering Algorithm: Allocate Nodes 27 33 2 2 2 2 1 0 00 1 0 0 0 2 3
  • 28. Rendering Algorithm: Write All Edges 28 33 2 2 2 2 1 0 00 1 0 0 0 2 3
  • 30. Related Work for visualization of DAG 30 ● Use Image ○ Tensorboard ○ tfGraphviz using graphviz ● Use Ascii ○ graph-easy ○ git ○ graphterm ○ leaf These do not focus on the changes of codes.
  • 31. Tensorboard 31 ● Pros ○ Sophisticated UI ● Cons ○ Can not compare a difference of graphs. ○ Use wide space
  • 32. tfGraphviz == graphviz 32 ● Pros ○ Sophisticated visualization ● Cons ○ Can not compare a difference of graphs.
  • 33. Limit of using image. 33 ● If we use image for graph, ● We have to compare the difference side by side.
  • 34. graph-easy 34 ● Pros ○ We can compare the difference by diff-command. ● Cons ○ Use wide space
  • 35. git 35 ● Pros ○ We can compare the difference by diff-command. ● Cons
  • 36. graphterm 36 ● Pros ○ We can compare the difference by diff-command. ● Cons ○ Not design with diff-command.
  • 37. graphterm 37 ● Pros ○ We can compare the difference by diff-command. ● Cons ○ Not design with diff-command. o new node
  • 38. leaf 38 ● Pros ○ We can compare the difference by diff-command. ● Cons ○ Not design with diff-command.
  • 39. Project Goal ● Make visualization-tool for DAG. ● The tool is available in current development flow. ○ Github flow : Pull Request. ● Compare the changes of DAG easily. ● Scalability of showing large dataflow. 39 If the visualization is ASCII, we can solve the problems of both flow and changes.
  • 40. Proposed Visualization 40 Proposed Visualization of DAG graphviz Left Aligned ASCII Format
  • 41. Background ● Complex and Long Dataflow ● Want to use a visualization tool on today’s development flow. ○ We need a visualization tool for the dataflow. ● How to visualize Dataflow(As Conventional Method) ● Requirement of what we improve ○ reviewable ○ compact ○ fast ● Conventional Method 41
  • 42. Goal ● Why Agile? ○ A project’s goal is always changed. ○ We have to keep 42
  • 43. Outline ● What is a problem? ● Agile Development Flow ● Why we focus on a visualization of DAG? Why we use ASCII? ● Compare with other visualization. ● Left Aligned ASCII DAG ● About rendering algorithm ● Evaluation by using Google Inception V3 ● Results and Future works 43
  • 45. Compex and Long Dataflow 45 AlexNet GoogLeNet Inception-V3 Inception-V4 These data from ICLR 2017:AN ANALYSIS OF DEEP NEURAL NETWORK MODELS FOR PRACTICAL APPLICATIONS VGG is here.
  • 46. Development Flow (Agile) 46 Requirements Waterfall Design Build Test Release Agile 1 Year Req. Design Build Deploy Test Req. Design Build Deploy Test Req. Design Build Deploy Test 1 or 2 Weeks
  • 47. Agile ● Split large task into small tasks. ● One task takes short term. ● Pros ○ Keep the systems available ○ Can catch up the requirement quickly, when requirements are changed. ● Cons ○ Goal is not so clear. ■ Almost OSS like HTTP server do not have clear goal. 47
  • 48. Practical Development flow for agile 1. Check a issue(== Requirement) 2. Design and make the codes for the issue 3. Build and Test with CI 4. Review a. Confirm the issue b. Compare the difference of the code. c. If it is OK, go to deployment. 5. Deploy a. Merge the code b. Apply the code for a production. 48 Req. Design Build Deploy Test 1 or 2 Weeks
  • 49. Review: github flow known as Pull Request 49
  • 50. Review: github flow known as Pull Request 50
  • 51. Review: github flow known as Pull Request 51 We want to review the code and the dataflow.
  • 52. Requirement for our development flow ● Review the dataflow and the code by PullRequest-View/Tool. ● Compare the difference of the dataflow ● If the parts of dataflow are not changed, Do not show any difference. 52
  • 53. Conventional Visualization of Datafllow ● Tensorboard ● tfgraphviz ● Review the dataflow and the code by PullRequest-View/Tool. ● Compare the difference of the dataflow ● Goal ○ Reviewable ■ Compare original graph with modified graph easily. ■ We need ascii graph. ○ Scalability ■ Google’s network has hundred layer of operations. 53
  • 54. Related Work for visualization of DAG 54 ● Use Image ○ Tensorboard ○ tfGraphviz using graphviz ● Use Ascii ○ graph-easy ○ git ○ graphterm ○ leaf
  • 55. Tensorboard 55 ● Pros ○ Sophisticated UI ● Cons ○ Can not compare a difference of graphs. ○ Use wide space
  • 56. tfgraphviz == graphviz 56 ● Pros ○ Sophisticated visualization ● Cons ○ Can not compare a difference of graphs.
  • 57. Limit of using image. 57 ● If we use image for graph, ● We have to compare the difference side by side.
  • 58. graph-easy 58 ● Pros ○ We can compare the difference by diff-command. ● Cons ○ Use wide space
  • 59. git 59 ● Pros ○ We can compare the difference by diff-command. ● Cons
  • 60. graphterm 60 ● Pros ○ We can compare the difference by diff-command. ● Cons ○ Not design with diff-command.
  • 61. graphterm 61 ● Pros ○ We can compare the difference by diff-command. ● Cons ○ Not design with diff-command. o new node
  • 62. leaf 62 ● Pros ○ We can compare the difference by diff-command. ● Cons ○ Not design with diff-command.
  • 63. Goal ● Make visualization-tool for DAG. ● The tool is available in current development flow. ○ Github flow : Pull Request. ● Compare the difference of DAG easily. ● Scalability of showing large dataflow. 63