modulabs / beyondBERT

11.5기의 beyondBERT의 토론 내용을 정리하는 repository입니다.
MIT License
60 stars 6 forks source link

ToD-BERT: Pre-trained Natural Language Understanding for Task-Oriented Dialogues #17

Closed seopbo closed 4 years ago

seopbo commented 4 years ago

어떤 내용의 논문인가요? 👋

ToD 사전 지식

Task Oriented Dialogue Task는 시스템(서비스)이 서비스에 목적을 가진 사용자로부터 대화를 통해 서비스에 필요한 정보를 수집하는 Task 입니다(예: 레스토랑 예약, 항공 예약, 설문조사 등). ToD는 시스템 관점에서 사용자의 의도와 슬롯(개체명)등을 통해 대화의 상태(State)를 파악하고 응답(Action)을 하는 방식으로 동작합니다. 이 Task의 궁극적인 Goal은 대화가 끝난 시점에 시스템이 필요한 슬롯들을 모두 확보하였는지를 보는 것입니다. 그러기 위해서 각 턴 별로 사용자의 의도가 무엇인지, 슬롯을 얼마나 잘 파악하는지, 대화 상태를 추적을 잘하는지, 응답을 얼마나 잘 하는지 등에 대해 평가를 합니다.

논문 내용

Abstract (요약) 🕵🏻‍♂️

The use of pre-trained language models has emerged as a promising direction for improving dialogue systems. However, the underlying difference of linguistic patterns between conversational data and general text makes the existing pre-trained language models not as effective as they have been shown to be. Recently, there are some pre-training approaches based on open-domain dialogues, leveraging large-scale social media data such as Twitter or Reddit. Pre-training for task-oriented dialogues, on the other hand, is rarely discussed because of the long-standing and crucial data scarcity problem. In this work, we combine nine English-based, human-human, multi-turn and publicly available task-oriented dialogue datasets to conduct language model and response selection pre-training. The experimental results show that our pre-trained taskoriented dialogue BERT (ToD-BERT) surpasses BERT (Devlin et al., 2018) and other strong baselines in four downstream taskoriented dialogue applications, including intention detection, dialogue state tracking, dialogue act prediction, and response selection. Moreover, in the simulated limited data experiments, we show that ToD-BERT has stronger few-shot capacity that can mitigate the data scarcity problem in task-oriented dialogues.

이 논문을 읽어서 무엇을 배울 수 있는지 알려주세요! 🤔

Prerequisite Study: Task Oriented Dialogue System

시스템 진행 순서

  1. 유저의 의도와 슬롯(엔티티)를 파악 (NLU)
  2. 이전 대화 히스토리를 토대로 대화의 상태를 정의 (DST)
  3. 대화 상태를 토대로 액션을 결정 (DP)
  4. 액션 정보와 시스템이 제공할 지식을 가지고 응답 결정 또는 생성 (NLG)

pipeline

Introduction

Dialogue Pre-trained Language Modles

모델 사례

Method

데이터

ToD-BERT 모델

Screen Shot 2020-08-01 at 12 06 27 AM

Downstream Tasks

Downstream Task를 학습하는 것은 우선 Multi-task Learning으로 진행하지 않아서 각 Task별로 따로 모델 학습과 테스트를 진행함. 실험 코드를 확인하면 테스크에 대한 입력 토큰은 utterance 정보와 usr, sys, cls, sep 토큰 등으로 구성되어 있음. 별 다른 입력값에 대한 기교를 주지 않았음.

Results

이하 생략.

Visualization

Screen Shot 2020-08-01 at 1 00 04 AM

My thoughts

Summerize: "Don't Stop Pretraining"논문과 비슷한 맥락으로 Task Oriented Pretrained Model => Downstream task 방향으로 접근해서 모델링을 하는 것이 task 성능에 전반적으로 긍정적인 영향을 주는 또 하나의 사례로 생각

같이 읽어보면 좋을 만한 글이나 이슈가 있을까요?

레퍼런스의 URL을 알려주세요! 🔗

더운 여름 휴가 기간에 나와 스터디 하시느라 고생하셨습니다^^