SimOAP: Improve Coherence and Consistency in Persona-based Dialogue Generation via Over-sampling and Post-evaluation
요약: 페르소나 기반의 대화 생성을 위한 간단하지만 효과적인 2단계 SimOAP의 오버 샘플링과 사후평가(Post-evaluation) 전략을 제안한다.
Paper
사전지식
- 대화 생성 시스템
- 대화 시스템은 자연어를 통해 사용자와 상호작용하는 시스템이다.
- 대화 시스템의 하위 분야로 Open-domain 대화 시스템, Task-oriented 대화 시스템, Persona-based 대화 시스템 등이 있다.
- 페르소나 기반 대화 생성
- 페르소나 기반 대화 생성은 대화 생성 시스템이 특정 페르소나를 가진 사용자로부터 대화를 생성하는 것을 의미한다.
- 페르소나 기반 대화 생성에서는 대화의 일관성을 유지하는 것이 중요하다.
Abstract
- 언어모델에 거대 말뭉치를 학습시키면 출력의 유창성은 향상되지만 일관성은 보장되지 않는다.
- 기존 페르소나 기반 대화 생성 연구의 데이터 필터링, 모델 구조 수정, 목적 함수 설계 등의 방법들은 제한적이고, 모든 유형의 언어모델에 일반화하기 어렵다.
- 본 논문에서는 대규모 응답 생성과 대상 응답 선택을 위한 간단하지만 효과적인 2단계 SimOAP의 오버 샘플링과 사후평가(Post-evaluation) 전략을 제안한다.
- 실험 결과 자동 및 인간 평가에서 SimOAP가 기존 방법보다 우수한 성능을 보여주었다.
Introduction
- 페르소나 기반 대화 생성(Persoan-based Dialogue Generation)의 기존 연구들에서는 대화의 일관성과 논리성이 부족한 문제가 있다.
- 이러한 문제를 해결하기 위해 데이터 필터링, 모델 구조 수정, 목적 함수 설계 등의 방법들이 제안되었지만, 이러한 방법들은 제한적이고, 모든 유형의 언어모델에 일반화하기 어렵다.
- 저자들은 응답 생성 확률이 감소함에 따라 우수한 응답의 비율이 처음에는 증가하다가 이후 감소하는 것을 발견하였다. (그림 1)
- 이는 대화 모델이 PPL(Perplexity)을 최적화 목표로 삼고 있지만, 이는 논리성과 일관성 요구와 일치하지 않기 때문이다.
- 따라서 본 연구에서는 대규모 응답 생성과 대상 응답 선택을 위한 간단하지만 효과적인 2단계 SimOAP의 오버 샘플링과 사후평가(Post-evaluation) 전략을 제안한다.
- 본 논문의 기여는 다음과 같다.
- 대화 모델이 생성한 높은 확률의 응답이 반드시 낮은 확률의 응답보다 우수하지 않음을 검증함. 즉, 대화 모델은 우수한 응답을 생성할 수 있지만 이를 선택하지 않음.
- 인물 기반 대화 생성에서 논리성과 일관성을 개선하기 위해 과도 샘플링과 후평가라는 간단한 2단계 방법을 제안했으며, 이는 모델에 구애받지 않음.
- 인물 기반 대화 데이터셋에서 포괄적인 실험을 수행함. 자동 평가와 인간 평가 결과, 우리의 방법이 기존 모델의 성능을 개선하고 기준선을 능가함을 확인함.
Related Work
- 대화 생성 연구에서는 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개의 단계로 구성된다.
- Over-sampling: 기존 대화 모델을 사용하여 대규모 샘플링을 수행
- 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개는 테스트용
- 비교 알고리즘
- 대화 모델
- BERT-over-BERT (BoB): 인코더, 응답 생성 디코더, 일관성 이해 디코더를 설계하여 인물 특징을 학습하는 인물 기반 대화 모델
- Multi-GPT2: GPT2에서 변형된 인코더-디코더 구조를 사용하는 인물 기반 대화 모델
- baseline 전략
- Maximum Mutual Information (MMI): 후보 응답에서 이전 대화 발화를 예측하는 역방향 모델을 사용함. 예측 확률을 사용하여 응답을 재배열하고 일반적인 응답 생성을 줄임
- 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