“ECDF‑클러스터링으로 보는 LLM 에이전트 품질 분포: 정확도 뒤에 숨은 차이를 파헤치다”
📝 Abstract
Large language models (LLMs) are increasingly used as agents to solve complex tasks such as question answering (QA), scientific debate, and software development. A standard evaluation procedure aggregates multiple responses from LLM agents into a single final answer, often via majority voting, and compares it against reference answers. However, this process can obscure the quality and distributional characteristics of the original responses. In this paper, we propose a novel evaluation framework based on the empirical cumulative distribution function (ECDF) of cosine similarities between generated responses and reference answers. This enables a more nuanced assessment of response quality beyond exact match metrics. To analyze the response distributions across different agent configurations, we further introduce a clustering method for ECDFs using their distances and the $k $-medoids algorithm. Our experiments on a QA dataset demonstrate that ECDFs can distinguish between agent settings with similar final accuracies but different quality distributions. The clustering analysis also reveals interpretable group structures in the responses, offering insights into the impact of temperature, persona, and question topics.
💡 Analysis
**
1. 연구 배경 및 필요성
- 다중 응답 집계의 한계: 다수결·신뢰도 가중 투표 등은 최종 정답만을 강조해, “모두 정답이지만 다른 표현”과 “절반만 정답”을 구분하지 못한다. 또한, 잘못된 답변이라도 정답에 가까운 정도(예: “야리‑가‑타케” vs “컴퓨터”)를 반영하지 못한다.
- ECDF 도입 이유: 히스토그램과 달리 bin 설정이 필요 없으며, 응답 수가 달라도 직접 비교가 가능하다. 코사인 유사도를 이용해 연속적인 품질 척도를 제공한다.
2. 핵심 방법론
| 단계 | 내용 | 핵심 포인트 |
|---|---|---|
| 응답 → 임베딩 | LLM 응답과 정답을 사전학습된 임베딩 모델(paraphrase‑MiniLM‑L6‑v2)으로 변환 | 텍스트 의미를 벡터화, 코사인 유사도 계산 기반 |
| 코사인 유사도 → ECDF | 각 응답에 대해 정답군과의 최대 코사인 유사도 구하고, 이 값들의 ECDF 생성 | 품질 분포를 누적 형태로 시각·수치화 |
| ECDF 거리 정의 | L1(워셔슈타인) 거리 사용 → 두 ECDF 간 차이를 정량화 | 거리 행렬 D를 통해 클러스터링 입력값 확보 |
| 클러스터링 | k‑medoids (PAM) 알고리즘 적용 → 거리 행렬 기반 메도이드 중심 클러스터 도출 | ECDF 자체가 비벡터 형태이므로 거리 기반 방법이 자연스러움 |
| 해석 | 클러스터별 대표 ECDF(메도이드)와 클러스터 구성원을 분석 → 온도·페르소나·주제 영향 파악 | 동일 정확도에서도 품질 분포 차이를 시각화 |
3. 실험 설계
- 데이터: SQuAD 검증 샘플을 활용, 질문당 3개씩 선택.
- 에이전트 설정:
- Persona: Persona Hub에서 추출한 50개 페르소나 vs. 빈 페르소나.
- Temperature: β = 2πi⁻¹ (다양한 온도) vs. β = 1 (고정 온도).
- 모델: GPT‑4o mini (응답 생성), MiniLM‑L6‑v2 (임베딩).
- 응답 수: 각 설정당 10개 응답.
4. 주요 결과
- ECDF 차이 발견
- 동일한 최종 정확도(예: 66%·33%·0%)를 보이는 설정이라도 ECDF 곡선이 크게 달라, 응답 품질의 “분산”이 다름을 확인.
- 클러스터링 해석
- 온도가 높은 설정은 ECDF가 좌측(낮은 유사도)으로 치우친 클러스터에 모였고, 페르소나가 명시된 경우는 중간·우측(높은 유사도) 클러스터에 집중.
- 질문 주제별(예: 과학 vs. 문화)로도 뚜렷한 클러스터 구분이 가능, 이는 프롬프트·도메인 특화 전략 수립에 활용 가능.
5. 장점
- 정량·정성 결합: ECDF는 단순 정확도(정량)와 응답 다양성·품질(정성)을 동시에 제공.
- 하이퍼파라미터 최소화: 히스토그램과 달리 bin 설정이 필요 없으며, 거리·클러스터링 단계에서도 파라미터(클러스터 수 k)만 조정하면 됨.
- 확장성: 임베딩·유사도 함수만 교체하면 다른 언어·도메인에도 바로 적용 가능.
6. 한계 및 개선점
| 한계 | 제안되는 개선 방향 |
|---|---|
| 임베딩 의존성: 코사인 유사도는 선택한 임베딩 모델에 크게 좌우됨. | 다중 임베딩(ensemble) 혹은 사전학습된 LLM 자체의 내재된 의미 스코어 활용 검토. |
| 거리·클러스터 수 선택: k‑medoids의 클러스터 수 k를 사전에 지정해야 함. | 실루엣 점수·Gap 통계 등 자동 k 탐색 기법 도입. |
| 응답 수 제한: 실험에서는 10개 응답만 사용했음. 실제 시스템에서는 수백·수천 개가 될 수 있음. | 샘플링 전략·계층적 ECDF(부분집합) 도입으로 대규모 데이터 처리. |
| 정답 다중성: “정답 리스트”가 여러 개일 때 최대 코사인 유사도만 사용 → 정답 간 차이 무시. | 정답군 전체에 대한 평균·분산 코사인 스코어를 함께 고려하는 복합 ECDF 설계. |
| 클러스터 해석의 주관성: 메도이드 ECDF를 “해석”하는 과정이 연구자에 따라 달라질 수 있음. | 클러스터별 특징을 자동 추출하는 메타‑특성(예: 평균 유사도, 분산, 꼬리 비중) 제공. |
7. 향후 연구 방향
- 다중 메트릭 ECDF: 정확도·BLEU·BERTScore 등 여러 평가 지표를 동시에 ECDF화해 다차원 품질 분포 분석.
- 동적 클러스터링: 시간에 따라 변하는 에이전트 설정(예: 온도 스케줄링)과 그에 따른 ECDF 변화를 추적하는 연속 클러스터링.
- 사용자 피드백 통합: 인간 평가자(신뢰도·유용성) 점수를 ECDF에 가중치로 부여해 인간‑기계 협업 평가 체계 구축.
- 다언어·다도메인 적용: 비영어 QA, 의료·법률 등 특수 도메인에 대한 ECDF‑클러스터링 효과 검증.
**
📄 Content
다음은 요청하신 영문 텍스트를 한국어로 번역한 내용입니다. 전체 길이가 2,000자 이상이 되도록 모든 문단을 포함했습니다.
대형 언어 모델(LLM)의 성공 이후 제안된 다양한 에이전트 기반 접근법
대형 언어 모델(LLM)의 성공에 힘입어, 과학적 토론[2,3]이나 소프트웨어 개발[4][5][6]과 같은 작업을 다루기 위한 다양한 에이전트 기반 접근법[1]이 제안되었습니다. 특히 본 논문은 질문 응답(Question Answering, QA) 작업에 초점을 맞춥니다. QA 데이터셋은 일반적으로 하나의 질문에 여러 개의 정답이 존재합니다. 이러한 데이터셋은 객관식 문제부터 모델의 지식 수준을 평가하는 CommonsenseQA[7]·SWAG[8]와 같은 데이터셋, 복잡한 추론이 요구되는 StrategyQA[9]·GSM8K[10]와 같은 데이터셋까지 다양하며, LLM 기반 에이전트 시스템의 성능을 측정하는 데 널리 활용됩니다.
전형적인 평가 파이프라인과 그 한계
LLM 기반 에이전트 시스템의 전형적인 평가 파이프라인은 주어진 설정(configuration) 하에서 질문당 여러 응답을 생성한 뒤, 다수결 투표[11][12][13]와 같은 의사결정 프로토콜을 통해 최종 답을 선택하는 방식입니다. 이때 여러 설정을 비교하는 기본적인 방법은 각 설정에서 얻어진 최종 답과 정답 사이의 일치도를 평가하는 것입니다. 그러나 이 평가지표만으로는 LLM 기반 에이전트가 생성한 개별 원본 응답들의 경향성을 파악하기 어렵습니다. 예를 들어, 두 설정에서 최종 답이 동일하더라도 원본 응답들의 품질은 크게 다를 수 있습니다. 2n개의 응답에 대해 다수결을 적용했을 때, 모든 2n개의 응답이 정답인 경우와 정확히 n개만 정답인 경우를 구분할 수 없습니다. 또한, 틀린 응답이라도 “좋음(goodness)” 정도는 다를 수 있습니다. 예를 들어 “일본에서 가장 높은 산은 무엇인가?”라는 질문에 대해 “야리‑가‑타케”는 “컴퓨터”보다 정답에 더 가깝다고 볼 수 있지만, 단순히 정답과의 정확히 일치하는 비율만을 측정하면 두 답변의 품질 차이를 구분할 수 없습니다.
ECDF 기반 평가 제안
이러한 문제를 해결하고 질문당 LLM 기반 에이전트가 만든 응답의 품질에 대한 보다 정밀한 정보를 얻기 위해, 정답과의 코사인 유사도에 대한 경험적 누적분포함수(Empirical Cumulative Distribution Function, ECDF) 를 이용한 평가 방식을 제안합니다(그림 1 참조). ECDF를 이용한 평가에는 두 가지 장점이 있습니다.
- 히스토그램과 달리 bin 폭을 지정할 필요가 없으며, 하이퍼파라미터 설정이 필요하지 않음
- 길이가 서로 다른 응답 집합을 ECDF 형태로 표현함으로써 직접적인 비교가 가능
ECDF 클러스터링 필요성 및 기존 연구와의 차별점
ECDF를 활용하면 다양한 설정(configuration)에서 생성된 다수의 ECDF를 한눈에 파악하기 어려워집니다. 따라서 ECDF들을 클러스터링하여 서로 유사한 ECDF들의 그룹 구조를 추정하는 방법을 제안합니다. 일반적인 벡터 형식 샘플과 달리 ECDF는 연속적인 누적분포 형태이므로, 기존의 k‑means와 같은 클러스터링 방법을 그대로 적용하기 어렵습니다. 이에 우리는 ECDF 자체에 적용 가능한 새로운 클러스터링 방법을 고안했습니다. 기존 연구[14]에서는 ECDF를 먼저 이산화하여 벡터화한 뒤 k‑means로 클러스터링했지만, 우리 방법은 ECDF를 그대로 거리 기반(k‑medoids) 클러스터링에 적용한다는 점에서 차별화됩니다.
논문의 구성
- Section 2: LLM 기반 에이전트 시스템에 관한 기존 연구 정리
- Section 3: 다수의 LLM 기반 에이전트 응답 집합을 분석하기 위한 ECDF 클러스터링 방법 제안
- Section 4: 두 개의 실제 QA 데이터셋에 대해 페르소나(persona) 와 온도(temperature) 두 가지 설정을 변형시켜 ECDF 클러스터링의 효과를 실험적으로 입증
- Section 5: 결론
1. LLM 기반 에이전트를 이용한 QA 작업 흐름
LLM 기반 에이전트를 이용해 QA 작업을 해결하는 전형적인 흐름은 (1) 각 에이전트가 질문에 대한 답을 생성하고, (2) 모든 답을 종합해 최종 답을 도출하는 것입니다. 이 절에서는 다음 세 가지 관점에서 기존 방법들을 살펴봅니다.
1) 다중 답 생성 방법
다중 답을 생성하기 위한 설정에는 기본 모델, 프롬프트 템플릿, 에이전트 간 커뮤니케이션 방식 등이 포함됩니다. 여러 연구에서 **에이전트 간 토론이 추론 성능을 향상시킨다[2,15‑18]**는 것을 보고했으며, 페르소나를 지정하거나[19,20] 추론 과정을 서술하도록 프롬프트를 설계함으로써[21] 모델의 추론 능력을 끌어낼 수 있음을 확인했습니다. 또한, **에이전트 간 커뮤니케이션 구조가 토론 비용 및 품질에 영향을 미친다[22,23]**는 점도 중요한 변수입니다.
2) 다중 답을 하나의 최종 답으로 통합하는 방법
다중 답을 하나로 합치는 전형적인 방법은 다수결 혹은 신뢰도 가중 투표[11,12,15,24], 혹은 **응답을 판단·통합하는 집계 에이전트(aggregator) 도입[13,16,18]**입니다. 그러나 이러한 합성 방법은 **원본 의견의 다양성을 소멸시킨다[25]**는 비판을 받고 있습니다.
3) 최종 답에 대한 평가 기준
최종 답을 평가할 때는 정답과의 평균 일치도를 주로 사용합니다. 구체적으로는 Exact Match, BLEU[26], BERTScore[27] 등이 활용됩니다. 하지만 이러한 평가지표만으로는 원본 답변들의 “좋음(goodness)” 분포 차이를 놓치게 된다는 점을 앞서 언급한 바와 같이 주의해야 합니다.
2. 문제 정의 및 ECDF 구성
2.1 QA 데이터셋 정의
(D = {(q_1, A_1), \dots, (q_{n_Q}, A_{n_Q})}) 를 QA 데이터셋이라 하자. 여기서 (n_Q) 은 질문 수, (q_i) 는 i번째 질문, (A_i = {a_{i1}, \dots, a_{i n_{p_i}}}) 는 해당 질문에 대한 정답 리스트(예: “2003”, “The year is 2003.”)이다.
각 질문에 대해 서로 다른 에이전트 설정(예: 모델·프롬프트·온도 조합) 하에서 다수의 응답을 생성한다. 이때 “질문‑설정” 쌍을 setting이라 부르며, 이는 질문 자체와 에이전트 설정을 모두 포함한다.
재구성된 데이터셋을 (D’ = {(q_1, a_1), \dots, (q_n, a_n)}) 로 표기하고, 여기서 (n) 은 전체 설정 수이며 (q_i, a_i) 는 각각 i번째 설정에 해당하는 질문과 정답 리스트를 의미한다.
또한 참조 답변 리스트 (R = {r_1, \dots, r_n}) 와 후보 답변 리스트 (\hat{R} = {\hat{r}1, \dots, \hat{r}n}) 를 정의한다. (\hat{r}i = {\hat{r}{i1}, \dots, \hat{r}{i n{C_i}}}) 은 i번째 설정에서 LLM 기반 에이전트가 만든 응답 집합이며, (n_{C_i}) 은 그 크기이다.
2.2 ECDF 정의
다양한 크기의 텍스트 집합(LLM 응답)을 비교하기 위해 평가값(예: 코사인 유사도)의 ECDF 를 도입한다.
(F_{x}(r) = \frac{1}{n}\sum_{k=1}^{n}\mathbf{1}{x_k \le r})
여기서 (\mathbf{1}) 은 지시함수이며, (x = {x_1, \dots, x_n}) 은 입력값들의 집합이다.
2.3 코사인 유사도 기반 ECDF
우리는 LLM 응답과 정답 사이의 코사인 유사도를 이용해 ECDF를 정의한다. 이를 위해 다음 함수를 사용한다.
- 임베딩 함수 (f_{\phi}: \mathcal{T} \rightarrow \mathbb{R}^d) : 텍스트를 d 차원 벡터로 변환 (예: 사전 학습된 임베딩 모델)
- 코사인 유사도 (\operatorname{cos}(u_1, u_2) = \frac{u_1^\top u_2}{|u_1||u_2|})
각 설정 i에 대해, 응답 집합 (\hat{r}i) 의 각 응답 (\hat{r}{ij}) 와 정답 리스트 (A_i) 사이의 최대 코사인 유사도를 구한다.
[ v_{ij} = \max_{a \in A_i} \operatorname{cos}\bigl(f_{\phi}(\hat{r}{ij}), f{\phi}(a)\bigr) ]
이때 얻어진 유사도 리스트 (v_i = {v_{i1}, \dots, v_{i n_{C_i}}}) 로부터 ECDF (F_{v_i}) 를 만든다. 전체 설정에 대해 ECDF 집합 (E = {F_{v_1}, \dots, F_{v_n}}) 를 얻는다.
3. ECDF 클러스터링 방법
3.1 거리 정의
ECDF 간의 유사성을 측정하기 위해 L1 거리(= 1‑Wasserstein 거리) 를 사용한다.
[ D_{ij} = \int_{0}^{1} \bigl|F_{v_i}(t) - F_{v_j}(t)\bigr| , dt ]
이를 구현하기 위해 두 ECDF의 지원(support)값을 합쳐 정렬한 뒤, 구간별 차이를 누적한다.
[ \tilde{v}{ij} = \operatorname{h_union}(v_i, v_j) = { \tilde{v}{ij1}, \dots, \tilde{v}_{ij\ell} } ]
그 후
[ D_{ij} = \sum_{k=1}^{\ell-1} \bigl|F_{v_i}(\tilde{v}{ijk}) - F{v_j}(\tilde{v}
이 글은 AI가 자동 번역 및 요약한 내용입니다.