본문 바로가기

논문 리뷰/Language Model

OpenChat: Advancing Open-source Language Models with Mixed-Quality Data

C-RLFT를 통해 SFT dataset으로도 online fine-tuning을 가능하게 함

 

[Github]

[arXiv](Current version v1)

[Online Demo]

 

Chatbot UI

 

openchat.team

 

 

Abstract

혼합 품질 데이터를 사용하여 LLM을 학습할 수 있는 C-RLFT(Conditioned-Reinforcement Learning Fine-Tuning) 제안, 그리고 이를 활용하여 학습한 chatbot인 OpenChat 소개

 

 

 

Introduction

LLM의 fine-tuning에는 supervised fine-tuning(SFT), reinforcement learning fine-tuning(RLFT) 방법이 있다.

 

SFT dataset에는 전문가 데이터와 차선책 데이터가 혼합되어 있고, 이러한 데이터들을 동일하게 취급하는 것은 좋지 않다. 개선책으로 human feedback을 통한 RLFT가 떠올랐지만 이는 데이터 수집에 상당한 비용이 필요하다.

 

선호도 label이 없는 SFT data를 활용하여 LLM을 fine-tuning 할 수 있는 C-RLFT(Conditioned-Reinforcement Learning Fine-Tuning) 제안.

 

 

 

Preliminaries 

QA dataset D = ({x, y})에서 사전 훈련된 모델 π는 Q → A 확률분포 매핑으로 간주할 수 있다.

 

Supervised Fine-tuning (SFT)

SFT는 D를 직접 사용하여 π를 fine-tuning 한다. 이는 최대 우도 추정을 하는 것과 같음.

SFT의 단점은 필연적으로 차선책 데이터가 발생하여 일정한 성능 저하가 발생한다는 것이다.

 

Reinforcement Learning Fine-tuning (RLFT)

또 다른 방법은 human feedback 또는 classifier로 보상 r(x, y)을 모델링하여 LLM을 fine-tuning 하는 것이다.

 

LLM fine-tuning을 위한 일반적인 프레임워크는 KL-regularized RL이다. 이는 fine-tuned model이 원래 모델 분포와 크게 차이 나지 않도록 KL 페널티를 부여한다.

RLFT의 단점은 수집에 매우 비용이 많이 드는 데이터가 필요하다는 것이다.

 

 

 

OpenChat

선호도 label이 없고 전문가 데이터 Dexp와 차선책 데이터 Dsub가 포함된 SFT dataset을 통해 LLM을 fine-tuning 하는 것이 목표이다. 인기 있는 SFT dataset인 ShareGPT를 예로 들면, GPT-4 대화를 Dexp로, GPT-3.5 대화를 Dsub로 간주할 수 있다.

 

Dexp, Dsub만으로 보상을 도출할 수는 없지만 둘의 품질 차이가 암묵적인 보상 신호로 작용할 수 있고, 이를 통해 새로운 통찰력을 제공한다.

 

Class-Conditioned Dataset and Rewards 

Class condition c ∈ {GPT-4, GPT-3.5}를 조건으로 하면 Dc = {(xi, yi, ci)}.

 

다음과 같은 coarse-grained reward를 인코딩할 수 있다.

 

Fine-Tuning via C-RLFT

Coarse-grained reward를 그대로 사용할 수는 없으므로 2-stage의 개선책:

 

Class-conditioned policy

사전 훈련된 LLM을 class-conditioned model πc로 fine-tuning.

각 예제에 대해 다음과 같이 화자를 명시하는 프롬프트로 훈련한다.

 

또한 LIMA와 같이 각 화자를 구별하기 위해 발화 끝에 항상 <end of token>을 붙인다.

 

Policy optimization

원래의 RL목표를 다음과 같이 수정한다.

 

π0가 아닌 πc를 정규화에 이용하는 이유:

  • 오픈 소스 LLM의 경우 API 기반 모델보다 성능이 떨어지는 경우가 많다. (GPT-3.5 ≥ π0)
  • 추가적인 데이터 정보를 포함하고 있어 데이터 품질의 차별화에 도움을 줄 수 있다.

 

선행 연구에 따르면 KL-regularized 목표에 대한 최적해는 다음과 같은 형태를 취한다.

 

또한 AWAC에 따라 dataset Dc 하에서 π*와 πθ의 KL-divergence 최소화는 마지막 수식과 같은 weighted likeihood를 최대화함으로써 수행될 수 있다.

 

이 학습 목표는 fine-tuning 성능을 개선할뿐더러 KL-regularized RL과 달리 πθ를 초기화한 후에 사전 훈련된 모델 π0를 다시 로드할 필요가 없어 훈련 중 상당한 계산 리소스를 절약한다.

 

Model inference

추론 시 다음과 같은 프롬프트 사용.

 

 

 

Experiments