본문 바로가기
  • CobsLab upgrades your company value by AI technology
자연어 처리 논문

Calibrating Sequence Likelihood Improves Conditional Language Generation 논문 리뷰!!

by dmkdmk 2023. 3. 14.

안녕하세요 콥스랩(COBS LAB)입니다.

오늘 소개해 드릴 논문은 ‘Calibrating Sequence Likelihood Improves Conditional Language Generation’입니다.

해당 내용은 유튜브 ‘딥러닝 논문 읽기 모임'Calibrating Sequence Likelihood Improves Conditional Language Generation’ 영상 스크립트를 편집한 내용으로, 영상으로도 확인하실 수 있습니다. (영상링크:https://youtu.be/yLifwXr3Q9k)

 

 

첫 번째로 배경을 통해 기존 framework의 한계와 이를 극복하기 위한 연구들을 소개하고 두 번째로 본 논문에서 제안한 framework의 동작방식을 설명드리겠습니다. 세 번째로 text Generation task 데이터셋에서의 실험 결과를 소개하고

마지막으로 Contribution을 말씀드리면서 발표 마치겠습니다.

 

먼저 Conditional Language Generation taskInput context Sequence x가 주어졌을 때 target SequenceY의 확률을 학습함으로써 모델링합니다. 이때 생성 가능한 모든 text Sequence의 확률을 계산하는 것은 힘들기 때문에 Auto regressive 하게 순차적으로 token level prediction을 수행하며 이 과정에서 Maximum Likelihood Estimation을 학습 objective로 활용합니다.

 

text Generation에서 가장 이상적인 세팅은 각 Input context 마다 여러 개의 target Sequence를 가지는 것입니다. Sequence 간에 비교를 통해서 모델의 확률을 부정할 수 있다고 언급하였습니다. 하지만 대다수의 text Generation task 데이터셋은 한 개의 context마다 한 개의 target Sequence를 가지고 있습니다. 모델은 가장 그럴듯한 Sequence에 높은 확률을 활동하도록 학습하지만 이 Sequence들을 비교할 supervision이 없으면서 모델의 일반화능력에만 의존하게 됩니다.

 

또한 MLE framework의 경우 Teacher forcing을 이용하기 때문에 학습과 추론의 차이로 인한 exposure bias가 존재합니다. 이러한 exposure bias로 인해 Sequence 품질 저하가 더욱 악화될 수 있습니다. 정리를 하자면 MLE framework로 학습된 모델은 Sequence 간에 비교를 통해서 Likelihood을 교정할 능력이 부족합니다.

 

이러한 문제를 극복하기 위해 기존의 주된 접근방식입니다. 먼저 Sequence level reward를 학습하는 강화학습을 이용하는 방식입니다. 이에 선행 연구들은 Evaluation metric ROUGE 스코어 또는 사람의 의사에 대해 직접적으로 최적화하며 학습을 하였습니다.

 

두 번째로 2단계 framework입니다. Candidate를 생생하는 Generation 모델과 이를 재정렬하는 reranking 모델이 별도로 존재하여 추가적인 컴퓨팅이 필요하다는 문제점이 있었습니다.

 

마지막으로 본 연구에서 채택한 방식입니다. Sequence level의 Loss를 활용하는 것입니다. 이전 SOTA 연구에서는 Candidate 간의 Contrastive learning을 위한 Contrastive Loss와 기존의 cross entropy를 결합한 objectivemulti task Loss라고 명시를 했었습니다. 여기서 multi task는 서로 다른 역할을 하는 Loss를 결합하여 학습에 사용한다고 이해했습니다.

 

 

본 연구에서 제안하는 framework입니다. 대다수의 강화학습과는 달리 배치 학습으로 진행되며 Evaluation metric을 학습과정에 사용하지 않아서 Evaluation에 대해 직접적으로 최적화하지 않습니다. 또한 새로운 모델이 아닌 Fine tuned 모델을 이어서 새로운 objective에 학습하기 때문에 추가적인 컴퓨팅이 필요하지 않습니다.

Calibration stage 동작방식입니다. 먼저 Fine tuned 모델로부터 m개의 canditatedecoding 합니다.

 

Fine tuned 모델을 새로운 Objective에 이어서 학습진행합니다. Loss function은 다음 장부터 설명드리겠습니다.

 

새로운 ObjectiveCalibration LossRegularization Loss로 구성됩니다. 먼저 Calibration Loss는 모델이 decoding 한 candidate Sequence들이 있는데 이들의 Likelihoodcandidate Sequencetarget Sequence 간에 유사도에 따라 정렬하기 위한 Loss입니다. 이 유사도를 계산하기 위해 similarity function을 포함합니다.

 

Regularization Loss는 기존의 파인튜닝에 사용된 MLE Objective에서 크게 벗어나지 않도록 규제하기 위함입니다.

 

Calibration Loss에 대해 말씀드리겠습니다. 먼저 본 논문에서 새롭게 제안한 similarity function입니다. 2020년 ICLR에서 발표한 BERT 스코어 연구에서 제안된 수식을 활용하였습니다. 해당 연구에서는 SequenceBERT를 통해 embedding 한 representation 간의 유사도를 계산하였지만 본 연구에서는 decoderhidden state를 활용했습니다. 이를 통해 Input context x를 고려한 representation을 취할 수 있습니다.

 

 

Decoder hidden state 간의 코사인 유사도로부터 F1 스코어를 계산한 값이 두 Sequence 간의 유사도입니다. precisionRecall은 다음과 같습니다. 여기서 vector edecoder hidden state이며 span n에 대해서는 유사도를 계산합니다.

 

precesioncandidate Sequence에 나타나는 n개의 토큰에 대해서 target Sequence의 모든 n개의 토큰들과 유사도를 계산한 값이며 recallcandidatetarget을 바꾼 값입니다.

 

 

 

 

Calibration Loss입니다. 네 가지 유형으로 구분됩니다. 네 개 Loss 모두 target Sequence와 유사한 positive candidatetarget과 좀 다른 negative candidate 간의 차이를 극대화하는 방향으로 학습합니다.

 

먼저 Rank loss입니다. 단순히 positive candidatenegative보다 더 높은 확률을 갖도록 학습합니다.

 

Margin Losspositivenegative 간 유사도 차이만큼 positive candidatenegative보다 더 높은 확률을 갖도록 학습합니다.

 

List wise rank Losssimilarity에 따라 정렬을 했을 때 랭크의 차이만큼 positivenegative보다 더 높은 확률을 갖도록 학습합니다.

 

Expected reward Loss는 전체의 candidate 중에서 Similarity가 가장 높은 candidate이 더 높은 확률로 갖도록 학습합니다.

 

 

 

다음은 Regularization Loss입니다. 이는 Calibration 스테이지를 추가함으로써 Fine tuned 모델의 확률분포에서 크게 벗어나지 않도록 하기 위함입니다. 두 가지 유형을 사용하였습니다.

 

먼저 기존의 널리 쓰이는 방식인 cross entropy Loss입니다. 다음으로 KL divergence입니다. 여기서는 fine tuned 모델과 calibrated 모델의 확률 분포 차이를 낮추기 위해 사용되었습니다.

 

 

 

 

실험구성입니다. 먼저 Calibration stage를 추가함으로써 성능 향상이 이루어졌는지 또 Calibration Lossregularization Loss에 따른 성능차이등을 확인하기 위한 Ablation study입니다.

 

두 번째로 fine tuned only 모델과 비교를 했을 때 본 연구에서 제안한 모델은 어떤 장점이 있는지 확인하였습니다.

 

세 번째로 모델을 크기별로 모델 연산량에 따른 Generation 성능을 비교하였습니다.

 

사전에 학습된 PEGASUS 모델을 사용했으며 text 요약 task에 대한 실험을 수행하였습니다. similarity function 그리고 Calibration, regularization Loss 그리고 Candidate decoding method checkpoint 셀렉션에 따른 성능 관찰을 했습니다.

 

여기서 델타는 ROUGE 스코어의 기하 평균인 Rm 스코어의 개선율을 나타낸 것입니다. 모든 실험에서 fine tuned 모델보다 성능 개선을 확인할 수 있었습니다.

 

similarity function에 따른 성능 비교입니다. similarity function을 제외한 다른 요소는 고정된 채 실험을 진행하였습니다.

첫 번째는 ROUGE 스코어를 유사하도록 계산한 것입니다.

 

두 번째는 본 연구에서 제안한 방식으로 Input context x target Sequence y에 대한 임베딩을 얻는 decoder hidden state를 사용한 것입니다.

 

세 번째는 y와 y^의 토큰 임베딩으로부터 cosine 유사도를 계산하여 F1 스코어를 도출한 값으로 Input context x를 고려한 값은 아닙니다.

 

실험 결과를 보시면 본 논문에서 제안한 방식이 ROUGE 스코어보다는 조금 낮지만 ROUGE 스코어 점수에 준하는 성능을 보이는 것을 알 수 있습니다.

 

다음으로 Calibration Lossregularization Loss에 따른 성능 비교입니다.

Calibration Loss rank Loss를 사용했을 때 가장 성능이 높았습니다.

regularization LossKL divergence를 사용했을 때 가장 높았지만 cross entropy와 큰 차이를 보이지는 않았습니다.

 

다음으로 candidate decoding 메서드와 checkpoint selection에 따른 성능입니다. m개의 candidatedecoding 할 때 메서드에 따른 성능을 비교한 것입니다. beam search를 사용했을 때 가장 성능이 높았고 또 checkpoint selectionperplexity를 기준으로 했을 때 가장 높은 성능을 보였습니다.

 

 

 

decoding method candidate 수에 따른 성능을 비교한 것입니다.

그래프 범례에서 앞에는 candidate decoding 방법 그리고 뒤에는 Evaluationdecoding 방법입니다. 여기서 도출할 수 있는 인사이트는 Fine tuned only 모델은 candidate 수가 많아질 때 특정 지점을 넘어서면 성능을 하락하는 양상을 보입니다. 반면에 Calibrated 모델은 향상되는 모습을 보입니다.

 

 

 

 

 

 

 

모델 크기별 모델 연산량과 그에 따른 Generation 성능을 비교한 것입니다. Fine tuned only 모델과 달리 Calibrated 모델은 candidate 수가 커질수록 성능이 향상됩니다. 또한 FLOPs가 커질수록 성능이 향상되는 경향을 보입니다. 앞에 SAMSumCNN/DM 데이터셋에서는 Calibration 모델에서 더 작은 모델이 큰 모델에 준하는 성능을 보이기도 했습니다.

 

 

최종 결과입니다. 네 가지 Language Generation task에 대해서 이전 SOTA와의 성능을 비교한 것입니다. 각 데이터셋에서 가장 높은 성능을 초록색으로 칠하였고 보시는 것과 같이 대부분에서 SOTA를 달성하였음을 알 수 있습니다.

마지막으로 논문의 Contribution을 정리한 것입니다. Calibration stage를 추가함으로써 기존의 MLE frameworkuncalibrated 문제를 해결하여 SOTA 또는 그에 준하는 성능을 보였습니다.

 

두 번째로 candidatetarget 간의 similarity를 계산할 수 있는 새로운 매트릭을 제안하였습니다. BERT 스코어 수식을 활용하여 Input context x를 고려했을 때 candidatetarget 간의 유사도를 계산할 수 있습니다.

 

마지막으로 decoding heuristics에 대한 필요성을 제거하였습니다. 기존의 많은 연구들이 decoding시에 실험을 통해 heuristic 하게 최적화를 해야 되는 Beam size optimization 그리고 Length normalization, Repetition prevention 등 수행하였습니다. 본 연구에서는 이러한 최적화를 배제했음에도 불구하고 높은 성능을 보였습니다.

 

 

댓글