Free Lunch for Pass@kk? Low Cost Diverse Sampling for Diffusion Language Models

이 논문은 확산 언어 모델의 샘플링 과정에서 기존 샘플의 특징 공간과 상호 배척되도록 중간 샘플을 순차적으로 수정하는 훈련 없는 저비용 방식을 제안하여, 복잡한 추론 작업에서 Pass@kk 성능과 생성 다양성을 획기적으로 향상시킵니다.

Sean Lamont, Christian Walder, Paul Montague, Amir Dezfouli, Michael Norrish

게시일 2026-03-06
📖 3 분 읽기☕ 가벼운 읽기

Each language version is independently generated for its own context, not a direct translation.

🍳 비유: 똑같은 요리를 반복하는 요리사 vs. 다양한 요리를 시도하는 요리사

생각해 보세요. 여러분이 "새로운 레시피를 찾아달라"고 AI(요리사) 에게 요청했다고 가정해 봅시다.

  1. 기존 방식 (문제점):
    AI 는 16 번의 시도를 해보라고 합니다. 하지만 AI 는 매번 가장 익숙하고 안전한 레시피만 반복해서 만들어냅니다.

    • 1 번째 시도: 짜장면
    • 2 번째 시도: 짜장면 (약간 다른 모양)
    • ...
    • 16 번째 시도: 짜장면
    • 결과: 16 번 시도했지만, 실제로는 짜장면 하나만 얻은 셈입니다. 만약 짜장면이 실패했다면, 16 번 모두 실패한 것이죠. 이를 논문에서는 '모드 붕괴 (Mode Collapse)'라고 부릅니다.
  2. 이 논문이 제안하는 해결책 (ODD):
    이 논문은 "요리사에게 '이번엔 전에 해본 적 없는 재료를 섞어봐!'라고 중간중간 알려주는" 방법을 개발했습니다.

    • AI 가 1 번째로 짜장면을 만들 때, AI 는 "아, 짜장면은 해봤네. 그럼 2 번째는 피자를 만들어야지!"라고 생각하게 됩니다.
    • 3 번째는 스파게티, 4 번째는 김치찌개를 만들게 됩니다.
    • 결과: 16 번 시도했을 때, 짜장면, 피자, 스파게티, 김치찌개 등 서로 완전히 다른 16 가지 요리가 나옵니다. 만약 짜장면이 실패하더라도, 김치찌개나 스파게티가 성공할 확률이 훨씬 높아집니다.

🚀 이 기술의 핵심: "ODD (Orthogonal Diverse Diffusion)"

이 기술의 이름은 ODD입니다. '이상한 (Odd)'이라는 뜻도 있지만, 수학적으로 **'직교하는 (Orthogonal)'**이라는 뜻도 담고 있습니다.

  • 직교한다는 뜻: 서로 겹치지 않는 방향을 의미합니다.
  • 어떻게 작동하나요?
    AI 가 글을 쓰거나 코드를 짤 때, 중간중간 "지금까지 쓴 내용과 완전히 다른 방향으로 가봐"라고 살짝 밀어줍니다.
    • 마치 등산을 할 때, 한 명이 "이 길은 이미 다 봤어, 저기 다른 산으로 가자!"라고 다른 팀원들을 이끄는 것과 같습니다.
    • 중요한 점은, AI 를 다시 훈련시킬 필요가 없다는 것입니다. 이미 똑똑한 AI 에게 "다양하게 생각해보자"는 작은 힌트만 주는 것뿐입니다.

💡 왜 이 기술이 중요할까요?

1. "무료 점심" 같은 효과 (Free Lunch)
논문의 제목처럼, 별도의 비용 없이 (컴퓨터 성능을 많이 더 쓸 필요 없이) 성능을 획기적으로 높입니다. 기존에는 다양한 답을 찾으려면 AI 를 다시 가르치거나, 아주 복잡한 방법을 써야 했지만, 이 방법은 생성 과정 중 아주 작은 수정만으로 해결합니다.

2. 어려운 문제 해결에 특화됨
수학 문제나 코딩처럼 정답이 하나뿐인 어려운 문제에서는, AI 가 "아마도 이렇게 될 거야"라고 가장 확신하는 길만 따라가면 실패하기 쉽습니다.

  • 기존 AI: "정답은 A 일 거야"라고 16 번 말함. (A 가 틀리면 0 점)
  • ODD 적용 AI: "A, B, C, D... Z 까지 다양한 가능성을 16 번 시도함." (정답이 Z 에 숨어있다면, ODD 가 그걸 찾아냅니다.)

📊 실제 결과 (실험 내용)

연구진은 이 기술을 **코딩 (HumanEval)**과 수학 문제 (GSM8K) 테스트에 적용했습니다.

  • 코딩: AI 가 16 번 코드를 작성했을 때, 그중 적어도 하나라도 제대로 작동하는 코드를 찾을 확률이 약 2 배 가까이 늘었습니다.
  • 수학: 복잡한 수학 문제에서도 정답을 찾는 확률이 크게 향상되었습니다.
  • 속도: 이 모든 게 가능해진 건, 거의 속도 저하 없이 (약 5% 미만의 추가 시간) 가능했습니다.

🎯 한 줄 요약

"AI 가 똑같은 실수를 반복하며 시간을 낭비하지 않도록, 중간에 "다른 길로 가봐!"라고 살짝 밀어주어, 적은 노력으로 더 많은 정답을 찾아내는 똑똑한 방법입니다."

이 방법은 앞으로 AI 가 더 복잡하고 창의적인 문제를 해결할 때, 비용을 들이지 않고도 더 효율적으로 작동하게 만드는 중요한 열쇠가 될 것입니다.