SlideShare a Scribd company logo
Improving Neural Question Generation Using Answer
Separation
Seoul National Univ.
Machine Intelligence Lab.
Yanghoon Kim
1
Authors
2
Yanghoon Kim
Seoul National Univ.
Hwanhee Lee
Seoul National Univ.
Kyomin Jung
Seoul National Univ.
Joongbo Shin
Seoul National Univ.
Contents
3
Background – related work, task definition
Problem – what to solve?
Contribution
Model
Experiments – verifying the effectiveness of the model
Conclusion
Discussion
Background
• Neural question generation (NQG)
• Generating a question from a given passage with deep neural
networks
• Importance of NQG
• Generating questions for educational materials.
• Generating questions for improving QA systems.
4
Background
5
• Sequence-to-sequence
(seq2seq) • Generate a sequence from another
sequence
• Encoder: input sequence
reader
• Decoder: new sequence
generator
• Structure
• RNN / CNN / Attention
• Pass the information from encoder
to decoder
• Initialize decoder state with
last hidden state of the
encoder
Background
6
• Seq2seq with attention
mechanism
• Attention
• Every decoding step:
Attention to every encoder
hidden state
• Determine which part should
be more attention
Background
• Task Definition
• Given a passage 𝑋 𝑝
= 𝑥1
𝑝
, … , 𝑥 𝑛
𝑝
and a target answer 𝑋 𝑎
=
𝑥1
𝑎
, … , 𝑥 𝑚
𝑎 as input, the NQG model aims to generate a question
𝑌 = 𝑦1, … , 𝑦 𝑇 asking about the target answer in the passage.
7
ത𝑌 = 𝑎𝑟𝑔𝑚𝑎𝑥
𝑌
𝑃(𝑌|𝑋 𝑝
, 𝑋 𝑎
)
= 𝑎𝑟𝑔𝑚𝑎𝑥
𝑌
෍
𝑡=1
𝑇
𝑃(𝑦𝑡|𝑋 𝑝, 𝑋 𝑎, 𝑦<𝑡)
Background
• <Learning to Ask: Neural Question Generation for Reading
Comprehension> (Du et al., ACL 2017)
• The first NN-based question generation
• Simple seq2seq with attention mechanism
• Sentence-level model and Paragraph-level model
• Difference in initialization of the decoder’s hidden states
8
Decoder
Sentence-level
Encoder
Paragraph-level
Encoder
The last
encoder
state
Decoder
Sentence-level
Encoder
Concatenation
of Last states
Sentence-level NQG Paragraph-level NQG
Background
• <Neural question generation from text: A preliminary study>
(Zhou et al., NLPCC 2017)
• The first NQG with given target answer
• Feature-rich encoder
• Concatenation of word vector, answer position feature(BIO tagging)
and lexical features(word case, POS, NER)
• Copy Mechanism*
• Pointing mechanism to copy words from encoder’s input sentence
9
* Gulcehre et al., Pointing the unknown words, ACL 2016
Background
• Others
• Jointly learning of QA and QG
• <Question Answering and Question Generation as Dual Tasks> (AAAI
2018)
• <Learning to Collaborate for Question Answering and Asking> (NAACL
2018)
• NQG without target answer
• <Identifying Where to Focus in Reading Comprehension for Neural
Question Generation) (EMNLP 2017)
• <A Multi-Agent Communication Framework for Question-Worthy
Phrase Extraction and Question Generation> (AAAI 2019)
• Paragraph-level NQG
• <Paragraph-level Neural Question Generation with Maxout Pointer
and Gated Self-attention Networks> (EMNLP 2018)
10
Problem
• Previous NQG systems suffer from a critical problem
• Some models don’t take the question target into account.
• RNNs often follow a shallow generation process.
11
𝑃𝑎𝑠𝑠𝑎𝑔𝑒
𝑃𝑎𝑠𝑠𝑎𝑔𝑒
𝐴𝑛𝑠𝑤𝑒𝑟1
𝐴𝑛𝑠𝑤𝑒𝑟2
𝑄𝑢𝑒𝑠𝑡𝑖𝑜𝑛1
𝑄𝑢𝑒𝑠𝑡𝑖𝑜𝑛2
Model
Ignored
Ignored
Problem
• Previous NQG systems suffer from a critical problem
• Some models can’t well grasp the target answer(question target) .
• A sophisticated proportion of generated questions include word in the
target answer.
• Contribution of Copy mechanism
12
Contribution
• We propose answer-separated seq2seq
• Treats the target answer(question target) and the passage
separately.
• Prevent the generated question to include words in the target answer.
• Better capture the information from both the target answer and the
passage
• Keyword-net
• Model is consistently aware of the target answer.
• Extract the key information in the target answer.
13
Model
• Base model
• Encoder-decoder with attention
• Answer-separated seq2seq
• Answer-separated passage encoder
• Answer encoder
• Answer-separated decoder
• keyword-net
• Word generator with semantic information
14
Model
• Answer-separated passage encoder
• A simple preprocessing of the input passage
• Original passage: John Francis O’Hara was elected president of Notre
Dame in 1934
• Masked passage: <answer> was elected president of Notre Dame in
1934
• A one-layer bi-LSTM
• Answer encoder
• A one-layer bi-LSTM
15
Model
• Answer-separated decoder
• A one-layer LSTM
• Functionality: Combine features from encoders and generate
sequence output
• The model still can generate questions without target answer
information
• What if the target answer is long and complicated?
16
Passage: Steve Jobs is the founder of Apple
Processed passage: <answer> is the founder of Apple
Generated question: Who is the founder of Apple?
Model
• Answer-separated decoder
• A one-layer LSTM
• keyword-net
• Consistently be aware of the target answer.
• Extract key information.
• Passage: Steve Jobs is the founder of Apple
• Answer: founder of Apple
17
Model
• Answer-separated decoder
• Capturing semantic information
• retrieval style word generation layer proposed by (Ma et al. 2018)*
• seq2seq has tendency to memorize the sequence pattern rather than
reflecting word meanings
18* Ma et al., Query and Output: Generating Words by Querying Distributed Word Representations for Paraphrase
Generation, NAACL 2018
Model
• Trick 1: Named entity replacement
• Purpose: Improve model performance
• Motivation: Most named entities do not appear frequently
19
Steve Paul Jobs was the chairman, chief executive officer (CEO), and co-
founder of Apple; chairman and majority shareholder of Pixar.
Original passage
𝑃𝑒𝑟𝑠𝑜𝑛1 was the chairman, chief
executive officer (CEO), and co-founder
of 𝑂𝑟𝑔𝑎𝑛𝑖𝑧𝑎𝑡𝑖𝑜𝑛1; chairman and
majority shareholder of 𝑂𝑟𝑔𝑎𝑛𝑖𝑧𝑎𝑡𝑖𝑜𝑛2
Original word NER tag
Steve Paul Jobs 𝑃𝑒𝑟𝑠𝑜𝑛1
Apple 𝑂𝑟𝑔𝑎𝑛𝑖𝑧𝑎𝑡𝑖𝑜𝑛1
Pixar 𝑂𝑟𝑔𝑎𝑛𝑖𝑧𝑎𝑡𝑖𝑜𝑛2
Processed passage Matching table
Model
• Trick 2: Removal of duplicates(post-processing)
• Purpose: Improve model performance
• Motivation: Recurrent model tends to repeat the same pattern if
not trained well
20
Who is the the CEO of the CEO of Apple?
Generated question
Who is the CEO of the CEO of Apple?
1-gram removal
Who is the CEO of Apple?
3-gram removal
Experiment
• Data
• Processed version of SQuAD 1.1
• Data split 1: 70,484/10,570/11,877 (train/dev/test)
• Data split 2: 86,635/8,965/8,964
• Evaluation
21
* Song et al., Leveraging Context Information for Natural Question Generation, NAACL 2018
*
Experiment
• Impact of answer separation
• Capturing target answer
• Check if the target answer is included in the generated question
• AP : Answer position Feature (BIO scheme)
• (Song et al. 2018) used the copy mechanism.
22
Experiment
• Impact of answer separation
• Interrogative word prediction
• “What” takes up more than half of the whole training set
• “Which” : “Which year” can be represented as “When”
• “why”, “yes/no” : only takes up 1.5% and 1.2% of the training set.
23
Experiment
• Impact of answer separation
• Attention from <answer>
• (a) is the attention matrix from our model
• (b) is the attention matrix from seq2seq + AP
• <answer> give the highest attention weights to the interrogative word
“who” in (a)
24
Experiment
• Question generation for machine comprehension
• Use named entities as target answers, generate synthetic data for
machine comprehension system(QA net by Google).
• ALL : Evaluation result of SQuAD dev set(10k)
• NER : Evaluation result of partial SQuAD dev set(4k)
• answers of single named entity
25
Conclusion
• We proposed ASs2s which treats the passage and the target
answer separately to better utilize the information from the
both sides
• The Keyword-net supplements the lack of information
caused by <answer> token.
• We achieved state-of-the-art performances in processed
SQuAD 1.1. We also verified that our answer separation
technique has actual help in preventing answer copying
26
Discussion
• Qualitative analysis on Keyword-net
• Currently we have only checked the performance gain from the
Keyword-net
• Data Augmentation for Machine Reading task
• How to select new answers that is not in the original dataset
27
28
Thank you!
<Yanghoon Kim>
https://yanghoonkim.github.io/20181105/me

More Related Content

What's hot

Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
Yasir Khan
 
The Design and Analysis of Algorithms.pdf
The Design and Analysis of Algorithms.pdfThe Design and Analysis of Algorithms.pdf
The Design and Analysis of Algorithms.pdf
Saqib Raza
 
Empirical Software Engineering
Empirical Software EngineeringEmpirical Software Engineering
Empirical Software Engineering
RahimLotfi
 
Lecture: Question Answering
Lecture: Question AnsweringLecture: Question Answering
Lecture: Question Answering
Marina Santini
 
gpt3_presentation.pdf
gpt3_presentation.pdfgpt3_presentation.pdf
gpt3_presentation.pdf
Giacomo Frisoni
 
Formal Logic in AI
Formal Logic in AIFormal Logic in AI
Formal Logic in AI
Dr. C.V. Suresh Babu
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
Jaganadh Gopinadhan
 
Automation of IT Ticket Automation using NLP and Deep Learning
Automation of IT Ticket Automation using NLP and Deep LearningAutomation of IT Ticket Automation using NLP and Deep Learning
Automation of IT Ticket Automation using NLP and Deep Learning
Pranov Mishra
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
rewa_monami
 
Presentation on Text Classification
Presentation on Text ClassificationPresentation on Text Classification
Presentation on Text Classification
Sai Srinivas Kotni
 
NLP Bootcamp 2018 : Representation Learning of text for NLP
NLP Bootcamp 2018 : Representation Learning of text for NLPNLP Bootcamp 2018 : Representation Learning of text for NLP
NLP Bootcamp 2018 : Representation Learning of text for NLP
Anuj Gupta
 
Prompt Engineering.pptx
Prompt Engineering.pptxPrompt Engineering.pptx
Prompt Engineering.pptx
ahmedmishfaq
 
2022's Most Popular Programming Languages for UI Test Automation
2022's Most Popular Programming Languages for UI Test Automation2022's Most Popular Programming Languages for UI Test Automation
2022's Most Popular Programming Languages for UI Test Automation
Applitools
 
Green-AI-Foundation.pdf
Green-AI-Foundation.pdfGreen-AI-Foundation.pdf
Green-AI-Foundation.pdf
JoshuaRakes
 
Natural lanaguage processing
Natural lanaguage processingNatural lanaguage processing
Natural lanaguage processing
gulshan kumar
 
Machine Learning and its Applications
Machine Learning and its ApplicationsMachine Learning and its Applications
Machine Learning and its Applications
Dr Ganesh Iyer
 
Text Similarity
Text SimilarityText Similarity
Introduction to PyTorch
Introduction to PyTorchIntroduction to PyTorch
Introduction to PyTorch
Jun Young Park
 
Machine learning
Machine learningMachine learning
Machine learning
eonx_32
 
Introduction to natural language processing
Introduction to natural language processingIntroduction to natural language processing
Introduction to natural language processing
Minh Pham
 

What's hot (20)

Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
 
The Design and Analysis of Algorithms.pdf
The Design and Analysis of Algorithms.pdfThe Design and Analysis of Algorithms.pdf
The Design and Analysis of Algorithms.pdf
 
Empirical Software Engineering
Empirical Software EngineeringEmpirical Software Engineering
Empirical Software Engineering
 
Lecture: Question Answering
Lecture: Question AnsweringLecture: Question Answering
Lecture: Question Answering
 
gpt3_presentation.pdf
gpt3_presentation.pdfgpt3_presentation.pdf
gpt3_presentation.pdf
 
Formal Logic in AI
Formal Logic in AIFormal Logic in AI
Formal Logic in AI
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
 
Automation of IT Ticket Automation using NLP and Deep Learning
Automation of IT Ticket Automation using NLP and Deep LearningAutomation of IT Ticket Automation using NLP and Deep Learning
Automation of IT Ticket Automation using NLP and Deep Learning
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
 
Presentation on Text Classification
Presentation on Text ClassificationPresentation on Text Classification
Presentation on Text Classification
 
NLP Bootcamp 2018 : Representation Learning of text for NLP
NLP Bootcamp 2018 : Representation Learning of text for NLPNLP Bootcamp 2018 : Representation Learning of text for NLP
NLP Bootcamp 2018 : Representation Learning of text for NLP
 
Prompt Engineering.pptx
Prompt Engineering.pptxPrompt Engineering.pptx
Prompt Engineering.pptx
 
2022's Most Popular Programming Languages for UI Test Automation
2022's Most Popular Programming Languages for UI Test Automation2022's Most Popular Programming Languages for UI Test Automation
2022's Most Popular Programming Languages for UI Test Automation
 
Green-AI-Foundation.pdf
Green-AI-Foundation.pdfGreen-AI-Foundation.pdf
Green-AI-Foundation.pdf
 
Natural lanaguage processing
Natural lanaguage processingNatural lanaguage processing
Natural lanaguage processing
 
Machine Learning and its Applications
Machine Learning and its ApplicationsMachine Learning and its Applications
Machine Learning and its Applications
 
Text Similarity
Text SimilarityText Similarity
Text Similarity
 
Introduction to PyTorch
Introduction to PyTorchIntroduction to PyTorch
Introduction to PyTorch
 
Machine learning
Machine learningMachine learning
Machine learning
 
Introduction to natural language processing
Introduction to natural language processingIntroduction to natural language processing
Introduction to natural language processing
 

Similar to Improving neural question generation using answer separation

Asking Clarifying Questions in Open-Domain Information-Seeking Conversations
Asking Clarifying Questions in Open-Domain Information-Seeking ConversationsAsking Clarifying Questions in Open-Domain Information-Seeking Conversations
Asking Clarifying Questions in Open-Domain Information-Seeking Conversations
Mohammad Aliannejadi
 
Improving Neural Question Generation using Answer Separation.
Improving Neural Question Generation using Answer Separation.Improving Neural Question Generation using Answer Separation.
Improving Neural Question Generation using Answer Separation.
Yang Hoon Kim
 
Deep Learning Models for Question Answering
Deep Learning Models for Question AnsweringDeep Learning Models for Question Answering
Deep Learning Models for Question Answering
Sujit Pal
 
Deep Learning, Where Are You Going?
Deep Learning, Where Are You Going?Deep Learning, Where Are You Going?
Deep Learning, Where Are You Going?
NAVER Engineering
 
Improving Neural Question Generation using Answer Separation
Improving Neural Question Generation using Answer SeparationImproving Neural Question Generation using Answer Separation
Improving Neural Question Generation using Answer Separation
Yang Hoon Kim
 
Triantafyllia Voulibasi
Triantafyllia VoulibasiTriantafyllia Voulibasi
Triantafyllia Voulibasi
ISSEL
 
Java parser a fine grained indexing tool and its application
Java parser a fine grained indexing tool and its applicationJava parser a fine grained indexing tool and its application
Java parser a fine grained indexing tool and its application
Roya Hosseini
 
Naver learning to rank question answer pairs using hrde-ltc
Naver learning to rank question answer pairs using hrde-ltcNaver learning to rank question answer pairs using hrde-ltc
Naver learning to rank question answer pairs using hrde-ltc
NAVER Engineering
 
Enabling Automated Software Testing with Artificial Intelligence
Enabling Automated Software Testing with Artificial IntelligenceEnabling Automated Software Testing with Artificial Intelligence
Enabling Automated Software Testing with Artificial Intelligence
Lionel Briand
 
Generating test cases using UML Communication Diagram
Generating test cases using UML Communication Diagram Generating test cases using UML Communication Diagram
Generating test cases using UML Communication Diagram
Praveen Penumathsa
 
Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...
Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...
Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...
Lucidworks
 
Vqa seminar (1)
Vqa seminar (1)Vqa seminar (1)
Vqa seminar (1)
Abdullah Khorshed
 
Natural Language Query to SQL conversion using Machine Learning Approach
Natural Language Query to SQL conversion using Machine Learning ApproachNatural Language Query to SQL conversion using Machine Learning Approach
Natural Language Query to SQL conversion using Machine Learning Approach
Minhazul Arefin
 
Final
FinalFinal
DEPT CONF (1) (1).pptx
DEPT CONF (1) (1).pptxDEPT CONF (1) (1).pptx
DEPT CONF (1) (1).pptx
vijayalakshmi257551
 
DutchMLSchool 2022 - History and Developments in ML
DutchMLSchool 2022 - History and Developments in MLDutchMLSchool 2022 - History and Developments in ML
DutchMLSchool 2022 - History and Developments in ML
BigML, Inc
 
Multi-method Evaluation in Scientific Paper Recommender Systems
Multi-method Evaluation in Scientific Paper Recommender SystemsMulti-method Evaluation in Scientific Paper Recommender Systems
Multi-method Evaluation in Scientific Paper Recommender Systems
Aravind Sesagiri Raamkumar
 
Deep Learning, an interactive introduction for NLP-ers
Deep Learning, an interactive introduction for NLP-ersDeep Learning, an interactive introduction for NLP-ers
Deep Learning, an interactive introduction for NLP-ers
Roelof Pieters
 
GPT-2: Language Models are Unsupervised Multitask Learners
GPT-2: Language Models are Unsupervised Multitask LearnersGPT-2: Language Models are Unsupervised Multitask Learners
GPT-2: Language Models are Unsupervised Multitask Learners
Young Seok Kim
 
In the age of Big Data, what role for Software Engineers?
In the age of Big Data, what role for Software Engineers?In the age of Big Data, what role for Software Engineers?
In the age of Big Data, what role for Software Engineers?
CS, NcState
 

Similar to Improving neural question generation using answer separation (20)

Asking Clarifying Questions in Open-Domain Information-Seeking Conversations
Asking Clarifying Questions in Open-Domain Information-Seeking ConversationsAsking Clarifying Questions in Open-Domain Information-Seeking Conversations
Asking Clarifying Questions in Open-Domain Information-Seeking Conversations
 
Improving Neural Question Generation using Answer Separation.
Improving Neural Question Generation using Answer Separation.Improving Neural Question Generation using Answer Separation.
Improving Neural Question Generation using Answer Separation.
 
Deep Learning Models for Question Answering
Deep Learning Models for Question AnsweringDeep Learning Models for Question Answering
Deep Learning Models for Question Answering
 
Deep Learning, Where Are You Going?
Deep Learning, Where Are You Going?Deep Learning, Where Are You Going?
Deep Learning, Where Are You Going?
 
Improving Neural Question Generation using Answer Separation
Improving Neural Question Generation using Answer SeparationImproving Neural Question Generation using Answer Separation
Improving Neural Question Generation using Answer Separation
 
Triantafyllia Voulibasi
Triantafyllia VoulibasiTriantafyllia Voulibasi
Triantafyllia Voulibasi
 
Java parser a fine grained indexing tool and its application
Java parser a fine grained indexing tool and its applicationJava parser a fine grained indexing tool and its application
Java parser a fine grained indexing tool and its application
 
Naver learning to rank question answer pairs using hrde-ltc
Naver learning to rank question answer pairs using hrde-ltcNaver learning to rank question answer pairs using hrde-ltc
Naver learning to rank question answer pairs using hrde-ltc
 
Enabling Automated Software Testing with Artificial Intelligence
Enabling Automated Software Testing with Artificial IntelligenceEnabling Automated Software Testing with Artificial Intelligence
Enabling Automated Software Testing with Artificial Intelligence
 
Generating test cases using UML Communication Diagram
Generating test cases using UML Communication Diagram Generating test cases using UML Communication Diagram
Generating test cases using UML Communication Diagram
 
Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...
Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...
Enriching Solr with Deep Learning for a Question Answering System - Sanket Sh...
 
Vqa seminar (1)
Vqa seminar (1)Vqa seminar (1)
Vqa seminar (1)
 
Natural Language Query to SQL conversion using Machine Learning Approach
Natural Language Query to SQL conversion using Machine Learning ApproachNatural Language Query to SQL conversion using Machine Learning Approach
Natural Language Query to SQL conversion using Machine Learning Approach
 
Final
FinalFinal
Final
 
DEPT CONF (1) (1).pptx
DEPT CONF (1) (1).pptxDEPT CONF (1) (1).pptx
DEPT CONF (1) (1).pptx
 
DutchMLSchool 2022 - History and Developments in ML
DutchMLSchool 2022 - History and Developments in MLDutchMLSchool 2022 - History and Developments in ML
DutchMLSchool 2022 - History and Developments in ML
 
Multi-method Evaluation in Scientific Paper Recommender Systems
Multi-method Evaluation in Scientific Paper Recommender SystemsMulti-method Evaluation in Scientific Paper Recommender Systems
Multi-method Evaluation in Scientific Paper Recommender Systems
 
Deep Learning, an interactive introduction for NLP-ers
Deep Learning, an interactive introduction for NLP-ersDeep Learning, an interactive introduction for NLP-ers
Deep Learning, an interactive introduction for NLP-ers
 
GPT-2: Language Models are Unsupervised Multitask Learners
GPT-2: Language Models are Unsupervised Multitask LearnersGPT-2: Language Models are Unsupervised Multitask Learners
GPT-2: Language Models are Unsupervised Multitask Learners
 
In the age of Big Data, what role for Software Engineers?
In the age of Big Data, what role for Software Engineers?In the age of Big Data, what role for Software Engineers?
In the age of Big Data, what role for Software Engineers?
 

More from NAVER Engineering

React vac pattern
React vac patternReact vac pattern
React vac pattern
NAVER Engineering
 
디자인 시스템에 직방 ZUIX
디자인 시스템에 직방 ZUIX디자인 시스템에 직방 ZUIX
디자인 시스템에 직방 ZUIX
NAVER Engineering
 
진화하는 디자인 시스템(걸음마 편)
진화하는 디자인 시스템(걸음마 편)진화하는 디자인 시스템(걸음마 편)
진화하는 디자인 시스템(걸음마 편)
NAVER Engineering
 
서비스 운영을 위한 디자인시스템 프로젝트
서비스 운영을 위한 디자인시스템 프로젝트서비스 운영을 위한 디자인시스템 프로젝트
서비스 운영을 위한 디자인시스템 프로젝트
NAVER Engineering
 
BPL(Banksalad Product Language) 무야호
BPL(Banksalad Product Language) 무야호BPL(Banksalad Product Language) 무야호
BPL(Banksalad Product Language) 무야호
NAVER Engineering
 
이번 생에 디자인 시스템은 처음이라
이번 생에 디자인 시스템은 처음이라이번 생에 디자인 시스템은 처음이라
이번 생에 디자인 시스템은 처음이라
NAVER Engineering
 
날고 있는 여러 비행기 넘나 들며 정비하기
날고 있는 여러 비행기 넘나 들며 정비하기날고 있는 여러 비행기 넘나 들며 정비하기
날고 있는 여러 비행기 넘나 들며 정비하기
NAVER Engineering
 
쏘카프레임 구축 배경과 과정
 쏘카프레임 구축 배경과 과정 쏘카프레임 구축 배경과 과정
쏘카프레임 구축 배경과 과정
NAVER Engineering
 
플랫폼 디자이너 없이 디자인 시스템을 구축하는 프로덕트 디자이너의 우당탕탕 고통 연대기
플랫폼 디자이너 없이 디자인 시스템을 구축하는 프로덕트 디자이너의 우당탕탕 고통 연대기플랫폼 디자이너 없이 디자인 시스템을 구축하는 프로덕트 디자이너의 우당탕탕 고통 연대기
플랫폼 디자이너 없이 디자인 시스템을 구축하는 프로덕트 디자이너의 우당탕탕 고통 연대기
NAVER Engineering
 
200820 NAVER TECH CONCERT 15_Code Review is Horse(코드리뷰는 말이야)(feat.Latte)
200820 NAVER TECH CONCERT 15_Code Review is Horse(코드리뷰는 말이야)(feat.Latte)200820 NAVER TECH CONCERT 15_Code Review is Horse(코드리뷰는 말이야)(feat.Latte)
200820 NAVER TECH CONCERT 15_Code Review is Horse(코드리뷰는 말이야)(feat.Latte)
NAVER Engineering
 
200819 NAVER TECH CONCERT 03_화려한 코루틴이 내 앱을 감싸네! 코루틴으로 작성해보는 깔끔한 비동기 코드
200819 NAVER TECH CONCERT 03_화려한 코루틴이 내 앱을 감싸네! 코루틴으로 작성해보는 깔끔한 비동기 코드200819 NAVER TECH CONCERT 03_화려한 코루틴이 내 앱을 감싸네! 코루틴으로 작성해보는 깔끔한 비동기 코드
200819 NAVER TECH CONCERT 03_화려한 코루틴이 내 앱을 감싸네! 코루틴으로 작성해보는 깔끔한 비동기 코드
NAVER Engineering
 
200819 NAVER TECH CONCERT 10_맥북에서도 아이맥프로에서 빌드하는 것처럼 빌드 속도 빠르게 하기
200819 NAVER TECH CONCERT 10_맥북에서도 아이맥프로에서 빌드하는 것처럼 빌드 속도 빠르게 하기200819 NAVER TECH CONCERT 10_맥북에서도 아이맥프로에서 빌드하는 것처럼 빌드 속도 빠르게 하기
200819 NAVER TECH CONCERT 10_맥북에서도 아이맥프로에서 빌드하는 것처럼 빌드 속도 빠르게 하기
NAVER Engineering
 
200819 NAVER TECH CONCERT 08_성능을 고민하는 슬기로운 개발자 생활
200819 NAVER TECH CONCERT 08_성능을 고민하는 슬기로운 개발자 생활200819 NAVER TECH CONCERT 08_성능을 고민하는 슬기로운 개발자 생활
200819 NAVER TECH CONCERT 08_성능을 고민하는 슬기로운 개발자 생활
NAVER Engineering
 
200819 NAVER TECH CONCERT 05_모르면 손해보는 Android 디버깅/분석 꿀팁 대방출
200819 NAVER TECH CONCERT 05_모르면 손해보는 Android 디버깅/분석 꿀팁 대방출200819 NAVER TECH CONCERT 05_모르면 손해보는 Android 디버깅/분석 꿀팁 대방출
200819 NAVER TECH CONCERT 05_모르면 손해보는 Android 디버깅/분석 꿀팁 대방출
NAVER Engineering
 
200819 NAVER TECH CONCERT 09_Case.xcodeproj - 좋은 동료로 거듭나기 위한 노하우
200819 NAVER TECH CONCERT 09_Case.xcodeproj - 좋은 동료로 거듭나기 위한 노하우200819 NAVER TECH CONCERT 09_Case.xcodeproj - 좋은 동료로 거듭나기 위한 노하우
200819 NAVER TECH CONCERT 09_Case.xcodeproj - 좋은 동료로 거듭나기 위한 노하우
NAVER Engineering
 
200820 NAVER TECH CONCERT 14_야 너두 할 수 있어. 비전공자, COBOL 개발자를 거쳐 네이버에서 FE 개발하게 된...
200820 NAVER TECH CONCERT 14_야 너두 할 수 있어. 비전공자, COBOL 개발자를 거쳐 네이버에서 FE 개발하게 된...200820 NAVER TECH CONCERT 14_야 너두 할 수 있어. 비전공자, COBOL 개발자를 거쳐 네이버에서 FE 개발하게 된...
200820 NAVER TECH CONCERT 14_야 너두 할 수 있어. 비전공자, COBOL 개발자를 거쳐 네이버에서 FE 개발하게 된...
NAVER Engineering
 
200820 NAVER TECH CONCERT 13_네이버에서 오픈 소스 개발을 통해 성장하는 방법
200820 NAVER TECH CONCERT 13_네이버에서 오픈 소스 개발을 통해 성장하는 방법200820 NAVER TECH CONCERT 13_네이버에서 오픈 소스 개발을 통해 성장하는 방법
200820 NAVER TECH CONCERT 13_네이버에서 오픈 소스 개발을 통해 성장하는 방법
NAVER Engineering
 
200820 NAVER TECH CONCERT 12_상반기 네이버 인턴을 돌아보며
200820 NAVER TECH CONCERT 12_상반기 네이버 인턴을 돌아보며200820 NAVER TECH CONCERT 12_상반기 네이버 인턴을 돌아보며
200820 NAVER TECH CONCERT 12_상반기 네이버 인턴을 돌아보며
NAVER Engineering
 
200820 NAVER TECH CONCERT 11_빠르게 성장하는 슈퍼루키로 거듭나기
200820 NAVER TECH CONCERT 11_빠르게 성장하는 슈퍼루키로 거듭나기200820 NAVER TECH CONCERT 11_빠르게 성장하는 슈퍼루키로 거듭나기
200820 NAVER TECH CONCERT 11_빠르게 성장하는 슈퍼루키로 거듭나기
NAVER Engineering
 
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
NAVER Engineering
 

More from NAVER Engineering (20)

React vac pattern
React vac patternReact vac pattern
React vac pattern
 
디자인 시스템에 직방 ZUIX
디자인 시스템에 직방 ZUIX디자인 시스템에 직방 ZUIX
디자인 시스템에 직방 ZUIX
 
진화하는 디자인 시스템(걸음마 편)
진화하는 디자인 시스템(걸음마 편)진화하는 디자인 시스템(걸음마 편)
진화하는 디자인 시스템(걸음마 편)
 
서비스 운영을 위한 디자인시스템 프로젝트
서비스 운영을 위한 디자인시스템 프로젝트서비스 운영을 위한 디자인시스템 프로젝트
서비스 운영을 위한 디자인시스템 프로젝트
 
BPL(Banksalad Product Language) 무야호
BPL(Banksalad Product Language) 무야호BPL(Banksalad Product Language) 무야호
BPL(Banksalad Product Language) 무야호
 
이번 생에 디자인 시스템은 처음이라
이번 생에 디자인 시스템은 처음이라이번 생에 디자인 시스템은 처음이라
이번 생에 디자인 시스템은 처음이라
 
날고 있는 여러 비행기 넘나 들며 정비하기
날고 있는 여러 비행기 넘나 들며 정비하기날고 있는 여러 비행기 넘나 들며 정비하기
날고 있는 여러 비행기 넘나 들며 정비하기
 
쏘카프레임 구축 배경과 과정
 쏘카프레임 구축 배경과 과정 쏘카프레임 구축 배경과 과정
쏘카프레임 구축 배경과 과정
 
플랫폼 디자이너 없이 디자인 시스템을 구축하는 프로덕트 디자이너의 우당탕탕 고통 연대기
플랫폼 디자이너 없이 디자인 시스템을 구축하는 프로덕트 디자이너의 우당탕탕 고통 연대기플랫폼 디자이너 없이 디자인 시스템을 구축하는 프로덕트 디자이너의 우당탕탕 고통 연대기
플랫폼 디자이너 없이 디자인 시스템을 구축하는 프로덕트 디자이너의 우당탕탕 고통 연대기
 
200820 NAVER TECH CONCERT 15_Code Review is Horse(코드리뷰는 말이야)(feat.Latte)
200820 NAVER TECH CONCERT 15_Code Review is Horse(코드리뷰는 말이야)(feat.Latte)200820 NAVER TECH CONCERT 15_Code Review is Horse(코드리뷰는 말이야)(feat.Latte)
200820 NAVER TECH CONCERT 15_Code Review is Horse(코드리뷰는 말이야)(feat.Latte)
 
200819 NAVER TECH CONCERT 03_화려한 코루틴이 내 앱을 감싸네! 코루틴으로 작성해보는 깔끔한 비동기 코드
200819 NAVER TECH CONCERT 03_화려한 코루틴이 내 앱을 감싸네! 코루틴으로 작성해보는 깔끔한 비동기 코드200819 NAVER TECH CONCERT 03_화려한 코루틴이 내 앱을 감싸네! 코루틴으로 작성해보는 깔끔한 비동기 코드
200819 NAVER TECH CONCERT 03_화려한 코루틴이 내 앱을 감싸네! 코루틴으로 작성해보는 깔끔한 비동기 코드
 
200819 NAVER TECH CONCERT 10_맥북에서도 아이맥프로에서 빌드하는 것처럼 빌드 속도 빠르게 하기
200819 NAVER TECH CONCERT 10_맥북에서도 아이맥프로에서 빌드하는 것처럼 빌드 속도 빠르게 하기200819 NAVER TECH CONCERT 10_맥북에서도 아이맥프로에서 빌드하는 것처럼 빌드 속도 빠르게 하기
200819 NAVER TECH CONCERT 10_맥북에서도 아이맥프로에서 빌드하는 것처럼 빌드 속도 빠르게 하기
 
200819 NAVER TECH CONCERT 08_성능을 고민하는 슬기로운 개발자 생활
200819 NAVER TECH CONCERT 08_성능을 고민하는 슬기로운 개발자 생활200819 NAVER TECH CONCERT 08_성능을 고민하는 슬기로운 개발자 생활
200819 NAVER TECH CONCERT 08_성능을 고민하는 슬기로운 개발자 생활
 
200819 NAVER TECH CONCERT 05_모르면 손해보는 Android 디버깅/분석 꿀팁 대방출
200819 NAVER TECH CONCERT 05_모르면 손해보는 Android 디버깅/분석 꿀팁 대방출200819 NAVER TECH CONCERT 05_모르면 손해보는 Android 디버깅/분석 꿀팁 대방출
200819 NAVER TECH CONCERT 05_모르면 손해보는 Android 디버깅/분석 꿀팁 대방출
 
200819 NAVER TECH CONCERT 09_Case.xcodeproj - 좋은 동료로 거듭나기 위한 노하우
200819 NAVER TECH CONCERT 09_Case.xcodeproj - 좋은 동료로 거듭나기 위한 노하우200819 NAVER TECH CONCERT 09_Case.xcodeproj - 좋은 동료로 거듭나기 위한 노하우
200819 NAVER TECH CONCERT 09_Case.xcodeproj - 좋은 동료로 거듭나기 위한 노하우
 
200820 NAVER TECH CONCERT 14_야 너두 할 수 있어. 비전공자, COBOL 개발자를 거쳐 네이버에서 FE 개발하게 된...
200820 NAVER TECH CONCERT 14_야 너두 할 수 있어. 비전공자, COBOL 개발자를 거쳐 네이버에서 FE 개발하게 된...200820 NAVER TECH CONCERT 14_야 너두 할 수 있어. 비전공자, COBOL 개발자를 거쳐 네이버에서 FE 개발하게 된...
200820 NAVER TECH CONCERT 14_야 너두 할 수 있어. 비전공자, COBOL 개발자를 거쳐 네이버에서 FE 개발하게 된...
 
200820 NAVER TECH CONCERT 13_네이버에서 오픈 소스 개발을 통해 성장하는 방법
200820 NAVER TECH CONCERT 13_네이버에서 오픈 소스 개발을 통해 성장하는 방법200820 NAVER TECH CONCERT 13_네이버에서 오픈 소스 개발을 통해 성장하는 방법
200820 NAVER TECH CONCERT 13_네이버에서 오픈 소스 개발을 통해 성장하는 방법
 
200820 NAVER TECH CONCERT 12_상반기 네이버 인턴을 돌아보며
200820 NAVER TECH CONCERT 12_상반기 네이버 인턴을 돌아보며200820 NAVER TECH CONCERT 12_상반기 네이버 인턴을 돌아보며
200820 NAVER TECH CONCERT 12_상반기 네이버 인턴을 돌아보며
 
200820 NAVER TECH CONCERT 11_빠르게 성장하는 슈퍼루키로 거듭나기
200820 NAVER TECH CONCERT 11_빠르게 성장하는 슈퍼루키로 거듭나기200820 NAVER TECH CONCERT 11_빠르게 성장하는 슈퍼루키로 거듭나기
200820 NAVER TECH CONCERT 11_빠르게 성장하는 슈퍼루키로 거듭나기
 
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
 

Recently uploaded

GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 

Recently uploaded (20)

GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 

Improving neural question generation using answer separation

  • 1. Improving Neural Question Generation Using Answer Separation Seoul National Univ. Machine Intelligence Lab. Yanghoon Kim 1
  • 2. Authors 2 Yanghoon Kim Seoul National Univ. Hwanhee Lee Seoul National Univ. Kyomin Jung Seoul National Univ. Joongbo Shin Seoul National Univ.
  • 3. Contents 3 Background – related work, task definition Problem – what to solve? Contribution Model Experiments – verifying the effectiveness of the model Conclusion Discussion
  • 4. Background • Neural question generation (NQG) • Generating a question from a given passage with deep neural networks • Importance of NQG • Generating questions for educational materials. • Generating questions for improving QA systems. 4
  • 5. Background 5 • Sequence-to-sequence (seq2seq) • Generate a sequence from another sequence • Encoder: input sequence reader • Decoder: new sequence generator • Structure • RNN / CNN / Attention • Pass the information from encoder to decoder • Initialize decoder state with last hidden state of the encoder
  • 6. Background 6 • Seq2seq with attention mechanism • Attention • Every decoding step: Attention to every encoder hidden state • Determine which part should be more attention
  • 7. Background • Task Definition • Given a passage 𝑋 𝑝 = 𝑥1 𝑝 , … , 𝑥 𝑛 𝑝 and a target answer 𝑋 𝑎 = 𝑥1 𝑎 , … , 𝑥 𝑚 𝑎 as input, the NQG model aims to generate a question 𝑌 = 𝑦1, … , 𝑦 𝑇 asking about the target answer in the passage. 7 ത𝑌 = 𝑎𝑟𝑔𝑚𝑎𝑥 𝑌 𝑃(𝑌|𝑋 𝑝 , 𝑋 𝑎 ) = 𝑎𝑟𝑔𝑚𝑎𝑥 𝑌 ෍ 𝑡=1 𝑇 𝑃(𝑦𝑡|𝑋 𝑝, 𝑋 𝑎, 𝑦<𝑡)
  • 8. Background • <Learning to Ask: Neural Question Generation for Reading Comprehension> (Du et al., ACL 2017) • The first NN-based question generation • Simple seq2seq with attention mechanism • Sentence-level model and Paragraph-level model • Difference in initialization of the decoder’s hidden states 8 Decoder Sentence-level Encoder Paragraph-level Encoder The last encoder state Decoder Sentence-level Encoder Concatenation of Last states Sentence-level NQG Paragraph-level NQG
  • 9. Background • <Neural question generation from text: A preliminary study> (Zhou et al., NLPCC 2017) • The first NQG with given target answer • Feature-rich encoder • Concatenation of word vector, answer position feature(BIO tagging) and lexical features(word case, POS, NER) • Copy Mechanism* • Pointing mechanism to copy words from encoder’s input sentence 9 * Gulcehre et al., Pointing the unknown words, ACL 2016
  • 10. Background • Others • Jointly learning of QA and QG • <Question Answering and Question Generation as Dual Tasks> (AAAI 2018) • <Learning to Collaborate for Question Answering and Asking> (NAACL 2018) • NQG without target answer • <Identifying Where to Focus in Reading Comprehension for Neural Question Generation) (EMNLP 2017) • <A Multi-Agent Communication Framework for Question-Worthy Phrase Extraction and Question Generation> (AAAI 2019) • Paragraph-level NQG • <Paragraph-level Neural Question Generation with Maxout Pointer and Gated Self-attention Networks> (EMNLP 2018) 10
  • 11. Problem • Previous NQG systems suffer from a critical problem • Some models don’t take the question target into account. • RNNs often follow a shallow generation process. 11 𝑃𝑎𝑠𝑠𝑎𝑔𝑒 𝑃𝑎𝑠𝑠𝑎𝑔𝑒 𝐴𝑛𝑠𝑤𝑒𝑟1 𝐴𝑛𝑠𝑤𝑒𝑟2 𝑄𝑢𝑒𝑠𝑡𝑖𝑜𝑛1 𝑄𝑢𝑒𝑠𝑡𝑖𝑜𝑛2 Model Ignored Ignored
  • 12. Problem • Previous NQG systems suffer from a critical problem • Some models can’t well grasp the target answer(question target) . • A sophisticated proportion of generated questions include word in the target answer. • Contribution of Copy mechanism 12
  • 13. Contribution • We propose answer-separated seq2seq • Treats the target answer(question target) and the passage separately. • Prevent the generated question to include words in the target answer. • Better capture the information from both the target answer and the passage • Keyword-net • Model is consistently aware of the target answer. • Extract the key information in the target answer. 13
  • 14. Model • Base model • Encoder-decoder with attention • Answer-separated seq2seq • Answer-separated passage encoder • Answer encoder • Answer-separated decoder • keyword-net • Word generator with semantic information 14
  • 15. Model • Answer-separated passage encoder • A simple preprocessing of the input passage • Original passage: John Francis O’Hara was elected president of Notre Dame in 1934 • Masked passage: <answer> was elected president of Notre Dame in 1934 • A one-layer bi-LSTM • Answer encoder • A one-layer bi-LSTM 15
  • 16. Model • Answer-separated decoder • A one-layer LSTM • Functionality: Combine features from encoders and generate sequence output • The model still can generate questions without target answer information • What if the target answer is long and complicated? 16 Passage: Steve Jobs is the founder of Apple Processed passage: <answer> is the founder of Apple Generated question: Who is the founder of Apple?
  • 17. Model • Answer-separated decoder • A one-layer LSTM • keyword-net • Consistently be aware of the target answer. • Extract key information. • Passage: Steve Jobs is the founder of Apple • Answer: founder of Apple 17
  • 18. Model • Answer-separated decoder • Capturing semantic information • retrieval style word generation layer proposed by (Ma et al. 2018)* • seq2seq has tendency to memorize the sequence pattern rather than reflecting word meanings 18* Ma et al., Query and Output: Generating Words by Querying Distributed Word Representations for Paraphrase Generation, NAACL 2018
  • 19. Model • Trick 1: Named entity replacement • Purpose: Improve model performance • Motivation: Most named entities do not appear frequently 19 Steve Paul Jobs was the chairman, chief executive officer (CEO), and co- founder of Apple; chairman and majority shareholder of Pixar. Original passage 𝑃𝑒𝑟𝑠𝑜𝑛1 was the chairman, chief executive officer (CEO), and co-founder of 𝑂𝑟𝑔𝑎𝑛𝑖𝑧𝑎𝑡𝑖𝑜𝑛1; chairman and majority shareholder of 𝑂𝑟𝑔𝑎𝑛𝑖𝑧𝑎𝑡𝑖𝑜𝑛2 Original word NER tag Steve Paul Jobs 𝑃𝑒𝑟𝑠𝑜𝑛1 Apple 𝑂𝑟𝑔𝑎𝑛𝑖𝑧𝑎𝑡𝑖𝑜𝑛1 Pixar 𝑂𝑟𝑔𝑎𝑛𝑖𝑧𝑎𝑡𝑖𝑜𝑛2 Processed passage Matching table
  • 20. Model • Trick 2: Removal of duplicates(post-processing) • Purpose: Improve model performance • Motivation: Recurrent model tends to repeat the same pattern if not trained well 20 Who is the the CEO of the CEO of Apple? Generated question Who is the CEO of the CEO of Apple? 1-gram removal Who is the CEO of Apple? 3-gram removal
  • 21. Experiment • Data • Processed version of SQuAD 1.1 • Data split 1: 70,484/10,570/11,877 (train/dev/test) • Data split 2: 86,635/8,965/8,964 • Evaluation 21 * Song et al., Leveraging Context Information for Natural Question Generation, NAACL 2018 *
  • 22. Experiment • Impact of answer separation • Capturing target answer • Check if the target answer is included in the generated question • AP : Answer position Feature (BIO scheme) • (Song et al. 2018) used the copy mechanism. 22
  • 23. Experiment • Impact of answer separation • Interrogative word prediction • “What” takes up more than half of the whole training set • “Which” : “Which year” can be represented as “When” • “why”, “yes/no” : only takes up 1.5% and 1.2% of the training set. 23
  • 24. Experiment • Impact of answer separation • Attention from <answer> • (a) is the attention matrix from our model • (b) is the attention matrix from seq2seq + AP • <answer> give the highest attention weights to the interrogative word “who” in (a) 24
  • 25. Experiment • Question generation for machine comprehension • Use named entities as target answers, generate synthetic data for machine comprehension system(QA net by Google). • ALL : Evaluation result of SQuAD dev set(10k) • NER : Evaluation result of partial SQuAD dev set(4k) • answers of single named entity 25
  • 26. Conclusion • We proposed ASs2s which treats the passage and the target answer separately to better utilize the information from the both sides • The Keyword-net supplements the lack of information caused by <answer> token. • We achieved state-of-the-art performances in processed SQuAD 1.1. We also verified that our answer separation technique has actual help in preventing answer copying 26
  • 27. Discussion • Qualitative analysis on Keyword-net • Currently we have only checked the performance gain from the Keyword-net • Data Augmentation for Machine Reading task • How to select new answers that is not in the original dataset 27