AI바라기의 인공지능

LLM : 논문리뷰 : Iterative Reasoning Preference Optimization 본문

논문리뷰

LLM : 논문리뷰 : Iterative Reasoning Preference Optimization

AI바라기 2025. 1. 21. 19:14

논문 정리 노트: Iterative Reasoning Preference Optimization

Purpose of the Paper

기존 preference optimization 방법들은 일반적인 instruction tuning task에서는 좋은 성능을 보였지만, reasoning task에서는 개선이 미미하거나 오히려 성능이 저하되는 문제가 있었습니다. 본 논문에서는 이러한 한계를 극복하고자, competing generated Chain-of-Thought (CoT) candidates 사이의 preference를 최적화하는 iterative 접근 방식을 개발했습니다.  특히, winning vs. losing reasoning steps를 최적화함으로써 reasoning 능력을 향상시키는 데 초점을 맞추었습니다. 이를 위해 negative log-likelihood (NLL) term을 추가한 modified DPO loss를 사용하여 reasoning 성능을 반복적으로 개선하는 Iterative Reasoning Preference Optimization (Iterative RPO) 을 제안합니다.

Key Contributions

  1. Iterative preference optimization을 reasoning task에 적용하여 성능을 크게 향상시키는 새로운 방법론인 Iterative RPO를 제안했습니다.
  2. Iterative RPO는 각 iteration에서 training prompts에 대해 multiple chain-of-thought reasoning steps와 final answers를 sampling하고, correct answers를 가진 pair winners와 wrong answers를 가진 pair losers로 구성된 preference pairs를 생성합니다.
  3. Preference pairs 학습을 위해 DPO loss에 negative log-likelihood (NLL) loss term을 추가하여 pair winners에 대한 학습을 강화하는 새로운 loss function을 제안했으며, 이것이 성능 향상에 중요함을 보였습니다.
  4. Iterative RPO는 Llama-2-70B-Chat model을 기반으로 GSM8K, MATH, ARC-Challenge와 같은 reasoning benchmark datasets에서 기존 model들을 뛰어넘는 state-of-the-art 성능을 달성했습니다. 특히, 추가적인 datasets를 사용하지 않고도 Llama-2-based models 중 가장 좋은 성능을 보였습니다.
  5. Iterative RPOreasoning 성능을 반복적으로 향상시킬 수 있음을 보였으며, 여러 ablation study를 통해 각 구성 요소의 중요성을 검증했습니다.

Novelty

  1. 기존 iterative preference optimization 방법들이 reasoning task에 적용되었을 때 성능 개선이 미미하거나 오히려 감소하는 한계를 극복하기 위해, reasoning steps 자체를 최적화하는 새로운 접근 방식을 제안했습니다.
  2. Reasoning 성능 향상을 위해 DPO loss에 negative log-likelihood (NLL) loss를 결합한 새로운 loss function을 제안하여, correct reasoning steps에 대한 학습을 강화했습니다.
  3. Iterative RPOreasoning task에 특화된 최초의 iterative preference optimization 방법론으로, reasoning 능력을 반복적으로 향상시킬 수 있는 새로운 가능성을 제시했습니다.

Experimental Highlights

  1. GSM8K dataset에서 zero-shot 성능 55.6%에서 Iterative RPO 적용 후 81.6% (majority voting 32 samples 사용 시 88.7%)로 큰 폭의 성능 향상을 보였습니다.
  2. ARC-Challenge dataset (ARC Corpus 사용 안 함)에서 77.8%에서 86.7% (majority voting 32 samples 사용 시 87.9%)로 성능이 향상되었습니다.
  3. MATH dataset (MATH pretraining corpus 사용 안 함)에서 12.5%에서 20.8% (majority voting 32 samples 사용 시 29.1%)로 성능이 향상되었습니다.
  4. Iterative RPO는 supervised fine-tuning (SFT), standard DPO, STaR 등 다른 baseline models을 크게 능가했습니다.
  5. Training iterations를 거듭할수록 reasoning 성능이 지속적으로 향상됨을 확인했습니다.
  6. NLL loss term이 Iterative RPO 성능 향상에 필수적임을 ablation study를 통해 보였습니다. DPO without NLL loss는 오히려 chosen sequences의 log probability가 감소하는 현상이 발생했습니다.
  7. Reasoning steps를 포함하지 않은 ARC-Challenge와 같은 dataset에서도 Iterative RPO가 효과적임을 보였습니다.

Limitations

  1. Iterative RPO는 이전 iteration에서 수집된 data를 재활용하지 않았습니다. 이를 활용하면 성능이 더 향상될 수 있지만, 본 논문의 핵심 주장에서 벗어나기 때문에 추가적인 연구가 필요합니다.
  2. 본 논문에서는 세 가지 reasoning task에 대해서만 실험을 진행했습니다. 명확한 정답이 없는 일반적인 instruction tuning tasks에 대한 성능은 추가 검증이 필요합니다.
  3. NLL loss가 본 연구에서는 효과적이었지만, 이는 training data가 이전 iteration의 model에서 수집되었기 때문일 수 있습니다. 다른 models에서 sampling된 arbitrary training sequences에 대해서는 NLL loss의 효과가 불분명합니다.

Future Work

  1. 이전 iterations에서 수집된 data를 재활용하여 성능을 더욱 향상시키는 방법을 연구할 수 있습니다.
  2. 다양한 reasoning tasks 및 general instruction tuning tasks에 대한 Iterative RPO의 효과를 검증하고 개선할 수 있습니다.
  3. NLL loss의 효과를 더 깊이 분석하고, 다양한 상황에 맞는 최적의 loss function을 탐색할 수 있습니다.
  4. Iterative RPO를 다른 preference optimization 방법들과 결합하여 성능을 더욱 향상시키는 방법을 연구할 수 있습니다.
  5. Modelreasoning 과정을 더 잘 이해하고 설명하기 위한 추가적인 분석을 수행할 수 있습니다.

 

 

 

 

Abstract

반복적 preference optimization 방법은 최근 일반적인 instruction tuning 작업에서 잘 수행되는 것으로 나타났지만, 일반적으로 reasoning 작업에서는 개선이 거의 없습니다. 이 연구에서 우리는 경쟁적으로 생성된 Chain-of-Thought (CoT) 후보 간의 preference를 최적화하는 반복적 접근 방식을 개발합니다. 이 방식은 이기는 reasoning 단계와 지는 reasoning 단계를 구별하여 최적화합니다. 우리는 추가적인 negative log-likelihood 항을 가진 수정된 DPO loss를 사용하여 train 합니다. 이 항은 매우 중요한 것으로 밝혀졌습니다. 이 방식을 반복적으로 적용했을 때 reasoning 능력이 향상되는 것을 확인했습니다. training set의 예제에만 의존하지만, 우리 접근 방식은 Llama-2-70B-Chat에 대해 GSM8K, MATH 및 ARC-Challenge에서 정확도를 높여, 추가로 소싱된 datasets에 의존하지 않는 다른 Llama-2 기반 models을 능가합니다. 예를 들어, GSM8K에서 55.6%에서 81.6%로 크게 향상되었고 32개 샘플 중 majority voting을 통해 88.7%의 정확도를 달성했습니다.

 

 

1 Introduction

Preference optimization은 supervised fine-tuning 단독으로 사용했을 때 보다 pre-trained language models을 인간의 요구 사항에 align 할 때 큰 이점을 제공하는 것으로 입증되었습니다. DPO와 같은 오프라인 방법은 단순성과 효율성으로 인해 점점 더 인기를 얻고 있습니다. 최근 결과에 따르면 이러한 오프라인 절차를 반복적으로 적용하는 것이 유익하다는 것이 밝혀졌습니다. 업데이트된 model은 더 유익한 새로운 preference 관계를 구성하는 데 사용되어 결과를 더욱 향상시킵니다. 이러한 방법에는 Iterative DPO, Self-Rewarding LLMs, SPIN 및 기타 방법이 포함됩니다. 이러한 접근 방식의 공통점은 일반적인 instruction tuning 작업에서 잘 수행되는 것으로 나타났지만, 표준 reasoning 작업에서는 보통 정도의 이득만 얻거나 성능이 저하되는 경우도 있다는 것입니다. 특히 STaR, RestEM, V-STaR와 같이 supervised fine-tuning (SFT)의 반복과 관련된 다른 종류의 반복적 training 방법이 reasoning에 성공적으로 적용되었지만, generative reasoning model을 train 하기 위해 preference optimization을 사용하는 것은 이러한 방법에 적용되지 않았습니다.

 

Figure 1: Iterative Reasoning Preference Optimization

우리의 iterative preference optimization 방법은 두 단계로 구성됩니다.

(i) Chain-of-Thought & Answer Generation: training prompts는 model Mt로부터 후보 reasoning 단계와 답변을 생성하는 데 사용되며, 그 다음 답변은 주어진 reward model에 의해 정확성이 평가됩니다. (ii) Preference Optimization: 생성된 데이터에서 preference 쌍이 선택되고, 이는 DPO+NLL objective를 통해 training에 사용되어 model Mt+1을 생성합니다. 그런 다음 이 전체 절차가 반복되어 다음 반복에서 reasoning 능력이 향상되고, 성능이 포화될 때까지 반복됩니다.

 

 

본 연구에서는 iterative preference optimization을 reasoning 작업, 특히 Chain-of-Thought (CoT) reasoning에 적용하는 접근 방식을 개발합니다. 각 반복에서 우리는 training prompts에 대한 여러 chain-of-thought reasoning 단계와 최종 답변을 sample 하고, 그 다음 쌍의 승자가 정답을 가지고 패자가 오답을 가지도록 preference 쌍을 구성합니다. 그런 다음 쌍의 승자에 대한 negative log-likelihood (NLL) loss 항을 포함하는 DPO의 변형을 train 합니다. 이 항은 또한 성능에 매우 중요한 것으로 입증되었습니다. 새롭게 trained 된 model이 주어지면, 우리는 이전에 trained 된 model에서 시작하여 새로운 쌍을 생성하고 다시 training 하는 절차를 반복합니다. 우리는 reasoning 성능이 여러 번의 반복을 통해 결국 포화 상태에 도달할 때까지 향상된다는 것을 발견했습니다.

우리는 Iterative Reasoning Preference Optimization (Iterative RPO)라고 명명한 우리의 접근 방식이 SFT 또는 표준 DPO 적용을 포함한 여러 baseline과 문헌의 다른 baseline을 능가한다는 것을 보여줍니다. 우리는 Iterative RPO training 후 GSM8K에서 zero-shot 성능이 55.6%에서 81.6%로 (또는 32개 샘플 중 majority voting을 통해 70.7%에서 88.7%로), ARC-Challenge에서 77.8%에서 86.7%로 (제공된 ARC Corpus를 사용하지 않고), MATH에서 12.5%에서 20.8%로 (또는 32개 샘플 중 majority voting을 통해 18.8%에서 29.1%로) 향상되는 것을 확인했습니다. MATH에서는 제공된 pretraining corpus를 사용하지 않았습니다. 우리는 이러한 개선으로 이어지는 구성 요소를 나타내는 ablation을 제공합니다. 또한 다양한 objective가 training sequences의 확률에 어떤 영향을 미치는지에 대한 분석을 제시하여 우리 방법의 성공을 설명하는 데 도움이 됩니다. 전반적으로, 우리의 방법은 우리가 고려하는 세 가지 작업에서 알 수 있듯이 광범위한 작업에서 LLMs의 reasoning 능력을 향상시킬 수 있는 잠재력을 가진 간단한 레시피를 제공합니다.

 

 

 

논문 핵심 요약:

본 논문은 Iterative Reasoning Preference Optimization (Iterative RPO) 이라는 새로운 접근 방식을 제시하여, Chain-of-Thought (CoT) reasoning 능력을 향상시키는 것을 목표로 합니다. 기존의 preference optimization 방법들이 instruction tuning에서는 효과적이지만 reasoning task에서는 제한적인 성능을 보였던 한계를 극복하고자 합니다.

기존 연구와의 차별점 및 핵심 아이디어:

  1. Iterative Preference Optimization을 Reasoning에 적용:
    • 기존 연구들이 주로 supervised fine-tuning (SFT)의 반복에 중점을 둔 반면, 본 논문은 preference optimization의 반복적 적용을 통해 reasoning 성능을 향상시킵니다.
    • 특히, CoT reasoning에 특화된 접근 방식을 제안합니다.
  2. DPO + Negative Log-Likelihood (NLL) Loss:
    • 기존 DPO에 NLL loss 항을 추가한 새로운 objective를 사용하여 train 합니다.
    • 이 NLL loss가 성능 향상에 결정적인 역할을 합니다.
  3. Iterative한 CoT Candidate Generation 및 Preference Pair 구성:
    • 각 iteration마다 여러 개의 CoT reasoning 단계와 최종 답변을 샘플링합니다.
    • 샘플링된 결과에서 정답과 오답을 묶어 preference pair를 구성하여, 정답을 가진 CoT가 더 높은 preference를 갖도록 학습합니다.
    • 새롭게 trained된 model을 사용하여 다음 iteration에서 새로운 preference pair를 생성하고, 이 과정을 반복하여 성능이 포화될 때까지 reasoning 능력을 향상시킵니다.

주요 성과:

  • GSM8K, MATH, ARC-Challenge benchmark에서 state-of-the-art 성능을 달성했습니다.
    • GSM8K: 55.6% -> 81.6% (zero-shot), 70.7% -> 88.7% (majority voting)
    • ARC-Challenge: 77.8% -> 86.7% (ARC Corpus 미사용)
    • MATH: 12.5% -> 20.8% (zero-shot), 18.8% -> 29.1% (majority voting, pretraining corpus 미사용)

시사점:

  • Iterative RPO는 LLMs의 reasoning 능력을 향상시킬 수 있는 간단하고 효과적인 방법임을 보여줍니다.
  • NLL loss의 중요성을 강조하며, preference optimization에서 추가적인 고려 사항을 제시합니다.
  • 향후 다양한 reasoning task에 적용 가능하며, LLMs의 성능 향상에 기여할 것으로 기대됩니다.

빠른 파악을 위한 키워드:

  • Iterative Reasoning Preference Optimization (Iterative RPO)
  • Chain-of-Thought (CoT) Reasoning
  • DPO + NLL Loss
  • Iterative Training
  • GSM8K, MATH, ARC-Challenge

 

2 Iterative Reasoning Preference Optimization

우리의 접근 방식은 먼저 기본적으로 pre-trained 또는 instruction-tuned 된 language model, training inputs 세트, 그리고 final outputs의 정확성을 판단하는 능력에 대한 접근을 가정합니다. training input이 주어지면, language model은 (i) reasoning 단계(Chain-of-Thought) 세트를 생성한 다음 (ii) 주어진 문제에 대한 최종 답변을 생성할 것으로 예상됩니다. 우리는 최종 답변의 정확성에 대한 correctness measure에 접근할 수 있지만, 해당 답변에 도달하는 데 사용된 reasoning 단계의 정확성에 대해서는 접근할 수 없다고 가정합니다. 따라서 우리의 실험에서는 training inputs에 대해 gold labels가 제공되고 이러한 labels와 최종 답변 generations 간의 정확한 일치를 통해 binary reward가 도출되는 datasets을 고려합니다. 그러나 우리의 접근 방식은 더 일반적인 reward models을 사용하는 설정에도 적용될 수 있습니다.

각 iteration에서 우리의 방법은 Figure 1과 같이 (i) Chain-of-Thought & Answer Generation 및 (ii) Preference Optimization의 두 단계로 구성됩니다. t번째 iteration의 경우, (i) 단계에서 현재 model Mt를 사용하여 (ii) 단계에서 다음 iteration의 model Mt+1을 training하기 위한 새로운 데이터를 생성합니다.

초기화(Initialization). 우리는 초기 model M0과 질문 xi와 정답 yi를 포함하는 training set D = {(xi, yi)}i가 주어졌다고 가정합니다. model은 각 iteration에서 trained 되고 업데이트되어 M0, M1, ..., MT models을 생성합니다.

Chain-of-thought & answer generation. 현재 model Mt가 주어지면, 모든 입력에 대해 N개의 서로 다른 응답을 생성합니다. 여기서 각 응답은 CoT reasoning c와 그에 따른 최종 답변 y로 구성됩니다.

(c n i , yn i ) ∼ Mt(xi) for all xi ∈ D and n ∈ [N],

여기서 [N]은 {1, 2, ..., N}을 나타냅니다.

우리 접근 방식의 일반적인 버전에서는 각 응답의 정답을 기반으로 각 응답에 대한 reward r n i 를 계산합니다. 즉, r n i = R(y n i , yi)입니다. 우리의 실험에서 이것은 단순히 r n i = 1 if y n i = yi, 그렇지 않으면 0에 해당합니다. 즉, 예측이 training dataset에 제공된 답변과 일치하는지 여부입니다. 따라서 우리는 rewards로 보강된 생성된 응답 세트를 구성했습니다.

Gi = {c n i , yn i , rn i }n∈[N] .

Preference optimization. 다음 단계에서는 먼저 현재 model Mt의 generations Gi를 기반으로 응답 쌍의 dataset D pairs t를 구성합니다. 선택된(이긴) 응답이 거부된(진) 응답보다 더 높은 rewards를 갖도록 쌍을 이룬 데이터가 구성됩니다. 그런 다음 이 데이터는 preference optimization에 사용됩니다. 일반적으로 이는 동일한 입력에 대해 두 개의 응답을 선택하여 하나가 다른 것보다 더 높은 reward를 갖도록 하고 더 높은 reward를 가진 응답을 승자로 설정함으로써 수행될 수 있습니다. binary reward의 경우 생성된 응답 Gi를 rewards에 따라 두 세트로 나눌 수 있습니다.

G w i = {c n i , yn i | r n i = 1},

G l i = {c n i , yn i | r n i = 0}.

다음으로 Gw i 에서 승자 응답 (c w i , yw i )를 선택하고 Gl i 에서 패자 응답 (c l i , yl i )를 선택하여 preference 쌍의 dataset을 구축합니다. 특히, 우리는 가능한 한 많은 데이터를 사용하기 위해 Gw i 와 Gl i 를 동시에 반복하여 K 쌍의 인덱스 {(wk, lk)}를 생성합니다.

D pairs t = {(c wk i , y wk i ),(c lk i , y lk i ) | for all xi ∈ D and k ∈ [K]}.

preference 쌍이 주어지면 이제 새로운 model Mθ를 train 할 수 있으며, 이 model은 우리의 다음 model Mt+1이 됩니다. 파라미터 θ는 model Mt에서 초기화되고 preference 쌍으로부터 학습하기 위한 DPO loss와 각 쌍의 승자 응답으로부터 학습하기 위한 negative log-likelihood (NLL) loss를 결합한 loss function으로 업데이트됩니다. 각 preference 쌍에 해당하는 loss는 다음과 같습니다.

LDPO+NLL = LDPO(c w i , yw i , cl i , yl i |xi) + αLNLL(c w i , yw i |xi)

= − log σ  β log Mθ(c w i , yw i |xi) Mt(c w i , yw i |xi) − β log Mθ(c l i , yl i |xi) Mt(c l i , yl i |xi)  − α log Mθ(c w i , yw i |xi) |c w i | + |y w i | . (1)

여기서 M(x)는 model M 하에서 sequence x의 확률을 나타내고 σ는 sigmoid function입니다. 이전 iteration의 model Mt를 DPO 항의 분모에 있는 reference model로 사용합니다. NLL 항은 총 응답 길이로 정규화됩니다. 하이퍼파라미터 α는 두 loss 항의 균형을 맞춥니다. 간결함을 위해 쌍 인덱스 k는 생략하지만 모든 입력 샘플에 대해 생성된 k ∈ [K] 쌍 각각에 대해 이 loss를 최적화합니다. 이 training이 끝나면 다음 model Mt+1 = Mθ를 얻게 되며, 이 model은 후속 iteration을 위한 데이터를 구축하는 데 사용됩니다.

Iterative training. 우리의 전체 절차는 일련의 models M1, ..., MT를 train 합니다. 여기서 각 연속 model t + 1은 t번째 model에 의해 생성된 preference data D pairs t 를 사용합니다.

우리의 실험에서 우리는 models과 그들이 사용하는 training data를 다음과 같이 정의합니다.

  • M0: Base LLM; 우리의 실험에서는 fine-tuned 된 instruction following model로 초기화합니다.
  • M1: M0로 초기화한 다음 LDPO+NLL을 사용하여 D pairs 0 으로 trained 합니다.
  • M2: M1으로 초기화한 다음 LDPO+NLL을 사용하여 D pairs 1 으로 trained 합니다.
  • M3: M2로 초기화한 다음 LDPO+NLL을 사용하여 D pairs 2 으로 trained 합니다.
  • M4: M3로 초기화한 다음 LDPO+NLL을 사용하여 D pairs 3 으로 trained 합니다.

이 접근 방식은 세 가지 차이점을 제외하고는 Self-Rewarding LLM training 체계의 유사하지만 더 단순한 인스턴스로 볼 수 있습니다. 첫째, Self-Rewarding의 각 iteration에서는 입력 분포를 탐색하기 위해 새로운 prompts 세트가 생성되지만, 우리의 접근 방식에서는 동일한 고정된 prompts 세트를 사용합니다. 둘째, 이러한 선택으로 인해 우리의 실험 설정은 model generations을 판단하기 위한 정교한 reward model이 필요하지 않습니다. 왜냐하면 우리는 training prompts가 비교 대상인 gold labels를 제공했다고 가정하기 때문입니다. 이 두 가지 생략된 단계는 language model이 정확성을 검증해야 하기 때문에 reasoning 작업에 challenging 하며, 이는 어려운 것으로 알려져 있습니다. 셋째, 우리는 DPO+NLL objective가 우리의 reasoning 작업에 중요하다는 것을 보여줍니다. 반면에 Self-Rewarding LLM은 표준 DPO objective를 사용했습니다.

우리의 접근 방식은 또한 Self-Taught Reasoning (STaR) 방법의 iterative training과 관련이 있지만, 그들의 접근 방식은 DPO와 유사한 training을 사용한 preference optimization이 아닌 SFT training을 사용한다는 점이 다릅니다. Preference optimization은 reasoning chains과 답변의 negative examples을 사용할 수 있게 해주며, 이는 성능을 향상시키는 것으로 나타났습니다. Related Work에 대한 자세한 내용은 Section 4를 참조하십시오.

 

 

 

 

 

핵심 요약:

본 논문에서 제안하는 Iterative Reasoning Preference Optimization (Iterative RPO) 방법론의 핵심 작동 원리와 구체적인 학습 절차를 상세히 설명하는 섹션입니다.

핵심 아이디어 및 방법론:

  1. 두 가지 주요 단계:
    • (i) Chain-of-Thought & Answer Generation: 현재 모델(Mt)을 사용하여 주어진 input(training prompt)에 대한 multiple CoT reasoning steps와 final answer를 생성합니다.
    • (ii) Preference Optimization: 생성된 CoT 및 answer 데이터에서 preference pairs(정답-오답 쌍)를 구성하고, DPO + NLL loss를 사용하여 다음 iteration의 모델(Mt+1)을 학습합니다.
  2. Reward Model:
    • 본 논문에서는 final answer의 정확성에 기반한 binary reward (정답 여부)를 사용합니다.
    • Gold label과의 exact match 여부로 간단하게 reward를 계산합니다.
    • 더 복잡한 reward model로의 확장 가능성도 열어두고 있습니다.
  3. Preference Pair 구성:
    • 동일한 input에 대한 CoT 및 answer 결과 중, reward가 높은(정답) 결과를 "winner", reward가 낮은(오답) 결과를 "loser"로 설정합니다.
    • 이를 통해 정답 CoT는 높은 preference, 오답 CoT는 낮은 preference를 갖도록 학습합니다.
  4. DPO + NLL Loss:
    • DPO loss: preference pair (winner, loser) 간의 상대적인 preference를 학습합니다.
    • NLL loss: winner(정답) CoT sequence의 likelihood를 최대화합니다.
    • 두 loss를 결합하여 사용하며, NLL loss 항의 중요성을 강조합니다 (ablation study를 통해 입증).
    • α 파라미터로 두 loss 간의 가중치를 조절합니다.
  5. Iterative Training:
    • 이전 iteration에서 학습된 모델(Mt)을 사용하여 새로운 preference pairs 데이터를 생성하고, 이를 사용하여 다음 iteration의 모델(Mt+1)을 학습합니다.
    • 이 과정을 반복하여 성능이 포화될 때까지 reasoning 능력을 점진적으로 향상시킵니다.

Self-Rewarding LLM과의 비교 및 차별점:

  • 고정된 Prompt 사용: Self-Rewarding LLM은 매 iteration마다 새로운 prompt를 생성하는 반면, Iterative RPO는 고정된 training prompt set을 사용합니다.
  • 간단한 Reward Model: Self-Rewarding LLM은 정교한 reward model이 필요하지만, Iterative RPO는 gold label과의 비교를 통한 간단한 reward model을 사용합니다 (reasoning task에서 language model을 사용한 정답 검증의 어려움을 고려).
  • DPO + NLL Objective: Self-Rewarding LLM은 표준 DPO를 사용하는 반면, Iterative RPO는 NLL loss를 결합한 DPO + NLL objective를 사용하며, 이것이 reasoning 성능 향상에 중요함을 보입니다.

STaR과의 비교 및 차별점:

  • Preference Optimization vs. SFT: STaR은 SFT를 반복적으로 사용하는 반면, Iterative RPO는 preference optimization (DPO-like) 을 사용합니다.
  • Negative Example 활용: Iterative RPO는 negative examples (오답 CoT) 을 학습에 활용하여 성능을 향상시킵니다.

시사점:

  • Iterative RPO는 명시적인 reasoning step supervision 없이도 CoT reasoning 능력을 효과적으로 학습할 수 있는 방법론을 제시합니다.
  • DPO와 NLL loss의 결합이 reasoning 성능 향상에 효과적임을 보입니다.
  • Iterative training을 통해 점진적으로 reasoning 능력을 향상시킬 수 있음을 입증합니다.

 

 

 

정리:

  • STaR + MCTS는 PRM을 사용하여 MCTS로 탐색한 좋은 경로를 정답으로 레이블링하고, 이를 SFT로 학습하는 방식입니다.
  • Iterative RPO는 Reward Model을 사용하여 정답/오답을 명확하게 구분하고, 정답 CoT와 오답 CoT를 preference pair로 묶어 DPO + NLL loss로 학습하는 방식입니다.
  • Iterative RPO는 negative sampling을 적극적으로 활용하고, MCTS를 사용하지 않는다는 점에서 STaR + MCTS와 차이가 있습니다.

결론적으로, 두 방법 모두 장단점이 있지만, Iterative RPO는 명시적인 reasoning step supervision 없이도, negative sampling을 활용하여 효과적으로 reasoning 능력을 학습할 수 있다는 장점이 있습니다. 또한 MCTS와 같은 탐색 알고리즘을 사용하지 않기 때문에, 구현이 더 간단할 수 있습니다.

 

 

 

 

 

 

 

 

1. 모델이 N개의 답변 생성

2. 단순히 가지고 있는 정답을 통해 cot 전체를 0인지 1인지 리워드를 줌.

3. 각 추론을 잘 잘라서 0리스트 1리스트로 나눠서 정리함.

4. 모델에게 다시한번 생성하게 함.

5. 4에서 생성한게 0 리스트와 유사하다면 loss를 흘림.

6. 1차 학습이 이루어지고 다시한번 n개의 답변을 생성.

7. 반복