NL-278, Contrastive decoding: Open-ended text generation as optimization, ACL 2023
◼ Comment
- 이 분야에서 나온 초기 연구로 나름 유명한거 같다
- 방법은 상당히 간단한다
- 실제 사용할 LLM이 있고 이를 전문가 모델로 간주하고
- 이보다 작은 LLM을 아마추어 모델로 간주한다
- 전문가 모델의 logit과 아마추어 모델의 logit을 빼서 토큰을 생성한다는 것이다
- 이렇게만 하면 몇가지 문제점이 있어서 "적응형 타당성 제약"이라고 해서 전문가 모델의 logit에서 상위 일부만 생성할 토큰 집합을 선택하여 진행한다
- 근데 위에서 말한 타당성 제약만으로는 사실 문제점이 해결되지 않는다고 생각함
- 예를 들면, 전문가와 아마추어 둘다 적당히 높은 logit으로 예측한 토큰이 있다고 했을때, 이외에도 다른 생성 토큰 후보가 존재할것이고 logit차이는 0에 가까워지기 때문에 생성되지 않을 거란 점
- 뭔가 논리 부족
- 여기서는 아마추어가 형편없다고 가정이 있기 떄문에 logit차이를 이용하지만
- 다른 방식으로 생각하면 여러 llm이 공통으로 예측한 토큰이 좋을 것이라 더하는 것도 의미가 있을 거란 점
- 아마추어 모델이 어느정도 성능이 되어야 한다는 것은 사실 애매하다. 여기서도 다양한 실험은 하지만 단순한 n-gram은 안좋다고 하고 그냥 같은 llm-family의 작은 사이즈를 선택한다
- 전문가와 아마추어 모델의 vocab 구성이 같아야 한다는 한계도 존재한다
- CAD 논문의 아이디어는 이 논문에서 이미 언급되었다는 점
- 사용된 llm 이 예전 논문이라 그런지 지금보면 좀 아쉽다
- 최근 모델에서도 적용되는지는 물음표?
- 애초에 광범위한 실험이 조금 부족하다고 생각됨
- 실험 분석도 조금 애매한 부분이 존재하긴함
- 하지만 그럼에도 이러한 분야에서 거의 초창기에 나온 연구기 때문에 많이들 인용되는 듯함
Abstract
주어진 언어 모델(LM)을 사용할 때, 최대 확률(maximum probability)을 목표로 디코딩을 수행하면 짧고 반복적인 문장이 생성되는 문제가 있다. 반면, 샘플링(sampling)을 이용하면 주제에서 벗어나 일관성이 떨어지는 문장이 생성될 수 있다. 이를 해결하기 위해 본 연구는 **대조적 디코딩(contrastive decoding, CD)**을 제안한다. 이 기법은 대조적 목적(contrastive objective)을 최적화하며, 동시에 생성된 문장이 그럴듯하도록(plausibility) 제약을 부여한다.
대조적 목적이란, 큰 규모의 언어 모델(전문가 모델, 예: OPT-13B)과 작은 규모의 언어 모델(초보자 모델, 예: OPT-125M)의 로그우도(log-likelihood) 차이를 기반으로 하는데,
- 이는 큰 모델에서 나타나는 단점(반복성, 비일관성 등)이 작은 모델에서 더 심각하게 나타난다는 사실에 착안한 것이다.
- 즉, 두 모델 간의 로그우도 차이가 높을수록 더 선호할 만한 문장임을 의미한다.
이 방식은 별도의 추가 학습을 필요로 하지 않으며, 단독으로 큰 모델을 사용하는 것보다 더 우수한 품질의 문장을 생성한다. 또한 OPT-13B 및 GPT2-1.5B와 같은 다양한 규모의 모델에서도 동작하며, 위키피디아, 뉴스, 이야기 생성 등 다양한 도메인에서 nucleus sampling, top-k와 같은 네 가지 강력한 기존 디코딩 알고리즘보다 자동 평가와 사람 평가 모두에서 유의미하게 뛰어난 성능을 나타낸다.
1 Introduction
개방형 텍스트 생성(Open-ended text generation)의 목표는 주어진 프롬프트를 기반으로 유창하고 일관성 있는 문장을 생성하는 것으로, 글쓰기 보조, 이야기 생성 등의 다양한 응용 분야에서 활용될 수 있다(Brown et al., 2020).
기존의 대표적인 접근법은 주로 대규모 사전 학습된 언어 모델을 기반으로 샘플링을 수행하지만(Holtzman et al., 2020; Fan et al., 2018; Radford et al., 2019), 긴 문장 생성 시 불행한 샘플링 선택이 누적되어 텍스트가 일관성을 잃고 주제에서 벗어나는 경향이 있다(Eikema and Aziz, 2020; Maynez et al., 2020).
- 근데 지금은 아닐거 같긴함 ?
반면 가장 가능성이 높은 문장을 찾는 탐색 방식은 짧고, 반복적이며, 지루한 문장을 생성하게 되므로(Holtzman et al., 2020), 확률 최대화는 개방형 텍스트 생성에서 부적절한 디코딩 목표임을 나타낸다.
본 연구는 **대조적 디코딩(Contrastive Decoding, CD)**이라는 새로운 탐색 기반 방식을 제안하여, 일관성을 유지하면서도 유창하고 어휘적으로 다양한 텍스트를 생성할 수 있도록 한다.
- 그림 1에서 보듯이, 대조적 디코딩은 OPT-13B와 같은 큰 규모의 언어 모델(전문가 모델)과 OPT-125M과 같은 상대적으로 작은 언어 모델(초보자 모델)을 사용한다.
- CD는 전문가 모델과 초보자 모델의 로그 확률(log-probabilities)의 차이를 최대화하는 텍스트를 탐색하며, 전문가 모델에서 충분히 높은 확률을 갖는 토큰만을 허용하는 타당성(plausibility) 제약을 부여하여 탐색 공간을 제한한다.
대조적 디코딩이 효과적인 이유는, 언어 모델에서 흔히 나타나는 실패 사례(짧거나 반복적이거나 무관하고 흥미롭지 않은 문장)는 작은 모델에서 더욱 빈번하게 발생하기 때문이다.
- 이러한 바람직하지 않은 출력은 두 모델의 로그 확률 차이를 계산할 때 추가적으로 강조가 줄어든다.
- 반대로, 큰 모델(전문가 모델)은 사실적 정보와 같은 더 바람직한 문장에 높은 확률을 부여하는 경향이 있으며, 이는 대조적 디코딩 과정에서 더욱 강조된다.
그림 1의 예시를 보면, 전문가 모델이 “Hawaii”와 “Honolulu”와 같은 이전 토큰들에 높은 확률을 부여하여 greedy 탐색 시 반복적인 문장을 생성하거나, “Washington”과 같은 의미 없는 토큰을 샘플링해 비일관적 문장을 생성할 수 있다.
- 그러나 실제 정답인 “1961”과 같은 토큰은 확률이 0.1에 불과하지만 대조적 디코딩에 의해 강력하게 선호되며, 결과적으로 올바른 사실 정보가 포함된 문장을 생성하게 된다.
- 이는 대조적 디코딩이 전문가 모델의 장점을 강조하고 초보적 경향성을 제거한 출력을 생성함을 시사한다. 또한 §4에서는 대조적 디코딩에 대한 실용적인 해석을 제공한다.
최근 생성 품질 향상을 위한 방법으로는 unlikelihood training(Welleck et al., 2020)이나 contrastive learning(Su et al., 2022; An et al., 2022)과 같은 훈련 기반 방식이 존재하지만, 대조적 디코딩은 추가적인 훈련이 전혀 필요 없다.
- 단순히 두 개의 동결된(frozen) 언어 모델을 규모 차이를 두고 활용하는 것만으로도, 큰 모델 하나만을 사용하는 것보다 더 높은 품질의 문장을 생성할 수 있다.
- 또한 전문가 모델과 초보자 모델의 규모 차이가 클수록 더 좋은 성능을 얻을 수 있으며(§7.1), 결과적으로 초보자 모델의 연산 비용은 낮아지고 추론 속도에도 거의 영향을 미치지 않는다.
본 연구는 위키피디아, 이야기 생성, 뉴스 등 세 가지 도메인에서 개방형 텍스트 생성에 대한 대조적 디코딩의 성능을 평가하였다.
- GPT2-XL vs. GPT2-small, OPT-13B vs. OPT-125M 등 다양한 규모의 모델 조합을 평가에 사용했다.
- nucleus sampling, top-k, typical decoding 및 SimCTG와 같은 네 가지 기존 디코딩 방법과 비교했을 때, 대조적 디코딩은 인간 평가와 자동 평가 지표 모두에서 생성된 문장의 일관성을 유의미하게 향상시켰으며, 유창성 측면에서도 기존 방법들과 비슷하거나 더 우수한 결과를 보였다.
2 문제 정의 (Problem Statement)
본 연구는 개방형 언어 생성(open-ended language generation)의 디코딩 방법을 다룬다. 개방형 언어 생성이란 언어 모델이 주어진 입력 프롬프트(prompt)를 바탕으로 유창하고 일관성 있는 후속 문장(continuation)을 생성하는 것을 의미한다. 구체적으로, 길이가 비교적 짧은 프롬프트 이 주어졌다고 하자. 여기서 는 어휘 집합 내의 토큰(token)이다. 디코더는 이 프롬프트에 이어지는 길이 의 후속 문장 을 생성해야 한다.
우리는 사전 학습된(pre-trained) 자기회귀(autoregressive) 언어 모델 을 사용하여 텍스트를 생성한다. 디코딩 단계에서, 모델은 이전 문맥을 조건으로 하여 한 번에 한 토큰씩 순차적으로 생성한다. 즉 다음과 같은 방식이다:
여기서 는 이전 토큰들 를 조건으로 한 다음 토큰의 확률 분포이다. 본 논문에서는 모델을 구분하기 위해 아래 첨자를 사용하여 표시한다. 즉, 아마추어(amateur) 모델은 로 (예: GPT-2 small), 전문가(expert) 모델은 로 (예: GPT-2 XL) 나타낸다.
기존의 대표적인 디코딩 방법 중 하나는 매 단계에서 잘린(truncated) 확률 분포로부터 다음 토큰을 샘플링하는 방식이다.
예를 들어
- 뉴클리어스 샘플링(nucleus sampling, Holtzman et al., 2020)은 다음 토큰의 확률 분포 중 상위 p퍼센트(percentile)에 속한 후보에서 샘플링하며,
top-k 샘플링(Fan et al., 2018)은 다음 토큰의 확률 분포에서 상위 k개의 후보 중에서만 샘플링한다. - 또 다른 일반적인 접근법은 가장 확률이 높은 문장 시퀀스를 탐색하는 greedy 디코딩 또는 빔 탐색(beam search, Wu et al., 2016)이지만, 이는 반복적이고 지루한 문장을 생성하는 단점이 있다.
3 Contrastive Decoding
3.1 대조적 목적 (Contrastive Objective)
규모가 작은 언어 모델(LM)은 규모가 큰 모델보다 반복적이거나, 주제를 벗어나거나, 자기 모순을 일으키는 등 바람직하지 않은 텍스트 패턴을 생성하는 경향이 강하다. 예를 들어, 전문가 모델(규모가 큰 LM)과 아마추어 모델(규모가 작은 LM)이 둘 다 반복적인 토큰에 가장 높은 확률을 부여할 때조차, 전문가 모델은 이 결정에 대해 상대적으로 덜 확신하며, 반복적이지 않은 다른 좋은 문장에도 상당한 확률을 부여하는 경우가 많다.
대조적 디코딩은 이러한 관찰에서 영감을 얻었다.
- 이 방식의 목표는 규모가 작은 아마추어 모델이 부각시키는 바람직하지 않은 행동을 걸러내고, 규모가 큰 전문가 모델의 바람직한 행동만을 남겨 텍스트를 생성하는 것이다.
이 직관을 구체화하기 위해, 다음과 같이 대조적 목적 함수 를 정의한다.
이 목적 함수는 규모가 큰 전문가 모델이 선호하는 텍스트 패턴을 보상하고, 규모가 작은 아마추어 모델이 선호하는 패턴에 벌칙을 부여한다.
- 그러나 아마추어 모델이 항상 잘못된 것만은 아니다.
- 작은 규모의 모델이라도 영어 문법의 기본적 요소(예: 주어-동사 일치)나 상식적 지식을 잘 포착할 수 있다.
- 따라서 아마추어 모델의 모든 행동을 무차별적으로 처벌하면, 이러한 올바른 간단한 패턴들까지 잘못 억제하게 되는 문제(False negative)가 생기고, 오히려 타당하지 않은 토큰을 보상하는 문제(False positive)가 발생할 수 있다.
- 이 문제를 해결하기 위해, 우리는 대조적 목적을 보완하는 **타당성 제약(plausibility constraint)**을 추가로 도입하여, 위와 같은 실패 사례를 방지한다.
3.2 적응형 타당성 제약 (Adaptive Plausibility Constraint)
앞서 언급한 문제를 해결하기 위해, 우리는 전문가 언어 모델(LM)의 확신(confidence) 수준을 활용하여 전문가 모델이 높은 확신을 보일 때 대조적 목적의 효과를 제한하는 적응형 타당성 제약(adaptive plausibility constraint) 를 제안한다.
구체적으로 제약 조건은 다음과 같이 정의된다:
여기서 는 하이퍼파라미터로, [0, 1] 범위의 값을 가지며 전문가 모델 의 다음 토큰 확률 분포를 잘라낸다(truncate).
- 값이 클수록 확률이 매우 높은 토큰들만 남기고 더 적극적으로 후보를 제한하게 되며, 반대로 값이 작을수록 확률이 상대적으로 낮은 토큰들도 생성 후보로 허용하게 된다.
- 본 논문에서는 일관되게 값을 사용한다.
- 그러면 전문가, 아마추어 모두 낮게 예측하는 토큰은 걸러짐 (거짓 긍정)
- 전문가, 아마추어 모두 매우 높게 예측하는 토큰이 있는 경우 후보가 이 토큰만 남기 때문에 괜찮음
- 근데 그래도, 후보 토큰들중 전문가, 아마추어 둘다 적당히 높은 logit을 예측하는 경우 안뽑히는 문제가 있는거 같은데?
- 뭔가 아마추어가 예측한 logit을 항상 negative로 판단하는게 좋을거 같지는 않은데... 흠
이러한 적응형 타당성 제약 조건은 대조적 목적에서 나타나는 두 가지 오류(거짓 긍정 및 거짓 부정)를 보완한다.
-
거짓 긍정(False positives)
제한되지 않은 대조적 목적만으로는 실제로 타당하지 않은 토큰이 높은 점수를 받을 수 있다. 예를 들어, 그림 1의 문맥에서 토큰 “NetMessage”는 전문가 모델에서 확률이 , 아마추어 모델에서 확률이 으로 매우 낮은 타당성을 가진다. 하지만 이 토큰은 대조적 점수(log )가 10.6으로 매우 높아, 실제로 타당한 토큰인 “1961”이나 “Hawaii”보다 높은 점수를 얻게 된다. 이를 방지하기 위해 는 낮은 확률을 가진 토큰들을 후보군에서 배제하고 확률이 높은 토큰들만 남긴다. -
거짓 부정(False negatives)
결정이 쉬운 상황에서, 전문가와 아마추어 모델이 모두 높은 확률을 부여한 올바른 토큰이 대조적 목적에서 낮은 점수를 얻는 경우가 발생할 수 있다. 예를 들어, “unicorn”이라는 단어는 토크나이제이션(tokenization)에 의해 “unic”과 “#orn”이라는 두 하위 단어(subword)로 나누어지는데, “unic” 뒤에 “#orn”이 올 확률은 두 모델 모두 약 0.99로 매우 높지만, 이 경우의 대조적 점수는 로 낮아, 실제로 나쁜 후속 토큰들보다 훨씬 낮게 평가된다.
이러한 상황에서 는 전문가 모델의 확신도(특정 시간 단계에서 최고 확률 토큰과의 비율로 정의됨)를 활용하여 거짓 부정 상황을 피한다.
전문가 모델은 쉬운 결정 상황에서는 매우 높은 확신도를 보이며, 아마추어 모델이 보이는 바람직하지 않은 행동에 대해서는 높은 확신을 보이지 않는다. 전문가 모델은 다른 후보 토큰에도 충분한 확률 질량(probability mass)을 분산시키기 때문이다.
결과적으로 전문가 모델이 하나의 토큰에 대해 매우 확신을 가지는 경우, 는 후보군을 단 하나의 토큰으로 축소하며, 이 경우 대조적 목적의 영향은 무력화된다.
- 왜냐하면 단 하나의 토큰만 남았다면 대조적 목적과 상관없이 항상 해당 토큰이 선택되기 때문이다.
3.3 전체적인 방법론 (Full Method)
대조적 목적과 적응형 타당성 제약을 결합하여, 최종적인 **대조적 디코딩(Contrastive Decoding)**은 다음과 같이 정의된다:
위 목적 함수는 문장(sequence) 수준에서 정의된 것으로, 직접 최적화하기 어렵다. 따라서 이를 토큰 수준의 점수로 인수분해하여 최적화 가능하도록 한다:
이렇게 얻은 CD-score를 최적화하기 위해, 우리는 빔 탐색(beam search)을 적용한다.
우선 타당성 제약 을 적용하여 전문가 모델에서 충분히 높은 확률을 가지지 못한 토큰들을 먼저 제거한 후, 남은 토큰들을 대조적 점수(전문가 모델과 아마추어 모델의 로그 확률 차이)에 따라 평가하여 순위를 매긴다.
결과적으로, 최종적으로 선택되는 토큰들은 전문가 모델에서 타당성을 인정받으면서 동시에 아마추어 모델의 특성과 가장 적게 닮은 토큰들이 된다.
3.4 아마추어 모델의 선택 (Choice of Amateur)
대조적 디코딩에서 아마추어 LM의 선택은 매우 중요한 결정이다. 앞서 §3.1에서 논의한 것처럼, 아마추어 LM은 전문가 LM에서 제거하고 싶은 바람직하지 않은 행동을 잘 나타내는 모델을 선택해야 한다. 이를 위해 세 가지 측면을 고려할 수 있다.
(1) 모델의 크기(Scale)
모델의 크기가 작을수록 모델링 능력이 떨어지고 오류 발생 가능성이 높아진다. 따라서 일반적으로 전문가 모델과 같은 계열의 모델 중에서 가장 작은 모델을 아마추어 모델로 사용한다. 예를 들어 전문가 모델이 OPT-13B라면, 같은 계열에서 가장 작은 OPT-125M을 아마추어 모델로 선택한다. GPT-2 XL이 전문가라면 GPT-2 small을 아마추어로 선택한다. 본 연구는 이러한 선택이 적절한지 §7.1에서 실험적으로 확인한다.
극단적으로, n-gram 모델을 아마추어로 사용할 수도 있다. 하지만 n-gram 모델은 능력이 너무 낮아서 전문가 모델과 유사한 실패 패턴을 제대로 파악하지 못하고, 따라서 오히려 생성 품질을 저하시킬 수 있다.
(2) 온도(Temperature) 조정
아마추어 LM의 온도(temperature, )를 조정함으로써 모델의 행동을 바꿀 수 있다. 예를 들어 높은 온도()를 적용하면 확률 분포가 평탄해지고, 낮은 온도()를 적용하면 아마추어 모델이 가장 가능성 높은 토큰(mode)에 확률을 집중시키게 되어 반복과 같은 잘못된 패턴을 더 잘 드러내게 된다.
따라서 아마추어 모델의 온도를 조절하여 대조적 디코딩에서 억제할 행동을 강조할 수 있다.
본 논문의 주요 실험에서는 또는 으로 설정하며, 이 결정이 생성 품질에 미치는 영향을 §7.2에서 분석한다.
(3) 컨텍스트 윈도우(Context Window)
아마추어 LM의 능력을 제한하기 위해 컨텍스트 윈도우(context window)를 줄일 수도 있다(Li et al., 2016). 예를 들어 아마추어 LM은 입력 프롬프트 전체가 아니라, 그 중 마지막 토큰 만을 조건으로 사용하도록 제한할 수 있다.
- CAD 저자들이 이 부분을보고 실험했을듯
즉, 전문가 LM은 전체 프롬프트 에 조건을 부여하지만, 아마추어 LM은 마지막 토큰만을 이용하여 다음과 같은 형태로 디코딩한다.
아마추어 LM이 부분적인 프롬프트에만 조건을 부여함으로써 아마추어 LM의 일관성(coherence)이 약화되고, 결과적으로 대조적 디코딩은 전문가 LM의 높은 일관성을 더욱 부각하게 된다. 본 논문은 이 디자인 선택이 미치는 영향을 §7.5에서 연구한다.
4. 대조적 디코딩의 화용론적 해석 (CD as Pragmatic Communication)
앞서 대조적 디코딩을 공식적으로 정의하였다면, 여기서는 대조적 디코딩이 화용론적 관점에서 왜 타당한지에 대해 설명한다.
화용론(Pragmatics) 분야의 연구에 따르면 의사소통(communication)은 화자(speaker)와 청자(listener) 간의 협력적인 과정으로 간주된다(Grice, 1975). 이러한 접근법 중 일부(Horn, 1984; Levinson, 2000)는 의사소통에서 화자와 청자 사이의 상충관계(tradeoff)를 강조한다.
즉, 화자는 일반적으로 진실되고, 유창하고, 관련 있는 언어를 생산하면서 동시에 청자에게 유익하고 정보가 풍부한 말을 하도록 노력해야 한다.
우리의 대조적 목적 역시 이 상충관계로 설명할 수 있다. 여기서 전문가 LM은 지식이 풍부한 화자를, 아마추어 LM은 지식이 부족한 청자를 모델링한다고 볼 수 있다.
-
(1) 전문가 LM()의 확률을 높게 평가하고 타당성 제약을 적용하는 것은 전문가 LM이 확률을 높게 부여한 토큰을 생성하여, 결과적으로 유창하고 관련 있는 텍스트가 만들어지도록 돕는다. (예시: 그림 1에서 ‘1961’과 같은 올바른 토큰 선택)
-
(2) 아마추어 LM()의 확률을 낮추는 것은 아마추어 LM에게 너무 뻔하고 예측 가능한(따라서 정보량이 적은) 토큰을 억제하여 청자에게 보다 정보량이 풍부한(informative) 언어가 만들어지도록 유도한다. (예시: 그림 1에서 ‘Honolulu’, ‘Washington’과 같은 너무 흔하거나 부적절한 토큰 억제)
이 두 가지 기준을 결합하여, 대조적 디코딩은 관련 있으면서도 너무 예측 가능하지 않은 유익한 정보를 전달하는 의사소통의 목표를 달성하는 텍스트를 생성하게 된다.
- 전문가 / 아마추어로 나눠서 보면 위 설명이 그럴싸한데
- 개인적으로는 다양한 모델들이 동의하는 토큰은 제대로된 토큰?이라는 생각이듬
- 앙상블 디코딩개념으로 보면 토큰의 차이가아닌 토큰의 덧셈으로 결정하는것도 좋을거 같은데
4.1 대조적 디코딩의 특수 사례들 (Special Cases of Contrastive Decoding)
-
최대 확률(Maximum probability): 아마추어 LM을 균일(uniform) 분포로 설정하면, 대조적 디코딩은 전문가 LM의 로그 확률만을 최대화하는 형태로 축소된다.
-
N-gram 차단(N-gram blocking): 아마추어 LM을 생성된 텍스트의 prefix에 따라 업데이트된 n-gram 모델로 설정하면, 대조적 디코딩은 부드러운(soft) n-gram 차단을 수행하게 된다. 온도를 매우 작게 설정하면 이는 기존의 n-gram 반복을 명시적으로 금지하는 기법과 유사해진다(Paulus et al., 2018).
-
다양성 있는 디코딩(Diverse decoding): 전문가 LM과 아마추어 LM을 같은 모델로 설정하고 아마추어 LM의 컨텍스트 윈도우를 제한하면(§3.4), 이는 다이얼로그 시스템에서 흔히 쓰이는 최대 상호 정보(MMI, Maximum Mutual Information) 디코딩 목표와 동일해진다(Li et al., 2016). 이는 프롬프트와 후속 문장 간 점별 상호 정보를 명시적으로 최대화하는 기법이다. (이미 여기서 실험했네? CAD랑 같은개념인데)
5 실험 설계 (Experimental Setup)
5.1 데이터셋 및 평가 지표 (Datasets and Metrics)
개방형 텍스트 생성을 위한 실험을 위해 뉴스(news), 위키피디아(Wikipedia), 이야기(story) 등 세 가지 도메인을 대상으로 평가를 진행했다. 뉴스 도메인에서는 Wikinews의 뉴스 기사를 사용했고, 위키피디아 도메인에서는 **WikiText-103 데이터셋(Merity et al., 2017)**을, 이야기 도메인에서는 **BookCorpus(Zhu et al., 2015)의 Project Gutenberg 분할(split)**을 사용했다.
실험에서 프롬프트는 각 문서의 처음 32개의 단어로 구성되며, 이후 256개의 토큰(token)을 생성하도록 했다. 생성된 텍스트에 대해서는 자동 평가와 인간 평가를 모두 수행했다.
-
Diversity (다양성)
이 지표는 생성된 텍스트의 n-gram 반복 비율을 종합적으로 나타낸다.Diversity 값이 낮다는 것은 모델이 반복적인 텍스트를 생성한다는 뜻이며, 높다는 것은 어휘적 다양성이 뛰어남을 의미한다.
-
MAUVE
**MAUVE 점수(Pillutla et al., 2021)**는 생성된 문장 집합과 실제 참조 문장 집합 사이의 분포 유사도를 측정한다(점수가 높을수록 좋음). -
Coherence (일관성)
본 연구는 Su et al. (2022)를 따라 문장 임베딩(sentence embedding)을 사용하여 프롬프트()와 생성된 문장() 사이의 코사인 유사도를 통해 일관성을 근사적으로 측정한다.여기서 는 미리 학습된 SimCSE 문장 임베딩(Gao et al., 2021)이다.
-
Human Eval (인간 평가)
생성된 텍스트의 품질을 평가하기 위해 두 가지 핵심 요소인 유창성(fluency)과 일관성(coherence)을 측정한다. 유창성은 문법적이고 자연스러운 흐름을 가지는 텍스트를 의미하며(부자연스러운 반복, 웹 형식 등 제외), 일관성은 프롬프트와 주제가 일치하고 부자연스럽게 주제가 벗어나지 않는 것을 뜻한다. Amazon Mechanical Turk를 이용하여 평가자들이 동일한 프롬프트로 생성된 두 문장(A, B)을 읽고 더 유창하거나 더 일관적인 문장을 선택하거나 유사하다고 판단하도록 했다.
5.2 비교 기준 (Baselines)
제안된 **대조적 디코딩(CD)**은 다음과 같은 비교군들과 성능을 비교하였다.
-
샘플링 기반 방법들
-
Nucleus sampling (): Holtzman et al. (2020)
-
Top-k sampling (): Fan et al. (2018)
-
Typical decoding (): Meister et al. (2022)
-
-
탐색 기반 방법들
-
Greedy (최대 확률) 디코딩 (목적 함수로 전문가 모델 사용)
-
Contrastive Search (CS): Su et al. (2022); Su and Collier (2022)
-
이 중 nucleus sampling은 개방형 텍스트 생성에서 표준적으로 사용되는 방법이며 다양한 도메인에서 좋은 성능이 검증된 방식이다(Holtzman et al., 2020; DeLucia et al., 2020). Typical decoding은 최근 제안된 기법으로 어휘적 다양성(lexical diversity) 측면에서 우수하다(Meister et al., 2022). 따라서 인간 평가 시에는 nucleus sampling과 typical decoding을 주로 비교 대상으로 삼았다.
5.3 모델 및 하이퍼파라미터 설정 (Models and Hyperparameters)
본 연구에서 제안된 방법이 다양한 LM 계열 및 크기에서도 일반화된다는 것을 보이기 위해, 전문가 모델로는 **GPT-2 XL (1.5B), OPT (6.7B), OPT (13B)**를 사용하고, 각 모델 계열에서 가장 작은 크기의 모델(GPT-2 small (100M), OPT (125M))을 아마추어 모델로 설정했다.
대조적 디코딩에서는 두 가지 하이퍼파라미터를 도입하는데, 는 타당성(plausibility) 임계값을 조정하는 매개변수이며, 는 아마추어 LM의 temperature이다. 본 논문의 주 실험 결과에서는 항상 로 설정했으며, 이 설정은 매우 강건하며 다양한 도메인에서 잘 일반화됨을 확인했다. OPT 모델 실험에서는 아마추어의 temperature를 1.0으로, GPT-2 실험에서는 아마추어의 temperature를 0.5로 설정했다. 빔 크기는 5를 사용했다. 추가적으로 §7.2의 ablation study에서 하이퍼파라미터의 영향을 분석했으며, 실험 결과는 본 방법이 다양한 하이퍼파라미터 값에 대해 강건함을 보여주었다.
6 주요 실험 결과 (Main Results)
6.1 자동 평가 결과 (Automatic Evaluation)
표 1에서 나타난 것처럼, 대조적 디코딩(Contrastive Decoding, CD)은 뉴스, 위키피디아, 스토리 세 가지 도메인 모두에서 두 모델 크기(1.5B, 13B)에 걸쳐 MAUVE 점수와 일관성 점수(COH) 모두 다른 모든 비교 대상 디코딩 방법보다 뛰어난 성능을 보였다.
대조적 디코딩은 nucleus sampling과 typical sampling에 비해 다양성(diversity)이 비슷하거나 약간 낮은 수준이었지만, 다른 탐색 기반 방법들에 비해서는 훨씬 더 높은 다양성을 보였다.
Typical decoding과 nucleus sampling은 낮은 확률의 토큰을 선택함으로써 어휘적으로 더 다양한 텍스트를 생성하지만, 그로 인해 주제가 벗어나는(topic drift) 현상이 자주 발생한다. 예컨대, 스토리 도메인의 1.5B 모델에서 대조적 디코딩과 nucleus sampling의 다양성 점수 차이는 0.83 대 0.94로 가장 크지만, 모델 크기가 13B로 커지면 그 차이는 0.89 대 0.93으로 감소한다.
- 이는 전문가 모델이 더욱 커질수록 대조적 디코딩의 성능이 지속적으로 향상될 가능성을 시사한다.
- 이건 너무 긍정적 분석아닌가 ㅋㅋ 모델에 따라 그냥 다른거 같은데
대조적 디코딩은 일관성 점수 측면에서 모든 비교 대상보다 큰 차이로 뛰어난 성능을 보였으며, greedy 디코딩이 두 번째로 높은 일관성을 보였다. Greedy 디코딩이 높은 반복성에도 불구하고 좋은 일관성을 보인 이유는, 항상 같은 문장을 반복하는 것이 주제 이탈을 피하는 가장 단순한 방법이기 때문이다. 반면, 대조적 디코딩이 높은 일관성을 달성하는 이유는 다음 세 가지로 분석할 수 있다:
(1) CD는 목적 함수 최적화를 위한 탐색 방식을 사용하여, 샘플링 기반 방법에서 우연히 발생할 수 있는 주제 이탈을 방지한다.
(2) CD의 대조적 목적(contrastive objective)은 암묵적으로 일관성을 보상하는데, 이는 큰 모델이 일반적으로 작은 모델보다 더 일관된 문장을 생성하기 때문이다.
(3) 마지막으로, 아마추어 LM의 문맥 길이를 제한함으로써(§3.4), CD가 프롬프트와 더 밀접하게 연관된 텍스트를 생성하도록 추가적인 유도를 한다(Li et al., 2016).
6.2 인간 평가 결과 (Human Evaluation)
본 연구에서는 MAUVE 점수가 높게 나타난 표준 방식인 nucleus sampling과, 어휘적 다양성 점수에서 가장 우수한 typical decoding 두 가지 방법을 대상으로 인간 평가를 수행하였다.
표 2에서 보듯이, 대조적 디코딩은 세 도메인 및 두 모델 크기에 걸쳐 nucleus sampling 및 typical decoding과 비교하여 일관성이 매우 높은 텍스트를 생성했다.
평균적으로 평가자들은 일관성 측면에서 대조적 디코딩을 nucleus sampling보다 2.6배 더 선호했고, typical decoding보다는 6.4배 더 선호했다. 유창성 측면에서도 평가자들은 CD를 nucleus sampling보다 1.4배 더, typical decoding보다는 3.5배 더 선호했다.
6.3 정성적 예시 (Qualitative Examples)
표 3에는 정성적 예시(부분 생략)를 제시했다.
Nucleus sampling의 출력은 비디오 게임에서 음악으로 주제가 갑자기 바뀌는 주제 이탈이 나타났으며, 이메일 포맷이 섞여 있거나 서술적 3인칭 스타일에서 갑자기 대화적 1인칭 스타일로 전환되는 현상도 나타났다.
- 이는 인터넷 데이터를 통한 사전 학습 과정에서 나타나는 잡음이 반영된 결과이지만, 주어진 프롬프트의 맥락에서는 바람직하지 않은 특징이다.
- 반면 대조적 디코딩의 출력은 프롬프트에서 제시된 주제에 계속 머무르면서 게임의 여러 측면을 상세히 다루고 있어 내용과 스타일 면에서 훨씬 더 일관성이 뛰어났다.
- CD가 주제 이탈을 안하게 하는 효과가 있긴할텐데.. 음 greedy 개념처럼 토큰 후보를 제한하기 때문에 그런거 아닌가 그냥?
추가적인 정성적 예시들은 부록에서 확인할 수 있다.
7 분석 연구 (Ablation Studies)
7.1 전문가 및 아마추어 모델의 크기 (Size of Amateur and Expert LMs)
§3.4에서 직관적으로 제시한 것처럼, 작은 규모의 언어 모델을 아마추어로 선택하면 대조적 디코딩의 결과가 향상된다는 가설을 그림 2를 통해 실증적으로 검증하였다.
대각선에 위치한 값들은 전문가와 아마추어 모델이 동일할 때를 나타내며, 이때는 두 모델 간의 차이를 활용할 수 없기 때문에 매우 반복적인 텍스트(낮은 다양성 점수)가 생성되었다.
상단 삼각형 영역은 전문가 모델이 아마추어 모델보다 작게 설정된 경우인데, 이런 직관에 반하는 설정은 열등한 품질의 텍스트를 생성했다.
하단 삼각형 영역은 전문가 모델이 아마추어 모델보다 크게 설정된 경우이며, 이때는 다양성 및 MAUVE 점수 모두에서 우수한 품질의 텍스트가 생성되었다.
특히, 가장 좋은 설정은 가능한 한 가장 큰 모델을 전문가로, 가장 작은 모델을 아마추어로 선택하는 경우(하단 좌측 모서리)임을 알 수 있다.
- 직관그대로 전문가 모델은 클수록 좋고 아마추어 모델은 작을수록 좋다?
- 근데 아마추어 모델이 너무 이상한건 또 안된다고 함 (아래)
그렇다면 이 경향이 극도로 작은 용량의 모델(예: n-gram 모델)에도 일반화될까?
- 실험 결과, trigram 모델을 아마추어로 사용할 경우 텍스트 품질이 매우 낮았으며, MAUVE 점수는 단 0.73에 불과했다.
- 이러한 결과는 대조적 디코딩이 전문가 모델의 실패 패턴(failure modes)을 잘 드러낼 수 있는 아마추어 모델로부터 가장 많은 혜택을 얻으며, 너무 용량이 작은 n-gram 모델은 전문가 모델의 실패 패턴을 충분히 강조하지 못함을 시사한다.
7.2 아마추어 모델의 온도(Temperature)의 영향 (The Impact of Amateur Temperature)
§3.3에서 아마추어 모델의 온도(temperature, )를 하이퍼파라미터로 도입하였다. 본 연구에서는 에 대한 민감도를 그림 3을 통해 분석하였다.
높은 값은 아마추어 모델의 분포를 균등 분포에 가깝게 만들어서 반복적인 텍스트를 생성하게 된다.
- 이는 반복적 생성이 더 이상 효과적으로 처벌(penalized)되지 않기 때문이다.
- temperature이 커지면 평평한 분포가 되기 때문에 아마추어 모델이 반복적인 텍스트 생성하여 별 의미가 없음
반대로 작은 값은 아마추어 LM의 분포를 더욱 뾰족하게(spiky) 만들어, 아마추어 모델의 바람직하지 않은 패턴을 강조하여 대조적 디코딩으로 더 좋은 출력을 얻을 수 있게 한다.
- temperature이 작아지면 greedy하게 변하기 때문에 더 유의미해짐
- 근데 너무 작으면 또 안되는거 같고 0.5~1.5사이가 적절하다는거 같음
- 약간 너무 실험적인거 결과 아닌가? 이 분석대로라면 temperature이 0에 가까운게 더 좋아야 하는데?
그림 3에서 보듯이, 를 [0.5, 1.5] 사이로 설정할 때 일관성과 유창성 측면에서 견고하고 좋은 성능을 보임을 확인했다.
7.3 샘플링 vs 탐색 (Sampling v.s. Search)
대조적 디코딩은 타당성 제약(plausibility constraints)을 만족하면서 대조적 목적을 최대화하는 탐색 기반(search-based) 접근법이다. 여기서는 동일한 목적 함수를 기반으로 한 샘플링(sampling) 방식과 비교하였다. 구체적으로, §3.3에서 정의한 CD-score() 값을 softmax로 정규화하여 확률 분포로 만든 후, 여기에서 다음 토큰을 샘플링하였다.
표 4와 표 5의 결과에서 보듯이, 같은 목적에서 샘플링을 통해 생성된 텍스트는 탐색을 통해 생성된 텍스트보다 품질이 떨어졌다.
자동 평가와 인간 평가 모두에서, 샘플링 기반(CD(sample)) 방식의 유창성과 일관성은 탐색 기반(CD(search)) 방식보다 뒤쳐졌지만, 여전히 꽤 양호한 출력을 생성하였다.
7.4 타당성 제약의 중요성 (Plausibility Constraints)
§3.2에서 타당성 제약(Vhead)을 포함하는 것이 중요하다고 언급하였다.
이 주장을 검증하기 위해, 타당성 제약(Vhead)을 제거한 ablation 연구를 수행했다.
이 경우 생성된 텍스트는 심각한 유창성 문제를 보였으며, 표 4의 CD(-Vhead) 행에서 MAUVE 점수가 단 0.01에 불과한 것을 통해 쉽게 확인할 수 있다.
- 다른 방법에서도 타당성 제한은 어쨌거나 들어가는게 좋을려나..
7.5 프롬프트 문맥 포함의 영향 (Prompt Inclusion)
추가로 §3.4에서 설명한 프롬프트 문맥(prompt context)을 아마추어 모델에 제공하는 방식을 제거하여 ablation 실험을 진행하였다.
- 즉, 전문가 모델과 아마추어 모델이 모두 전체 에 조건을 부여하도록 설정했다.
- 표 5에서 나타난 결과는, 이러한 설정이 일관성과 유창성에 약간의 부정적 영향을 미친다는 것을 보여주었다.
CAD 방식이 이 방법에 대한 광범위한 실험을 한 것으로 보면 되는데..
- 이 논문에서는 너무 비중을 적게 다뤄서 아쉽긴함
8 관련 연구 (Related Work)
디코딩 방법 (Decoding Methods)
디코딩 알고리즘은 크게 탐색(search) 기반과 샘플링(sampling) 기반으로 나눌 수 있다. 기존의 탐색 기반 방법들(예: greedy decoding, beam search)은 요약(summarization) 같은 목표 지향적(task-oriented) 작업에서 정확한 생성을 이루지만, 스토리 생성과 같은 개방형(open-ended) 설정에서는 반복적이고 지루한 텍스트를 생성하는 문제가 있다. 반면 샘플링 기반 방법들(예: nucleus sampling (Holtzman et al., 2020), top-k (Fan et al., 2018), typical decoding (Meister et al., 2022))은 개방형 설정에서 더 다양하고 흥미로운 텍스트를 생성하지만, 주제가 부자연스럽게 벗어나는(topic drift) 문제가 있다. 제안된 대조적 디코딩(contrastive decoding)은 탐색 기반 방식을 사용하여 주제 이탈을 방지하고, nucleus와 top-k 샘플링에 비해 일관성을 높이면서 유창성과 어휘적 다양성도 유지하거나 향상시킨다.
텍스트 생성에서의 대조적 접근 (Contrast in Text Generation)
텍스트 생성에서 대조(contrast)의 아이디어는 다양한 맥락에서 연구되어 왔다(He et al., 2019; Li et al., 2016; Su et al., 2022). 본 연구와 가장 밀접한 연구는 **DExpert (Liu et al., 2021)**인데, 이는 독성(toxic)이 없는 데이터를 기반으로 학습된 전문가 모델과 독성이 있는 데이터로 학습된 반(反)-전문가 모델(anti-expert)을 대비시켜 독성 없는 텍스트를 생성하는 제어 가능한(controllable) 생성을 수행했다. 반면 본 연구는 개방형 텍스트 생성을 중심으로 하며, 별도의 도메인이나 작업(task)과 관계없이 더 작은 규모의 언어 모델을 anti-expert로 사용하는 것만으로도 고품질 텍스트 생성을 할 수 있음을 보여준다. 대조적 디코딩은 별도의 추가 학습 없이 서로 규모가 다른 기존(off-the-shelf) 언어 모델을 사용하여 우수한 텍스트를 생성한다.
9 결론 및 향후 연구 방향 (Conclusion and Future Work)
본 연구는 규모가 서로 다른 언어 모델을 대조하여 탐색 기반으로 디코딩을 수행하는 방법인 **대조적 디코딩(Contrastive Decoding)**을 제안하였다. 본 논문에서는 개방형 텍스트 생성을 중심으로 실험을 수행하였으며, nucleus sampling과 같은 대표적인 기존 방법보다 유창성과 일관성 측면에서 우수한 성능을 달성하였다.
향후 연구로는, 전문가(Large LM)와 아마추어(Small LM) 모델을 대조하는 아이디어를 다양한 설정으로 확장할 수 있다. 예컨대 같은 모델의 초기 체크포인트와 나중 체크포인트를 대조하는 방식을 생각해 볼 수 있다. 본 연구가 향후 언어 모델의 대조를 활용하는 다양한 탐구를 촉진하기를 기대한다.
한계점 (Limitations)
본 논문은 개방형 텍스트 생성을 중심으로 대조적 디코딩의 유효성을 입증하였다. 그러나 요약이나 기계 번역과 같은 목표 지향적(task-oriented) 생성 작업에서는 본 연구에서 사용한 방식(규모가 큰 전문가 모델과 작은 아마추어 모델을 대조)이 바로 적용되기 어렵다. 이는 목표 지향적 작업에서는 작은 아마추어 모델조차 상당히 품질이 높은 출력을 생성하기 때문이다. 실제로 실험적으로 확인한 바에 따르면, 작은 요약 모델(BART-small을 요약 데이터에 fine-tuning한 경우)을 아마추어 모델로 사용할 때의 성능(ROUGE 점수)은 단순히 균등 분포(uniform distribution)를 사용하는 경우(사실상 log-확률 기반의 beam search와 같음)보다 낮았다.
따라서 향후 연구에서는 목표 지향적 생성을 수행할 때 아마추어 모델이 갖추어야 할 필수적인 속성이 무엇인지 탐구할 예정이다(예: 요약, 테이블-텍스트 변환 등).
Reference
댓글
댓글 쓰기