image

paper , dataset , code

TL;DR

  • I read this because.. : reasoning in LVLM
  • task : MLLM
  • problem : MLLM의 CoT 능력 떨어짐
  • idea : CoT 데이터 만들자 + DPO 학습하자
  • architecture : InternVL2-8B
  • objective : DPO loss + CE loss + BCOloss
  • baseline : InternVL2-8B, InternVL2-8B-SFT, DPO variants, Gemini, GPT4o, LLaVA-1.5-13B, Qwen2VL-7B, …
  • data : proposed MMPR (3.2M)
  • evaluation : M3CoT, Mathvista, MathVision, MMVET, LLaVA-Bench, POPE, CRPE, MMHalbench
  • result : CoT 능력과 math쪽 성능을 크게 개선 (mathvista 67.0). SFT보다 preference optimization을 하는게 CoT 성능에 크리티컬했다고 주장.
  • contribution : 데이터셋 공개. 제안한 loss 조합도 성능이 좋음
  • etc. :

Details

  • thumbnail image

MMPR dataset

답이 있는 경우엔 답이 맞으면 chosen / 아니면 loose 답이 없는 경우엔 일단 생성한 애를 다 chosen으로 선택하고, loose의 경우는 생성된 문장의 반을 가려놓고 나머지를 생성하라고 함. 이때 hallucination이 많이 생겼다고 함. (?) – DropNTP로 이름 붙임 2.5M 답이 있는 데이터 // 750K 답이 없는 데이터

  • examples image

  • source image

MPO Loss

DPO loss (0.8) + BCO loss (0.2) + SFT loss (1) 의 조합 (dpo가 rationale을 생성하지 못한다는게 smaug에서도 보였다고?)

image
  • BCO loss image
image

좋은지 나쁜지에 대한 binary classifier를 같이 학습하고 저기 델타는 과거 reward들 moving average.

Result

image

CoT 벤치랑 math쪽 벤치 크게 개선 (76B variant랑 비슷한 성능)

  • text benchmarks image

complex science 문제인 TheoremQA와 Instruction following 벤치인 IFEval이 크게 늘어서 성능 개선. text CoT 벤치는 없는건가..?

Ablations

  • SFT loss vs MPO image

SFT로 CoT를 넣었을 때 direct / CoT 둘다 전반적으로 늘어남 MPO로 넣었을 때 direct / CoT 둘다 크게 개선되고 모든 벤치에서 CoT > direct 성적이 나옴

  • DropNTP vs RLAIF image

제안한 방법이 더 간단하고 hallucination 쪽에서 더 좋다고 함

  • DPO variants image

일단 SFT들보다 다 성능이 좋았는데 단순히 DPO loss를 쓰면 CoT능력이 direct보다 좋아지지 않았다.