Notice
Recent Posts
Recent Comments
Link
관리 메뉴

one by one ◼◻◼◻

[NLP] Multi-Task Pre-Training for Plug-and-Play Task-Oriented Dialogue System, PPTOD 리뷰 본문

논문리뷰

[NLP] Multi-Task Pre-Training for Plug-and-Play Task-Oriented Dialogue System, PPTOD 리뷰

JihyunLee 2021. 12. 8. 00:42

제목 : Multi-Task Pre-Training for Plug-and-Play Task-Oriented Dialogue System

저자 : Yixuan Su, Lei Shu, Elman Mansimov, Arshit Gupta, Deng Cai, Yi-An Lai, Yi Zhang

링크 : https://arxiv.org/abs/2109.14739

 

Multi-Task Pre-Training for Plug-and-Play Task-Oriented Dialogue System

Pre-trained language models have been recently shown to benefit task-oriented dialogue (TOD) systems. Despite their success, existing methods often formulate this task as a cascaded generation problem which can lead to error accumulation across different s

arxiv.org

 

이번에 읽은 논문은 Task-oriented dialogue system 분야(목적이 있는 대화, chit chat 과 반대의 개념) 의 논문인 Multi-Task Pre-Training for Plug-and-Play Task-Oriented Dialogue System 입니다.

 

논문 출판 당시, Task Oriented Dialogue 를 평가하는 세가지 지표에서 모두 SOTA를 달성하고, 그러면서도 가볍고, 또한 모델에 대한 analytics도 자세하게 제시한 좋은 논문이었습니다.

 

그럼 후기 시작해 보겠습니다😉

 

1. Introduction

일반적으로 Task Oriented Dialogue(앞으로 줄여서 TOD)는 (1) 대화를 tracking하는 Dialogue State Tracking, (2) 대화 방향을 결정하는(DB 검색이나, 예, 아니오 응답) Policy 모델, (3) 이것을 통합해서 대화를 생성하는 Natural Language Geration 파트로 구분이 되어, 1->2->3 의 순서로 진행이 되었습니다.

그러나 이런 단계적인 방식은 1. 단계를 거듭할수록 error가 누적되며 2. 단계에 대한 tagging이 모두 되어있는 dataset이 있어야 해서 비효율적이며 3. 추론에 걸리는 시간이 오래 걸린다는 단점을 가지고 있습니다. 

이러한 문제점 때문에, 논문에서는 T5 기반의 parallel 한 학습과 추론이 가능한, 즉 단계별 순서를 거치지 않아도 대화를 생성해 내는 모델을 만들었습니다.

PPTOD의 전체적인 구조, 병렬적인 학습과 추론이 가능하다.

PPTOD를 통한 contribution은

- pre-trained model을 사용하는 새로운 model PPTOD의 생성

- 서로 다른 도메인과 형태를 가지는 대화 corpus를 학습할 수 있는 구조 생성

- full data와 low resource setting모두에서 SOTA달성

- 모델에 대한 자세한 analysis

입니다.

 

2. Related Work

이 부분은 pass하도록 하겠습니다.🙄

 

3. Methodology

3.1 dataset

PPTOD는 multi-woz data로 실험을 하고 성능을 평가하기 전, 다양한 dialogue data로 pretraining을 거쳤습니다.

pre-training에 사용한 다양한 데이터들

사용한 데이터에 NLU DST POL(policy), NLG(Natural Language Generation)부분에 대해 모두 annotation이 있는 것은 아니었지만, PPTOD는 paralle하게 학습하기 때문에 이 모든 데이터를 사용 가능했습니다.

 

3.2 Dialogue Multi-task Pre-training

3.1 에서 설명한 데이터는 d = (z, x, y) 의 형태로 구성하여 T5 model의 data로 사용하였습니다. 여기서 z는 prompt로 "translate dialogue to belief state" 와 같은 문장이, x는 input값, y는output값입니다.

 

3.3 Fine-Tunning to a New Task

3.2 에서 pre training이 끝났다면, 동일한 방식으로 데이터를 구성하여 학습을 진행했습니다.

 

3.4 Implementation Details

논문에서는 T5 model의 base, small, large를 모두 이용하여 총 세가지 버젼의 PPTOD를 학습시켰고, 이를 Multiwoz Data에 실험하여 성능을 구했습니다.

 

 

4. Experiments

3의 과정을 거쳐 학습이 끝난 PPTOD를 (1) end to end dialogue modeling, (2) dialogue state tracking, (3) user intent classification 세가지 부분에 대해 test를 진행했습니다.

 

4.1 End to end dialogue modeling

End to end dialogue modelling은 전체적인 대화가 자연스러운지, 대화 정보를 제대로 전달했는지를 평가하게 됩니다.

- full data

full data를 사용했을 때 대부분의 지표에서 SOTA를 달성했음을 알 수 있습니다.

 

- Few shot 

Few shot의 경우입니다. 1% ~ 20% 로 다양하게 실험을 진행하였고, 좋은 성능을 나타냈습니다.

 

4.2 Dialogue State Tracking

다음으로는 Dialouge State Tracking의 성능 점수입니다.  동일하게 Multiwoz data를 사용해서 성능을 평가했습니다.

- full data

full data를 사용한 경우, classification based 인 FPDSC보다는 좋지 않은 성능을 보였지만, classification based는 fixed된 ontology 가 필요하다는 점에서, PPTOD의 결과가 더 확장성이 있습니다.

- few shot

few shot 에서도 역시나 가장 좋은 성능을 보이고 있습니다.

 

4.3 Intent Classification

Intent classification은 유저의 의도를 classification 하는 task입니다. 이 task는 multiwoz가 아닌 Banking 77 dataset을 사용하였습니다. 이 데이터셋은 77개의 유저 intent를 포함하고 있습니다.

 

실험 결과 , few shot 과 full data에서 SOTA와 근접하거나, 더 좋은 성능을 냄을 확인할 수 있습니다.

 

5 Further Analysis

5. 에서는 추가적인 분석을 진행하였습니다.

 

5.1 Plug-and-Play vs Cascaded Generation

PPTOD와 같은 병렬 방식과, 일반적인 순서를 가진 방식의 비교입니다.

에러가 전파되지 않기 때문에, Plug and Play 방식이 속도도 빠르고 더 좋은 성능을 보임을 알 수  있습니다.

 

5.2 Multi-Task Pre-Training Investigation

5.2 는 다양한 대화 데이터로 pre training한 것이 얼마나 효과가 있었는지 확인 해 보는 부분입니다.

Pre training을 했을 때가 그렇지 않을 때 보다 좋은 결과가 나오는 것을 확인할 수 있습니다.

 

 

 

후기

모델의 구조가 간단하면서도, 좋은 성능을 내고, 또 이에 대한 실험도 자세하게 진행한 아주 좋은 논문이었습니다.!

Comments