RAGLens: Sparse Autoencoder 기반 Faithful RAG¶
Toward Faithful Retrieval-Augmented Generation with Sparse Autoencoders
| 항목 | 내용 |
|---|---|
| arXiv | 2512.08892 |
| 저자 | Guangzhi Xiong et al. |
| 발표 | 2025-12-09 (v2: 2026-02-11) |
| 학회 | ICLR 2026 |
| 카테고리 | cs.CL, cs.AI |
| 코드 | GitHub |
1. 문제 정의¶
RAG의 Faithfulness 문제¶
RAG(Retrieval-Augmented Generation)는 검색된 문서를 기반으로 응답을 생성하지만, faithfulness failure가 발생:
- Contradiction: 검색 결과와 모순되는 응답
- Fabrication: 검색 결과에 없는 정보 생성
- Extension: 검색 범위를 넘어선 추론
[Faithfulness Failure 예시]
검색 결과: "서울의 인구는 약 950만 명이다."
Faithful: "서울 인구는 약 950만 명입니다."
Contradiction: "서울 인구는 약 1500만 명입니다."
Fabrication: "서울 인구는 950만 명이며, 그중 30%가 외국인입니다."
Extension: "서울은 세계에서 가장 인구 밀도가 높은 도시입니다."
기존 탐지 방법의 한계¶
| 방법 | 문제점 |
|---|---|
| 외부 LLM Judge | 높은 추론 비용 |
| 대규모 Detector 학습 | 방대한 레이블 데이터 필요 |
| 내부 표현 기반 | 정확도 한계 |
2. Sparse Autoencoder (SAE) 기반 접근¶
SAE 개념¶
Sparse Autoencoder는 LLM의 내부 활성화를 해석 가능한 피처로 분해:
수학적 정의:
\[f(x) = \text{ReLU}(W_e x + b_e)$$
$$\hat{x} = W_d f(x) + b_d\]
- \(W_e\): 인코더 가중치
- \(f(x)\): 희소 피처 벡터 (대부분 0)
- \(W_d\): 디코더 가중치
희소성의 의미¶
각 피처가 특정 의미적 개념에 대응:
3. RAGLens 프레임워크¶
전체 파이프라인¶
┌─────────────────────────────────────────────┐
│ 1. 피처 추출 (Feature Extraction) │
├─────────────────────────────────────────────┤
│ RAG 응답 생성 시 LLM 내부 활성화 수집 │
│ ↓ │
│ Pretrained SAE로 희소 피처 추출 │
└─────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────┐
│ 2. 피처 선택 (Feature Selection) │
├─────────────────────────────────────────────┤
│ 정보 이론 기반 피처 선택 │
│ - Mutual Information 계산 │
│ - Hallucination 관련 피처 식별 │
└─────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────┐
│ 3. 탐지 (Detection) │
├─────────────────────────────────────────────┤
│ 선택된 피처의 Additive Modeling │
│ ↓ │
│ Lightweight Classifier로 판정 │
└─────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────┐
│ 4. 해석 (Interpretation) │
├─────────────────────────────────────────────┤
│ 활성화된 피처 기반 설명 생성 │
│ → 왜 unfaithful로 판정했는지 근거 제공 │
└─────────────────────────────────────────────┘
정보 기반 피처 선택¶
Mutual Information으로 hallucination 관련 피처 선택:
\[I(F_i; Y) = \sum_{f, y} P(f, y) \log \frac{P(f, y)}{P(f)P(y)}\]
- \(F_i\): i번째 피처
- \(Y\): Hallucination 여부 (0/1)
상위 K개 피처 선택:
\[\mathcal{F}_{selected} = \text{top}_K(\{F_i : I(F_i; Y)\})\]
Additive Feature Modeling¶
선택된 피처들의 가중합으로 탐지:
\[\text{score}(x) = \sum_{i \in \mathcal{F}_{selected}} w_i \cdot f_i(x)\]
- \(w_i\): 학습된 가중치
- \(f_i(x)\): 피처 i의 활성화 값
4. 실험 결과¶
Hallucination 탐지 성능¶
| 방법 | AUROC | F1 | 추론 비용 |
|---|---|---|---|
| GPT-4 Judge | 0.82 | 0.79 | 높음 |
| Fine-tuned Detector | 0.78 | 0.74 | 중간 |
| 내부 표현 (기존) | 0.68 | 0.62 | 낮음 |
| RAGLens | 0.85 | 0.81 | 낮음 |
해석 가능성 평가¶
탐지 결과에 대한 설명 품질:
| 메트릭 | RAGLens | 기존 방법 |
|---|---|---|
| 설명 정확도 | 87% | 62% |
| 사용자 신뢰도 | 4.2/5 | 2.8/5 |
| 근거 구체성 | 높음 | 낮음 |
층별 피처 분포¶
Hallucination 관련 피처의 위치:
[층별 관련 피처 밀도]
Layer 1-10: ██░░░░░░░░ 18%
Layer 11-20: ████░░░░░░ 35%
Layer 21-30: █████████░ 42%
Layer 31+: █░░░░░░░░░ 5%
발견: 중간~후반 층에 hallucination 관련 피처 집중
5. 사후 완화 (Post-hoc Mitigation)¶
탐지 후 수정¶
RAGLens 탐지 결과를 활용한 응답 개선:
[원본 응답]
"서울 인구는 1500만 명입니다."
↓ RAGLens 탐지: Unfaithful
↓ 피처 분석: "과장" 피처 활성화
↓
[수정 프롬프트]
"검색 결과에 따르면 정확한 수치를 확인하세요."
↓
[수정 응답]
"서울 인구는 약 950만 명입니다."
완화 전략¶
| 전략 | 설명 | 효과 |
|---|---|---|
| 재생성 | 탐지 시 응답 재생성 | 기본적 |
| 피처 억제 | 관련 피처 활성화 감소 | 직접적 |
| 프롬프트 보강 | 근거 명시 요청 | 간접적 |
6. 기술적 통찰¶
SAE 학습 세부사항¶
| 파라미터 | 값 | 설명 |
|---|---|---|
| Hidden dim | 32K | 피처 수 |
| Sparsity | L1 | 희소성 유도 |
| λ | 0.01 | 희소성 가중치 |
| Training tokens | 10B | 학습 데이터 |
피처 선택 기준¶
| 기준 | 설명 |
|---|---|
| MI > threshold | 정보량 충분 |
| Activation freq | 너무 희소하지 않음 |
| Interpretability | 의미 해석 가능 |
7. 한계점 및 향후 연구¶
현재 한계¶
- SAE 사전학습 필요: 모델별로 SAE 학습 필요
- 피처 해석 수동: 피처 의미 파악에 인간 개입
- 도메인 특이성: 특정 도메인에서 재조정 필요
향후 방향¶
- 자동 피처 해석 방법 개발
- Cross-model 피처 전이
- 실시간 탐지 최적화
8. 참고 자료¶
- arXiv 원문
- GitHub 코드
- 학회: ICLR 2026
- 관련 연구: Mechanistic Interpretability, Sparse Autoencoders, RAG Faithfulness
정리일: 2026-03-01