6 minute read

요약: 페르소나 기반의 대화 생성을 위한 간단하지만 효과적인 2단계 SimOAP의 오버 샘플링과 사후평가(Post-evaluation) 전략을 제안한다.

Paper

SimOAP: Improve Coherence and Consistency in Persona-based Dialogue Generation via Over-sampling and Post-evaluation

사전지식

  • 대화 생성 시스템
    • 대화 시스템은 자연어를 통해 사용자와 상호작용하는 시스템이다.
    • 대화 시스템의 하위 분야로 Open-domain 대화 시스템, Task-oriented 대화 시스템, Persona-based 대화 시스템 등이 있다.
  • 페르소나 기반 대화 생성
    • 페르소나 기반 대화 생성은 대화 생성 시스템이 특정 페르소나를 가진 사용자로부터 대화를 생성하는 것을 의미한다.
    • 페르소나 기반 대화 생성에서는 대화의 일관성을 유지하는 것이 중요하다.

Abstract

  • 언어모델에 거대 말뭉치를 학습시키면 출력의 유창성은 향상되지만 일관성은 보장되지 않는다.
  • 기존 페르소나 기반 대화 생성 연구의 데이터 필터링, 모델 구조 수정, 목적 함수 설계 등의 방법들은 제한적이고, 모든 유형의 언어모델에 일반화하기 어렵다.
  • 본 논문에서는 대규모 응답 생성과 대상 응답 선택을 위한 간단하지만 효과적인 2단계 SimOAP의 오버 샘플링과 사후평가(Post-evaluation) 전략을 제안한다.
  • 실험 결과 자동 및 인간 평가에서 SimOAP가 기존 방법보다 우수한 성능을 보여주었다.

Introduction

  • 페르소나 기반 대화 생성(Persoan-based Dialogue Generation)의 기존 연구들에서는 대화의 일관성과 논리성이 부족한 문제가 있다.
  • 이러한 문제를 해결하기 위해 데이터 필터링, 모델 구조 수정, 목적 함수 설계 등의 방법들이 제안되었지만, 이러한 방법들은 제한적이고, 모든 유형의 언어모델에 일반화하기 어렵다.
  • 저자들은 응답 생성 확률이 감소함에 따라 우수한 응답의 비율이 처음에는 증가하다가 이후 감소하는 것을 발견하였다. (그림 1)
    • 이는 대화 모델이 PPL(Perplexity)을 최적화 목표로 삼고 있지만, 이는 논리성과 일관성 요구와 일치하지 않기 때문이다.
  • 따라서 본 연구에서는 대규모 응답 생성과 대상 응답 선택을 위한 간단하지만 효과적인 2단계 SimOAP의 오버 샘플링과 사후평가(Post-evaluation) 전략을 제안한다.
  • 본 논문의 기여는 다음과 같다.
    1. 대화 모델이 생성한 높은 확률의 응답이 반드시 낮은 확률의 응답보다 우수하지 않음을 검증함. 즉, 대화 모델은 우수한 응답을 생성할 수 있지만 이를 선택하지 않음.
    2. 인물 기반 대화 생성에서 논리성과 일관성을 개선하기 위해 과도 샘플링과 후평가라는 간단한 2단계 방법을 제안했으며, 이는 모델에 구애받지 않음.
    3. 인물 기반 대화 데이터셋에서 포괄적인 실험을 수행함. 자동 평가와 인간 평가 결과, 우리의 방법이 기존 모델의 성능을 개선하고 기준선을 능가함을 확인함.
  • 대화 생성 연구에서는 PersonaChat 데이터셋이 제안되었으며 이에 더해 데이터 증강을 수행한 연구도 존재하나, 라벨링 비용 이슈와 다른 도메인의 데이터를 적용하기 어려운 문제가 있다.
  • 모델 구조 수정을 통해 인물 기반 대화 생성을 개선하려는 연구도 존재하나, 다수의 제약 조건을 만족시키기 어렵고 높은 훈련 비용을 요구한다.
  • 목표 함수를 설계하는 연구도 존재하나, 이는 여전히 어려운 과제이다.
  • 또한 dual system을 사용하여 대화의 일관성을 개선하려는 연구도 존재하나, 후보 응답의 수가 적어 대화 생성의 효과가 제한된다.
  • 대화 생성에서 최대 상호 정보(MMI, maximum mutual information) 방법을 사용하여 응답을 평가하는 연구도 존재하나, 이는 대규모 시간 비용을 초래한다.

Method

Problem Definition

  • Persona Information Sentences: \(P= \{p_1, p_2, ..., p_{\vert P \vert}\}\)
  • History Utterances: \(H= \{h_1, h_2, ..., h_{\vert H \vert}\}\)
  • Gold Response: \(g\)
  • Model Response: \(r\)

SimOAP 구성

  • SimOAP는 2개의 단계로 구성된다.
    1. Over-sampling: 기존 대화 모델을 사용하여 대규모 샘플링을 수행
    2. Post-evaluation: TF-IDF 알고리즘과 자연어 추론(NLI)을 각각 논리성과 일관성을 평가

과도 샘플링(Over-sampling)

  • 후보 응답 생성: 기존 대화 모델을 사용하여 후보 응답을 생성
    • top-k sampling을 사용하여 출력 단어를 선택
    • \(s\)개의 후보 응답을 생성하며, 이를 \(R = \{r_1, r_2, ..., r_s\}\) 라고 표현
    • 큰 \(k\), \(s\) 값을 사용하여 후보 응답의 다양성과 과도 샘플링의 효과를 보장
  • 모델 가속화: 대규모 샘플링으로 인해 발생하는 추가적인 시간 비용을 줄이기 위해, 압축되거나 정제된 모델을 사용

Post-evaluation

  • Perplexity는 응답의 유창성만 평가하므로, 다양한 측면에서의 평가가 필요함

  • 논리성(Coherence) 평가: TF-IDF 알고리즘을 사용하여 후보 응답 \(R\)과 대화 이력 \(H\) 간의 의미적 유사도를 계산

  • 일관성(Consistent) 평가:: DialogueNLI 데이터셋으로 미세 조정된 자연어 추론(NLI) 모델을 사용하여 후보 응답과 페르소나 문장 간의 함의(entailment) 가능성을 계산

실험

데이터셋

  • PersonaChat 데이터셋을 사용
    • 다양한 페르소나 정보와, 페르소나에 따른 대화 히스토리가 포함되어 있음
    • 10,907개의 대화(162,064개의 발화)를 포함하며, 이 중 8,939개는 학습용, 1,000개는 검증용, 968개는 테스트용
  • 비교 알고리즘
    • 대화 모델
      1. BERT-over-BERT (BoB): 인코더, 응답 생성 디코더, 일관성 이해 디코더를 설계하여 인물 특징을 학습하는 인물 기반 대화 모델
      2. Multi-GPT2: GPT2에서 변형된 인코더-디코더 구조를 사용하는 인물 기반 대화 모델
    • baseline 전략
      1. Maximum Mutual Information (MMI): 후보 응답에서 이전 대화 발화를 예측하는 역방향 모델을 사용함. 예측 확률을 사용하여 응답을 재배열하고 일반적인 응답 생성을 줄임
      2. Length-normalized Loglikelihood Score (LLS): 응답 길이가 우도에 미치는 영향을 제거하기 위해 \(\log P / T\)로 계산됨. 여기서 \(P\)는 응답의 우도이고, \(T\)는 응답의 토큰 수
  • 구현 세부 사항
    • top-k 샘플링의 \(k\)와 over-sampling 수 \(s\)는 각각 100과 2000으로 설정
    • BoB 모델에는 두 개의 디코더가 있으며, 첫 번째 디코더는 초기 응답을 생성하고 두 번째 디코더는 초기 응답을 수정하여 최종 응답을 생성
      • 첫 번째 디코더에서는 top-k 샘플링만 사용하며, 두 번째 디코더에서는 탐욕적 탐색을 사용
    • Multi-GPT2에서는 top-k 샘플링을 직접 사용
    • MMI에서는 DialoGPT-reverse를 사용하여 후보 응답에서 소스 발화를 예측
    • LLS에서는 top-k 샘플링을 사용하여 응답을 생성하고 \(k\)는 40, 응답 생성 수는 20으로 설정
    • 일관성 평가에 사용된 RoBERTa는 RoBERTa-large 버전

평가 지표

  • 자동 평가
    • Distinct-1/2 (Dis-1/2)
    • Repetition Rate (Rep) \(= n_\text{rep} / N\)
      • \(n_\text{rep}\): 적어도 하나의 다른 응답과 동일하고 정답과는 다른 응답의 수
      • \(N\): 전체 응답 수
    • Perplexity (PPL): GPU2와 BERT를 언어 모델로 선택하여 응답의 PPL을 계산
    • Consistency Score (C): BERT-large를 DialogueNLI 데이터셋으로 미세 조정하여 인물 문장과 응답 간의 일관성을 평가
  • 인간 평가
    • 영어 능력이 우수한 대학원생 3명이 유창성, 논리성, 정보성, 일관성 측면에서 응답의 품질을 1~5점으로 평가

결과

Full-size 모델에 대한 결과

  • 제안된 방법은 Dis-1/2를 제외한 모든 자동 평가 지표에서 두 기본 모델을 능가
  • MMI보다 Dis-1/2를 제외한 모든 자동 평가 지표에서 우수하며, 생성 속도도 더 빠름
  • LLS와 비교 시:
    • Multi-GPT2의 LLS 사용 응답은 PPL에서만 제안된 방법보다 낮았지만, 반복률(Rep)이 34.80%로 매우 높음
    • 제안된 방법의 반복률(Rep)은 0.93%로 다양성을 효과적으로 확보
    • 평균 점수(Avg 및 Avg-R)에서 LLS를 능가하며, MMI보다도 더 높은 성능을 보임
  • 인간 평가에서 모든 지표에서 기준선 모델 및 방법보다 우수

SimOAP 추가 분석

  • 후평가 단계:
    • 학습 가능한 논리성 평가 방법은 비효율적이며, TF-IDF 알고리즘이 더 빠르고 효과적임
  • 대화 이력 사용 비교:
    • 마지막 두 문장만 사용하는 경우가 전체 이력을 사용하는 경우보다 평균 점수가 약간 더 높음
    • BoB는 마지막 발화만 사용하므로 추가 검증 불필요

가속화된 모델에 대한 결과

  • BERT-medium과 BERT-mini로 대체:
    • BERT-medium 기반 BoB는 PPL에서 BoB를 능가, 모델 크기는 BoB의 36.6%
    • BERT-mini 기반 BoB는 PPL에서 BoB보다 낮은 성능, 모델의 기본 능력 중요성 시사
  • Multi-GPT2를 DistilGPT2로 대체:
    • SimOAP 적용 시 PPL 및 일관성 점수에서 Multi-GPT2를 능가, 모델 크기는 61.05%

생성된 후보 응답 수

  • 후보 응답 수:
    • 2000개 생성 시 PPL 최저, 5000개 이상 확장 시 성능 저하
    • 최적 후보 응답 수를 2000개로 설정
  • 응답 선택:
    • 선택된 응답의 평균 순위는 1135위
    • PPL 순위가 500~2000위에 위치한 응답이 86개
    • 대화 모델이 우수한 응답을 생성하지만 선택되지 않을 가능성 확인

분석 연구 (Ablation Study)

  • 논리성 평가만 사용:
    • 응답의 PPL 증가 → 유창성 저하
    • 인물 문장과의 일관성 감소.
  • 일관성 평가만 사용:
    • 일관성 점수 향상.
    • 응답의 PPL 증가 → 유창성 저하
  • 결론:
    • SimOAP의 논리성 평가와 일관성 평가는 모두 필수적

결론

  • 2단계 전략(과도 샘플링 및 후평가)으로 인물 기반 대화 생성의 논리성과 일관성을 효과적으로 개선
  • 과도 샘플링: 대규모 샘플링에 대화 모델 활용, 속도 향상을 위해 압축 및 정제 모델 사용
  • 후평가: 다중 평가 지표로 최종 응답 선택
  • 성과:
    • 기본 모델 성능 개선 및 기준선 전략 능가
    • 소스 코드 공개로 재현성 제공
  • 향후 연구:
    • 방법의 추가 가속화 계획

한계

  • 대규모 샘플링으로 인한 추가적인 시간 비용.
  • 짧은 텍스트 생성에는 적합하지만, 긴 텍스트 생성에는 적합하지 않음.

리뷰 의견

  • 논문 리뷰
    • 본 연구는 페르소나 기반 대화 생성의 일관성과 논리성을 개선하기 위한 간단하면서도 효과적인 방법을 제안하였다. 특히 기존 방법론들이 모델을 수정, 데이터셋을 증강, 또는 목적 함수를 수정하는 등의 방법을 사용하는 것과 달리, 본 연구에서는 대규모 샘플링과 후평가 전략을 사용하여 모델에 구애받지 않는 방법을 제안하였다. 또한 이를 통해 추가적인 학습이 필요 없이 기존 모델에 적용할 수 있음을 보여주었다.
    • 기존의 언어모델을 그대로 사용하므로, 별도의 학습이 필요 없다는 점이 장점이다. 이는 GPT-4와 같은 추가 학습에 부담이 있는 거대 언어모델을 부담 없이 사용할 수 있다는 장점이 있다.
    • 연구에서 제안하는 사후평가 방법 중 논리성 평가 방법은 TF-IDF를 사용하므로 평가의 수행 속도가 빠르다는 장점이 있다. 일관성 평가 또한 비교적 크기가 작은 모델인 RoBERTa를 사용하므로 속도가 빠르다.
    • 연구에서 지적된 한계점인 대규모 샘플링으로 인한 추가적인 시간 비용을 해결하기 위해서는 분산 추론 방법 등의 추가적인 소프트웨어 엔지니어링 기술이 필요할 것으로 보인다.
    • 또한 긴 텍스트의 생성에는 적합하지 않다는 한계점은 대화 생성에 사용한 언어모델의 자체적인 한계로 보인다. 이를 해결하기 위해서는 더 큰 언어모델을 사용하는 것이 필요하다.
  • 논문의 한계점: 논문에서 제안하는 방법의 이론적 타당성 및 분석이 부족함.
    • 과도 샘플링이 얼마나 효과적인지, 과도 샘플링을 통해 생성된 후보 응답이 얼마나 다양한지 등에 대한 이론적, 수치적 분석이 부족하다.
    • 후평가 단계에서의 논리성 평가와 TF-IDF 간의 관계에 대한 설명이 부족하고, 다른 논리성 평가 방법과의 비교가 없다.
    • 추론단계에서 출력을 선택하는 SimOAP 방법과 대화 데이터셋을 미세조정한 모델 간의 비용 측면에서의 심층적인 비교가 없다.
  • 연구의 응용 또는 확장 가능성
    • 학습에 비용이 많이 드는 GPT-4와 같은 closed source 언어모델을 사용하더라도, 제안된 방법은 학습이 필요하지 않기 때문에 챗봇 서비스에 구현 및 적용하기 용이하다.
    • SimOAP 방법의 가장 큰 병목은 대규모 샘플링으로 인한 추가적인 시간 비용이다. 이를 해결하기 위해 효율적인 샘플링 방법에 대한 연구 또는 상황에 따라 동적으로 샘플링 수를 조절 및 단축하는 방법에 대한 연구가 필요하다.

Comments