OpenLLM Leaderboard 에서 MMLU 스코어에 대한 Hugging Face 팀의 분석글 요약입니다.
원글 - https://huggingface.co/blog/evaluating-mmlu-leaderboard?fbclid=IwAR3YvsdBPXNMtEbJ7yJUvu7YJp073u5VfbtflAl0XAngPCWb3oM_M1EkK30
메타에서 LLaMA 모델을 공개하면서 이 외에도 Open LLM 모델들이 굉장히 많이 만들어지고 공개되었는데요. 어떤 데이터를 어떻게 학습시키냐에 따라 품질이 천차만별이기 때문에, 공개되는 LLM 모델들 중에서도 어떤 모델이 가장 좋은지 알아보기 위해 만들어진 것이 바로 Open LLM Leaderboard 입니다.
여기서 사용하는 MMLU는 4지선다형의 객관식 문제입니다. 주관식 문제라면 자동평가도 어렵고 평가 메트릭의 신뢰도도 다소 떨어질 수 있기 때문에 다소 간단하지만 객관식 벤치마크를 사용했습니다. MMLU 벤치마크는 "인문학", "사회 과학" 등 57개의 일반 지식 영역을 세분화된 카테고리로 분류하여 구성되어 있습니다.
평가를 위한 코드는 총 세 개의 MMLU 벤치마크를 구현한 저장소가 커뮤니티에서 많이 사용되고 있습니다.
1. MMLU 벤치마크를 고안한 UC Berkeley 공식 코드(original MMLU)
2. Stanford CRFM이 제공하는 코드(HELM)
3. EleutherAI에서 제공하는 코드(Harness).
Open LLM 리더보드는 현재 3번 Harness를 래핑해서 벤치마크를 돌리고 있습니다.
LLM은 문제에 대한 답변을 할때, A/B/C/D 만 생성하는게 아니라 다른 단어들도 생성할 수 있기 때문에 평가할때 문제마다 fewshot 예제 5개를 줘서 A/B/C/D 중에서만 generation 할 수 있게 안정성을 줍니다.
1. original MMLU 방식에서는 LLM이 답으로 생성한 토큰 중에 무엇을 생성하든, 맨 첫번째 생성되는 토큰중에 A/B/C/D 토큰만 가져와서 가장 높은 probability를 가지는 것을 평가 기준으로 합니다.
2. HELM 방식에서는 생성된 A/B/C/D 토큰을 가져와서 probability를 보는게 아니라 답변된 토큰 자체만 보고 평가 하기때문에 A/B/C/D 말고 다른 단어가 나오면 틀리다고 평가합니다. 즉, 정답이 D라고 했을때 답변도 D라고 나와야지만 정답 (그렇기때문에 fewshot이 필요)
3. Harness 방식에서는 생성된 답변 전체의 probability를 봅니다. 즉, 생성된 토큰들의 log probability을 더하고, 토큰 길이에 따른 정규화를 진행합니다.
예를들어 아래의 A 문장,B 문장,C 문장, D 문장에 대한 각 probability를 구한것 중에서 가장 높은 문장을 답으로 정해서 평가합니다.
A. It damaged support for the US model of political economy and capitalism
B. It created anger at the United States for exaggerating the crisis
C. It increased support for American global leadership under President Obama
D. It reduced global use of the US dollar
이러한 평가 방식의 차이 때문에 1,2번 방식은 성능이 비슷하게 나오는데 비해 3번만 이상합니다. 따라서 HF 에서도 수정해서 리더보드를 다시 업데이트 할 예정이고, 그러면 Falcon은 내려가게 되겠죠. 사실상 1등이 아닌 모델이었습니다..
MMLU (HELM) MMLU (Harness) MMLU (Original)
huggingface/llama-65b 0.637 0.488 0.636
tiiuae/falcon-40b 0.571 0.527 0.558
huggingface/llama-30b 0.583 0.457 0.584
EleutherAI/gpt-neox-20b 0.256 0.333 0.262
huggingface/llama-13b 0.471 0.377 0.47
huggingface/llama-7b 0.339 0.342 0.351
tiiuae/falcon-7b 0.278 0.35 0.254
togethercomputer/RedPajama-INCITE-7B-Base 0.275 0.34 0.269
사실 다지선다형을 잘 푼다고 좋은 생성 모델이라고 할 수는 없는데요, 그래서 생성모델을 평가한다는 건 참 어려운일입니다.