LLM 성능 평가를 위한 벤치마크 데이터셋, 잘 만드는 방법

LLM 성능 평가를 위한 벤치마크 데이터셋, 잘 만드는 방법
Image by vectorjuice on Freepik

바야흐로 LLM 전성시대입니다. 국내외에서 수많은 언어모델이 하루가 멀다하고 쏟아져 나오는 요즘인데요. 새로운 모델이 공개되면 이전 SOTA(State-of-the-art) 모델과의 성능 비교표가 함께 나오곤 합니다.

Antrophic이 자사 모델인 Claude를 소개하면서 공개한 성능 비교표
Antrophic이 자사 모델인 Claude를 소개하면서 공개한 성능 비교표(출처: https://www.anthropic.com/news/claude-3-family)

위 성능 비교표에서 왼쪽 첫 열에 나열된 것이 LLM의 성능을 평가하는 벤치마크 데이터셋들입니다. 이렇게 LLM의 성능을 객관적으로 평가하고 다양한 모델을 비교하기 위해서는 벤치마크 데이터셋을 활용하는 방법이 보편적입니다.

벤치마크 데이터란?
벤치마크 데이터(Benchmark Data), 벤치마크 데이터셋(Benchmark Dataset)이란 알고리즘의 성능을 측정하고 비교하는 데 사용되는 표준화된 데이터 집합입니다. 1980년대 후반에 등장한 벤치마크 데이터셋은 다양한 도메인과 문제에 대한 표본을 제공하여 모델의 일반화 능력을 평가하는 데 도움이 됩니다. 즉, 모델의 성능을 정량화하고 다른 모델들과 비교할 수 있도록 합니다. 언어모델을 위한 벤치마크 데이터셋은 일반적으로 질문과 답변(Q&A) 형태가 많이 사용됩니다. 이는 모델의 이해력과 추론 능력을 평가하는 데 적합한 데이터 형태입니다.

국내외 다양한 학술/연구 조직, 기업 등에서 언어모델의 특정 성능을 확인하기 위한 벤치마크 데이터셋을 만들어 공개합니다. 주로 영어로 된, 영미권 문화를 바탕으로 한 벤치마크 데이터셋이 상대적으로 많이 확보되어 있습니다. 한국어, 한국 문화를 중심으로 한 벤치마크 데이터셋은 그 양과 종류가 매우 부족한 것이 현실이지만, 한국어 자연어 처리 연구가 빠르게 성장하고 있기 때문에 한국어 벤치마크 데이터셋도 점차 다양화될 것으로 기대됩니다.

LLM의 성능을 정량적이고 객관적으로 평가하는 것이 목적인 데이터이기 때문에 학습 데이터만큼이나 데이터셋의 질이 중요한 것이 바로 벤치마크 데이터셋입니다. 데이터셋의 양, 내용, 난이도에 따라 같은 목적의 벤치마크 데이터셋이라도 서로 다른 점수가 나올 수 있습니다.

WSC(Winograd Schema Challenge) vs Winogrande

WSC(Winograd Schema Challenge)는 2011년에 컴퓨터 과학자인 Hector Levesque가 제안한 벤치마크 데이터셋입니다. 인공지능의 이해력과 추론 능력 평가를 위해 개발된 벤치마크 데이터셋으로, 단어나 문장의 의미를 이해하고 주어진 문맥에서 암시된 정보를 추론하여 적절한 해결책을 찾는 능력을 테스트하는 것이 목적이었습니다. 2019년에는 Transformer 기반의 여러 언어 모델이 이 벤치마크 데이터셋에서 90% 이상의 정확도에 도달했습니다.

2019년에 Allen 인공지능 연구소와 워싱턴 대학에 의해 제안된 Winogrande는 기존 WSC 설계에서 영감을 얻어 데이터 세트의 규모와 견고성을 모두 개선하도록 조정된 44,000개 문제의 대규모 벤치마크 데이터셋입니다. WSC의 한계를 극복하고 더 복잡한 추론 문제, 더 다양한 유형의 추론 능력을 평가하는 것을 목적으로 하고 있습니다.

주목할 점은 WSC에서 90% 이상의 정확도를 보이던 모델들이 Winogrande에서는 인간보다 낮은 정확도를 보였다는 것입니다.이는 WSC의 편향으로 인해 언어 모델이 과대 평가되었다는 것을 의미합니다. 두 데이터셋이 어떤 차이가 있었기에 이런 결과가 나온 것일까요?

좋은 벤치마크 데이터셋의 조건 5가지

  1. 벤치마크 데이터셋의 규모: 시험 문제의 양

두 개의 시험지가 있다고 상상해 봅시다. 문제 10개짜리 시험지와 30개짜리 시험지 중 어떤 것이 학업 수준을 더 정확하게 평가할 수 있는 시험지일까요? 문제의 난이도나 범위 등 다른 조건이 모두 동일하다면, 30개짜리 시험지로 평가하는 것이 더 정확할 것입니다.

이는 벤치마크 데이터셋에도 해당됩니다. 앞서 소개한 WSC는 273개 문제로 구성되었고, WSC에서 확장된 Winogrande는 44,000개 문제로 구성되었습니다. 때문에 WSC에 비해 Winogrande가 더 정확한 평가가 가능했던 것이죠.

하지만 무조건 수량이 많다고 좋은 것만은 아닙니다. 데이터셋이 너무 크면 처리 시간이 길어지고, 처리에 드는 비용도 증가합니다. 학습 데이터와 마찬가지로 벤치마크 데이터셋 또한 다다익선과 과유불급 사이의 균형을 맞춰야 합니다.

  1. 벤치마크 데이터셋의 난이도: 시험 문제의 난이도

그렇다면 데이터의 양이 충분하다면 좋은 벤치마크 데이터셋일까요? 그렇지 않습니다. 변별력 있는 벤치마크 데이터셋을 위해서는 난이도 조절이 필요합니다. 너무 쉽거나 너무 어려운 문제로는 모델의 성능을 객관적으로 측정할 수 없습니다.

WSC는 아래와 같은 대명사 추론 문제로 데이터셋이 구성되어 있습니다. 모델이 할 일은 밑줄 친 ‘그녀’가 무엇을 지칭하는지 추론하는 것입니다.

WSC의 대명사 추론 문제
WSC의 추론 문제

Winogrande에서는 유사한 형태의 질문을 아래와 같이 구성했습니다. 대명사 자리를 빈칸으로 처리한 것입니다. 답을 추론하는 데 도움이 되는 힌트를 없애버린 셈이죠.

Winogrande의 추론 문제
Winogrande의 추론 문제

WSC 예시에서 대명사 ‘그녀’는 인물을 뜻하기 때문에 문장 내에서 인명으로 추정되는 단어를 쉽게 가져올 수 있지만, Winogrande에서는 밑줄 친 부분이 어떤 품사인지 모델이 추론하고 답을 찾아내야만 합니다. WSC에 비해 Winogrande의 난도가 높아진 것은 이런 데이터 구성 때문입니다. 덕분에 WSC에서는 변별해 내기 어려웠던 모델의 성능을 좀 더 객관적으로 평가할 수 있었습니다. 물론 무조건 난도를 높이기보다는 쉬운 문제부터 어려운 문제까지 난이도별 문제가 고루 구성되어 있어야 어떤 문제를 모델이 가장 잘 추론하는지 파악할 수 있습니다.

  1. 벤치마크 데이터셋의 균형: 시험 문제 출제 범위

문제 수도 많고, 문제의 난이도도 상/중/하로 고루 분포되어 있는데 시험 문제가 교과서의 한 단원에서만 출제되었다면? 혹은 같은 개념과 관련된 문제가 여러 번 출제되었다면 어떨까요? 좋은 벤치마크 데이터셋의 중요 조건 중 하나는 바로 이 부분에 있습니다. 데이터가 어느 한쪽에만 치우치는 편향을 지양하며, 균형을 유지하는 것입니다.

Winogrande 데이터셋 설계와 구축 과정에는 이를 해결하기 위한 장치들이 숨어있습니다. 우선, 정밀하게 설계하여 운영한 ‘크라우드 소싱’이 그것입니다. 데이터 구축에 있어 ‘크라우드 소싱’은 양날의 검입니다. 대량의 데이터를 빠르게 확보하는 데는 용이한 방법이지만, 작업자들이 데이터의 균형을 고려하지 않은 채 저품질 데이터만을 만들 수 있다는 위험성이 있습니다. 누구나 쉽게 생각해 낼 수 있는 데이터, 단어나 어절만 살짝 바꾼 비슷한 데이터, 정답이 모호해서 사람조차 헷갈리는 데이터 등이 그 예시입니다. Winogrande 데이터셋을 구축할 때, 작업자들에게는 정밀하게 설계된 가이드라인이 주어졌습니다. 또 작업자 세 명이 완성된 문제를 교차 검증함으로써 오류가 있는 데이터를 골라내어 폐기하고, 대체 데이터를 만들어 채울 수 있었습니다. 이와 더불어 AfLite라는 알고리즘을 활용하여 전체 데이터셋에 일관되게 나타나는 편향을 제거하기도 했습니다.

  1. 벤치마크 데이터셋이 기반하는 문화: 시험 문제 출제 국가

지금까지 WSC와 Winogrande의 경우를 비교하며 좋은 벤치마크 데이터셋의 조건을 살펴보았습니다. 하지만 이 3가지 만으로는 충분치 않습니다. 영어로 된 주요 벤치마크 데이터셋은 영어 외 언어 기반 모델에 그대로 적용하기에는 적합하지 않기 때문입니다. 한국어 모델에 영어 벤치마크 데이터셋을 적용한다고 가정해 봅시다. 영어 벤치마크 데이터셋을 한국어로 번역해 사용하면 데이터를 새로 구축하는 것 보다 비용 부담이 적습니다. 하지만 단순 번역된 벤치마크 데이터셋은 제 기능을 하기 어렵습니다.

우선 번역투의 문제가 있습니다. 성능이 좋은 번역기를 쓰더라도, 번역투가 완벽히 보정되지 않을뿐더러 영어 원문으로는 정답을 잘 골라내던 모델이 번역된 데이터셋으로는 정답을 잘 골라내지 못할 수도 있습니다. 물론 1차 번역 후 윤문을 하는 방법도 있지만 처음부터 구축하는 것과 비교했을 때 작업에 드는 리소스에 큰 차이가 없습니다.

또한 한국 상황이나 문화에 맞지 않는 데이터가 섞여 있는 것도 단점이 됩니다. AI의 기계 독해 능력을 평가하는 MMLU라는 벤치마크 데이터셋의 Security Studies(안보 연구) 카테고리를 살펴보면 아래와 같은 데이터가 있습니다.

MMLU 중 Security Studies(안보 연구) 카테고리에 포함된 데이터
MMLU 중 Security Studies(안보 연구) 카테고리에 포함된 데이터

영어 중심의 벤치마크 데이터셋에는 위와 같이 영미권의 사회상을 반영한 데이터가 섞여 있습니다. 이는 한국인 입장에서는 정확한 답변을 하기 어려운 문제들임이 분명합니다. 한국어를 주로 학습한 한국어 모델의 경우라도 마찬가지일 것입니다. 대신 이런 문제로 바꾼다면 어떨까요?

안보 연구 주제에 맞게 한국화 한 벤치마크 데이터
안보 연구 주제에 맞게 한국화 한 벤치마크 데이터
  1. 벤치마크 데이터셋의 대상 사용자: 시험 대상

모델의 주 사용자에 따라서도 벤치마크 데이터셋의 설계와 구성이 달라질 수 있습니다. 유의어를 잘 구사하는지 평가하기 위한 데이터셋을 만든다고 가정해 봅시다. 구축 가이드라인을 아래와 같이 구성할 수 있습니다.

선호를 의미하는 표현들을 반영한 데이터셋
선호를 의미하는 표현들을 반영한 데이터셋

우리는 ‘선호’에 대해 표현할 때, 말 그대로 ‘좋아해’, ‘행복해’, ‘자주 먹어’, ‘추천해’와 같은 직관적인 표현만을 사용하지 않습니다. 사용자의 세대나 배경에 따라 언어 사용 양상이 달라지기 때문에, 이를 최대한 반영한 다채로운 표현을 반영할 필요가 있습니다. 모델의 주 사용자가 2030이라면, 2030이 실제로 사용할 법한 언어를 반영하여 아래와 같이 데이터를 구성할 수 있습니다.

2030의 실제 언어 사용 양상을 반영한 '선호'의 유의어 예시
2030의 실제 언어 사용 양상을 반영한 '선호'의 유의어 예시

고품질 데이터셋 구축 노하우

앞서 언급한 것처럼 언어모델 벤치마크 데이터셋은 일반적으로 질문과 답변 형태를 띱니다. 질의응답(Question-Answering, QA) 시스템은 LLM 학습 및 평가에서 많이 활용되는 Task 중 하나인데요. 이 형태는 특정한 종류의 정보에 대한 질문을 자연어로 받아들여 답변을 제공하는 것입니다. 포털 사이트 검색도 QA 시스템 중 하나이며, 그 외 다양한 인공지능 기반 서비스에 QA 시스템이 활용되고 있습니다.

QA 형태의 데이터셋 구축은 단순한 것 같아 보이지만, 데이터로써의 QA는 생각보다 까다로운 기준의 설계를 바탕으로 만들어집니다. 특히 평가에 있어서 QA 데이터의 질은 평가 결과의 신뢰성을 좌우합니다. 때문에 많은 경험과 노하우가 있는 데이터 구축자가 작업해야 하는 데이터셋 유형이기도 합니다. 좋은 QA 데이터셋을 만들기 위해서는 아래의 것들이 반드시 고려되어야 합니다.

  1. 구축 의도와 목표 파악

LLM이 지식을 기반으로 하여 양질의 응답을 만들어내려면 질문의 대상과 깊이, 수준, 범위 등을 섬세하게 조정해야 합니다. 이때 최종 사용자의 입장에서 데이터를 구성해 보는 과정이 꼭 필요합니다.

흔히 질의응답 형태라고 하면 문장형 구성을 생각하기 쉽지만, 사용자 로그를 분석해 보면 명사를 나열한 질문 비율이 압도적으로 높습니다. 이러한 명사형 질문이 입력되더라도 오류 없이 대응할 수 있도록 데이터를 구성해야 합니다.

  1. 객관적 사실에 기반한 구축

개인의 의견, 평가, 가치 판단, 예측, 입장 표명, 사회적 이슈 등은 언뜻 가치 있는 정보처럼 보일 수 있지만, 부정적 의도를 가지고 AI를 사용하는 어뷰저들의 대화 로그에서 공통적으로 찾을 수 있는 요소들이기도 합니다. 이런 내용이 포함된다면 데이터의 객관성이 떨어지게 되며, AI가 부정적이고 편향된 학습을 하게 될 수 있습니다.

따라서 이슈가 발생할만한 질의가 입력되지 않거나 걸러질 수 있도록 장치를 마련하거나, 사전에 신뢰할 수 있는 출처를 선별하여 객관적인 지표와 내용, 근거를 갖춘 답변이 출력될 수 있도록 해야 합니다. 또한 답변의 근거가 되는 자료가 별도로 존재하는 경우, 메타 정보 체계를 꼼꼼하게 구축하여 라벨링하는 등의 데이터 설계가 선행되어야 합니다.

  1. 모델의 추론 능력을 고려한 설계

표 형태 등 복잡한 구조의 문서를 기반 지식으로 삼아 데이터를 구축한다고 가정한다면, 쉽게 만들 수 있는 즉답 가능한 질의와 추론이 필요한 질의로 수준을 달리하여 구축할 수 있습니다. 기반 지식 내에 답이 직접적으로 언급된 질의는 LLM을 이용한 질의 생성(Question Generation, QG)으로도 만들어낼 수 있습니다. 하지만 추론이 필요한 질의는 사람이 충분히 할 법한 질문임에도 LLM이 정확하게 답변하기 어렵습니다.

기반 지식에 대한 기본 질의와 추론 질의 예시
기반 지식에 대한 기본 질의와 추론 질의 예시

위 예시 중 ‘추론 질의 1’에서는 질의에서 주어진 정보(4.8kg)가 기반 지식에서 제시된 정보(5kg) 내에 있음을 추론(연산)하는 과정이 필요합니다. ‘추론 질의 2’, ‘추론 질의 3’ 또한 이와 같이 추론(연산) 과정이 필요한 질문입니다.

효과적인 학습 및 변별력 있는 평가를 위하여, 데이터를 구축할 때에는 쉽게 구축이 가능한 기본 질의부터 추론이 필요하거나 두 개 이상의 지식을 조합해서 답해야 하는 높은 수준의 데이터까지 고루 구성해야 합니다. 이를 통해 모델의 추론 능력 향상은 물론 정확한 검증이 가능해집니다.

  1. 질문의 형태에 종속되지 않는 답변 구성

대화형 AI를 사용하다 보면 질문 유형에 따라 답변이 달라지는, 이른바 종속형 응답 형태가 나타날 때가 있습니다.

질문의 형태에 종속된 종속형 답변 예시
질문의 형태에 종속된 종속형 답변 예시

위처럼 사용자 질의에 Yes/No를 덧붙여 답변하는 방식입니다. 이런 폐쇄형 질의응답(Closed QA)을 학습 데이터로 쓰게 되면 개방형 질문이나 이중 부정 형태의 질문에 올바르게 대답하지 못하는 문제가 발생할 수 있습니다.

개방형 질문/이중부정형 질문 예시
개방형 질문/이중부정형 질문 예시

따라서 정확하게 근거를 들어 답변할 수 있는 개방형 QA 구축을 지향하되, 필요시 폐쇄형/이중부정 형태의 패러프레이징 작업을 병행해야 합니다.

  1. 문장 변환(Paraphrasing)을 통한 질의 인식률 향상

QA 데이터셋 구축 시 반드시 고려해야 할 것 중 하나는, 동일한 의도를 가진 질문을 다양한 형태로 표현할 수 있다는 것입니다. 같은 개념도 언어 사용자에 따라 다른 어휘로 표현할 수 있습니다. 2030 사용자를 고려하여 ‘선호’라는 의미를 다양한 언어 표현을 반영해 구축한 것처럼 말이죠. 이를 미리 파악하여 데이터 설계에 반영하면 한국어 이용자에 최적화된 데이터 구축이 가능합니다.

어휘뿐만 아니라 문장, 관용구, 문법 구조 단위의 세세한 변형을 통해 실제 사용 양상에 더욱 가깝고 자연스러운 한국어 데이터를 구축할 수 있습니다. 이러한 문장 변환 데이터는 질의 인식률을 높이고 나아가 LLM의 정확성을 향상시킬 수 있습니다.

고품질 AI 데이터의 핵심은 꼼꼼한 데이터 설계

이번 글에서는 LLM 성능 평가를 위한 벤치마크 데이터의 개념을 확인하고, WSC(Winograd Schema Challenge)와 Winogrande의 비교를 통해 좋은 벤치마크 데이터셋이 갖추어야 할 조건에 대해서 알아보았습니다. 또한 학습 데이터 및 벤치마크 데이터의 주요 형태인 QA 데이터를 잘 구축하는 방법에 대해서도 살펴보았습니다.

벤치마크 데이터셋도, 학습 데이터셋도 모두 철저한 데이터 설계에 기반해야만 고품질의 결과물을 얻을 수 있습니다. 또한 특정 언어나 문화에 특화된 모델을 대상으로 한다면 해당 언어나 문화에 대한 심층적인 이해가 필수적입니다. 꼼꼼한 데이터 설계 역량, 대상 언어에 대한 깊은 이해를 가진 데이터 구축자만이 고품질 데이터를 구축할 수 있는 이유입니다.

✏️
Editor │ 데이터사업팀 남관우 PM
재미있어 보이는 건 다 해보는, 한 우물만 파기보다 이것저것 다 합니다.

TEXTNET 소개

지금의 딥러닝을 있게 한 AI Guru 제프리 힌튼의 데이터셋 'ImageNet'에 어원을 둔 TEXTNET은 (주)스피링크가 운영하는 AI/챗봇을 위한 텍스트 데이터 설계 및 구축 서비스입니다.

TEXTNET은 언어학, 심리학, 전산언어학 석·박사를 포함한 전문 인력으로 구성된 언어전문가 그룹으로서, 고객사의 니즈에 부합하는 텍스트 데이터를 설계·가공·구축하고 내부 R&D를 통해 설계 방식을 지속적으로 개선하여 최적의 데이터 설계 방법을 제안합니다. 프로젝트 목적에 따라 적합한 숙련 작업자를 선별하여 투입하고, 체계적이고 효율적으로 고품질의 학습데이터를 생산합니다.

TEXTNET은 삼성, LG, KT, SK 등 유수 대기업의 데이터 구축 파트너로 함께하며 금융, 마케팅, 콘텐츠, 메타버스, 서비스 기획, CS 등 다양한 도메인을 다루고 있습니다.