14 January 2026

Judge Decoding: Faster Speculative Sampling Requires Going Beyond Model Alignment

๐Ÿ’กSpeculative Decoding์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ณ‘๋ชฉ์ด Target model์˜ ์ •๋ ฌ(alignment) ๊ธฐ๋ฐ˜ ๊ฒ€์ฆ ๋•Œ๋ฌธ์ž„์„ ๋ฐํžˆ๊ณ , Target model์˜ ์ž„๋ฒ ๋”ฉ์œผ๋กœ ํ† ํฐ์˜ ์ •๋‹ต์„ฑ(correctness)์„ ํŒ์ •ํ•˜๋Š” ์ƒˆ๋กœ์šด ๊ฒ€์ฆ ๋ฐฉ์‹์ธ Judge Decoding ๋ฐฉ์‹์„ ๋„์ž…ํ•จ!

์ด์Šนํ™˜
์ด์Šนํ™˜
๐Ÿฅ‡

Judge Decoding: Faster Speculative Sampling Requires Going Beyond Model Alignment

Review

๋‹‰๋„ค์ž„ ํ•œ์ค„ํ‰๋ณ„์  (0/5)
์ฐฐ๋‚˜LLM-as-judge ๊ฐ€ ๊ฐ€์ง„ ๋ฌธ์ œ ์ค‘ ๊ฐ ๋ชจ๋ธ์˜ ์ƒ์„ฑ๊ณผ ์ •๋ ฌ๋˜๋Š” ๊ธฐ์ค€์œผ๋กœ ํ‰๊ฐ€ํ•œ๋‹ค๋Š” ๋ฌธ์ œ๋Š” ์ž˜ ์•Œ๋ ค์ง„ ๊ฒƒ ๊ฐ™์Œ. ์Šคํƒ€์ผ๋กœ ์ธํ•œ ์˜ํ–ฅ ๋“ฑ์ด ์žˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™์€๋ฐ, ์ง๊ด€์ ์œผ๋กœ ์ด ํ˜„์ƒ์„ ์ž˜ ๊ทœ๋ช…ํ•˜๊ณ  ๊ฐ€์ ธ์˜จ ๊ฒƒ ๊ฐ™์Œ. ์ข‹์€ ์•„์ด๋””์–ด๋Š” ์‹ฌํ”Œํ•œ ๋ฐฉ๋ฒ•๋ก ์œผ๋กœ, ๋ช…ํ™•ํ•˜๊ฒŒ ํ•ด๊ฒฐ๋  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๋А๊ผˆ์Œ. 4.3
์™€์‚ฌ๋น„๊ฝƒ๊ฒŒ๋ž‘๊ธฐ์กด์˜ speculative decoding์€ 'draft๊ฐ€ target๊ณผ ์–ผ๋งˆ๋‚˜ ๋น„์Šทํ•œ๊ฐ€'์— ์˜์กดํ•ด์„œ alignment์ชฝ์„ ์—ฐ๊ตฌํ–ˆ๋‹ค๋ฉด, ํ•ด๋‹น ๋…ผ๋ฌธ์€ ๊ด€์ ์„ ์ข€ ๋ฐ”๊ฟ”์„œ '์ด ํ† ํฐ์ด ๋ฐ›์•„๋“ค์—ฌ์งˆ์ง€๋ฅผ ์˜ˆ์ธก'ํ•˜๋Š”๊ฒƒ์œผ๋กœ ๋ฌธ์ œ๋ฅผ ๋ฐ”๊ฟˆ. ๋™์ผํ•œ ๋ฌธ์ œ๋ฅผ ์ƒˆ๋กœ์šด ๊ด€์ ์œผ๋กœ ๋ฐ”๋ผ๋ณด๋Š” ์‹œ๊ฐ์ด ํ•„์š”ํ•œ๊ฑฐ ๊ฐ™์Œ4
๋ฉ”๊ฐ€์ปคํ”ผ๊ฒ€์ฆ ์ž์ฒด์˜ ๊ด€์ ์„ ๋ฐ”๊ฟ”์„œ ์‹คํ—˜์„ ํ–ˆ๋‹ค๋Š” ์ ์—์„œ Novelty๊ฐ€ ์žˆ๋‹ค. ์‹คํ—˜์—์„œ ํƒœ์Šคํฌ์— ๋Œ€ํ•œ accuarcy๋ฅผ ์œ ์ง€ํ•œ ์ฑ„ acceptance๋ฅผ ๋†’์˜€๋‹ค๋Š” ์ ์—์„œ ๋…ผ๋ฌธ์˜ ์„ค๋“๋ ฅ๊ณผ ๋ฐฉ๋ฒ•๋ก ์˜ ์‹ ๋น™์„ฑ์„ ๋†’์•„์„œ ์ข‹๋‹ค 4.1
์š”๋ฆฌ๊ดด๋ฌผ๋ณดํ†ต LLM-as-judge๋Š” ์—„์ฒญ ๊ธด ํ”„๋กฌํ”„ํŠธ์™€ CoT ๊ธฐ๋ฐ˜์˜ ๋А๋ฆฐ ์ถ”๋ก ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ–ˆ๋Š”๋ฐ... ๋‹จ์ˆœํ•˜๊ฒŒ ์ž‘์€ ์ด์ง„ ๋ถ„๋ฅ˜๊ธฐ ํ•˜๋‚˜๋กœ ๋น ๋ฅด๊ฒŒ ํ•™์Šต์ด ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•œ ์ ์ด ๋†€๋ž๋‹ค. ์‹ค์งˆ์ ์œผ๋กœ ์ดˆ๋ฐ˜์— reject๋˜๋Š” ํ† ํฐ์ˆ˜๊ฐ€ ํ™•์—ฐํžˆ ์ค„๊ฒ ๋„ค4.3
์ƒˆ์šฐ๊นก์ง€์ ํ•˜๋Š” ๊ธฐ์กด ๋ฐฉ์‹์˜ ํ•œ๊ณ„์™€ ํ•ด๊ฒฐ์ฑ…์ด ์™„์ „ ๋‚ฉ๋“์ด ๊ฐ„๋‹ค. ์ •ํ™•๋„๋ณด๋‹ค judge ๋ชจ๋ธ์˜ ์„ ํ˜ธ๋„ ๊ธฐ์ค€์œผ๋กœ ๋””์ฝ”๋”ฉ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋ฅผ ์ •ํ™•๋„ ๋ถ„๋ฅ˜๊ธฐ๋กœ ํ•ด๊ฒฐํ•˜๋Š”๋ฐ, ์ด๋Ÿฐ ๋ฐฉ๋ฒ•์„ ๋””์ฝ”๋”ฉ์— ์ ์šฉํ•œ๋‹ค๋Š” ๊ฒŒ ์ƒˆ๋กœ์›€4.4
๊ณ ๊ตฌ๋งˆ๋ง›๋„๋ฆฌ LLM์˜ ๋ณธ์งˆ์ ์ธ ํŠน์„ฑ, ๊ธฐ์กด ๊ฒ€์ฆ ์—ฐ๊ตฌ์˜ ํ•œ๊ณ„์ ์—์„œ ์‹œ์ž‘ํ•ด์„œ ์‹คํ—˜, ์ธ์‚ฌ์ดํŠธ๊นŒ์ง€ ๋…ผ๋ฆฌ์ ์ด๊ณ  ์ •๊ตํ•˜๊ณ  ๋˜ ์œ ์šฉํ•˜๋‹ค! ๊ทธ์น˜ ์• ์ดˆ์— ๋ถˆ์™„์ „ํ•œ ๊ฒƒ๊ณผ alignํ•˜์—ฌ ํ‰๊ฐ€ํ•˜๋Š”๊ฒŒ ์ด์ƒํ–ˆ๊ธด ํ–ˆ๋„ค! 5
์•ˆ์„ฑ์žฌMotivation, Technical soundness, performance, Research impact ์™„๋ฒฝํ•ฉ๋‹ˆ๋‹ค. ์–ธ์–ด๋ชจ๋ธ ๋‹ต๊ฒŒ softํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•˜์ž๋Š” ์•„์ด๋””์–ด๊ฐ€ ๊ทธ์ค‘์—์„œ๋„ ๋‹๋ณด์ด๋„ค์š”. ์ƒ์กด์ž…๋‹ˆ๋‹ค.5
์Šคํƒ€๋ฒ…์ŠคEmbedding ์œ„์— ์ด์ง„ ๋ถ„๋ฅ˜๊ธฐ๋ฅผ ๋ถ™์ž„์œผ๋กœ์จ ๊ธฐ์กด์˜ ๋А๋ฆฐ ๊ฒ€์ฆ ๋ฌธ์ œ๋ฅผ ํ•œ ๋ฒˆ์— ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค๋Š”๊ฒŒ Novelty๊ฐ€ ์žˆ๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ๋ฐฉ๋ฒ•๋ก  ์ž์ฒด๋Š” ๋‹จ์ˆœํ•˜์ง€๋งŒ, ๋ช…ํ™•ํ•˜๊ณ  ํšจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ•์„ ์ผ๋‹ค๋Š” ๊ฒƒ์ด ์˜๋ฏธ๊ฐ€ ํฐ ๊ฒƒ ๊ฐ™๋‹ค.4.8

TL; DR

๐Ÿ’ก

Speculative Decoding์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ณ‘๋ชฉ์ด Target model์˜ ์ •๋ ฌ(alignment) ๊ธฐ๋ฐ˜ ๊ฒ€์ฆ ๋•Œ๋ฌธ์ž„์„ ๋ฐํžˆ๊ณ , Target model์˜ ์ž„๋ฒ ๋”ฉ์œผ๋กœ ํ† ํฐ์˜ ์ •๋‹ต์„ฑ(correctness)์„ ํŒ์ •ํ•˜๋Š” ์ƒˆ๋กœ์šด ๊ฒ€์ฆ ๋ฐฉ์‹์ธ Judge Decoding ๋ฐฉ์‹์„ ๋„์ž…ํ•จ!

  • ์ €์ž
    • ๋ฉ”ํƒ€ ์Šˆํผ ์ธํ…”๋ฆฌ์ „์Šค ๋žฉ (์†Œ์† 5๋ช…), ์ทจ๋ฆฌํžˆ ์—ฐ๋ฐฉ ๊ณต๊ณผ๋Œ€ํ•™๊ต, ์—”ํŠธ๋กœํ”ฝ, GenAI, MAI
  • cited: 28

Preliminary: Speculative Decoding

์™œ LLM์€ ๋А๋ฆฐ๊ฐ€

  • LLM์˜ ๊ตฌ์กฐ์ ์ธ ํ•œ๊ณ„: Auto-regressive ํ•œ ๋””์ฝ”๋”ฉ ๋ฐฉ์‹
    • ๋‹จ์–ด ํ•˜๋‚˜๋ฅผ ์ถœ๋ ฅํ•  ๋•Œ๋งˆ๋‹ค ์—„์ฒญ๋‚œ ์–‘์˜ ๋ฉ”๋ชจ๋ฆฌ์™€ ๊ณ„์‚ฐ์ด ํ•„์š”

Speculative Decoding์œผ๋กœ ํ•ด๊ฒฐํ•ด๋ณด์ž!

  • ๋ชฉํ‘œ: LLM์˜ Inference Speed ํ–ฅ์ƒ
  • ํ•ต์‹ฌ ์•„์ด๋””์–ด: ์ƒ์„ฑ์€ ๋А๋ฆฌ์ง€๋งŒ, ๊ฒ€์ฆ์€ ๋ณ‘๋ ฌ๋กœ ๋น ๋ฅด๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋‹ค
  • ๊ตฌ์„ฑ์š”์†Œ
    • Draft Model (DM): ์•„์ฃผ ๋น ๋ฅด์ง€๋งŒ ์•ฝ๊ฐ„ ๋œ ๋˜‘๋˜‘ํ•œ ํ•™์ƒ ์—ญํ• . ๋Œ€๋žต์ ์ธ ์ดˆ์•ˆ์„ ๋น ๋ฅด๊ฒŒ ์ž‘์„ฑ
    • Target Model (TM): ๋А๋ฆฌ์ง€๋งŒ ์•„์ฃผ ๋˜‘๋˜‘ํ•˜๊ณ  ์ •ํ™•ํ•œ ์„ ์ƒ๋‹˜ ์—ญํ• . Draft ๊ฒฐ๊ณผ๋ฅผ ๊ฒ€ํ† 
  • ์ž‘๋™์›๋ฆฌ
    1. Drafting: DM์ด ๋จผ์ € ๋ฌธ์žฅ์˜ ๋’ท๋ถ€๋ถ„์„ ์ถ”์ธกํ•ด์„œ ๋ฏธ๋ž˜์— ์˜ฌ ํ† ํฐ KK๏ปฟ๊ฐœ(์˜ˆ: 4๊ฐœ)๋ฅผ ๋น ๋ฅด๊ฒŒ ์ƒ์„ฑ
      • e.g., "The cat is [sitting on the mat]" (๊ด„ํ˜ธ ์•ˆ์ด DM์ด ์ถ”์ธกํ•œ ๋ถ€๋ถ„)
    1. Verification: TM์ด DM์ด ์ƒ์„ฑํ•œ KK๏ปฟ๊ฐœ์˜ ํ† ํฐ์„ ์ž…๋ ฅ ๋ฐ›๊ณ  ํ•œ ๋ฒˆ์˜(Parallel) ์—ฐ์‚ฐ์œผ๋กœ KK๏ปฟ๊ฐœ์˜ ํ† ํฐ ํ™•๋ฅ ์„ ํ•œ๋ฒˆ์— (Foward Pass)๋กœ ๊ณ„์‚ฐ
      • ์ƒ์„ฑ(Generation)์€ ์ˆœ์ฐจ์ ์ด์–ด์•ผ ํ•˜์ง€๋งŒ, ๊ฒ€์ฆ(Verification)์€ ๋ณ‘๋ ฌ๋กœ ํ•  ์ˆ˜ ์žˆ์Œ
      • Teacher forcing ๋ฐฉ์‹์œผ๋กœ ์ „์ฒด ๋ฌธ๋งฅ์„ ํ•œ ๋ฒˆ์— ํ™•์ธ
        • teacher forcing: target word(Ground Truth)๋ฅผ ๋””์ฝ”๋”์˜ ๋‹ค์Œ ์ž…๋ ฅ์œผ๋กœ ๋„ฃ์–ด์ฃผ๋Š” ๊ธฐ๋ฒ•
    1. Accept/Reject: ๋งŒ์•ฝ TM์ด DM์˜ ์ถœ๋ ฅ์ด ์˜ณ๋‹ค๊ณ  ํŒ๋‹จํ•˜๋ฉด, TM์€ ์Šน์ธ(Accept)๋งŒ ํ•˜๋ฉด ๋จ (์‹œ๊ฐ„ ์ ˆ์•ฝ!)
      • ์ค‘๊ฐ„์— ํ‹€๋ฆฐ ๋ถ€๋ถ„์ด ์žˆ๋‹ค๋ฉด(e.g., DM์€ "mat"๋ผ๊ณ  ์ผ๋Š”๋ฐ TM์€ "sofa"๋ผ๊ณ  ์ƒ๊ฐํ•จ), ๊ทธ ์ดํ›„์˜ ํ† ํฐ์€ ๋ชจ๋‘ ๋ฒ„๋ฆฌ๊ณ (Reject), ํ•ด๋‹น ์ง€์ ๋ถ€ํ„ฐ ๋‹ค์‹œ ์ƒ์„ฑํ•จ

Introduction

  • Scaling Law์˜ ํ˜„์‹ค์ ์ธ ๋ฌธ์ œ
    • Meta๋Š” ์ตœ๊ทผ 4,050์–ต ๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๊ฐ€์ง„ ์‚ฌ์ƒ ์ตœ๋Œ€ ๊ทœ๋ชจ, ์ตœ๊ณ  ์„ฑ๋Šฅ์˜ ๋ชจ๋ธ์ธ Llama-3.1-405B๋ฅผ ๊ณต๊ฐœํ•จ
    • ์ด๋Ÿฐ ๋Œ€ํ˜• ๋ชจ๋ธ๋“ค์€ ๋ฐฐํฌ์— ๋ง‰๋Œ€ํ•œ ์ž์›์„ ์š”๊ตฌํ•˜๋ฉฐ, ์ถ”๋ก  ํšจ์œจ์„ฑ์ด ์ค‘์š”ํ•œ ๋ฌธ์ œ๋กœ ๋– ์˜ค๋ฆ„
    • ์ด๋Ÿฐ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด Speculative Decoding (SD)์ด ์ œ์•ˆ๋จ
  • Speculative Decoding์˜ ๋ฌธ์ œ์ 
    • ๊ธฐ์กด Standard Speculative Decoding์˜ ๊ฒ€์ฆ ๋ฐฉ์‹:
      • ์ด ํ† ํฐ์ด ๋ฌธ๋งฅ์ ์œผ๋กœ ์ข‹์€๊ฐ€?๊ฐ€ ์•„๋‹ˆ๋ผ ์ด ํ† ํฐ์ด TM์ด ๊ณ ๋ฅผ ํ† ํฐ๊ณผ ์–ผ๋งˆ๋‚˜ ์ผ์น˜(alignment)ํ•˜๋Š”๊ฐ€?๋กœ ํŒ๋‹จํ•จ!
        • ๋ฌธ์ œ์  DM์ด ์ถฉ๋ถ„ํžˆ ๋งž๋Š” ๋‹ต์„ ์ƒ์„ฑํ•ด๋„ TM๊ณผ Align์ด ์•ˆ๋˜๋ฉด ์ดˆ๋ฐ˜์— reject๊ฐ€ ์ž์ฃผ ๋ฐœ์ƒ
        • ๊ทธ๋ž˜์„œ ์‹ค์ œ ํ™˜๊ฒฝ์—์„œ M (DM์ด ๋ฏธ๋ฆฌ ๋ฝ‘๋Š” ํ›„๋ณด ํ† ํฐ ์ˆ˜) ๋ฅผ ํฌ๊ฒŒ ๋ชป ํ‚ค์›€ (๋ณดํ†ต 5~7 ์ •๋„์˜ ์ž‘์€ ๊ฐ’์œผ๋กœ ์„ค์ •)
          ์‹ค์ œ๋กœ ๋…ธ๋ž€์„ (๊ธฐ์กด ๊ฒ€์ฆ ๋ฐฉ์‹)์„ ๋ณด๋ฉด M์„ ๋Š˜๋ ค๋„ accept ๋˜๋Š” ํ† ํฐ ์ˆ˜์˜ ๋ณ€ํ™”๊ฐ€ ๊ฑฐ์˜ ์—†์Œ, ๋Œ€์‹  ๋…ผ๋ฌธ์—์„œ ์ œ์‹œํ•˜๋Š” judge Decoding์€ accept โฌ†๏ธ
    • RQ ๊ฒ€์ฆ ๊ณผ์ •์„ TM๊ณผ์˜ ์ •๋ ฌ(Alignment)์ด ์•„๋‹Œ ํ† ํฐ ์ž์ฒด์˜ ํ’ˆ์งˆ์„ ํ‰๊ฐ€ํ•˜๋„๋ก ๋ฐ”๊ฟ€ ์ˆœ ์—†์„๊นŒ?
      • ํ•ต์‹ฌ ์•„์ด๋””์–ด: LLM-as-a-judge
        • LLM judge๋Š” ์œ ์—ฐํ•œ ๋ฐฉ์‹์œผ๋กœ ๋‹ต๋ณ€์„ ํ‰๊ฐ€ํ•จ
        • target๊ณผ ์™„์ „ํžˆ ์ •๋ ฌ(Align)๋˜์ง€ ์•Š์•˜๋”๋ผ๋„ ์˜ฌ๋ฐ”๋ฅธ(Correct) ์‘๋‹ต์„ ๊ธ์ •์ ์œผ๋กœ ํ‰๊ฐ€

        โ‡’ LLM judge๋ฅผ ํ†ตํ•ด alignment๊ณผ correctness๋ฅผ ๊ตฌ๋ถ„ํ•ด๋ณด์ž!

Contribution

  1. ๊ธฐ์กด SD๊ฐ€ ๊ณ ํ’ˆ์งˆ ํ† ํฐ์„ ๋งŽ์ด Rejectํ•œ๋‹ค๋Š” ํ•œ๊ณ„๋ฅผ ์‹คํ—˜์ ์œผ๋กœ ์ž…์ฆ
  1. LLM-as-a-judge ๊ฐœ๋…์„ SD ๊ฒ€์ฆ์— ์ ์šฉ
  1. Llama-8B/70B-Judge๋กœ ์ตœ๋Œ€ 9๋ฐฐ์˜ ์†๋„ ํ–ฅ์ƒ, Llama-405B ์ˆ˜์ค€ ํ’ˆ์งˆ ์œ ์ง€

Judge Decoding

  • ๊ธฐ์กด Speculative Decoding์˜ ๊ฒ€์ฆ ๋ฐฉ์‹

    ์šฉ์–ด ์ •๋ฆฌ

    • LLMtargLLM_{targ}๏ปฟ : target model
    • LLMdraftLLM_{draft}๏ปฟ : draft model
    • V={๏ผ‘,โ€ฆ,V}V = \{๏ผ‘,โ€ฆ,V\}๏ปฟ: ์–ดํœ˜ ์ง‘ํ•ฉ V
    • MโˆˆNM โˆˆ โ„•๏ปฟ: ํ›„๋ณด ํ† ํฐ์˜ ๊ฐœ์ˆ˜
    • mโˆ—m^*๏ปฟ: ์‹ค์ œ Accept๋œ ํ† ํฐ์˜ ๊ฐœ์ˆ˜
    • sโˆˆVLs โˆˆ V^L๏ปฟ: ํ˜„์žฌ ๋ฌธ๋งฅ(Context)
    • (t1,p1),โ€ฆ,(tm,pm)=LLM(m)(s)(tโ‚, pโ‚), โ€ฆ, (t_m, p_m) = \text{LLM}^{(m)}(s)๏ปฟ
      • ๋ฌธ๋งฅ s๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, LLM์œผ๋กœ๋ถ€ํ„ฐ m๊ฐœ์˜ ํ† ํฐ์„ auto-regressive ํ•˜๊ฒŒ ์ƒ˜ํ”Œ๋งํ•œ ๊ฒฐ๊ณผ
        • titแตข๏ปฟ: ii๏ปฟ ๋ฒˆ์งธ๋กœ ์ƒ์„ฑ๋œ ํ† ํฐ
        • pipแตข๏ปฟ: ํ•ด๋‹น ์‹œ์ ์˜ softmax ๋ถ„ํฌ
    • p1,โ€ฆ,pm+1=LLM(t1,โ€ฆ,tm;s)pโ‚, โ€ฆ, p_{m+1} = \text{LLM}(tโ‚,โ€ฆ,t_m; s)๏ปฟ
      • ๋ฌธ๋งฅ ss๏ปฟ ์™€ ํ† ํฐ t1,โ€ฆ,tmt_1, \dots, t_m๏ปฟ์„ ํ•œ ๋ฒˆ์— ์ž…๋ ฅ
      • Target ๋ชจ๋ธ์„ ๋ณ‘๋ ฌ forward pass๋กœ ์‹คํ–‰
      • ์ด ๋•Œ์˜ ๊ฐ ์œ„์น˜์—์„œ์˜ ํ™•๋ฅ  ๋ถ„ํฌ๋ฅผ p1,โ€ฆ,pm+1pโ‚,โ€ฆ,p_{m+1}๏ปฟ๋กœ ์ •์˜

    Draft Model

    • DM์€ ํ˜„์žฌ ๋ฌธ๋งฅ s๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ณดํ†ต greedy decoding ๋ฐฉ์‹์„ ํ†ตํ•ด M๊ฐœ์˜ ํ›„๋ณด ํ† ํฐ์„ ์ƒ์„ฑ
    • (c1,q1),โ€ฆ,(cM,qM)=LLMdraft(M)(s)(cโ‚, qโ‚), โ€ฆ, (c_M, q_M) = \text{LLM}^{(M)}_{draft}(s)๏ปฟ: draft ๋ชจ๋ธ์ด ์ƒ์„ฑํ•œ M๊ฐœ์˜ ํ›„๋ณด ํ† ํฐ๊ณผ ๊ฐ ํ† ํฐ ํ™•๋ฅ 
      • cicแตข๏ปฟ: ํ›„๋ณด ํ† ํฐ
      • qiqแตข๏ปฟ: DM์˜ Softmax ๋ถ„ํฌ
      • qi[ci]qแตข[cแตข]๏ปฟ: DM์ด ํ† ํฐ cicแตข๏ปฟ์— ๋ถ€์—ฌํ•œ ํ™•๋ฅ 

    Target model์˜ ๊ฒ€์ฆ ๋ฐฉ์‹(Acceptance Rule)

    1. target ๋ชจ๋ธ์€ ์ด ํ›„๋ณด ํ† ํฐ๋“ค์„ ๋ณ‘๋ ฌ๋กœ ์ฒ˜๋ฆฌํ•˜์—ฌ p1,โ€ฆ,pM+1pโ‚,โ€ฆ,p_{M+1}๏ปฟ ํ™•๋ฅ  ๋ฒกํ„ฐ๋ฅผ ์ƒ์„ฑ
    1. ๊ฐ ํ›„๋ณด ํ† ํฐ cic_i๏ปฟ์— ๋Œ€ํ•˜์—ฌ ์•„๋ž˜ ์กฐ๊ฑด ๊ฒ€์‚ฌ(์ด์ „ ํ† ํฐ๋“ค์ด ๋ชจ๋‘ Accept๋œ ๊ฒฝ์šฐ์—๋งŒ ํ˜„์žฌ ํ† ํฐ์„ ๊ฒ€์‚ฌ)
    • Acceptance Rule: ์ด์ „ ํ† ํฐ๋“ค์ด ๋ชจ๋‘ Accept๋˜์—ˆ๊ณ , ๊ท ๋“ฑ๋ถ„ํฌ์—์„œ ์ƒ˜ํ”Œํ•œ ฮตiฮตแตข๏ปฟ๊ฐ€ pi[ci]/qi[ci]pแตข[cแตข]/qแตข[cแตข]๏ปฟ (TM์˜ CiC_i๏ปฟ ์ƒ์„ฑ ํ™•๋ฅ  ๋‚˜๋ˆ„๊ธฐ draft ๋ชจ๋ธ์—์„œ cic_i๏ปฟ ์ƒ์„ฑ ํ™•๋ฅ ) ๋ณด๋‹ค ์ž‘์œผ๋ฉด ํ† ํฐ cicแตข๏ปฟ๋ฅผ Accept
      • alignment ๊ธฐ๋ฐ˜ ๊ฒ€์ฆ
        • pi[ci]โ‰ฅqi[ci]p_i[c_i]โ‰ฅq_i[c_i]๏ปฟ (TM ํ™•๋ฅ  โ‰ฅ DM ํ™•๋ฅ ) โ‡’ ฮตiโˆˆ[0,1]\varepsilon_i \in [0,1]๏ปฟ โ‡’ ๋ฌด์กฐ๊ฑด accept
        • pi[ci]<qi[ci]p_i[c_i]<q_i[c_i]๏ปฟ(TM ํ™•๋ฅ  < DM ํ™•๋ฅ ) โ‡’ ํ™•๋ฅ ์ ์œผ๋กœ accept
          • e.g., ๋น„์œจ์ด 0.3์ด๋ฉด โ†’ 30% ํ™•๋ฅ ๋กœ Accept/70%๋Š” Reject

      โ‡’ TM์ด ํ•ด๋‹น ํ† ํฐ์„ DM๋ณด๋‹ค ๋” ๋†’์€ ํ™•๋ฅ ๋กœ ํ‰๊ฐ€ํ•˜๋ฉด accept

    โ‡’ Standard Speculative Decoding์—์„œ๋Š” ๊ฒ€์ฆ ๋ฐฉ์‹(alignment) ์ž์ฒด์˜ ํ•œ๊ณ„ ๋•Œ๋ฌธ์— draft ํ† ํฐ ์ˆ˜๋ฅผ ๋Š˜๋ ค๋„ acceptance๊ฐ€ ํฌํ™”๋˜์–ด M์„ ํฌ๊ฒŒ ์“ฐ๋Š” ๊ฒƒ์ด ์˜คํžˆ๋ ค ๋น„ํšจ์œจ์ ์ž„

๊ธฐ์กด ๊ฒ€์ฆ ๋ฐฉ์‹(Alignment)์˜ ํ•œ๊ณ„

RQ ์–ด๋–ค ์ข…๋ฅ˜์˜ ํ† ํฐ๋“ค์ด ๊ฑฐ์ ˆ๋˜๋Š”๊ฐ€?

โ†’ GSM8K, MT-Bench, HumanEval ๋“ฑ์˜ ์—ฌ๋Ÿฌ ๋ฒค์น˜๋งˆํฌ์—์„œ SD์˜ ๋™์ž‘์„ ๋ถ„์„

  • draft ๋ชจ๋ธ๋กœ๋Š” Llama-8B๋ฅผ, target ๋ชจ๋ธ๋กœ๋Š” Llama-405B ์‚ฌ์šฉ
  • draft ๋ชจ๋ธ๋„ ์„ฑ๋Šฅ ๋‚˜์˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— acceptance rate๋ฅผ ๋†’์—ฌ๋„ ํ’ˆ์งˆ์ด ๋ฐ˜๋“œ์‹œ ์ €ํ•˜๋˜์ง€๋Š” ์•Š์Œ
    • ํŠนํžˆ ๋น„๊ต์  ๋‹จ์ˆœํ•œ ์งˆ๋ฌธ์˜ ๊ฒฝ์šฐ ๋งŽ์€ draft ๋‹ต๋ณ€์€ ๊ทธ๋Œ€๋กœ Accept๋˜์–ด๋„ ๊ฐ ์ถ˜
    • GSM8K ๊ฐ™์€ ๋ฌธ์ œ์—์„œ ํŠนํžˆ ๊ฐ•ํ•จ
  • ๋ฌธ์ œ: draft ๋ชจ๋ธ์ด ์™„์ „ํžˆ ์ •ํ™•ํ•œ ํ•ด๋‹ต์„ ์ƒ์„ฑํ•œ ๊ฒฝ์šฐ๋„, ๊ธฐ์กด์˜ ๊ฒ€์ฆ ๋ฐฉ์‹์˜ ํ•œ๊ณ„๋กœ ์ธํ•ด target ๋ชจ๋ธ์ด ๋งŽ์€ ํ† ํฐ์„ ์ž์ฃผ ๊ฑฐ์ ˆํ•จ!
    • ์ด๋Ÿฌํ•œ ๊ฑฐ์ ˆ์˜ ์ด์œ ๋Š” DM์˜ ์‘๋‹ต์˜ correctness์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ ๋ฐœ์ƒ
    • TM์ด ๋ฌธ๋งฅ์  ์ •ํ™•์„ฑ๋ณด๋‹ค ์ž๊ธฐ ์ž์‹ ์˜ ์‘๋‹ต๊ณผ์˜ ์ •๋ ฌ๋งŒ ๋ณด๊ธฐ ๋•Œ๋ฌธ
  • Standard SD์˜ ๋ฌธ์ œ์ 
    • Standard SD๋Š” ํ† ํฐ์„ Accept/Reject ํ•  ๋•Œ ์ •๋ ฌ(alignment)๋งŒ ๋ด„
    • draft๊ฐ€ ๋งŒ๋“  ํ† ํฐ์ด ์ •๋‹ต์ด๊ณ  ๋ฌธ๋งฅ์ ์œผ๋กœ ์ข‹์€๋ฐ๋„, TM์ด ์„ ํ˜ธํ•˜๋Š” ํ‘œํ˜„๊ณผ ๋‹ค๋ฅด๋ฉด Reject ๋•Œ๋ ค๋ฒ„๋ฆผ

    โ‡’ ๋ชฉํ‘œ: ํ›„๋ณด ํ† ํฐ์ด ๋ฌธ๋งฅ์ ์œผ๋กœ ์˜ฌ๋ฐ”๋ฅธ(Correct) ๊ฒฝ์šฐ Acceptํ•˜๋„๋ก TM์„ ํ•™์Šตํ•˜์ž!

์ƒˆ๋กœ์šด ๊ฒ€์ฆ ๋ฐฉ์‹์ธ Judge Decoding ์ œ์•ˆ

  • Judge Decoding ๋ชฉํ‘œ: TM๊ณผ์˜ alignment ๋ง๊ณ , ํ† ํฐ์ด ํ‹€๋ ธ๋Š”์ง€/๋งž๋Š”์ง€(correctness)๋ฅผ ํŒ๋‹จํ•ด์„œ Accept๋ฅผ ๋Š˜๋ฆฌ์ž!!
    • LLM-as-a-Judge์—์„œ ์ฐฉ์•ˆ
    • But, LLM-as-a-Judge์˜ ๋ฌธ์ œ์ 
      1. ๊ธด ์‹œ์Šคํ…œ ํ”„๋กฌํ”„ํŠธ์™€ CoT ์ถ”๋ก ์ด ํ•„์š”ํ•œ๋ฐ ์ด๊ฒƒ๋“ค์ด ์ถ”๋ก  ์†๋„๋ฅผ ์ €ํ•˜์‹œํ‚ด
      1. LLM judge๋Š” ์ „์ฒด ๋‹ต๋ณ€์„ ํ‰๊ฐ€ํ•˜๋Š” ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋Š”๋ฐ SD๋Š” ์งง๊ณ  ๋ถ€๋ถ„์ ์ธ ์—ฐ์† ํ† ํฐ์„ ํ‰๊ฐ€ํ•ด์•ผ ํ•œ๋‹ค๋Š” ์ ์—์„œ ์‹ค์šฉ์ ์ด์ง€ ์•Š์Œ

      โ‡’ ๊ธฐ์กด ๋ฐฉ์‹์„ ์žฅ์ ์€ ์‚ด๋ฆฌ๋˜, LLM-as-a-Judge ์˜ ๋А๋‚Œ์€ ์‚ด๋ฆฌ๋„๋ก ์„ค๊ณ„ํ•ด๋ณด์ž!

์ž„๋ฒ ๋”ฉ์€ ์ด๋ฏธ ์˜ค๋ฅ˜๋ฅผ ์•Œ๊ณ  ์žˆ๋‹ค..!

  • TM์€ ์ž˜๋ชป๋œ ํ† ํฐ์„ ์ฒ˜๋ฆฌํ•˜๋ฉด, ๋งˆ์ง€๋ง‰ hidden layer embedding์—์„œ ์ด์ƒ ๊ฐ์ง€ ์‹ ํ˜ธ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ด!
    • ์ž˜๋ชป๋œ ํ† ํฐ์˜ ๋งˆ์ง€๋ง‰ hidden layer embedding ์— ์˜ค๋ฅ˜๊ฐ€ ํ‘œ์‹œ(flag) ๋ผ์žˆ์Œ
    • ๋ชจ๋ธ์€ ์ดํ›„ ํ† ํฐ์—์„œ ํ•ด๋‹น ์˜ค๋ฅ˜๋ฅผ ์ˆ˜์ •ํ•˜๋ ค๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ์ถœ๋ ฅ์„ ์ƒ์„ฑํ•˜๊ฒŒ ๋จ
      (์œ„ ๊ทธ๋ฆผ์˜ ์™ผ์ชฝ ์–ด์‹œ์Šคํ„ดํŠธ ์ฐธ๊ณ )
    ๋ชจ๋ธ์€ ์ด๋ฏธ ์ด ํ† ํฐ์ด ํ‹€๋ ธ๋‹ค๋Š” ๊ฑธ ๋‚ด๋ถ€์ ์œผ๋กœ ์•Œ๊ณ  ์žˆ๋‹ค..!

Judge Head

  • TM์˜ embedding ์œ„์— ๋ถ™๋Š” ์ž‘์€ ์ด์ง„(binary) ๋ถ„๋ฅ˜๊ธฐ
    • ๋ชฉ์ : target ์ž„๋ฒ ๋”ฉ์— ๋‹ด๊ธด ์‹ ํ˜ธ๋ฅผ ์ด์šฉํ•ด, ๊ฐ ํ›„๋ณด ํ† ํฐ cic_i๏ปฟ์— ๋Œ€ํ•ด ์ด ํ† ํฐ์„ ๋ฌธ๋งฅ์ƒ(correctness) ํ†ต๊ณผ์‹œ์ผœ๋„ ๋˜๋Š”๊ฐ€?๋ฅผ ๋น ๋ฅด๊ฒŒ ํŒ์ •
    • ์ž…๋ ฅ: ํ† ํฐ ์ž„๋ฒ ๋”ฉ eie_i๏ปฟ
    • ์ถœ๋ ฅ: ํ•ด๋‹น ํ† ํฐ์ด ํ†ต๊ณผ(accept) ๊ฐ€๋Šฅํ•  ํ™•๋ฅ (score) โ‡’ ฯƒ(fjudge(ei))ฯƒ(f_{judge}(e_i))๏ปฟ
    • ๊ฒฐ์ •: ์ž„๊ณ„๊ฐ’ ฮด\delta๏ปฟ๋ฅผ ๋„˜์œผ๋ฉด Accept โ‡’ ฯƒ(fjudge(ei))>ฮด\sigma(f_{judge}(e_i)) > \delta๏ปฟ
  • Linear head (logistic regression)๋กœ ๊ตฌํ˜„
    • ์ด๋ฏธ target embedding์— โ€œ์˜ค๋ฅ˜ ์‹ ํ˜ธโ€๊ฐ€ ์กด์žฌ โ†’ ๋ณต์žกํ•œ ๋ชจ๋ธ์ด ํ•„์š” ์—†์Œ
      • ๋ณต์žกํ•œ MLP/Transformer๋Š” ์˜คํžˆ๋ ค ๊ณผ์ ํ•ฉ ์œ„ํ—˜
    • ์žฅ์ 
      • ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ๋งค์šฐ ์ž‘๊ณ (์•ฝ 16.4k)
      • ํ•™์Šต ๋น ๋ฆ„ (~1.5h)
      • TM์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” ๋™๊ฒฐ(frozen)

Judge head ํ•™์Šต์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ์…‹ ๊ตฌ์ถ•

  • ์ด 500๊ฐœ์˜ ๊ณ ํ’ˆ์งˆ ์‚ฌ์šฉ์ž ์งˆ๋ฌธ๊ณผ ๊ทธ์— ๋Œ€ํ•œ ์ •๋‹ต/์˜ค๋‹ต ๋‹ต๋ณ€ ์Œ์œผ๋กœ ๊ตฌ์„ฑ๋œ ๋ฐ์ดํ„ฐ์…‹ ๊ตฌ์ถ•
    • ์ƒˆ๋กญ๊ฒŒ ์ƒ์„ฑํ•œ ์งˆ๋ฌธ๊ณผ Alpaca์™€ ARC ๋ฐ์ดํ„ฐ์…‹์—์„œ ํ•„ํ„ฐ๋งํ•œ ์งˆ๋ฌธ๋“ค ์‚ฌ์šฉ
    • ์ž…๋ ฅ ์งˆ๋ฌธ๋งŒ ์‚ฌ์šฉํ•˜๊ณ  ๊ทธ์— ๋Œ€ํ•œ ์ •๋‹ต์€ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜์Œ!
  • Mistral-Large-2, Llama-8B, Llama-405B์„ ํ™œ์šฉํ•ด ์ •๋‹ต๊ณผ ์˜ค๋‹ต์„ ๋‹ค์–‘ํ•˜๊ฒŒ ์ƒ์„ฑ
    • ์ธ๊ฐ„์ด ์‹ค์ œ๋กœ ์˜ค๋ฅ˜ ํ† ํฐ์— ์ฃผ์„๋„ ๋‹ฌ์Œ
  • ํ•™์Šต ๊ณผ์ •: ์ •๋‹ต ๋‹ต๋ณ€์— ํฌํ•จ๋œ ๋ชจ๋“  ํ† ํฐ์„ positive ๋กœ ๋ผ๋ฒจ๋ง, ์˜ค๋‹ต ๋‹ต๋ณ€์—์„œ๋Š” ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ ์ „๊นŒ์ง€์˜ ๋ชจ๋“  ํ† ํฐ์„ positive๋กœ, ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ํ† ํฐ๋“ค์„ negative์œผ๋กœ ๋ผ๋ฒจ๋งํ•˜์˜€์Œ
    • positive๊ฐ€ negative ๋ณด๋‹ค 20๋ฐฐ ๋งŽ์Œ

๋ชจ๋ธ ์„ค๊ณ„ ๋ฐ ํ•™์Šต

  • ๊ตฌ์ถ•ํ•œ ๋ฐ์ดํ„ฐ์…‹์„ ๋ฐ”ํƒ•์œผ๋กœ target ๋ชจ๋ธ์˜ ์ž„๋ฒ ๋”ฉ ์œ„์— linear head์ธ fjudgef_{judge}๏ปฟ๋ฅผ ํ•™์Šต์‹œํ‚ด
    • ๋ฐ์ดํ„ฐ ๋ถˆ๊ท ํ˜•์„ ๋ณด์ •ํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ€์ค‘ cross-entropy loss ์‚ฌ์šฉ
    • ์ž˜๋ชป๋œ ํ† ํฐ์„ ์ž˜ ์žก์•„๋‚ด๋„๋ก negative ์ƒ˜ํ”Œ์— ๋” ํฐ ๊ฐ€์ค‘์น˜๋ฅผ ๋‘ 
  • ํ•™์Šต ํŒŒ๋ผ๋ฏธํ„ฐ: 16.4k
  • ํ•™์Šต ๋ฐ์ดํ„ฐ: 30k ํ† ํฐ
  • ํ•™์Šต ์‹œ๊ฐ„: 1.5์‹œ๊ฐ„ ์ด๋‚ด
  • target ๋ชจ๋ธ ํŒŒ๋ผ๋ฏธํ„ฐ: ๊ณ ์ •(frozen)

์‹ค์ œ Inference ๊ณผ์ •(Judge + Standard SD ๊ฒฐํ•ฉ)

  • TM์ด ํ›„๋ณด ํ† ํฐ์„ ๋ณด๊ณ  ๋‘ ๊ฐ€์ง€ ์งˆ๋ฌธ์„ ๋™์‹œ์— ํ•จ
    1. alignment: ๋‚ด๊ฐ€ ์›๋ž˜ ๋ฝ‘์„ ํ† ํฐ์ด๋ž‘ ๋น„์Šทํ•ด?
    1. correctness: ๋ฌธ๋งฅ์ƒ ๋งž๋Š” ํ† ํฐ์ธ์ง€

    โ‡’ ๋‘˜ ์ค‘ ํ•˜๋‚˜๋ผ๋„ Yes๋ฉด Accept

==== ์ถ”๋ก  ๊ณผ์ • ====

  1. DM์ด ํ›„๋ณด ํ† ํฐ M๊ฐœ ์ƒ์„ฑ (๊ธฐ์กด ๋ฐฉ์‹๊ณผ ๋™์ผ)

    c1,c2,โ€ฆ,cMc_1, c_2, \dots, c_M๏ปฟ

  1. TM์ด ํ›„๋ณด ํ† ํฐ์„ ํ•œ ๋ฒˆ์— ๊ฒ€ํ†  (2๊ฐœ์˜ ํŒ์ • ๋™์‹œ ์ˆ˜ํ–‰)
    • Standard SD ๊ฒ€์ฆ ๋งˆ์Šคํฌ zstandz_{stand}๏ปฟ
      • ๊ธฐ์ค€: alignment (ํ™•๋ฅ  ๋น„์œจ)
        • zstand[i]=1z_{stand}[i] = 1๏ปฟ โ†’ Accept
        • zstand[i]=0z_{stand}[i] = 0๏ปฟโ†’ Reject
    • Judge ๋งˆ์Šคํฌ zjudgez_{judge}๏ปฟ
      • ๊ธฐ์ค€: correctness (embedding ๊ธฐ๋ฐ˜)
        • ํ† ํฐ ์ž„๋ฒ ๋”ฉ eie_i๏ปฟ ๋ฅผ ๋ณด๊ณ  judge head๊ฐ€ ์ ์ˆ˜ ๊ณ„์‚ฐ
      • ๊ณ„์‚ฐ: Acceptย ifย ฯƒ(fjudge(ei))>ฮด{Accept\ if\ } \sigma(f_{judge}(e_i)) > \delta๏ปฟ
      • ๊ฒฐ๊ณผ:
        • ์ ์ˆ˜ > ฮด ฮด\delta๏ปฟzjudge[i]=1z_{judge}[i] = 1๏ปฟโ†’ Accept
        • ์ ์ˆ˜โ‰ค ฮด โ†’ zjudge[i]=0z_{judge}[i] = 0๏ปฟ โ†’ Reject
  1. ์ตœ์ข… Accept/Reject๋Š” OR๋กœ ๊ฒฐํ•ฉ
    • z=zstandโˆจzjudgez = z_{stand} \lor z_{judge}๏ปฟ
      • Standard SD๊ฐ€ Accept๋ฉด โ†’ ๋ฌด์กฐ๊ฑด Accept
      • Standard SD๊ฐ€ Reject์—ฌ๋„, Judge๊ฐ€ Accept๋ฉด โ†’ Accept

Experiment

Draft ํ’ˆ์งˆ์ด ์•„์ฃผ ์ข‹์€ ๊ฒฝ์šฐ (GPT-4o)

  • ์‹คํ—˜ ๋ชฉ์ : DM์˜ ์˜ฌ๋ฐ”๋ฅธ ์‘๋‹ต(correct)์กฐ์ฐจ ๋†’์€ Reject์„ ๊ฒช๋Š”๋‹ค๋Š” ์ ์„ ์ฆ๋ช…ํ•˜๊ธฐ ใ…œ์ดํ•ด
  • ์‹คํ—˜ ์…‹์—…:
    • DM: GPT-4o
    • TM: Llama-405B
    • ๋ฐ์ดํ„ฐ์…‹: MT-Bench, GSM8K, HumanEval
  • ์‹คํ—˜ ๋ฐฉ์‹: ๋ฐ์ดํ„ฐ์…‹์˜ ์งˆ๋ฌธ์— ๋Œ€ํ•œ ์ „์ฒด ๋‹ต๋ณ€์„ ์ƒ์„ฑํ•œ ๋’ค, greedy ๊ฒ€์ฆ์—์„œ ์ฒซ ๊ฑฐ์ ˆ์ด ๋ฐœ์ƒํ•˜๊ธฐ ์ „๊นŒ์ง€ TM์ด ๋ช‡ ๊ฐœ์˜ ํ† ํฐ์„ Acceptํ•˜๋Š”์ง€ ์ธก์ •
  • ์‹คํ—˜ ๊ฒฐ๊ณผ:
    • Standard SD acceptance: ์•ฝ 2๊ฐœ ํ† ํฐ Accept
    • Judge SD acceptance: 20~27 ํ† ํฐ accept
  • insight
    • Draft์˜ ํ’ˆ์งˆ์ด ์ข‹์•„์ง„๋‹ค๊ณ  acceptance๊ฐ€ ์ข‹์•„์ง€์ง€ ์•Š๋Š”๋‹ค!
    • Judge Decoding ๋ฐฉ์‹์„ ์“ฐ์ž..!

์‹คํ—˜ ์„ธํŒ…์„ ๋ฐ˜๋Œ€(draft โ†” target ๋ชจ๋ธ ๋ฐ”๊พธ๊ธฐ)๋กœ ํ•ด๋„ ๊ฒฐ๊ณผ๋Š” ๋™์ผ!

  • draft ๋ชจ๋ธ: Llama-405B
  • target ๋ชจ๋ธ: GPT-4o (์œ„ ์‹คํ—˜๊ณผ ๋ฐ˜๋Œ€ ์„ธํŒ…)
  • ์‹คํ—˜ ๊ฒฐ๊ณผ
    • 8B/405B ์ผ ๋•Œ์˜ acceptance โ‰ˆ 6.6 ํ† ํฐ
    • 405B/8B ์ผ ๋•Œ์˜ acceptance โ‰ˆ 6.3 ํ† ํฐ

      โ†’ ๊ฑฐ์˜ ์ฐจ์ด ์—†์Œ

Human expert drafting

  • ์ธ๊ฐ„ ์ „๋ฌธ๊ฐ€๊ฐ€ ์ƒ์„ฑํ•œ Draft ํ† ํฐ(์„ฑ๋Šฅ ์ตœ์ƒ)์„ ๊ฒ€์ฆํ•ด๋ณด์ž!
    • ๊ณ ํ’ˆ์งˆ์˜ ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ฒ€์ฆ ์š”์•ฝ๋ฌธ์„ ํฌํ•จํ•œ wikipedia-summary ๋ฐ์ดํ„ฐ์…‹ ์ผ๋ถ€๋ฅผ ์‚ฌ์šฉํ•ด, greedy SD ๊ฒ€์ฆ์—์„œ์˜ ํ† ํฐ Accept๋ฅ ์„ ํ‰๊ฐ€
  • ์‹คํ—˜ ๊ฒฐ๊ณผ
    • Human text (draft) โ†’ Llama-405B
    • Standard SD ์ผ ๋•Œ์˜ acceptance โ‰ˆ 3.1 ํ† ํฐ
    • Judge SD ์ผ ๋•Œ์˜ acceptance โ‰ˆ 12.3 ํ† ํฐ
    • โ†’ human์ด ์ง์ ‘ draft ํ•œ ํ† ํฐ๋“ค๋„ reject ๋•Œ๋ฆฌ๋Š”๊ฑฐ๋ฉด TM์˜ ๊ธฐ์กด ๊ฒ€์ฆ ๋ฐฉ์‹ ๋ฌธ์ œ ํ™•์‹คํžˆ ์žˆ์Œ!

โ‡’ target model๊ณผ์˜ alignment๋ฅผ ํ†ตํ•ด ๊ฒ€์ฆํ•˜๋Š” ๊ธฐ์กด์˜ ๊ฒ€์ฆ ๋ฐฉ์‹์ด ๋ฌธ์ œ ์žˆ์Œ!!

Judge Decoding Benchmark Results

  • ์‹คํ—˜ ์„ธํŒ…
    • ๋ชจ๋ธ: DM (Llama-8B) + TM (Llama-70B/405B)
    • ๋น„๊ต ๋ฐฉ๋ฒ•(Decoding / Verification)
      • Draft only (Llama-8B)
      • Target only (Llama-70B, 405B)
      • Top-K verification (ํ‘œ์ค€ SD ์™„ํ™” ํœด๋ฆฌ์Šคํ‹ฑ): Target ๋ชจ๋ธ์ด ๋ณด๊ธฐ์— ํ™•๋ฅ ์ด ๋†’์€ K๊ฐœ ์•ˆ์— ๋“ค๋ฉด ๊ทธ๋ƒฅ ํ†ต๊ณผ์‹œํ‚ค๋Š” ๊ฒ€์ฆ ๋ฐฉ์‹
      • Judge Decoding
    • ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ
      • Top-K: M=10
      • Judge Decoding: M=25
    • ๋ฒค์น˜๋งˆํฌ: GSM8K, HumanEval, ARC-Challenge, MMLU, MT-Bench
  • ์‹คํ—˜ ๋ชฉ์ 
    1. Top-K (ํœด๋ฆฌ์Šคํ‹ฑ ์™„ํ™”): ๊ฒ€์ฆ ๊ธฐ์ค€์„ ๋А์Šจํ•˜๊ฒŒ ํ–ˆ์„ ๋•Œ ์ •ํ™•๋„๊ฐ€ ์–ผ๋งˆ๋‚˜ ๋ฌด๋„ˆ์ง€๋Š”์ง€ ํ™•์ธ
    1. Judge Decoding์ด ๋” ๊ธด ํ›„๋ณด ์‹œํ€€์Šค(M=25) ๋ฅผ acceptํ•˜๋ฉด์„œ๋„ Target ์ˆ˜์ค€ ์ •ํ™•๋„๋ฅผ ์œ ์ง€ํ•˜๋Š”์ง€ ๊ฒ€์ฆ
  • ์‹คํ—˜ ๊ฒฐ๊ณผ
    • Top-K๋Š” ์ •ํ™•๋„ ํฌ๊ฒŒ ํ•˜๋ฝ
      • ์ผ๋ถ€ ๋ฒค์น˜๋งˆํฌ์—์„œ ๋‘๋“œ๋Ÿฌ์ง„ ์„ฑ๋Šฅ ์ €ํ•˜ ๋ฐœ์ƒ
      • ์ƒ์œ„ K ์•ˆ์—๋งŒ ๋“ค๋ฉด acceptํ•˜๋Š” Top-K ๋ฐฉ์‹์€ ํ‹€๋ฆฐ ํ† ํฐ๋„ ํ†ต๊ณผ์‹œํ‚ค๊ธฐ ์‰ฌ์›€
      • ํ’ˆ์งˆ-์†๋„ trade-off๊ฐ€ ์‹ฌํ•˜๊ฒŒ ๋ฐœ์ƒ(์†๋„๋Š” ๋น ๋ฅด์ง€๋งŒ ํ’ˆ์งˆ์€ ๋‚˜์˜๋‹ค๋Š” ๋œป)
    • Judge Decoding์€ ์ •ํ™•๋„ ๊ฑฐ์˜ ๋ณด์กด
      • ๋ชจ๋“  ๋ฒค์น˜๋งˆํฌ์—์„œ Target-only ๋Œ€๋น„ ๊ฑฐ์˜ ์ฐจ์ด ์—†์ด ์œ ์ง€
      • ์ฆ‰, ์•ฝ 20๊ฐœ ์ˆ˜์ค€ ํ† ํฐ์„ ํ•œ ๋ฒˆ์— ๋” ๋งŽ์ด acceptํ•ด๋„ ํ’ˆ์งˆ์ด ๊นจ์ง€์ง€ ์•Š์Œ์„ ๋ณด์—ฌ์คŒ
    • 70B/405B ๋ชจ๋‘์—์„œ ์ผ๊ด€๋œ ๊ฒฝํ–ฅ
      • Target์ด ์ปค์ ธ๋„(70Bโ†’405B) ๊ฒฐ๊ณผ ํŒจํ„ด์ด ์œ ์ง€๋จ

        โ†’ ๋ฐฉ๋ฒ•์ด ํŠน์ • ๋ชจ๋ธ ํฌ๊ธฐ์—๋งŒ ๋งž๋Š” ํŠธ๋ฆญ์ด ์•„๋‹ˆ๋ผ๋Š” ๊ทผ๊ฑฐ

  • ์ธ์‚ฌ์ดํŠธ
    • Judge Decoding์€ top-K๋ณด๋‹ค 2.5๋ฐฐ ๋งŽ์€ ์ƒ˜ํ”Œ์„ ์ƒ์„ฑํ•˜๋ฉด์„œ๋„ ๋” ๋†’์€ ์ •ํ™•๋„ ๋‹ฌ์„ฑ
      โ†’ ์ƒ˜ํ”Œ ๊ฐœ์ˆ˜๋ณด๋‹ค ํ’ˆ์งˆ๊ณผ ๊ฒ€์ฆ ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ์ค‘์š”
      • Top-K: ๋‹จ์ˆœ ๊ทœ์น™์ด๋ผ correctness ํŒ๋‹จ ์‹คํŒจ โ†’ ์ •ํ™•๋„ ํ•˜๋ฝ
      • Judge Decoding: ์ž„๋ฒ ๋”ฉ ๊ธฐ๋ฐ˜ correctness ํŒ์ • โ†’ ๋” ๊ธธ๊ฒŒ acceptํ•ด๋„ ์ •ํ™•๋„ ์œ ์ง€
    • Target ๋ชจ๋ธ์ด ์ง์ ‘ ์ตœ์ข… ํ† ํฐ์„ ์„ ํƒํ•˜์—ฌ ๋ชจ๋ธ ์ •๋ ฌ(alignment) ๋ฌธ์ œ๋ฅผ ๊ทผ๋ณธ์ ์œผ๋กœ ํ•ด๊ฒฐ

๋ถ„ํฌ ์™ธ ์ผ๋ฐ˜ํ™” ์‹คํ—˜

  • ํ•™์Šต๋˜์ง€ ์•Š์€ ์ƒํ™ฉ์—์„œ๋„ judge decoding์ด ์–ผ๋งˆ๋‚˜ ์ผ๋ฐ˜ํ™”๋˜๋Š”์ง€๋ฅผ ํ‰๊ฐ€
    • ์ฝ”๋”ฉ ์˜ˆ์ œ๋ฅผ ์ œ๊ฑฐํ•œ ๋ฐ์ดํ„ฐ๋กœ judge๋ฅผ ํ•™์Šตํ•œ ๋’ค, HumanEval์—์„œ ํ‰๊ฐ€
  • ์„ฑ๋Šฅ์ด 86.6%์—์„œ 80.4%๋กœ ํ•˜๋ฝํ•˜๊ธด ํ–ˆ์ง€๋งŒ, ์—ฌ์ „ํžˆ DM(71.3%)๋ณด๋‹ค๋Š” ํ›จ์”ฌ ๋†’์Œ

Categories

research