NL-065, A Deep Ensemble Model with Slot Alignment for Sequence-to-Sequence Natural Language Generation (2018-NAACL)

■ Comment

  • 대체적으로 E2E 챌린지에 대해 설명, 분석을 잘한 논문 같다.
  • 모델은 encoder-decoder with attention 기법을 사용하고 이러한 모델 3개를 학습시켜 앙상블 했다.
    • 2모델은 encoder가 LSTM(학습 epoch가 다르다고 함), 1모델은 CNN으로 약간의 차이만 있을 뿐이다.
  • 이렇게 학습시킨 3모델로 각 10개의 beam-search로 여러 문장을 생성하고 reranker로 순서를 매겨 최종 출력을 정한다.
    • 이때 확률 단에서 앙상블 해버리면 성능이 안좋고 생성 문장 단에서 하나를 픽하는 느낌인데, 픽하는 방법이 MR에 있는 value을 얼마나 잘 포함하고 있는지이다.
  • 또한 delexicalization으로 slot value을 placeholder로 치환할 때, 다 치환해버리면 생성 문장의 다양성이 적기 때문에 일부분만 치환하는 방식을 사용한 것 같다.
  • 또한 학습 데이터를 보면, MRs에 주어진 value가 생성 문장에 없는 경우가 많은데, 이것을 휴리스틱한 룰베이스 방법?으로 데이터를 프리프로세싱하여 생성 문장이 value들을 포함하게 한다.
  • 그 외 사용한 프리프로세싱으로는 문장을 split하는 것으로 Utterance/MR Splitting 부분이 있다.
    • 실패한 방법으로는 permutation으로 slot 순서를 바꾸는 것이 있는데, 테스트 샘플들이 어차피 순서가 고정되어 있기 때문에 이것은 오히려 성능을 떨어뜨린다고 한다.

0. Abstract

  • NLG는 generative dialogue systems과 conversational agents의 핵심에 있다.
  • 우리는 앙상블 뉴럴 language generator을 설명하고 data representation와 agumentation을 위한 여러 개의 참신한 방법으로 모델의 성능을 향상시킨다.
  • 우리는 3가지 데이터세트, restaurant, TV and laptop domains에서 모델을 테스트하고 best 모델에대한 객관적이고 주관적인 evaluation을 리포트한다.
  • 사람의 평가뿐만 아니라 다양한 automatic metrics을 사용하여 같은 데이터세트에서 SoTA을 달성한다.

1 Introduction

  • 최근 Cortana 혹은 Alexa와 같은 personal assistants NLP의 연구가 상당히 발전했다.
  • 이러한 대화형 에이전트의 능력은 아직 한계가 있고 다양한 관점에서 부족하다.
    • 챌린지중 하나는 많은 종류의 content에서 사람과 같은 coherence(일관성)와 naturalness 담화를 생성하는 능력이다.
  • 이것은 NLG의 한 요소이다.
  • 이 논문은 언어 생성자의 입력이 structure MRs인 것에 대해 중점을 한다.
  • MR은 대화중에 사람유저에게 전달해줘야할 key 컨셉 리스트를 가지고 있는 하나의 dialogue act을 설명한다.
  • 각 정보의 조각은 slot-value 쌍으로 표현이되고 slot은 정보의 type을 말하고 value는 content에 대응이 된다. 
  • Dialogue act (DA) 타입은 dialogue manager에 의존한다.
    • slot이 없는 goodbye DA와 같은 간단한 것부터 다양한 value 타입을 포함하는 여러 개의 slots을 가지고 있는 DA까지 
  • natural language generator은 주어진 MR에서 syntactically와 semantically가 맞는 담화를 생성해야한다.
  • 담화는 MR에 포함되어 있는 모든 정보를 표현해야하고 자연스럽고 대화가능한 방법이어야 한다.
  • 전통적인 language generator 구조에서 MR에서 발화의 assembling(조립)은 두 가지 단계로 수행된다.
    • sentence planning, which enforces semantic correctness and determines the structure of the utterance
    • surface realization, which enforces syntactic correctness and produces the final utterance form.
  • statistical NLG 사전 연구는 전통적으로 handcrafted 요소와 statistical 학습 방법의 하이브리드이다.
  • handcrafted 관점은 그러나 portability(휴대성)을 줄이고 잠재적으로 출력의 다양성을 제한한다.
  • 코퍼스 기반의 새로운 방법은 semantically 데이터에 align하여 LM을 학습하여 담화가 MRs으로부터 바로 출력하게 한다.(Mairesse et al., 2010; Mairesse and Young, 2014).
  • alignment은 학습하는 동안 가치있는 정보를 제공하나 semantic annotation이 비싸다.
  • 최근 방법들은 aligned data을 요구하지 않고 end-to-end 방법으로 학습을 하여 sentence planning과 surface realization을 동시에 한다. (Konstas and Lapata, 2013)
  • 가장 성공적인 시스템은 unaligned data을 RNNs으로 encoder-decoder 시스템 방식  (Mei et al., 2016; Dusek and Jur ˇ cˇ´ıcek ˇ , 2016)으로 학습될 뿐만 아니라 다른 컨셉들, imitation learning (Lampouras and Vlachos, 2016)과 같은 것도 있다.
  • 이러한 NLG 모델들은 그러나 전형적으로 semantic alignment 부족하기 때문에 학습에 많은 데이터가 필요하다.
  • 그리고 그들은 여전히 syntactically and semantically가 정확한 출력을 생성하는데 문제점이 있고 자연스러움에 대한 한계가 있다 (Nayak et al., 2017).
  • 여기서 우리는 뉴럴 앙상블 natural language generator을 소개하고 우리는 restaurant, television, and laptop 3개의 unaligned dataset에서 학습하고 테스트한다.
  • 우리는 MR 입력을 표현하는 새로운 방법을 탐구한다.
    • 이것은 slots과 그들의 values을 delexicalizing 하는 새로운 방법일 뿐 아니라 semantic reranker을 사용한다.
  • 우리는 automatic evaluation 메트릭을 사용하여 이러한 방법들이 우리의 모델의 성능을 향상시켜주는 것을 보여준다.
  • 가장 큰 데이터세트, 50K 샘플들에 가까운 E2E 데이터세트에서 우리는 우리의 모델이 사람의 평가에서 E2E NLG 챌린지의 베이스라인시스템보다 더 좋은 성능을 보여준 것을 입증한다.
  • 최종적으로 stylistic data selection으로 우리의 모델을 augmenting한 후, 주관적인 평가를 통해 학습 데이터를 크게 줄였음에도 불구하고 전반적으로 더 나은 결과를 얻을 수 있음이 밝혀졌습니다.
    • 내 실험에서도 이것을 고려하면 괜찮을 듯

2 Related Work

  • 지금은 생략이지만 이 논문은 정리를 잘해둔 편이니 읽어보아야 할듯

3. Dataset

  • 우리는 모델을 3가지 다른 도메인에서 평가를 한다.
  • 가장 첫 번째는 최근 릴리즈된 E2E 레스토랑 데이터세트로 48K 샘플들이 있다.
  • 벤치마킹에서는 TV와 랩탑 데이터세트가 각각 7K, 13K 샘플들이 각각 있다.
  • We evaluated the models on three datasets from different domains. 
  • Table 2 summarizes the proportions of the training, validation, and test sets for each dataset.

3.1 E2E Dataset

  • E2E 데이터세트는 꽤 큰 task-oriented 언어 생성에 사용가능한 레스토랑 데이터세트이다.
  • human references는 source 정보의 그림에서부터 수집되었고 이것은 informative하고 자연스러운 담화를 일으킨다고 한다.
  • 샌프란시스코 레스토랑 데이터세트보다 10배 정도 더 많은 50K 가까운 샘플들이 있다.
  • E2E 데이터세트에 있는 reference 담화는 좀 더 복잡한 대화 현상을 포함하여 탁월한 어휘의 풍부함과 syntactic(구문) 변화를 나타낸다.
  • 이것은 end-to-end NLG 시스템에 높은 품질의 학습 데이터를 제공하고 좀 더 자연스러운 담화를 학습하게 한다.
  • 이 데이터세트는 E2E NLG 챌린지의 일부분으로 릴리즈 되었다.
  • E2E 데이터세트가 많은 수의 샘플을 포함할지라도 각 MR은 평균적으로 8.65개의 다른 reference 담화를 가지고있고 unique MRs가 5K보다 적에 효과적으로 제공하고 있다. (그림 1)
  • 구체적으로 모델에게 여러 개의 ground truths을 제공함으로써, 여러 개의 대안 가능한 담화 구조를 제공하고 모델이 배워서 같은 타입의 MR에 대해 적용하게 하여 모델이 적용을 배울 수 있다.
  • 섹션 5.1에서 말할 delexicalization은 다른 MRs의 컨셉을 공유하도록 모델의 능력을 향상시킨다.
  • 데이터세트는 오직 8개의 slot 타입을 가지고 있고 이것은 거의 균등하게 분배되어 있다.
  • MR에 주어진 slots의 수는 3개에서 8개 사이다.
    • 그러나 MRs의 대부분은 5 혹은 6개의 slots이다.
  • 대부분의 MRs은 많은 slots을 가지고 있으나 human 담화에 대응하는 대부분은 1개 혹은 2개의 문장들로 구성되어 있고 references에서 문장 복잡성은 높은 레벨을 보여주고 있다.

3.2 TV and Laptop Datasets

  • 생략

4 Ensemble Neural Language Generator

4.1 Encoder-Decoder with Attention

  • 우리의 모델은 기본적인 encoder-decoder with attention 구조를 사용한다. (Bahadanau)
  • 입력을 single vector 대신 context vectors의 sequence으로 인코딩하는 것은 디코더가 입력 시퀀스의 특정 부분을 학습하여 (지금까지 생성된 출력이을 고려하여) 집중할 수 있게 한다.
  • 이러한 attentional encoder-decdoer 구조에서, 각 step의 출력 확률은 별개의 context vector qt에 다음과 같이 의존하게 된다.
  • 이 뒤의 자세한 설명은 사실상 attention encoder-decoder와 비슷한 부분이니 생략을..

4.2 Ensembling

  • 예측하는 담화의 질을 강화하기 위해, 여기서 다른 인코더를 사용하는 3가지 뉴럴 모델을 만들었다.
  • 모델들 중 2가지는 bidirectional LSTM encoder을 사용하고 3번째 모델은 CNN 인코더를 사용한다.
  • 우리는 이러한 모델들을 다른 수의 epochs을 가지고 각각 학습하고 예측할 때 합친다.
  • 처음에, 우리는 각 step에서 log-probability을 평균내서모델의 예측을 합치려고 했고 그 다음 가장 큰 log-probability을 가지는 word을 선택하였다.
  • 우리방법이 담화의 BLEU score뿐만 아니라 퀄리티가 현저히 줄었다는 것을 알았다.
  • 우리는 이것은 다른 모델들이 다른 문장 구조를 학습했기 때문에 확률 레벨의 예측에서 합치는 것은 일관성 없는 담화들을 만들어낸다고 믿는다.
  • 그래서 모델의 log-probability 레벨에서 합치는 것 대신에, 우리는 각 모델 타입에서 beam-search을 사용하여 top 10 예측 담화를 accumulate 하였고 reranker을 사용하여 모든 담화 후보들을 성공적으로 실현한 slots의 비율을 고려하여 랭킹매겼다.
  • 마침내 우리의 시스템은 예측한 담화들에 대해 가장 높은 점수를 얻었다.

4.3 Slot Alignment

  • 우리의 학습 데이터는 본질적으로 unaligned 되어있기 때문에 여러 개의 문장에서 어떤 문장이 주어진 slot을 포함하고 있는지 명확하지 않고 이것은 모델의 robustness을 제한한다.
    • 다음의 예시인 실제 학습 데이터를 보자
    • 그러면 Crowne Plaza Hotel이 생성 문장에 없다.
  • 이것을 수용하기 위해, 우리는 휴리스틱한 방법으로 slot aligner을 만들고 이것으로 자동적으로 데이터를 프리프로세싱한다.
  • 가장 우선시 되는 목표는 text의 chunks(덩어리)를 reference 담화에 MR에 있는 예측되는 value에 align하는 것이다. 
  • 우리의 slot aligner의 어플리케이션은 Table 4와 부분 섹션에 설명되어 있다.
  • 우리의 태스크에서는, 우리는 언급된 유한한 slot set을 가지고 있고 이것은 대응되는 담화에서 검출이 되어야 한다.
  • 게다가, 학습 데이터로부터 우리는 대부분 slots들은 담화 안에 구의 특정 set을 삽입함으로써 실현되고 있음을 알 수 있다.
  • 여기서부터 인사이트를 사용하여, 우리는 gazetter을 구축하여 우선적으로 MR과 담화의 각 문장 사이가 겹치는 content 부분을 찾는다.
    • by 가능한 모든 slot realizations을 적절한 슬롯 유형과 연결하여서 gazetter을 구축한다.
  • 우리는 추가적으로 작은 handcrafted 룰을 사용하여서 gazetteer을 증강시킨다.
    • handcrafted rules which capture cases not easily encapsulated by the above process
    • for example, associating the price Range slot with a chunk of text using currency symbols or relevant lexemes, such as “cheap” or “highend”.
  • 이 규칙은 수작업으로 만들어졌지만 도메인이 아닌 슬롯을 대상으로하므로 도메인 전체에서 전송할 수 있으며 대부분 E2E 데이터 세트의 노이즈에 대응합니다.
  • 최종적으로 우리는 WordNet을 사용하여 더욱 gazetteer의 사이즈를 늘리고 동의어와 그들의 의미론적인 관계를 설명한다.
    • associating “pasta” with the food[Italian] slot와 같은

4.4 Reranker

  • As discussed in Section 4.2, our model uses beam search to produce a pool of the most likely utterances for a given MR.
  • 이러한 결과에는 모델이 제공한 확률 점수가 있지만, 이 점수에 전적으로 의존하면 시스템에서 낮은 점수 발화보다 객관적으로 더 나쁜 후보를 선택하는 경우가 종종 있습니다 (예 : 더 많은 슬롯이 누락되거나 슬롯이 잘못 구현 됨) .
  • We therefore augment that score by multiplying it by the following score which takes the slot alignment into consideration: 
    • where N is the number of all slots in the given MR, and Nu and No represent the number of unaligned slots (those not observed by our slot aligner) and over-generated slots (those which have been realized but were not present in the original MR), respectively.
  • 위에서 말한 3개의 다른 모델을 빔서치로 여러 개의 문장들을 생성해서 얼만큼 MR의 slot이 반영되었는지를 판단해서 선택한다는 의미이다.

5 Data Preprocessing 

5.1 Delexicalization

  • 학습 데이터를 delexicalizing을 함으로써 우리의 모델이 학습된 개념을 일반화하여 unseen MRs에 대한 능력을 강화한다.
  • 게다가 이것은 모델이 학습에 필요한 데이터의 양을 줄여준다.
  • 우리는 카테고리컬 slots의 values가 항상 담화에 축어로 전해지는 것을 식별하고 담화에 대응되는 values을 placeholder tokens으로 대체한다.
  • The placeholders are eventually replaced in the output utterance in post-processing by copying the values from the input MR.
  • 예시로, E2E 데이터에서는 near 혹은 name과 같은 slot들이 있고 TV와 Laptop 데이터세트에서는 screensize 혹은 processor 등이 있다.
  • 그렇다고 다음과 같이 모든 것을 placeholder로 대체하는 것은 아닌 듯하다.
    • However, we chose not to delexicalize those categorical slots whose values can be expressed in alternative ways, such as “less than $20” and “cheap”, or “on the riverside” and “by the river”.  
  • 더욱 자세한 내용은 생략..

5.2 Data Expansion (feat. 번역기)

  • Slot Permutation 
    • 초기 실험에서 우리는 Nayak et al.에서 제안한 것처럼 MR에서 슬롯 순서를 바꾸어 훈련 세트를 확장하려고 시도했습니다. (2017).
    • 모든 MR의 서로 다른 슬롯 순서에서 (원래 MR 외에) 5 개의 임의 순열을 샘플링하고 동일한 참조 발언으로 새로운 의사 샘플을 만들었습니다.
    • 훈련 세트의 크기는 6 배 증가했습니다.
    • 이러한 강화 된 교육 세트를 사용하면 모델의 견고성이 향상 될 수 있지만 E2E 데이터 세트에는 도움이되지 않습니다. 이 데이터 세트에서 훈련 및 테스트 세트 모두에서 모든 MR에 대해 슬롯 순서가 고정되는 것을 관찰했습니다.
    • 결과적으로 대부분의 시간 동안이 모델은 테스트 세트에서 절대 발생하지 않는 슬롯 순서로 MR에 대해 훈련을 받았고 결과적으로 테스트 세트의 예측 성능이 저하되었습니다.
  • Utterance/MR Splitting
    • 보다 발성적인 접근 방식을 취함으로써, 우리는 대응하는 MR과 짝을 이루는 단일 문장 발화로 훈련 세트를 보강합니다.
    • 이 새로운 의사 샘플은 기존의 기준 발화를 단일 문장으로 나누고 섹션 4.3에 소개 된 슬롯 정렬기를 사용하여 각 문장에 해당하는 슬롯을 식별하여 생성됩니다.
    • 새로운 샘플의 MR은 슬롯의 해당 서브 세트로 작성되며, 문장에 이름이 (레스토랑 / TV 등) 또는이를 지칭하는 대명사 (예 : "it"또는 "its")가 포함 된 경우, 네임 슬롯도 포함되어 있습니다.
    • 마지막으로, 모든 새로운 MR에 새로운 위치 슬롯이 추가되어 그것이 원래의 발언에서 첫 번째 문장인지 또는 후속 문장인지를 나타냅니다.
    • 이 분할 기법의 예는 표 4에 나와 있습니다.
    • 이 프로세스를 통해 훈련 세트의 크기가 거의 두 배가되었습니다.
    • Since the slot aligner works heuristically, not all utterances are successfully aligned with the MR.
    • 그러나 이러한 경우의 대부분은 잘못되었거나 완전히 누락 된 슬롯 언급이있는 데이터 세트의 참조 발언으로 인해 발생합니다.
    • 그것들의 주목할만한 비율이 있으므로, 우리는 그것들을 훈련 세트에 MR에서 제거 된 정렬되지 않은 슬롯으로 남겨두고 그러한 샘플에서 배울 때 모델을 혼동하지 않도록합니다.

5.3 Sentence Planning via Data Selection

  • The quality of the training data inherently imposes an upper bound on the quality of the predictions of our model.
  • 따라서 보다 정교한 발언을 생성하기 위해 모델을 가져 오기 위해 각 MR에 대해 가장 자연스러운 소리와 구조적으로 복잡한 발언 만 포함하도록 훈련 데이터를 필터링하는 실험을했습니다.
  • 예를 들어, 우리는 간단한 문장 3 개로 구성된 발화가 아닌 MR에 대한 참조로 어소트먼트가있는 우아하고 단일 한 문장을 선호합니다. 두 문장은 "it"으로 시작합니다 (표 5 참고).

6 Evaluation 

7 Conclusion and Future Work

  • 이논문에서는 우리는 앙상블 attentional encoder-decoder 모델로 MR로부터 자연스러운 담화를 생성하는 것을 소개했다.
  • 게다가 우리는 MRs을 표현하는 새로운 방법으로 성능을 향상시켰다.
  • 우리의 결과는 제안한 utterance splitting으로 학습 셋에 적용하였고 뉴럴 모델의 성능과 일반화 능력을 매우 올렸다.
  • slot alignment을 기반으로하고 reranking이 사용된 앙상블 방법은 생성 담화의 퀄리티를 증가시키고 생성 동안 실현되지 않은 slots의 수를 최소화 시켰다.
  • 이것은 또한 delexicalization을 덜 공격적으로 사용하여 생성되는 utterances의 다양성을 자극시켰다.
    • 여기서 모든 문장에 대해 delexicalization을 안하고 일부분만 했다는 그런 의미인거 같음
  • 우리는 slot alignment을 자동적으로 하여서 학습 데이터을 확장시킬뿐만 아니라 담화 reranking을 하였다.
  • 우리의 alignment는 현재 관찰된 휴리스틱한 부분에 의존하고 더 robust aligner은 새로운 도메인에서 조금 더 유연하게 확장가능할 것이다.
  • stylistic data selection이 주목할 정도로 우리의 시스템의 출력의 다양성을 증가시켰기 때문에 우리는 이 방법이 미래에 더욱 포텐셜있다고 믿고 조금 더 탐구할 의도이다.
  • 마지막으로 현재 NLG에서 automatic evaluation가 시스템의 성능에 대한 모호한 아이디어를 충분하게 준다는 것이다.
    • 우리는 reference 데이터를 활용하여 classifier을 학습시키는 것이 조금 더 결정적인 automatic evaluation metric의 결과를 낼 것이라고 가정한다.
Reference

댓글