Direct Preference Optimization Beyond Chatbots
Quick Summary
DharmaOCR는 SFT 모델이 스스로 생성한 반복 퇴화 출력을 DPO의 거부 사례로 활용해, 구조화 OCR에서 모든 실험 모델군의 텍스트 퇴화율을 낮췄다.
🖼️ 인포그래픽
🖼️ 4컷 인포그래픽
💡 한 줄 요약
DharmaOCR는 SFT 모델이 스스로 생성한 반복 퇴화 출력을 DPO의 거부 사례로 활용해, 구조화 OCR에서 모든 실험 모델군의 텍스트 퇴화율을 낮췄다.
📌 핵심 요약
- 구조화 OCR 실험에서 지도 미세조정은 대부분의 모델의 텍스트 퇴화를 줄였지만, 반복 루프를 직접 벌점화하지 않아 운영 환경에서 받아들일 만한 수준까지 안정적으로 낮추지는 못했다.
- DPO는 토큰별 정답 가능성을 높이는 대신 같은 입력에 대한 전체 출력을 선택 사례와 거부 사례로 비교하므로, 반복 루프가 포함된 완성 결과를 명시적으로 잘못된 결과로 학습시킬 수 있다.
- DharmaOCR는 23,726개 학습 문서에서 SFT 모델이 생성한 여러 후보를 자동화된 LLM 판정 모델로 평가하고, 정상적인 추출 결과와 퇴화 결과를 각각 선택·거부 사례로 구성했다.
- SFT 이후 DPO를 적용하자 실험한 다섯 모델군 모두에서 퇴화율이 감소했으며, SFT 단독 대비 상대 감소 폭은 37%에서 88%, 평균은 59.4%, 최고치는 87.6%였다.
- 결과는 DPO를 대화형 선호 정렬에 한정하지 않고, 객관적인 성공·실패 기준을 가진 구조화 생성 작업에서 특정 실패 모드를 억제하는 학습 단계로 활용할 수 있음을 보여준다.
🧩 주요 포인트
- 구조화 OCR 실험에서 지도 미세조정은 대부분의 모델의 텍스트 퇴화를 줄였지만, 반복 루프를 직접 벌점화하지 않아 운영 환경에서 받아들일 만한 수준까지 안정적으로 낮추지는 못했다.
- DPO는 토큰별 정답 가능성을 높이는 대신 같은 입력에 대한 전체 출력을 선택 사례와 거부 사례로 비교하므로, 반복 루프가 포함된 완성 결과를 명시적으로 잘못된 결과로 학습시킬 수 있다.
- DharmaOCR는 23,726개 학습 문서에서 SFT 모델이 생성한 여러 후보를 자동화된 LLM 판정 모델로 평가하고, 정상적인 추출 결과와 퇴화 결과를 각각 선택·거부 사례로 구성했다.
- SFT 이후 DPO를 적용하자 실험한 다섯 모델군 모두에서 퇴화율이 감소했으며, SFT 단독 대비 상대 감소 폭은 37%에서 88%, 평균은 59.4%, 최고치는 87.6%였다.
- 결과는 DPO를 대화형 선호 정렬에 한정하지 않고, 객관적인 성공·실패 기준을 가진 구조화 생성 작업에서 특정 실패 모드를 억제하는 학습 단계로 활용할 수 있음을 보여준다.
🧠 상세 정리
1. 구조화 OCR에서 드러난 반복 퇴화 문제
DharmaOCR 연구는 브라질 포르투갈어 문서의 구조화 OCR 작업에서 오픈소스와 상용 비전·언어 모델군을 비교하고, 모델이 전사 대신 반복 루프를 생성하는 빈도를 텍스트 퇴화율로 측정했다. 실험한 오픈소스 모델군의 기본 퇴화율은 1% 미만부터 33% 초과까지 크게 달랐으며, 이는 특정 구조나 규모에만 국한된 문제가 아니었음을 보여준다. 지도 미세조정인 SFT는 대부분의 모델에서 퇴화율을 낮췄지만, 실제 운영에 적합한 수준까지 안정적으로 줄이는 경우는 드물었다. 연구진은 이 결과를 통해 과제에 맞는 정답 출력을 더 많이 학습시키는 것만으로는 반복 루프라는 특정 실패 모드를 충분히 제거하기 어렵다는 구조적 한계를 제기했다.
2. 토큰 단위 SFT가 완성 결과의 실패를 놓치는 이유
원문이 제시하는 주요 가설은 SFT의 손실이 토큰 단위로 계산된다는 점이다. 각 토큰 예측은 개별적으로 평가되기 때문에, 국소적으로 높은 확률을 가진 토큰들이 이어져 완성 결과 전체가 반복 루프에 빠지더라도 그 결과 자체가 하나의 실패로 명시적으로 벌점화되지는 않는다. 모델이 고확률의 반복 영역에 진입하면 같은 토큰의 다음 단계 확률이 다시 높아지고, 이 과정이 자기강화적으로 이어져 최대 토큰 한도까지 반복이 지속될 수 있다. 저자들은 이를 단순한 디코딩 오류가 아니라 학습 목표, 학습된 확률분포, 추론 중 확률 질량의 집중이 함께 만드는 시스템 수준의 실패로 설명하며, 그 정확한 원인은 아직 열린 문제라고 선을 긋는다.
3. 추론 보정과 SFT만으로는 남는 분포의 끌개
반복 패널티, 온도 조정, 조기 중단과 같은 추론 단계의 개입은 샘플링 과정에서 반복 증상을 억제할 수 있지만, 반복을 만들어 내는 학습된 분포 자체를 바꾸지는 않는다. SFT는 도메인 문서, 목표 언어, 요구되는 출력 형식을 학습시켜 모델을 과제 분포에 더 가깝게 이동시키고, 긴 시퀀스와 제약된 문법 및 전문 어휘를 다루는 능력을 높인다. 그러나 관측된 고품질 시퀀스의 가능도를 최대화하는 SFT 목적에는 반복 루프를 직접 낮추는 항이 없으므로, 퇴화 저항성의 개선은 부수적 효과에 머문다. 따라서 과제 수행 능력과 반복 퇴화에 대한 저항성은 같은 방향으로 움직인다고 보장할 수 없으며, 원문은 두 특성을 별도의 학습 문제로 구분한다.
4. DPO를 대화 정렬이 아닌 실패 억제에 적용
기존 DPO 연구의 상당수는 사람의 유용성·무해성 판단을 이용해 대화 모델을 정렬하는 데 초점을 맞췄지만, OCR에는 그러한 주관적 대화 선호가 존재하지 않는다. 대신 구조화 OCR에는 정확한 전사는 선택하고 반복 퇴화가 발생한 결과는 거부할 수 있다는 객관적인 이진 신호가 있다. DPO는 같은 입력에 대한 선택 출력과 거부 출력의 전체 완성 결과를 비교하므로, 퇴화된 결과를 단지 국소적으로 그럴듯한 토큰의 연속이 아니라 명시적으로 피해야 할 결과로 지정할 수 있다. DharmaOCR는 이 성질을 이용해 DPO를 일반적인 대화 정렬 기법이 아니라, 이미 식별된 특정 실패 모드를 직접 완화하는 두 번째 학습 단계로 사용했다.
5. 모델 자신의 실패로 선호 쌍을 구성한 파이프라인
DharmaOCR 파이프라인의 핵심 설계는 SFT 모델이 추론 과정에서 스스로 생성한 퇴화 출력을 버리지 않고 DPO의 거부 사례로 보존한 것이다. 연구진은 23,726개의 학습 문서마다 SFT 모델로 여러 후보 응답을 생성한 뒤, 자동화된 LLM 판정 모델을 사용해 각 후보를 평가하고 동일 입력에 대한 선택·거부 쌍을 만들었다. 판정 모델은 반복 퇴화가 나타난 출력을 거부 사례로 표시하는 동시에, 정확하고 깨끗한 추출 결과를 보존할 선택 사례로 검증했다. 이 구성은 별도의 인간 선호 순위 주석 없이도 모델의 실제 출력 분포에서 학습 신호를 얻으며, 정상적인 추출 능력을 유지하면서 반복 실패를 억제하도록 최적화 방향을 설정한다.
6. 저품질 출력을 제거하지 않고 학습 신호로 전환
일반적인 데이터 정제에서는 퇴화 출력을 저품질 잡음으로 보고 제거하지만, DharmaOCR는 그러한 출력이 억제하려는 실패 모드를 가장 선명하게 보여주는 음성 신호라고 판단했다. 반복 루프를 제거하면 데이터는 더 깨끗해질 수 있으나, DPO가 모델을 어느 방향에서 멀어지게 해야 하는지를 알려주는 직접적인 표적도 함께 사라진다. 원문은 이를 선호에 의해 유도되는 암묵적 비가능도 학습으로 설명하며, 고품질 출력의 가능도를 높이는 것과 동시에 퇴화의 분포적 형태를 보이는 완성 결과를 낮추는 방식이라고 제시한다. 문서별로 형태가 달라지는 누락 오류와 달리 반복 루프는 여러 문서와 모델군에서 지속적으로 나타나는 일관된 실패 유형이므로, 완성 결과 수준의 거부 사례로 사용하기에 특히 적합하다는 것이 연구진의 판단이다.
7. 다섯 모델군에서 일관되게 나타난 감소
SFT 이후 동일 문서와 동일 모델을 사용해 DPO 단계를 추가하자 실험한 다섯 모델군 모두에서 텍스트 퇴화율이 감소했으며 예외는 보고되지 않았다. SFT 단독 결과와 비교한 상대 감소 폭은 37%에서 88%였고 평균 감소율은 59.4%였으며, 가장 큰 개선은 87.6%에 달했다. 구체적으로 Nanonets-OCR2-3B의 퇴화율은 1.61%에서 0.20%로 낮아졌고, 개선의 크기는 모델별로 달랐지만 개선 방향은 동일했다. 이 결과는 서로 다른 구조, 파라미터 규모, 초기 퇴화 수준을 가진 모델에서도 반복 실패를 거부 신호로 삼는 DPO 단계가 일관된 완화 효과와 연관되었음을 보여준다.
8. Qwen 사례가 보여주는 능력 향상과 안정성의 분리
Qwen2.5-VL-3B는 기본 상태에서 0.60%였던 퇴화율이 SFT 후 3.23%로 상승하고, DPO 후 다시 1.41%로 낮아지는 예외적인 경로를 보였다. 원문은 이 모델의 낮은 초기 퇴화율을 높은 안정성의 증거라기보다, 아직 길고 구조화된 출력을 충분히 시도하지 못해 퇴화가 발생하는 영역에 접근하지 않았던 결과로 해석한다. SFT로 도메인 어휘와 형식, 긴 출력 능력을 얻으면서 과제를 실제로 수행할 수 있게 되었고, 동시에 반복 퇴화가 발생하는 분포 영역에도 가까워졌다는 설명이다. 다만 저자들은 이것이 단일 데이터 지점이며 메커니즘의 인과적 증명으로 과장해서는 안 된다고 명시하고, 사후 분석 역시 DPO 효과의 정확한 인과관계를 확정하지는 못한다고 인정한다.
🧾 핵심 주장 / 시사점
- 객관적인 정답 기준이 있는 구조화 생성 작업에서는 인간의 주관적 선호 대신 모델이 만든 성공·실패 출력 자체를 DPO 선호 신호로 전환할 수 있다.
- 도메인 수행 능력을 높이는 SFT와 특정 실패 모드에 대한 저항성을 높이는 DPO는 같은 기능을 강도만 달리 수행하는 단계가 아니라, 서로 다른 목적을 담당하는 보완적 학습 단계다.
- 반복 퇴화처럼 여러 입력과 모델군에서 일관되게 나타나고 자동 식별할 수 있는 실패는 제거할 잡음이 아니라, 모델을 해당 실패 분포에서 멀어지게 하는 고정보성 거부 사례가 될 수 있다.
✅ 액션 아이템
- DPO를 구조화 OCR 학습 파이프라인에 추가해 반복 루프가 포함된 출력은 거부 사례로 명시적으로 반영한다.
- SFT가 생성한 후보를 자동화된 LLM 판정기로 평가해 정상 추출과 퇴화 추출을 선택·거부 쌍으로 정리한다.
- 실험군 다섯 모델에서 텍스트 퇴화율을 SFT 대비 상대 감소폭(37~88%, 평균 59.4%)로 추적한다.
❓ 열린 질문
- 반복 퇴화가 반복되는 입력 유형에서 DPO의 거부 학습 효과는 어느 구간에서 가장 크게 나타나는가?
- 자동화 판정 모델의 오분류가 잦을 경우, 어느 수준의 오류율에서 거부 쌍 구성 신뢰도를 재조정할 것인가?
- 운영 환경에서 텍스트 퇴화율을 '받아들일 만한 수준'으로 판단할 수 있는 절대값 또는 변화율 임계치는 무엇인가?