Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Natural Language to Visualization by Neural Machine Translation
1. Natural Language to Visualization
by Neural Machine Translation
Yuyu Luo, Nan Tang, Guoliang Li, Jiawei Tang,
Chengliang Chai, Xuedi Qin
VIS 2021
2021. 11. 23
Hyunwook Lee
2. Contents
• Overview
• Related Work
• Design Requirements
• Background and Problem Formulation
• Model – ncNet
• Evaluation
• Limitation and Future Work
3. 2
What is neural machine translation (NMT)?
• Given input sequence, translate them into output sequence (seq2seq)
e.g., English to Spanish
(input, output) can be any pair of (sequence, sequence)!
5. 4
Contribution
• Proposing ncNet: Transformer-based seq2seq model for NL2VIS
• Presenting visualization-grammar, Vega-Zero for Vega-Lite
• Attention forcing and Visualization-aware translation
A. Satyanarayan, D. Moritz, K. Wongsuphasawat, and J. Heer. Vega-lite: A grammar of interactive graphics. IEEE TVCG, 23(1):341–350, 2017
6. 5
Related Work
NL4DV
FlowSense
• Utilize semantic parsers, instead of using deep-learning based approach
B. Yu and C. T. Silva. Flowsense: A natural language interface for visual data exploration within a dataflow system. IEEE TVCG, pp. 1–11, 2020.
A. Narechania, A. Srinivasan, and J. T. Stasko. NL4DV: A toolkit for generating analytic specifications for data visualization from natural language queries. In VIS, 2020.
7. 6
Design Requirements
• Easy-to-use
Simple query from novice(to create visualization) user Suitable visualization
• End-to-End
Semantic parser hard coded, should be tuned separately
Need to be end-to-end manner
• Language-agnostic (Language-independent)
The output sequence of ncNet should be utilized in various visualization languages
• e.g., Vega-Lite, D3, ggplot2…
8. 7
Background – Data, NL Query
• Data D: tabular dataset from JSON, CSV, or related table from DB
• NL Query: user query for corresponding data D
• Objective: given NL query with dataset D, predict Vega-Zero specification
(Input Sequence, Output Sequence)
9. 8
Language-Agnostic query: Vega-Zero
• A visualization grammar
Simplified version of Vega-Lite
Model friendly
• Direct use of Vega-Lite?
User friendly rather than model friendly
hierarchical grammar hard to train
• Language-agnostic
By simple formatting
Vega-Lite, ggplot2
: unit
13. 12
What is Transformer?
• One of the most famous NLP model
• The model only utilize attention mechanism
• Parallelly handle input sequence
better than RNN, but need positional encoding
• Well-motivated
15. 14
Methods: visualization-aware translation
• Modified version of Beam Search
• Tokens in specific steps have appropriate tokens (e.g., scatter only in [T])
• Top-k with heuristic rules
If there is no appropriate tokens, select top-1 token
17. 16
Evaluation: User Study
• 4 experts, 2 non-experts
• Four failure cases – fail on predicting 1) columns; 2) chart type;
3) top-1 selection; 4) Vega-Zero fails but vis match
19. 18
Limitation and Future work
• (Limitation) Benchmark data are relatively small and limited
• (Limitation) Supporting only one-shot NL queries
• (Future work) supporting conversational NL queries dialog system?
• (Future work) Chart embedding methods
Notas del editor
Neural Machine Translation은 입력 시퀀스를 받아 출력 시퀀스를 만듭니다.
예를 들어, 아래와 같이 영어를 스페인어로 바꿀 수 있습니다.
그러나, translation 자체를 폭넓게 본다면, 이러한 방법론은 어느 분야에서도 동일하게 사용될 수 있습니다.
데이터가 충분하다는 전제하에, 예를 들어서, 입력 음악의 장르를 바꾸는 것 또한 가능합니다.
조금 더 명확하게 하자면, tokenize 가능한 모든 입력 시퀀스 데이터를 통해 tokenize 가능한 모든 출력 시퀀스를 만들어 낼 수 있을 것입니다.
물론, 다른 여러 tokenize 불가능한 데이터에도 활용 가능하지만, 그런 경우 tokenize를 이용하는 MT를 바로 사용하는 것은 불가능에 가까우니까요
N 실제 입력 Query, Visualization에 대한 자세한 요구사항.
D 실제 시각화에 사용되는 데이터 집합
C 유저 입력 (Constraint, Optional), 차트의 타입, sorting 방식 등을 정할 수 있음, 출력에 관여하는 부분
이 논문의 이미지를 보고 무슨 모델이라고 생각이 드느냐 사실 이 모델은 정말 완벽하게 seq2seq NMT이다. 1) 포장기술이 중요하다 2) NMT란 생각보다 폭넓게 사용될 수 있다
이 외에도 Evaluation 등을 했다는 부분이 있지만, 사실상 중요한 부분이 아니므로 스킵
FlowSense (street speed change를 시각화), NL4DV (영화 rating 등의 시각화)
Semantic parsing은 간단하게 말하자면 NL을 기계가 이해가능한 논리로 변경하는 작업
해당 작업은 Deep Learning 등이 들어가지 않으며, 그에 따라 굉장히 시각화 가능한 부분이 한정적이며, 유동적으로 어느 부분이 중요한지 등을 잘 판단하지 못함
Easy-to-use, End-to-End은 NL 모델과 관련되어 있는 항목이다. 해당 사항은 semantic parser로는 이룰 수 없다.
Language-agnostic은 출력 sequence의 모델링에 관한 항목으로, 출력 sequence는 어느 프로그래밍 언어에도 바로 적용할 수 있어야한다.
Output sequence를 표현하기 위해서 새로운 language-agnostic gramma를 만들 필요가 있음 Vega-Zero!
Vega-Lite 등의 다른 language를 바로 표현하는 데에는 어려움이 있음
Vega-Lite, ggplot2에는 바로 적용가능, 다른 language에도 빠르게 적용 가능함
방법론 전체 Overview입니다.
우리는 1) 입력 처리에 관해서 알아볼 것이고
2) Transformer에 관해 간단하게 훑어보고 넘어갈 것이고
3) 이 논문의 추가적인 방법론인 Attention Forcing과 Visualization-aware Translation에 대해 알아볼 겁니다.
T_N tokenization of NL Query
T_C tokenization of Chart Templates and other be-filled objects
T_D tokenization of dataset, with special characters
각 Tokenization 결과를 concatenate해서 Embedding layer에 입력으로 사용
실제 모델에 주요한 방법론으로 사용된 것은 attention 뿐이지만, 이 외에도 많은 방법론이 들어갔다.
각 단어의 position 정보를 표현하기 위한 Positional Encoding, 단어에서의 중요도 / 유사도를 통한 QKV attention,
각 SubLayer(Multi-head attention) 이후의 Residual Connection, Layer Normalization,
Decoder에서 치팅을 막기위한 Masked Multi-head attention,
Encoder에서 encoding된 정보를 활용한 Encoder-Decoder attention…
Design rationale가 굉장히 잘 설명되어있고, 모두 reasonable해서 한번쯤 읽어보면 좋다.
왼쪽, 오른쪽의 예시와 함께 X, Y, Z를 확인하면, 사실 X, Y, Z는 결국 columns에 따라 바뀐다라는 것을 알 수 있습니다.
이에 따라, 사실 Columns가 아닌 value를 집중할 필요가 없다는 것을 모델에 직접적으로 넣어줄 수 있다는겁니다.
이 외에도 AggFunction이나 K의 경우 NL Tokens에 대해서만 attention을 하면 될 것이라고 생각할 수 있습니다.
Beam Search란 자연어 처리에서 자주 사용되는 방법론으로, Best-First Search를 사용하되, 각 step별로 기억해야할 (선택해야할) 단어를 제한하여 효율성을 높이는 방식이다.
Hardness의 경우 Vega-Zero 등의 Vis Query가 얼마나 길고 복잡한지에 따라 매겨짐
User study를 진행,
Columns 예측 실패의 경우, (a)의 1번째 (좌상단) 과 같이, age of 45를 모델이 정확히 판별해내지 못함
의 경우 chart template를 받지 않는 경우에 일어났음
Vega-Zero에서 top-1이 출력으로 나오는데, 실제 맞는 값이 top-k에서 나온 경우
예를 들어, 입력 쿼리에서 차량 대수, Vega-Zero에서는 엔진 개수
Vis에서 분석을 위해서 여러 쿼리를 써야할 수 있다.
Overview First는 사실 Vis가 아니라 전체 논문 작성을 포함한 여러 분야에서 사용될 수 있는 말이다.
NLP를 포함한 다른 분야에서도 Overview first 혹은 적어도 단계에 따른 분석 등을 진행하며, 항상 새기면 좋겠다.
Transformer나 이 논문같은 경우, well-motivated 되어있고 굉장히 clarification, justification이 잘 되어있다. 어디에 무엇을 쓰면 왜 썼는지 등이 정확하게 기입되어있어, 이러한 부분을 논문 쓸 때 참고하면 좋다.