← BLOGAI 산업

당신은 AI로 AI를 채점한다 — 심판이 선수와 한편이면 점수는 거짓말을 한다

벤치마크를 버리고 당신의 eval을 만들었다 치자. 그런데 답이 수백 개면 사람이 다 못 본다. 그래서 대부분 채점을 LLM에 맡긴다. 문제는 심판으로 세운 모델이 선수와 똑같은 버릇을 갖고 있다는 것이다. 위치·장황함·자기선호 편향이 당신의 점수를 어떻게 거짓말시키는지, 그리고 심판을 감사하는 법.

지난 글에서 "리더보드를 믿지 말고 당신의 eval을 만들라"고 했다. 좋다, 만들었다 치자. 당신 제품이 실제로 던지는 요청 50개를 골라 정답과 함께 고정했다. 그런데 모델을 바꿀 때마다 답 50개를 사람이 눈으로 다 채점할 수 있나. 프롬프트를 조금 고칠 때마다는? 회귀 테스트를 매일 돌리려면? 못 한다. 그래서 대부분 채점을 다시 LLM에게 맡긴다. LLM-as-judge. 답 두 개를 주고 "어느 쪽이 더 나은가"를 모델에게 물어 점수를 매긴다. 함정은 여기서 시작된다. 심판으로 세운 모델이 선수와 똑같은 버릇을 갖고 있다.

심판은 중립이 아니다

LLM 심판에는 사람 채점자에겐 없는 계통적 편향이 있다. 연구로 반복 확인된 세 가지가 대표적이다.

  • 위치 편향. 두 답을 A, B 순서로 보여주면 심판은 앞에 놓인 답을 선호한다. 순서만 뒤집어도 승자가 바뀐다. 어떤 측정에선 첫 번째 응답 선호가 70%대까지 올라갔다. 내용이 아니라 자리가 점수를 정한다.
  • 장황함 편향. 길고 자신만만한 답에 높은 점수를 준다. 요점이 같아도 문단이 많고 설명이 두툼하면 이긴다. 짧고 정확한 답이 장황하고 애매한 답에 진다.
  • 자기선호 편향. 자기 자신, 또는 같은 계열 모델의 출력을 남의 것보다 후하게 매긴다. 사람이 보면 동급인데 심판은 자기 걸 위로 올린다. 데이터셋에 따라 편차가 크지만, 자기 출력에 10~25%가량 더 높은 점수를 주는 경향이 여러 연구에서 잡혔다.

세 편향의 공통점은 하나다. '좋은 답’이 아니라 '심판이 좋아하게 생긴 답’에 점수가 붙는다. 그리고 선수 모델도 정확히 그런 답을 잘 쓴다. 심판과 선수가 같은 취향을 공유하는 순간, 점수는 품질이 아니라 취향의 메아리가 된다.

왜 자기 걸 좋아하나

자기선호는 단순한 편애가 아니다. 2024년 NeurIPS에 실린 연구는 모델이 "이건 내가 쓸 법한 문장"이라고 알아보는 자기인식(self-recognition) 능력이 자기선호와 강하게 맞물린다는 걸 보였다. 메커니즘은 perplexity로 설명된다. 모델은 자기에게 익숙한, 즉 예측하기 쉬운(낮은 perplexity) 문장에 더 높은 점수를 준다. 낯선 문체는 내용이 옳아도 낮게 본다.

뒤집으면 이렇다. 심판은 정답을 찾는 게 아니라 자기와 닮은 답을 찾는다. 더 나쁜 건, 크고 강한 모델일수록 이 경향이 더 세다는 점이다. 가장 똑똑한 심판이 가장 편향된 심판일 수 있다. 채점 모델과 피채점 모델을 같은 계열로 두면, 당신은 선수에게 자기 경기를 심판 보라고 맡긴 것과 같다.

eval이 없는 것보다 나쁠 수 있다

여기서 반문이 나온다. “그래도 감으로 배포하는 것보단 낫지 않나?” 꼭 그렇지 않다.

감으로 배포하면 최소한 못 믿는다는 걸 안다. 반면 편향된 심판은 매번 일관되게 틀린다. 눈금이 휘어 있는 자다. 자가 휘어 있으면 재는 사람은 자기가 틀리는 줄 모른다. 숫자는 안정적으로 나오고, 그래프는 매끄럽게 올라간다. 팀은 "eval이 통과했다"며 배포한다. 그런데 그 심판은 짧고 정확해진 답을 회귀로 찍어 떨어뜨리고, 길고 그럴싸해진 답을 개선으로 통과시킨다. 점수가 오르는 동안 실제 유저 경험은 반대로 간다. 근거 있어 보이는 오판이 무근거보다 비싸다. 틀린 걸 모른 채 자신 있게 밀기 때문이다.

심판을 감사하라

그렇다고 LLM 심판을 버릴 필요는 없다. 사람이 답 수백 개를 매번 채점할 수는 없고, 잘 세운 심판은 사람 판정과 상당히 일치한다. GPT-4급 심판이 사람과 80%대 일치율을 보였다는 보고도 있다 — 사람끼리의 일치율과 맞먹는 수준이다. 다만 그 숫자는 그 태스크, 그 세팅에서 나온 것이다. 심판을 중립 재판관이 아니라 선수와 상관관계가 있는 계측기로 다루면, 계측기는 이렇게 쓴다.

  1. 골드셋으로 심판을 먼저 채점하라. 사람이 라벨한 정답 수십~수백 건을 고정하고, 심판의 판정이 그 골드셋과 몇 % 일치하는지부터 잰다. 심판의 일치율을 모르면 그 아래 모든 점수는 근거가 없다. 남이 80%였다는 건 남의 숫자다.
  2. 위치를 무작위화하고 양방향으로 재라. A/B와 B/A 두 순서로 각각 채점해 평균 낸다. 순서만 바꿔 결과가 뒤집히는 항목은 심판이 못 가르는 항목이니 사람에게 넘긴다.
  3. 길이를 통제하라. 길이에 페널티를 주거나, 비슷한 길이끼리 비교하도록 강제한다. 장황함이 점수로 새는 걸 막는다.
  4. 심판은 다른 계열로. 채점 모델을 피채점 모델과 다른 랩·다른 계열로 둔다. 자기 답을 자기가 채점하게 두지 마라.
  5. 선호가 아니라 루브릭으로. "어느 쪽이 더 나은가"는 편향이 끼기 쉽다. “사실 오류가 있는가/없는가”, "요청한 형식을 지켰는가"처럼 통과·실패로 쪼갠 루브릭은 취향이 덜 낀다.
  6. 주기적으로 사람이 표본 재검. 심판과 사람의 일치율이 흔들리기 시작하면 심판을 다시 보정한다. 계측기는 한 번 맞추고 끝이 아니라 정기적으로 영점을 맞춘다.

점수를 믿기 전에 심판을 의심하라

당신의 eval이 얼마나 믿을 만한지는 심판을 얼마나 의심했느냐로 정해진다. 벤치마크를 버리고 자기 eval을 만든 건 옳은 결정이었다. 하지만 그 eval의 채점을 편향된 심판에게 통째로 맡겨두면, 당신은 리더보드를 자기 손으로 다시 만든 셈이다. 이번엔 남이 아니라 당신이 속는다는 것만 다르다. LLM-as-judge는 못 쓸 도구가 아니라 보정 없이 믿으면 안 되는 도구다. 자를 대기 전에, 그 자가 휘었는지부터 재라.