AbsenceBench: 언어 모델은 누락된 정보를 식별하지 못함

4 hours ago 1

  • 대형 언어 모델(LLM) 은 긴 입력에서 특정 정보를 잘 찾지만, 누락된 정보를 식별하는 데에는 한계가 있음
  • 새로운 AbsenceBench 벤치마크는 시퀀스, 시, GitHub PR 등 3개 분야에서 LLM의 누락 정보 탐지 능력을 평가함
  • 최신 모델 Claude-3.7-Sonnet도 5K 토큰 맥락에서 69.6% F1-score에 그치는 낮은 성능을 보임
  • Transformer 기반 주목(attention) 메커니즘이 문서의 '공백'에는 효과적으로 작동하지 않는 한계 때문임
  • 이 연구는 LLM의 삽입 정보 탐지와 누락 정보 탐지의 본질적인 난이도 차이를 보여줌

개요

  • 대형 언어 모델(LLM) 은 긴 문서에서 정보를 찾아내는 성능이 크게 향상되어 있음
  • 기존 ‘Needle in a Haystack (NIAH) ’ 테스트는 장문의 입력에서 놀라운 정보를 찾아내는 능력을 평가하는데, LLM은 여기서 매우 뛰어난 성능을 보임
  • 하지만 LLM이 명백히 빠진 정보를 찾아낼 수 있는지는 별개의 문제임
  • 이에 대해, 명시적으로 문서의 일부 내용을 제거한 후 어떤 정보가 빠졌는지 맞추도록 요구하는 AbsenceBench 벤치마크가 제안됨

AbsenceBench 벤치마크 설명

  • AbsenceBench는 시, 숫자 시퀀스, GitHub Pull Request(PR) 의 3개 도메인에서 모델의 누락 감지 능력을 평가함
  • 원본 문서와 의도적으로 일부 내용을 제거한 수정본을 LLM에 동시에 제공한 뒤, 빠진 정보를 식별해내는지 평가함
  • 평균 맥락 길이가 5K 토큰으로 기존 장문 테스트보다 짧은 ‘중간 맥락’ 벤치마크에 해당함

평가 결과 주요 이슈

  • 14개의 대표적 LLM(예: GPT-4, Claude-3.7-Sonnet, Gemini-2.5-flash 등)을 대상으로 평가했으며, 최신 모델도 F1-score가 약 69.6% 로 낮은 수치를 보임
  • NIAH 테스트에서는 LLM이 이미 ‘초인간 수준’임에도, AbsenceBench에서는 성능이 56.9% 급락
  • 맥락 길이가 길어질수록 특히 시(poetry) 영역에서 성능이 더욱 하락함
  • inference-time compute 기능을 사용하더라도 성능은 7.9%만 증가하지만, 평균적으로 3배나 되는 chain-of-thought 토큰이 소모됨
  • 반대로, 누락 비율(omission rate)이 낮을수록 의외로 LLM 성능이 더 나쁨

원인 및 심층 분석

  • Transformer 기반 self-attention 메커니즘이 ‘빠진 정보’(공백)에 주목하기 어려운데, 이는 키 기반 주목 구조상 없는 정보 자체를 트래킹하는 것이 어렵기 때문임
  • 테스트 도중, 누락된 부분에 플레이스홀더 문자열을 추가하자 성능이 평균 35.7% 크게 상승함

AbsenceBench 구조 및 예시

  • 각 태스크는 다음과 같이 정의됨
    • 원본 문서(Dorig)수정본(Dmodified) 을 제공
    • Dorig의 p% 요소를 제거해 Dmodified를 만들고, 둘을 비교하여 LLM이 어떤 정보가 빠졌는지 정답 집합(Domit)을 도출
  • 세 가지 도메인별 예:
    • 시(Poetry) : Gutenberg Poetry Corpus에서 시를 선택, 한 줄씩 임의로 누락
    • 숫자 시퀀스(Numerical Sequences) : 임의 생성된 수열에서 일정 확률로 수를 누락
    • GitHub PRs: 인기 오픈소스 PR의 diff 파일에서 변경된 줄 일부를 임의로 제거

평가 템플릿 예시 (시 도메인)

  • 시스템 프롬프트: “학생이 시를 암송했는데 일부 줄이 빠졌을 수 있음. 정확히 어떤 줄이 빠졌는지 찾아라.”
  • 원본 시와 암송 버전을 모두 제공하고, 정확히 빠진 줄만 답변하도록 요구

주요 실험 결과

  • 분야별로 문서 길이, 누락 비율 등을 다양하게 두고 실험함
  • 깃허브 PR, 시, 숫자 시퀀스 모두에서 LLM이 빠진 부분을 완전히 식별하지 못함
  • NIAH와 AbsenceBench의 주요 차이점: NIAH는 존재하는 키/정보에 주목하는 반면, AbsenceBench는 ‘존재하지 않는 부분’에 주목해야 하므로 구조적으로 더 어려움

결론 및 시사점

  • AbsenceBench는 LLM이 ‘무엇이 빠졌는가?’라는 질문에는 여전히 취약함을 보여줌
  • 이는 실무에서 LLM을 판정자로 활용(예: LLM-as-a-Judge)할 때 신뢰성에 주의가 필요함을 시사함
  • Transformer 구조의 설계 상 약점을 극복하는 새로운 접근이 필요함
  • AbsenceBench 데이터셋 및 코드는 공개되어 있으며, LLM의 누락 감지 능력 연구를 위한 출발점으로 제안됨

주요 기여 정리

  • 중간 맥락(5K 토큰)의 문서에서 명시적으로 누락된 요소 탐지를 위한 새 벤치마크 설계 및 공개
  • 14개 최신 LLM을 대상으로 평가해, 삽입 정보 탐지는 거의 완벽하지만 누락 정보 탐지는 여전히 어렵다는 사실 확인
  • inference-time compute 등도 실제 성능 향상에는 한계가 있음을 보임
  • 누락된 부분에 명시적으로 placeholder를 넣으면 성능이 크게 올라가는 현상 확인
  • AbsenceBench가 Transformer 주목 메커니즘의 근본적 한계를 드러내는 사례임

AbsenceBench 데이터셋 구성

  • Poetry: 시 한 편을 100~1000줄 사이로 잘라 다양한 길이의 문서 구성, 각 줄별로 누락
  • Numerical Sequences: 첫 숫자를 무작위로 설정, 다양한 규칙(오름차순, 내림차순, 랜덤, 다양한 간격)으로 바로 다음 숫자를 배열, 일부 누락
  • GitHub PRs: 상위 20개 핫 레포지터리의 10~200줄 diff에서 변경된 줄만 선택해 일부 누락하여 실제 상황 반영

실제 벤치마크 예시

  • Poetry 예시
    • 원본: “And so, to you, who always were / To me, I give these weedy rhymes / In memory of early times...”
    • 수정본: “And so, to you, who always were / In memory of early times...”
    • 정답: “To me, I give these weedy rhymes”
  • 숫자 시퀀스 예시
    • 원본: 117, 121, 125, 129, 133, 137 ...
    • 수정본: 117, 125, 129, 133 ...
    • 정답: 121, 137
  • GitHub PR 예시
    • PR의 코드 변경 줄 중 특정 줄이 누락

활용 및 실무적 의의

  • 실무적으로, PR diff에서 변경 사항 누락이나 문서에서 필요한 정보 누락 상황에 대한 감지 능력과 직결됨
  • LLM을 리뷰/검증 자동화에 적용할 때 누락 감지는 별도의 보완책이 필요함

Read Entire Article