Notice
Recent Posts
Recent Comments
Link
관리 메뉴

one by one ◼◻◼◻

[NLP 논문리뷰]Shades of BLEU, Flavours of Success: The Case of MultiWOZ 본문

논문리뷰

[NLP 논문리뷰]Shades of BLEU, Flavours of Success: The Case of MultiWOZ

JihyunLee 2021. 12. 9. 19:38

저자: Colin RaffelNoam ShazeerAdam RobertsKatherine LeeSharan NarangMichael MatenaYanqi ZhouWei LiPeter J. Liu

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

 

Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer

Transfer learning, where a model is first pre-trained on a data-rich task before being fine-tuned on a downstream task, has emerged as a powerful technique in natural language processing (NLP). The effectiveness of transfer learning has given rise to a div

arxiv.org

 

 

이 논문은 제가 연구하는 분야인 TOD(Taks Oriented Dialog)에서 시스템이 대화의 답변을 얼마나 잘 생성하는지 평가하는 지표를 정리한 논문입니다. 기존에 TOD분야의 논문들은 각각 개별적으로 평가지표를 만들어서 사용했고, 그렇기 때문에 평가를 하는 코드도, 평가 지표도 다 제각각 이었습니다. 이 논문은 그동안 제각각이던 평가지표들을 통합하고, 평가 스크립트를 만들어 github에 배포해 준 아주 고마운 논문입니다.

 

그렇지만 제각각이던 평가지표를 통합해야 했던 만큼, 전처리 과정이나 지표를 만드는 방법이 깔끔하지 못하다는 생각도 들었습니다.

 

그럼 리뷰를 시작해 보도록 하겠습니다!

 

평가에 대한 repository는 https://github.com/Tomiinek/MultiWOZ_Evaluatio

 

GitHub - Tomiinek/MultiWOZ_Evaluation: Unified MultiWOZ evaluation scripts for the context-to-response task.

Unified MultiWOZ evaluation scripts for the context-to-response task. - GitHub - Tomiinek/MultiWOZ_Evaluation: Unified MultiWOZ evaluation scripts for the context-to-response task.

github.com

여기 이고, 간단하게 설치 후 대화 시스템을 테스트 해 볼 수 있습니다.

1. Introduction

대화 시스템을 평가하는데 있어서 사람이 내리는 평가가 좋기는 하지만, 사람이 내리는 평가는 균일하지 못하다는 단점이 있기 때문에, corpus-based의 BLEU, exact matching, success rate와 같은 지표들이 생겼습니다. MultiWoz dataset은 가장 많이 쓰이는 대화 시스템 benchmark중 하나이지만, 엄밀한 평가지표가 존재하지 않아 다양한 논문들을 비교하기 어려웠습니다. 그래서 이 논문에서는 (1)표준화된 평가지표를 만들고, (2)기존의 모델들을 평가하고, (3) 평가 스크립트를 배포하고, (4) 기존 모델들의 output또한 배포하였습니다. 

논문이 기여한 점은

- MultiWoz benchmark가 가지고있는 문제점을 명확히 하고

- 기존의 13개의 end-to-end모델과 policy model을 새로 만든 evaluate code에 적용시켜 새롭게 점수를 냈고

- 각 모델의 결과물을 배포하였고, 또한 evaluate script를 배포하였고,

- 기존에 있던 MultiWoz의 metric에 추가하여, response의 diversity도 평가 한 것

입니다.

 

2. Related Work

metric에 관한 work들이 소개되어 있습니다.

 

3. Benchmark and Systems

3.1 The MultiWOZ dataset

데이터 셋 자체에 대한 소개를 해 주고 있습니다.

3.2 Corpus-based Metrics on MultiWOZ

Multi WOZ의 metrics에 대해 소개하고 있습니다. MultiWOZ는 BLEU와 Inform & Success rate를 metric으로 가지고 있으며, 모두 delexicalized된 text에 적용하는 지표입니다. 여기서 delexicalized text는 "김가네 김밥집으로 가는 길을 알려주세요" 를 "[restaurant-name]으로 가는 길을 알려주세요" 와 같이 특정 정보를 나타내는 것을 일반화하여 나타낸 text를 의미합니다.

BLEU

bleu는 원래 Machine Translation에서 사용하였던 모델로 n-gram을 베이스로 정답 문장과 생성 문장이 얼마나 겹치는지를 평가합니다.

Inform & Success rate

(이 부분은 개인적으로는 논문만 읽어서는 정확히 이해가 어려운 부분이었습니다. )

 MultiWOZ에 Inform rate는 적절한 정보를 제공했는지에 대한 여부이고, Success rate는 유저의 request에 전부 대답을 했는지에 대한 지표입니다. 좀더 정확히 말하자면, Inform rate는 정답 문장에서 제공한 마지막 entitiy가 예측 문장에서 제공한 마지막 entity와 일치하는 비율을 말하고, success rate는 유저로 부터 request된 항목에 대해 전부 대답을 했을 때 성공으로 간주합니다. 

 

3.3 Systems Evaluating On MultiWOZ

그래서 위 평가지표를 코드화 하였고 다양한 모델들(13개의 모델)들을 실험해서 적용해 보았습니다. 실험결과는 뒤에 좀더 자세히 설명됩니다.

 

4. Benchmark Caveats(경고)

MultiWOZ dataset이 많이 쓰이는 benchmark이지만, 데이터가 자체적으로 가진 문제가 있습니다. 4. Benchmark Cabeats에서는 benchmark가 자체적으로 가지고 있는 문제점에 대해서 소개하고 있습니다.

 

4.1 Preprocessing

MultiWoz는 delexicalize된 text를 평가합니다. 그러나 MultiWoz가 제공하는 delexicalize 스크립트는 정확하지 않아서, 대부분의 연구자들이 임의로 delexicalsize를 하는 스크립트를 만들어 사용합니다. 이는 성능의 비교가 어려워지는 문제점이 생깁니다.

 

4.2 post Processing

MultiWoz는 delexicalize를 다시 backward 하는 방법을 제공하고 있지 않고, 어떤 단어들이 delexicalize되었는지 나타내는 source를 가지고 있지 않습니다.

 

4.3 Database : Surface Forms and Booking

MultiWoz에서는 유저가 가게에 대해 물어보고 예약을 하기도 합니다. 그러나 어떤 가게는 예약이 불가능한데, 이 데이터셋을 만들때 일부는 예약이 불가능한 가게라면, 다른곳을 예약하는것을 추천해 주었고, 일부는 그럼에도 그냥 예약이 가능한 것 처럼 대화를 이어나갔습니다. 그렇기 때문에 데이터에 노이즈가 생겨, 모델의 학습에 좋지않은 영향을 끼칩니다.

 

4.4 Evaluation

BLEU

원래 MultiWoz에서 사용한 BLEU지표는 white space를 이용해서 단순히 나눴지만, 이는 요즘은 단어를 좀더 복잡하게 나눌 수 있는 subword tokeinization을 사용합니다.

 

Inform & Success rate

유저가 원하는 가게, 또는 정보가 database상에서 여럿 존재할때, 이 정보 중 어떤 것을 사용하는지에 따라 대화의 흐름은 달라지게 됩니다. 이는 평가에 영향을 끼칠 수 있습니다.

 

4.5 Output Diversity Metrics

모델이 구사하는 언어의 다양성을 평가하는 지표가 없습니다.

 

4.6 Dataset folds

train set과 test set의 데이터가 크게 다르지 않습니다. 그래서 test set으로 낸 성능이 일반적인 모델의 성능이라 말하기 어렵습니다.

 

 

5. Experiments

다양한 TOD 모델을 실험 후 성능을 냈습니다. 다양한 delexicalize 방식을 모두 수용할 수 있는 평가 방법을 만들어서 수행하였습니다. 

 

6. Conclusion

현재까지 나온 모델들의 output의 다양한 delexicalize방식과, output형태를 모두 수용할 수 있는 scipt를 만들었고, 잘 되는것을 확인했습니다.

 

 

뒷 부분은 평가 지표에 대해 크게 중요하지 않은 부분인 것 같아 더 정리를 하지 않았는데, 혹시 필요해지면 다시 더 정리해보도록 하겠습니다.

 

 

 

 

Comments