NL-073, You Impress Me: Dialogue Generation via Mutual Persona Perception (2020-ACL)

■ Comment

  • 일단 이 논문은 내용이 상당히 많다라는 느낌이...
  • 논문의 모델은 2가지 모듈이 있다.
    • Transmitter
    • Receiver
  • 그림 2가 모델의 오버뷰인데, Transmitter은 generator의 역할을 하는 것이고 Receiver은 생성된 문장과 persona 사이의 관계 score을 구하는 것이다.
  • 학습은 총 3가지 스텝이 있는데
    • 1) Transmitter을 supervised lerarning
    • 2) Recevier 학습
    • 3) Transmitter RL 학습 (self-play)
  • Transmitter의 generator은 GPT을 기반으로하여 초기값이 GPT 상태이고 1)을 학습한 결과가 3)의 초기상태이다.
  • Receiver에서 token embedding은 BERT을 기반으로 초기값을 가진다.
  • 또한 3가지 reward을 제시하는데, Receiver 학습으로부터 얻는 score가 하나의 reward이다.
    • Receiver의 reward가 어떻게 보면 이 논문의 핵심인데..
    • 이것은 model이 mutual persona perception을 understanding하게 학습이 된다는 것이다.
  • Inference 할 때는, Receiver은 안 쓰이는 듯?
  • 어떻게 보면, 여기서 GPT, BERT와 같은 pre-trained model에 PERSONA-CHAT에 맞는 학습방법을 고안하여 구현된 모델이라고 볼 수 있다.

0. Abstract

  • 칫챗 대화 시스템의 engagingness and consistency을 계속해서 향상시키려는 노력에도 불구하고, 현재 연구의 대부분은 단순히 human-like response을 모방하는제 집중하고 있어서 interlocutors(대화자)들 사이의 모델링의 이해 측면에서 충분히 연구되지 못했다.
  • congnitive science 연구에서, 대신에, 높은 퀄리티 칫챗 대화를 위한 필수적인 시그널은 understanding이라고 제시한다.
  • 이것으로부터 영감을 받아, 우리는  BOT을 제시한다.
    • understanding을 분명하게 모델링하는것을 목표로 하는 transmitter-receiver 기반의 프레임워크
  • 구체적으로,  BOT은 personalized 대화 생성의 퀄리티를 강화하기 위해 상호적인 persona perception을 통합한다.
  • 큰 공공의 데이터세트인 PERSONA-CHAT에서부터 실험을하고 우리의 접근법이 효과적임을 보여준다.
    •  automatic metrics와 human evaluations 모두에서 SoTA을 크게 향상시킵니다.

1 Introduction

  • 뉴럴모델의 발전과 거대한 데이터세트의 접근 덕분에, open-domain dialogue (ex. 칫챗) 시스템은 human-like reponse을 모방하는 쪽으로 많은 진보가 있었다.
  • 그럼에도 불구하고 여전히 personalized 챗봇을 만드는데 중요한 문제가 남아있다.
    • 챗봇은 engaging 대화를 해야하고 use의 trust을 얻어야 한다.
    • 예를 들어, 현재 칫챗 시스템은 uninformative(유익하지않은) response을 생성하는 경향이 있다.
  • 더 나아가서, 그들은 보통 coherent personality 특성이 부족하다.
    • 대화 학습은 실제로 화자의 diverse set으로 부터 오기 때문에
    • 일반적으로 open-domain은 다양한 화자에 대해 학습하기 때문인 것을 말한다는 것 모델이 화자의 개성을 반영하기 어렵다.
  • 다양한 시도가 위의 이슈를 줄이도록 시도되어져 왔다.
  • generic responses을 줄여주는 special reward와 같은 방법들과 latent variables로 화자를 representing은 칫챗 시스템의 engagingness을 향상시킨다.
  • 좀 더 간단한 접근법은 사전 정의된 peronsas을 가진 칫챗 시스템들을 만드는 것이고 novel dataset PERSONA-CHAT이 제안되었다.
    • 두 명의 대화자가 처음으로 만나서 서로를 알기 위해 대화를 한다.
    • PERSONA-CHAT 유니크함을 만드는 것은 두 대화자의 personas들이 명시적으로 여러 개의 profile sentence으로 설명이 된다는 것이고 configurable(설정가능)하고 persistent personalities을 가지는 챗봇의 학습을 가능하게한다.
  • PERSONA-CHAT은 personalized 대화 생성의 방법들이 발전하면서 관심이 커져가고 있었다.
    • Mazare은 Reddit으로부터 additional data을 모델 학습에 통합하였다.
    • Wolf는 pretrained LM을 대화 시스템에 fine-tuned 시켰다.
    • 두 개의 연구들 모두 결과를 입증했고 human-like reponses의 스타일을 모방하는데 집중하고 서로 대화하는 사람 사이의 이해(understanding)를 명시적으로 모델링하는 측면에 대해 충분히 연구되지 않은 채로 남겨둔다.
  • 우리의 연구는, 대신에 understanding modeling의 관점을 취한다.
  • cognitive science의 연구에 따르면, 효과적인 communication은 대화자 모두의 뇌에서 유사한 활성화 맵을 생성한다.
    • 이것은 대화자 사이의 understanding이 높은 칫챗 대화를 위한 필요한 시그널임을 제시한다.
  • 예를 들어, 그림 1에서 대화에서, 두 명의 대화자가 personarelated topics에 대해 understanding을 촉진시킨다.
    • 질문: "Seen any good movies lately?”
    • 답변: “I don’t watch movies more of a writer.”.
    • 위를 통해 그들의 personas을 들어낸다.
    • 이해를 쌓으려는 노력이 대화의 흐름을 이어간다.
  • 위를 고려하여, 우리는 Persona Perception Bot ( BOT)을 제안하여 transmitter-receiver 프레이워크를 가지는 대화자들 사이의 understanding을 명시적으로 모델링한다.
  • 전통적인 방법들과 구별되게,  BOT은 novel 컨셉인 상호적인 persona perception 강조하는데, 상호간 의사소통을 가능하게 하는 정보교환 프로세스를 설명하기 더 적합하다.
  • 개인대화 생성을 위한  BOT을 학습하기 위해서, 우리는 상호 persona perception을 특징짓는 reward signals에 의해 조종되는 supervised trainingself-play fine-tunning을 적용한다.
  • PERSONA-CHAT dataset에서 실험들은 우리의 접근법이 베이스라인보다 우수함을 automatic과 human evaluatoins을 통하여 증명한다.

2 Methodology Overview

  •  BOT의 중심 아이디어는 명시적으로 대화자 사이의 understanding을 모델링하고 상호 persona perception을 통하여 대화 생성을 강화하는 것이다.
  • 이것은 두 가지 요소인 Transmitter and Receiver으로 구성되어있고 각각 대화 생성mutual persona perception의 역할을 한다.
  • 그림 2는  BOT의 오버뷰를 보여준다.
    •  interlocutor A는 persona 을 가지고 있고 L profile sentences 을로 설명이 된다.
  • 그녀가 처음으로 다른 interlocutor B을 만날 때, 그들은 N-turn 대화 를 통하여 서로를 알기 위할 것이다.
    • 여기서 는 A가 n-th turn에 말한 utterance을 말하고 N은 전체 turns의 수이다.
  • 전체 n-th turn 까지 대화 히스토리가 주어졌을 때, Transmitter은 distribution 을 통하여 을 생성하고 B에게 transmit한다.
    • 즉 이전의 대화 히스토리와 persona을 조건으로 다음 대화를 생성한다.
    • B에서도 마찬가지 프로세스가 적용되어서 대화 플로우가 유지된다.
  • 대화가 계속되면서, utterances을 통하여 점진적으로 impressions(인상)이 형성된다.
  • 예를 들어, A가 “I don’t watch movies more of a writer.”이라고 말했을 때, 인상 "A is a writer."은 B의 마음에 남아있다.
  • 위에서 언급한 것처럼, 성공적인 대화는 대화자가 서로 아는 것을 도와주며, A에대한 B의 인상은 A의 persona와 대응이 되어야한다는 것을 의미한다. (반대도 마찬가지)
    • 즉 B가 바라왔을 때의 A의 impression(인상) = A의 persona가 되어야 한다.
  • Receiver은 인상 현성과 실제의 persona 사이의 proximity(근접성)을 측정한다.
    • 구체적으로, Figure 2의 검정 라인에서 설명하듯이, Receiver은 먼저 impression과 persons을 latent space으로 투영하고나서 impression encdoing(예. 으로 A의 말들로부터 투영된 A에 대한 B의 인상)과 persona encoding(예. 로 A의 persona 로부터 투영한 것)을 기반으로 그들 사이의 관계성을 측정한다. 
  • relevance score은 mutual persona perception rewards의 역할을 하고 더 나아가서 Transmitter의 학습에 통합이된다.
  • Details of the two components are presented in Section 3 and 4.

3 Transmitter

  • 이전의 연구를 따라서, 우리는 대화 생성을 sequence 생성 문제로 다룬다.
  • 구체적으로, 우리는 pretraining transformer LM인 GPT로 Transmitter를 초기화한다.
  • 전체의 학습 과정은 두 가지 steps으로 구성된다.
    • (1) Supervised Dialogue Generation. 
      • 우리는 Transmitter을 supervised 대화 생성 테스크에서 MLE(maximum likelihood estimation)으로 optimize한다.
    • (2) Self-play Model Finetuning. 
      • 우리는 랜덤하게 두명의 쌍지은 대화자사이의 대화를 시뮬레이션를 하여 Transmitter가 reward signals을 최대화하도록 RL을통하여 학습한다.
      • reward 함수의 디자인은 LM과 제안된 mutual persona perception 둘 다를 고려한다.

3.1 Supervised Dialogue Generation

  • 그림 3에서 설명한 듯이, Transmitter은 12 stacked transformer layer의 전체적인 구조를 따라서 context을 encode하고 response을 생성한다.
  • 여기서, context는 persona , 대화 히스토리 와 여러 개의 special tokens (예. [PS]는 persona의 시작을 가리키는 것)을 포함한다.
  • 학습 instance () 가 주어질 때, 학습 MLE objective는 최소화하도록 다음을 따른다.
    • 는 Transfmitter의 파라미터이다.
    • 는 의 t번째 token을 가리키고 는 t이전의 token 시퀀스를 가리킨다.
    • 식 1은, 이후로 으로 간단화하고 A와 B에 모두 적용하고 우리는 여기서는 간단히 A에 대해서만 언급을 한다.
  • 인퍼런스동안, beam search는 top-ranked response candidates 을 저장하는데 적용되고 Transmitter은 그 뒤에 식 2의 length-normalized score가 가장 큰 prediction을 선택한다.
  • 시퀀스 생성과제외에, Wolf(TransferTransfo)에서 영감받아 next utterance prediction이라는 보조 과제를 셋업한다.
    • 이것은 PERSONA-CHAT의 데이터가 candidates까지 포함해서 제공해주기 때문에 사용하기 쉽다.
  • Transmitter가 responses을 생성하는 학습과 떨어져서, 우리는 context가 주어진 상황에서 reponse가 다음 utterance 인지 아닌지를 구별하는 것을 학습한다.
  • 구체적으로, 우리는 special token [CLS]을 생성된 토큰들의 꼬리에 붙인다.
    • 이 방법은 TransferTransfo와 똑같이 한 듯 함.
    • classifier은 마지막 transformer layer에서 토큰의 hidden state의 top에서 설계된다.
    • 그림 3에서 빨간색으로 둘러싼 직사각형이 이 부분을 가리킨다.
  • 학습에서, 각 response에 대해서, 우리는 랜덤하게 distractor을 샘플링하고 classifier가 distractor보다 response가 더 높은 score을 가지도록 학습을 한다.
    • 따로 랜덤하게 샘플링된 19개의 distractor가 실제로 PERSONA-CHAT 데이터에 있지만, 이게 안주어져어도 활용할 수 있는 방법이긴함.
  • 인퍼런스에서는, classifier가 response candidates을 식 2으로 랭킹을 매기는데 사용된다.
    • 즉 beam-search으로 후보가 여러 개 있을텐데, 이 중 랭킹을 매길 때 classifier을 활용한다는 것 (이 부분도 TransferTransfro에서 비슷하게 접근한 듯)
  • 인 신호는 생성된 response 가 next utterance가 예측된 것이며, 식 2가 다음으로 확장된다.
    • alpha는 하이퍼파라미터다.
    • 첫 번째 term은 error?과 같이 예측된 utternace의 확률을 말하는 것이고 두 번째 term은 생성된 문장이 next utternace일 확률을 말하는 개념이다.

3.2 Self-play Model Fine-tuning

  • Supervised 대화 생성은 human-like response을 모방하는데 혼자 사용될 수 있지만, 이것은 본질적으로 understanding을 목표로 하지 않는다.
  • 그래서, 우리는 더 나아가서 Transmitter을 RL을 사용해서 fine-tune한다.
    • 목표는 mutual persona perception을 최대화 하는 것
    • 즉 3.1에서 Transmitter을 학습시키고 3.2에서 RL로 fine-tune을 이어서 하는 듯!
  • Lewis와 유사하게, 우리는 self-play을 sec 3.1에서 설명한 것처럼 학습된 두 개의 Transmitters가 대화하는데 시뮬레이션을 한다.
  • 구체적으로, 우리는 두 개의 Transmitters가 여러 turn으로 서로가 대화하도록 한다.
  • 한 개의 Transmitter은 파라미터가 고정된 유저의 역할을 하고, 다른 하나는 학습가능한 agent로 역할을 한다.
  • 학습가능한 agent의 파라미터는 θ이고 self-play동안 fine-tuned 된다.
  • generality의 loss없이, 우리의 실험에서는 대화 시작을 한 interlocuter A가 user가되고 학습가능한 agent B가 대응을 한다.
    • 먼저 말하는 사람이 user(=A)라고 간주해서 파라미터 고정
  • 여기서, 우리는 우리의 문제를 강화학습으로 모델링을 하기 위한 몇 가지 필요한 공식을 소개한다.
    • state은 persona와 대화 히스토리를 포함한다.
    • 예를 들어 B의 state에서 n은 다음과 같이 정의된다:
    • action space 는 생성된 response이다.
    • action space는 한계없이 크고 response는 임의의 길이를 가질 수 있다.
    • 을 입력으로 받아, 파라미터 는 policy 을 정의하고, 이를 통해, 학습가능한 agent는 response을 생성한다.
  •  
    • 그림 4에서 설명하듯이, B가 말을 할 차례일 때, B는 을 받고 을 policy 에 따라 선택한다. 
    • A에 대해서는, 을 받고 user을 시뮬레이션하기 위해 response 을 생성한다.
      • 여기서 x에 *가 붙는 것은 식 3에서 argmax인 x을 취했다는 것
    • A와 B는 주어진 한께를 넘어가는 turn의 수까지 교대로 response을 생성한다.
    • 한 번, 완벽한 대화가 생성이 되면, 을 policy gradient을 사용하여 최적화하기 위해 reward가 수집된다.
    • B가 turn n에 도달하면 reward 는 로 표기되며 (나중에 더 자세히) 우리는 다음의 objective을 최대화하도록 최적화한다.
  • Applying likelihood ratio trick,  is updated by ascending the following gradient: 
  • 미리 말했듯이, action space 는 무한하다.
  • 실제로 REINFORCEMENT 알고리즘은 policy 으로부터 을 샘플링해서 식 5을 근사화하는데 활용된다.
    • 더 나아가서, baseline을 빼줌으로써, 여기서는 mini-batch의 mean reward을 에 적용해서 variacne을 줄인다.
  • [EOS] token이 뽑히거나 최대 decoding step 길이(예. 32)을 넘어갈때까지 B의 출력 분포에서 multinomial 샘플리을 통하여 agent는 tokens을 하나씩 샘플링한다.
    • Compared to beam search sampling, multinomial sampling provides more diversities.
    • 위에서는 beam search을 썼는데, 여기서는 multinomial sampling을 씀..

3.3 Reward Shaping (RS) 

  • sec 1에서 설명한 것처럼, 우리는 높은 퀄리티를 가지는 칫챗 대화는 사람의 언어 모델링과 mutual persona perception 둘 다를 강조한다고 믿는다.
  • 이를 염두에두고 언어 스타일, 대화 coherence 및 mutual persona perception을 해결하기 위해 3가지 rewards을 디자인합니다.

3.3.1 RS.1 Language Style

  • 생성된 responses는 사람 언어 스타일을 따라야 하며, 우리는 pretrained LM (=GPT)로 평가할 수 있다고 믿는다.
  • length normalization을 한 후에, 에 대한 점수는 다음과 같다.
    • 와 는 와 을 정의했던 것과 비슷한 식이다.
    • x는 real token이고 a는 생성된 token 정도의 차이
    • 즉 GPT을 이용하여 사람 스타일을 측정하는 reward을 정의

3.3.2 RS.2 Discourse Coherence

  • 언어 점수는 독단적으로 평가되고 대화 일관성이 고려되지 않는다.
  • 그러나, 믿을만한 response는 context과 meaning의 관계를 갖고 있어야 하며, 이것또한 human-like responses의 관점에서 중요하다.
  • 대화를 고려하여, 우리는 잘 훈련된 Next Utterance Predictor을 (sec 3.1에서 말한 것) 적용한다.
  • The reward is given by the log probability of  being the next utterance of 
    • 3.1에서 학습한 NUP을 이용하여 생성되는 action response가 context인 대화 히스토리를 잘 담고 있는지에 대한 reward 정의

3.3.3 RS.3 Mutual Persona Perception

  • RS.1와 RS.2는 단지 agent training process을 human-like responding 방향으로 유도한다.
  • 이들은 명시적으로 두 대화자의 understanding을 이끌어내지 않는다.
  • 그래서, 우리는 꼼꼼하게 reward가 mutual persona perception을 특정지을 수 있도록 디자인했다.
  • RS.1와 RS.2와 대조적으로 mutual persona perception은 전체 대화를 통한 long-term 목표이고 이것은 현재 action의 효과가 나중에 나타날 수 있음을 의미한다.
  • 예를 들어, "what are your hobbies?을 B로부터 받았으면, 이것은 A의 반응이 A의 취미와 높은 관려이 있을 것이다.
    • 이것은 A의 반응 뿐만 아니라 B의 처음 질문이 mutual persona perception에 기여한다.
  • 는 discount factor로 B가 얼마나 앞에 것 까지를 보는지를 가리키는 것이고 mutual persona perception의 에대한 reward는 다음과 같다.
    • 써보면, +*rA(n+1)+^2*rB(n+1)+^3*rA(n+2)+r^4*rB(n+2)+...
    • 즉 매 step에서 토큰이 생성될 때, reward을 고려하겠다는 의미
    • 은 B가 n번째 turn에서 얻은 persona perception 점수이고 도 마찬가지이다.
    • 은 다음의 점수 함수를 사용한다.
      • w는 persona을 의미하고 는 B의 응답이다.
      • 즉 B의 persona와 B의 응답사이의 점수로 B의 말이 얼마나 persona을 반영했는지를 계산하는 점수인 듯?
      • 이 score 함수는 Receiver로부터 나온 함수로 sec 4에서 설명할 것이다.
  • 최종 은 다음과 같다.

4 Receiver

  • Receiver은 negative sampling으로 구현된, 설계된 impressions(인상)과 actual personas 사이의 proximity(가까움)을 측정하도록 고안되었다.
  • 구체적으로, 학습할 때, 우리는 랜덤하게 persona distractor 을 샘플링한다.
    • Reciver은 {}에서 샘플링한 real persona 을 식별하도록 훈련이 된다.
  • Inference할 때, 각 utterance에서, Receiver은 reasonable한 relevance score을 제공하도록 책임이 있고, 우리의 제안된 mutual persona perception을 모델링한다.
  • 그 후 score은 식 8에서와 같이 rewards의 일부로 Transmitter 의 self-play fine-tuning에 참여합니다.
    • 즉 위에서 말한 RS.3이 여기서 말한 score인 거 같음

4.1 Training

  • 그림 5에서 설명하듯이, Receiver은 impression와 persona에 해당하는 2개의 다른 encoders을 각각 포함한다.
  • BERT로 초기화되어 있고, 두 개의 encoders은 tokens에 대해 deep contextualized representations을 한다.
  • 그래서 우리는 모든 representation의 평균을 내어 한 문장에 대해 고정된 d-dimensional vector을 뽑아낸다.
  • 이 방법으로, 을 impression encoder에 연속적으로 넣고 impression encoding 을 얻는다.
  • Persona encoding 도 비슷하게 생성이 되고 에  속한다.
  • relevance score matrix 은 scaled dot product으로 다음과 같이 계산된다.
  • 본질적으로 Receiver은 persona와 대화 사이의 세밀한 관계를 잡아내길 기대한다.
    • 그러나, 우리는 세밀한 goldn 관계가 없다. (레이블링이 없다)
    • 우리가 알고있는 것은 와 비교해서 가 에 더욱 관계가 있는 것이다.
    • 비교가 거칠기 때문에 (정교한 비교가 아니기 때문에), 우리는 그림 5처럼 함수의 누적을 통하여 으로 누적 score 을 구한다.
  • 을 격려하고 을 누르기 위해 우리는 marginal loss Lrec을 디자인하여 가 보다 더 크게 margin m을 가지게 한다.
  • 게다가 utterance가 일반적으로 zero 혹은 one profile과 관련되어있음을 고려하여, L1 regularization으로 을 sparse하게 강화한다.
    • 즉 각 문장이 모든 profile sentence와 연관되어 있지 않기 때문에 실제로 은 sparse 성을 띌 것이다.
    • 관련없는것은 0의 값을 가지기 때문에
    • 따라서 L1 regularization을 적용한다.
  • Combining all of these, the training loss for Receiver is:
    • beta는 하이퍼 파라미터임.
    • 위 식에서 m+-가 0보다 크다고 가정하고 생각해보면 학습은 loss을 최소화 하는 것이므로 는 작아지고 는 커지도록 하도록 한다.
    • 즉 distractor과의 유사성은 작아지고 real utterance하고는 유사성이 커지도록 하는 것이다.
    • 그렇다고해서 와 의 차이가 m보다 커지는 것은 방지하겠다는 의미로 max(0, m+-)가 있는 것이다.
    • 따라서 와 의 최대한의 차이가 margin m인 개념이다.
    • margin이 왜 있는지 생각해보면, margin이 없으면 계속해서 와 의 차이가 벌어지도록 끝이 없는 학습이 될 것이기 때문이다. 
  • 즉 정리하면
    • BERT을 백본으로 sentence embedding을 xA, wA, wZ을 각각한다.
    • 여기서 xA는 A의 utterances, wA는 A의 profile sentences이고 wZ는 랜덤 샘플링된 persona distractor이다.
    • 아무튼 이렇게 문장들이 BERT을 통과한 token embedding을 다 더해서 문장을 하나의 고정된 벡터로 매핑시킨다.
    • 고정된 vector가 512고 예시로 xA가 5문장, wA가 4문장, wZ가 4문장이라고 하자.
    • 그러면 는 5x512가 되고 ,는 4x512 가되 어서 식 11을 통과하면 5x4의 UA, UZ을 가지게 되는 것이다.
    • 근데 여기서 우리가 레이블링된 데이터를 가지고 있는 것은 아니기 때문에 가 보다 와 더 가깝다는 정보밖에 없다.
    • 이를 이용하여 식 12와 같은 margnial loss을 설계하는데 이 때, 가 sparse한 점을 고려해 뒷 텀인 L1 regularization을 적용한 것이다.
  • Agg에 있어서, 한 가지 간단한 방법은 모든 position의 의 평균을 내는 것이다.
    • 그러나 이것은 의 실제 활성화되지 않은 모든 항목을 최대화하는 것이다.
    • 즉 unrelated profile sentences and utterances relevance scores을 최대화 하기 때문에 Transmitter 학습에 불필요한 잡음이 있다.
  • 이 문제를 줄이기 위해, 우리는 Agg을 컨트롤 가능한 weighted function으로 구현하기를 선택한다.
    • τ은 temperature로 조정 가능한 파라미터이다.
    • 시작은, Agg가 average pooling와 유사하게 행동한다.
    • τ가 작아지면서, Agg는 점점 높은 relevance score에 집중하게 된다.
    • 즉 τ가 크면 항의 값차이가 커도 크게 안느껴지니 average pooling 느낌이나, τ가 작아지면 그 차이를 더 벌리면서, 큰 값에 weight을 가지게 할 수 있다는 말
    • 이 방법으로 training이 진행될수록 noise을 줄일 수 있다.
  • Finally, c∆ is given by
    • 여러 문장에 대한 score을 평균낸다는 것

4.2 Inference

  • 와 가 주어졌을 때, Receiver은 다음의 함수를 따라서 의 persona perception score을 얻고, 더 나아가서 식 9와 같이 mutual persona perception을 모델링한다.
    • 이것이 reward RS.3으로 작동한다는 것
    • 그렇다는 것은 Receiver을 학습하고, Transmitter의 2번째 training 스테이지가 움직인다는 것이겠지?

 5 Experiment

  • 우리는 automatic 지표와 human 평가를 모두 사용하여  BOT를 평가하는 데이터 세트 PERSONA-CHAT에 대한 실험을 수행했습니다.
  • 제안된 상호 페르소나 인식의 효과를 검증하기 위해 섹션 5.3에서 철저한 모델 분석을 수행합니다.
  • 마지막으로, 섹션 5.4에서 페르소나를 인식하는 수신기의 능력을 조사합니다

 5.1 Implementation Details

  • PERSONA-CHAT dataset contains 8,939 / 1,000 multi-turn dialogues conditioned on 1,155 / 100 personas for train / dev.
  • Each persona is described with at least 5 profile sentences.
  • We used Adam (Kingma and Ba, 2015) optimizer with a learning rate of 6.25e-5 for both Receiver and Transmitter in supervised learning
  • In the training of Receiver, τ reduced linearly from 10 to 0.5
  • In the self-play phase of Transmitter, the learning rate was set as 1e-6
  • The hyperparameters m, α, β, γ, λ1, λ2 and λ3 were set as 0.4, 0.1, 1e-4, 0.5, 0.4, 0.1 and 0.5 respectively. 
  • The supervised training of Transmitter lasted for 2 epochs, and the self-play fine-tuning comprised 2000 dialogues, where the number of turns was 3
  • The beam search size was set as 2

 5.2 Methods Comparison

  • Our baselines fall into three categories
    • retrieval-based
    • generative-based 
    • pretrain-finetune-based models.
  • Hits@1 is the probability that the real response ranks the highest according to the model.
    • 식 3에서 원래 랭킹을 매길 때 은 beam-search로 생긴 후보들을 의미한다.
    • 여기서 Hits@1을 계산할 때, rank을 매기는 것은 beam-serach 후보들이 아닌, 와 distractors 사이에서 랭킹을 매겼을 때, 가 1등이면 맞추는 의미인 것 같음.
  • Perplexity measures the negative log likelihood of the correct sequence output by the model, lower values indicating better performance. 
  • F1 is the harmonic mean of word-level precision and recall
  • automatic metric은 open domain 태스크에서 평가로 완벽하지 않다.
  • 그래서, 우리는 human evaluations을 SoTA 베이스라인에서 수행했다.
    • Transfertransfo & Lost In Conversation and our proposed P 2 BOT. 
  • 200개 샘플링해서 1~4점으로 점수를 매겼다.
    • 1 means the response is good only in terms of grammar and sentence structure;
    • 2 means in addition to valid grammar, the response is also coherent with the context;
    • 3 means the coherent response is meanwhile interesting and informative, instead of just a simple response like Yes; 
    • And 4 means the response is consistent with the persona of the interlocutor, which is of extreme importance for the task of reflecting whether the model can effectively utilize the persona information. 
  • 테이블 2에서 보여주듯이  BOT은 베이스라인에 비해 좋은 결과를 보여준다.
  • 우리는 또한 우리의 방법과 기준선 사이에서 Wilcoxon signed-rank 테스트를 수행했으며 결과는 p <0.05에서 개선이 유의미하다는 것을 보여줍니다.

5.3 Model Analysis

5.3.1 Variant Analysis 

  • 우리는  BOT에 대해 다양한 분석을 하여 RS.1, RS.2, RS.3의 영향을 조사했다.
  • 다른 metric으로는 BLEU을 사용하여 response의 퀄리티를 평가하여 좀 더 포괄적이게 분석했다.
  • Table 3에서  BOT-S는  BOT이 supervised setting으로만 학습이 된 것이다.
    • Hits@1에서 결과는 auxiliary task가 중요한 역할을 하는 것을 보여준다.
    • 여기서 next가 없이 학습한 모델도 rank을 매길 때는 식 3을 써야하므로 학습한 classifier을 이용할 듯 
  • 모든 변화에서 BLEU와 F1은 매우 작아 개선하기가 어렵다.
  • 그럼에도 불구하고, RS.3을 더함으로써 우리는 25%의 상대적인 개선을 얻었으며, 제안된 mutual persona perception의 효과를 가리킨다.
  • F1의 추세에서 유사한 결론을 도출 할 수 있습니다.

5.3.2 Case Study

  • 좀 더 포괄적인 비교를 위해, 테이블 4에서 랜덤 샘플링한 결과를 보여주낟.
  • 결과는 우리의 접근법에서 생성된 response가 좀 더 human-like하다는 것이다.
  • 관측됐듯이, 제안한 mutual persona perception으로의 장점은  BOT이 일관성있고 매력적이고 유익하다는 것이다. 
  • For instance, in the last example in Table 4, the response “I’m busy with my robot project” explicates why the speaker does not exercise, meanwhile revealing that he is working on the robot, as depicted in his persona.

5.3.3 Error Analysis 

  • 우리의 접근법은 대부분 케이스에서 잘 작동하나, 우리는 self-play 시뮬레이션이 학습 이후에 반복되는 사이클에 빠지는 것을 관측했다.
  • 다른 이슈는 bots이 가끔 우리의 접근법에서 중복되는 질문을 요청하는데, 이것은 reward shaping의 부적절한 하이퍼 파라미터 때문일 것이다.

5.4 Persona Perception Probing  

  • 위에서는 Receiver가 RS.3에 주는 reward로 사용되었다.
    • receiver가 하는 역할을 살펴보면, persona와 sentence 사이의 유사한 정도의 score을 계산하는 것이다.
    • 이것이 얼마나 잘 작동하는지 파악하는게 이번 섹션이다.
  • Receiver는 우리의 접근법에서 중요한 역할을 하고 우리는 persona을 인식하는 능력에 관심이 있다.
  • 그래서, 우리는 합성된 데이터세트로 실험을 했다.
    • PERSONA-CHAT에서 각 대화에 해당하는 31개의 persona distractors을 샘플링해서 데이터를 구성했다.
  • 두 개의 널리 사용되는 랭킹 metrics이 성능 측정에 사용되었다.
    • Hits@1 and Mean Reciprocal Rank (MRR). 
    • Hits@1 is the same metric as the one mentioned in Section 5.2, except that the candidate size is 32.
    • 대화와 profile sentences의 세트가 주어진다.
    • MRR은 대화와 관련된 profile sentences들의 평균 상호 순위이다.
  • 두 개의 간단한 베이스라인인 랜덤과 IR이 비교로 선택되었다.
    • Table 5 shows the experimental results of different methods on the synthesized dataset. 
    • As observed, our approach achieved excellent results on both original and revised modes. 
    • For example, compared with the IR baseline, our approach achieved an absolute improvement of 26.3% on Hits@1 in the original mode. 
    • 추가적으로, revised 모드에서 결과들은 Receiver의 능력이 rephrased persona을 지각하는 것을 추가적으로 보여준다.
  • 학습된 Receiver을 더욱 이해하기 위해서, 우리는 그림 6에서 샘플된 대화와 그것에 대응되는 revised persona 사이의 relevance scores을 비주얼라이즈한다.
    • As illustrated, the relevance scores between related profile sentences and dialogue utterances are significantly higher. 
  • 예를 들어, 대화자로부터의 utterance “I volunteer at the local pool”가 profile을 “I love being in the water”으로 의미하며 우리의 Receiver가 성공적으로 그들의 관계를 캡쳐한다.

6 Related Work

7 Conclusion & Future Work

  • 우리는  BOT, transmitter-receiver 프레임워크을 제안하여 대화자 사이의 understanding을 명시적으로 모델링을 제시한다.
  • 이 프레임워크에서, mutual persona perception은 reward signal로 통합되어 personalized 대화 생성을 달성한다.
  • 큰 공용 데이터세트 PERSONA-CHAT에서 실험들은 우리의 접근법의 효율성을 증명한다.
  • 앞으로의 연구에서, 우리는 Receiver을 conversational recommender 시스템으로 확장시킬 것이다.
    • 채팅의 turns 이후에, agent는 personalized contentes가 추천해서 user의 persona을 추론가능해야한다.
Reference

댓글