문서 파싱 VLM에서 CER이 오도하는 이유
자체 벤치마크 데이터로 정량화 (2026)
최종 검토: 2026-08-18 · 실행 티어: 공식 · 자체 벤치마크 · 엔진 8개 × 영수증 데이터셋 2개
이 페이지에서 다루지 않는 내용: 문자 수준 정확도와 필드 수준 정확도의 정의상 차이는 함께 제공되는 필드 대 문자 정확도 정의 페이지에서 다룹니다. 이 페이지는 그 격차를 정량화하는 데이터 계층입니다. 송장, 양식, 장문 문서는 측정하지 않습니다 — 영수증만 대상으로 하며, GPU 티어는 1개(RTX 4090), 모델 버전은 2026년 8월 기준입니다.
범위 설명: 메커니즘은 자체 벤치마크 데이터를 사용해 영수증을 대상으로 설명합니다. ~76%/~18%/~10% CER 분해는 프로토콜 노트에서 도출한 추정치이며 CSV 열이 아닙니다. CORD는 SROIE 순위에 절대 병합되지 않습니다 — 언어가 다르고 정답 구조도 다르기 때문입니다.
CER은 품질 측정기가 아니라 문자 단위 정확 일치 알고리즘입니다. 정답과 다른 모든 문자에 오류 하나를 부과합니다. 이 벤치마크에서 그 채점 방식만으로도 — 실제 오독 이전에 — 엔진의 순위가 최상위와 최하위를 오갑니다. Unlimited-OCR은 동일한 SROIE 영수증 361개에서 최악의 CER(0.6552)과 최고의 정규식 필드 F1(0.3376)을 기록했고, docTR은 두 번째로 좋은 CER(0.1971)과 최악의 필드 F1(0.0766)을 기록했습니다.
작성자가 가장 자주 필요로 하는 세 가지 수치: VLM의 SROIE CER 예산 중 ~18%는 대소문자 치환만으로 구성됩니다 — TAN CHAY YEE를 tan chay yee로 대소문자 통합하는 것은 필드 값이 정확해도 오류로 채점됩니다. 1.0805는 PaddleOCR-VL의 CORD CER로, 8개 엔진 전체에서 최악이며 CORD의 구조가 가득한 정답에서 비롯된 산물입니다. 반면 PaddleOCR-VL의 CORD 필드 F1(0.3412)은 이 벤치마크에서 최고입니다. 그리고 0.6552 / 0.3376의 CER 최악 / 필드 최고 역전은 CER만으로 순위를 매기면 잘못된 승자를 고르게 만듭니다.
CER은 정확 일치 점수 알고리즘이지 품질 측정기가 아닙니다
CER은 인식된 텍스트와 정답 텍스트 사이의 레벤슈타인 편집 거리입니다. 즉, 하나를 다른 것으로 바꾸는 데 필요한 최소 문자 삽입, 삭제, 대체 횟수를 정답 길이로 나눈 값입니다. CER은 차이를 세며, 오독과 정당한 재포맷을 구분하지 못합니다. 엔진의 출력 규칙이 정답과 다를 때 — 대소문자, 구분자, 줄 순서 — CER은 전혀 오독이 아닌 동작에 대해 오류를 부과합니다.
기존 OCR 엔진(Tesseract, PaddleOCR, EasyOCR, docTR)은 원래 대소문자와 줄 레이아웃을 보존하는 원시 문자 스트림을 출력하므로 출력 규칙이 정답에 가깝고, CER은 실제 읽기 오류에 가까운 것을 측정합니다. 문서 파싱 VLM(Surya2, Unlimited-OCR, PaddleOCR-VL)은 이해된 텍스트를 출력합니다. 즉, 대소문자 통합, 라벨/값 병합, 줄 재정렬을 적용합니다 — 스캐너가 아닌 독자의 출력 규칙입니다. 통합된 모든 대소문자와 병합된 줄은 기본 필드 값이 정확하더라도 편집 거리 패널티가 됩니다.
벤치마크의 공개된 SROIE 예측에 대한 프로토콜 분석은 VLM의 원시 CER 예산을 대략 ~76% 정답과 동일한 문자, ~18% 대소문자 대체, ~10% 줄 병합 / 구분자 누락으로 분해합니다 — 실제 필드 값은 정확합니다. 이 분해는 벤치마크 분석 노트에서 파생된 프로토콜 추정치이지 CSV 열이 아닙니다. 분할을 정밀한 수치가 아닌 방향성 지표로 취급하십시오. 중요한 것은 방향입니다. 대소문자 통합만으로도 깨끗한 영어 영수증에서 VLM의 "나쁜" CER의 상당 부분을 설명할 수 있습니다.
두 개의 CSV 행은 분해 없이도 메커니즘을 보여줍니다. Unlimited-OCR은 SROIE에서 CER 0.6552이지만 WER 0.4779를 기록합니다 — 문자는 손상된 것처럼 보이지만 단어는 살아남습니다. 대소문자 통합이 단어를 깨지 않고 문자를 대체하기 때문입니다. 그리고 가장 적게 정규화하는 VLM인 Surya2는 CER 0.1915를 기록합니다 — 8개 엔진 실행 전체에서 최고의 원시 CER로, 강력한 기존 엔진과 구별할 수 없습니다. CER 열이 주로 측정하는 것은 VLM의 읽기 능력이 아니라 VLM의 출력 규칙입니다.
역전이 증명한다: CER과 필드 F1은 서로 다르게 평가한다
벤치마크의 CER 순위와 필드 추출 순위는 실질적으로 다릅니다. SROIE CER 기준으로 8개 엔진의 순위를 매기면 Surya2(0.1915)가 1위이고, 정규식 필드 F1 기준으로 순위를 매기면 CER 순위가 꼴찌인 Unlimited-OCR(0.3376)이 1위입니다. 두 지표 중 하나는 다운스트림 시스템이 실제로 소비하는 것을 측정하지 못하고 있습니다.
필드 F1은 추출된 필드 값에 대한 정밀도와 재현율의 조화 평균입니다. 필드는 이진 단위입니다. 일치하거나 실패하거나. 정규식 열은 모든 엔진의 텍스트에 동일한 고정 패턴 세트를 적용하므로 유일한 변수는 엔진의 출력입니다. 아래 표는 동일한 361개 영수증에 대해 각 엔진의 CER과 정규식 필드 F1을 짝지어 보여주며, 두 지표 모두에서 각 엔진의 순위를 보여줍니다.
출처: summary_metrics.csv — cer 및 field_f1_regex 열, sroie_2019 행. 두 계열은 크기가 서로 비교 가능하지 않지만, 순위가 다르다는 것이 핵심입니다.
| 모델 | 유형 | CER | WER | 정규식 필드 F1 | CER 순위 | 필드 F1 순위 | 출처 |
|---|---|---|---|---|---|---|---|
| Surya2 | 문서 파싱 VLM | 0.1915 | 0.2735 | 0.3183 | 1 | 4 | summary_metrics.csv · surya2/sroie_2019 행 |
| docTR | 기존 OCR (GPU) | 0.1971 | 0.3199 | 0.0766 | 2 | 8 | summary_metrics.csv · doctr/sroie_2019 행 |
| PaddleOCR | 기존 OCR (GPU) | 0.2045 | 0.3256 | 0.3254 | 3 | 3 | summary_metrics.csv · paddleocr/sroie_2019 행 |
| EasyOCR | 기존 OCR (GPU) | 0.2833 | 0.6158 | 0.1477 | 4 | 7 | summary_metrics.csv · easyocr/sroie_2019 행 |
| Tesseract | 기존 OCR (CPU) | 0.3347 | 0.5591 | 0.2335 | 5 | 5 | summary_metrics.csv · tesseract/sroie_2019 행 |
| PaddleOCR-VL | 문서 파싱 VLM | 0.3370 | 0.6462 | 0.3368 | 6 | 2 | summary_metrics.csv · paddleocr_vl_vllm/sroie_2019 행 |
| Docling | 파이프라인 파서 | 0.5909 | 0.7596 | 0.2237 | 7 | 6 | summary_metrics.csv · docling/sroie_2019 행 |
| Unlimited-OCR | 문서 파싱 VLM | 0.6552 | 0.4779 | 0.3376 | 8 | 1 | summary_metrics.csv · unlimited_ocr/sroie_2019 행 |
표: summary_metrics.csv — cer / wer / field_f1_regex 열, sroie_2019 행. 순위는 이 표의 8개 행 내에서 계산됨. 이는 postprocessed_sroie_receipt_regex_* 지표로, 각 엔진의 OCR 텍스트에 고정 패턴을 적용한 결과이며 네이티브 구조화 출력이 아님. Tesseract는 CPU 전용으로 실행됨(compute_type=cpu).
두 반전 쌍을 명시적으로 읽어 보십시오. Unlimited-OCR: 최악의 CER(0.6552), 최상의 필드 F1(0.3376) — 원시 OCR 지표에서 최하위를 기록한 엔진이 필드 관점에서는 최상위를 기록합니다. docTR: 2번째로 좋은 CER(0.1971), 최악의 필드 F1(0.0766) — 텍스트는 완벽하지만 필드는 실패합니다. PaddleOCR-VL도 경계에서 반전됩니다. 반면 정렬된 두 행은 모두 원시 텍스트 출력 규칙이 CER이 설계된 방식과 정확히 일치하는 전통적인 엔진입니다. CER만으로 엔진 순위를 매기면 생산 환경이 소비하는 기준으로 순위를 매길 때와 다른 승자가 나옵니다. 이 반전은 이상 현상이 아니라 증명입니다.
필드 지표는 신뢰할 수 있는 교차 계열 렌즈입니다
각 엔진의 원시 텍스트를 동일한 LLM 필드 추출 후처리에 통과시키면, 사용 가능한 OCR 텍스트를 가진 6개 엔진이 0.57–0.62 필드 F1로 수렴합니다. CER 순위가 크게 보이게 만든 VLM 대 전통적 계열 경계(0.19~0.66)가 거의 사라집니다. 두 엔진은 대역 아래에 있습니다: EasyOCR이 0.3717, Tesseract가 0.4389입니다. 필드 지표는 실제로 중요한 것, 즉 다운스트림 필드 복구에 따라 엔진을 구분하며, 계열 경계를 넘어 일관되게 그렇게 합니다.
이는 위의 CER 표와 동일한 엔진 세트를 필드 차원에서만 다시 평가한 것입니다. Unlimited-OCR과 docTR 사이의 CER 반전은 사라졌습니다. 필드 값 복구가 파이프라인이 소비하는 것이기 때문입니다. 메커니즘은 후처리가 CER이 처벌한 출력 규칙 차이를 흡수한다는 것입니다. 대소문자 통합, 라벨 병합된 텍스트를 읽고 값을 추출합니다. 여기서 LLM 필드 F1은 벤치마크의 방법 비교에서 llm_field_value_f1 열이며, LLM 모델은 행별로 기록됩니다.
| 모델 | 유형 | CER | LLM 필드 F1 | 수렴 대역 내(0.57–0.62) | 출처 |
|---|---|---|---|---|---|
| docTR | 기존 OCR(GPU) | 0.1971 | 0.6171 | 예 — 최고 | field_method_comparison.csv · llm_field_value_f1, doctr/sroie_2019 행 |
| Surya2 | 문서 파싱 VLM | 0.1915 | 0.6139 | 예 | field_method_comparison.csv · llm_field_value_f1, surya2/sroie_2019 행 |
| Unlimited-OCR | 문서 파싱 VLM | 0.6552 | 0.6054 | 예 | field_method_comparison.csv · llm_field_value_f1, unlimited_ocr/sroie_2019 행 |
| PaddleOCR-VL | 문서 파싱 VLM | 0.3370 | 0.5921 | 예 | field_method_comparison.csv · llm_field_value_f1, paddleocr_vl_vllm/sroie_2019 행 |
| PaddleOCR | 기존 OCR(GPU) | 0.2045 | 0.5810 | 예 | field_method_comparison.csv · llm_field_value_f1, paddleocr/sroie_2019 행 |
| Docling | 파이프라인 파서 | 0.5909 | 0.5685 | 예 — 대역 경계 | field_method_comparison.csv · llm_field_value_f1, docling/sroie_2019 행 |
| Tesseract | 기존 OCR(CPU) | 0.3347 | 0.4389 | 아니요 — 미만 | field_method_comparison.csv · llm_field_value_f1, tesseract/sroie_2019 행 |
| EasyOCR | 기존 OCR(GPU) | 0.2833 | 0.3717 | 아니요 — 미만 | field_method_comparison.csv · llm_field_value_f1, easyocr/sroie_2019 행 |
표: field_method_comparison.csv — llm_field_value_f1 열, sroie_2019 행, llm_model=deepseek-v4-flash. CER 열은 참고용으로만 summary_metrics.csv에서 반복한 값입니다. "수렴 대역"은 사용 가능한 텍스트를 가진 6개 엔진에서 관찰된 0.5685–0.6171 범위이며, 대역 미만의 두 행은 엔진 분류가 아닌 관찰 결과로 명시합니다.
CORD에 두 번째 인플레이션 계층 추가: 정답 구조
CORD의 공개 정답 텍스트(gt_text)에는 순수한 표시 텍스트가 아닌 주석 구조가 포함되어 있습니다. CER은 구조적으로 확장된 문자열에 대한 편집 거리를 계산하므로, 모든 엔진의 CORD CER은 읽기 오류를 고려하기 전에 체계적으로 부풀려집니다. 그 결과, 8개 엔진 모두 CORD CER 0.90~1.08 범위에 밀집되어 있으며, 이는 텍스트 품질에 대해 거의 아무것도 말해주지 않는 무의미하게 압축된 범위입니다.
가장 극단적인 아티팩트는 PaddleOCR-VL의 CORD CER 1.0805로, 8개 엔진 중 최악입니다. 이는 텍스트 품질에 대한 판단이 아니라, 구조적 인플레이션이 가장 깨끗하고 짧은 출력에 가장 크게 작용한 결과입니다. 짧은 출력은 CORD의 구조가 포함된 정답과의 상대적 편집 거리가 가장 크기 때문입니다. 필드 렌즈에서는 동일한 엔진이 벤치마크 최고의 CORD 정규식 필드 F1(0.3412)을 기록합니다. CORD CER은 구조적으로 사용할 수 없으며, 필드 메트릭만이 유일하게 공정한 CORD 렌즈입니다. 또한 이 벤치마크에서는 SROIE 순위와 엄격히 분리되어 유지됩니다.
출처: summary_metrics.csv — cer 및 field_f1_regex 열, cord_v2 행. CORD CER은 제품군 간 또는 엔진 간 비교가 불가능합니다. 정답에 주석 구조가 포함되어 있으므로 CER은 표시 텍스트가 아닌 구조적으로 확장된 문자열까지의 거리를 측정하기 때문입니다.
| 모델 | 유형 | CORD CER | 정규식 필드 F1 | 출처 |
|---|---|---|---|---|
| PaddleOCR-VL | 문서 파싱 VLM | 1.0805 | 0.3412 | summary_metrics.csv · paddleocr_vl_vllm/cord_v2 행 |
| Surya2 | 문서 파싱 VLM | 0.8959 | 0.2458 | summary_metrics.csv · surya2/cord_v2 행 |
| Unlimited-OCR | 문서 파싱 VLM | 0.9224 | 0.1079 | summary_metrics.csv · unlimited_ocr/cord_v2 행 |
| Tesseract | 전통적 OCR (CPU) | 0.9523 | 0.0752 | summary_metrics.csv · tesseract/cord_v2 행 |
| Docling | 파이프라인 파서 | 0.9219 | 0.0612 | summary_metrics.csv · docling/cord_v2 행 |
| PaddleOCR | 전통적 OCR (GPU) | 0.9083 | 0.0154 | summary_metrics.csv · paddleocr/cord_v2 행 |
| EasyOCR | 전통적 OCR (GPU) | 0.9185 | 0.0067 | summary_metrics.csv · easyocr/cord_v2 행 |
| docTR | 전통적 OCR (GPU) | 0.9101 | 0.0000 | summary_metrics.csv · doctr/cord_v2 행 |
표: summary_metrics.csv — cer / field_f1_regex 열, cord_v2 행. CORD는 어떤 SROIE 순위에도 병합되지 않습니다: 정답 구조가 모든 엔진의 CER을 부풀리고, 정규식 패턴은 영어 형식에 맞춰 작성되었기 때문입니다. 필드 지표만이 CORD를 공정하게 보는 유일한 기준입니다. CER이 아닌 필드 F1 기준으로 정렬했습니다 — 핵심은 CER 열에는 정렬 신호가 전혀 없다는 점입니다.
필드 관점은 CORD 표를 완전히 뒤집습니다. 벤치마크에서 가장 나쁜 CORD CER을 기록한 엔진(PaddleOCR-VL, 1.0805)이 가장 좋은 CORD 필드 F1(0.3412)을 기록했습니다. docTR의 CORD 필드 F1은 말 그대로 0.0000 — 추출된 것이 전혀 없음 — 반면 CORD CER(0.9101)은 중간 수준에 머물러 아무 정보도 주지 못합니다. CORD에서 필드 수치 없이 CER만 공개하는 것은 단순히 정보가 부족한 것이 아니라, 엔진을 잘못된 순서로 적극적으로 나열하는 것입니다.
CER이 실제로 올바른 지표인 경우
CER은 여전히 실제적인 무언가, 즉 정확한 문자 재현을 측정하며, 다운스트림 소비자가 필드가 아닌 원문 그대로의 텍스트를 필요로 할 때마다 올바른 지표입니다. 이 페이지의 결론은 “CER은 VLM 스타일 출력의 교차 계열 비교에는 오해를 불러일으킨다”는 것이지, “CER은 항상 틀렸다”는 것이 아닙니다.
- 원시 OCR 계열 내에서 CER은 그 가치를 유지합니다. 기존 엔진은 대소문자와 레이아웃을 보존한 원시 텍스트를 출력하므로, CER은 실제 읽기 품질을 측정합니다. 이 벤치마크의 기존 엔진 CER 열은 VLM의 경우보다 필드 성능을 훨씬 더 밀접하게 추적합니다.
- 원문 그대로의 텍스트 사용 사례. 정확히 일치하는 다운스트림 소비자, 즉 리터럴 문자열을 찾아야 하는 전체 텍스트 검색, 문서의 문자를 재생하는 감사 추적, 또는 필수 문자 시퀀스에 대한 통과/실패 검사는 필드가 아닌 문자를 소비합니다. 이러한 경우 정확한 문자 재현(CER)이 신뢰할 수 있는 측정이며 필드 F1은 잘못된 관점입니다.
- 게시 규칙. CER 수치를 게시할 때는 엔진의 출력 규칙과 정답 구성을 모두 명시하십시오. 둘 중 하나라도 알 수 없으면 해당 수치는 엔진이나 데이터셋 간에 이식할 수 없습니다.
- 이 벤치마크의 경계 규칙. CER은 원시 OCR 계열 내에서는 공정하지만 기존 OCR / 문서 파싱 VLM 경계를 넘어서는 경우에는 불공정합니다. 필드 수준 F1은 양쪽 모두에서 공정합니다. 동일 계열의 원시 텍스트 품질에는 CER을, 교차 계열 비교에는 필드 F1을 사용하고, VLM 행에는 항상 분해 주의사항을 보고하십시오.
자주 묻는 질문
OCR 엔진과 VLM을 비교할 때 CER이 오해를 불러일으키는 이유는 무엇입니까?
CER은 정확한 문자 편집 거리 점수이며, 문서 파싱 VLM은 의도적으로 문자를 정확히 재현하지 않기 때문입니다. 대소문자를 통합하고, 라벨/값 줄을 병합하며, 텍스트 순서를 바꿉니다. 이러한 정규화 각각은 필드 값이 올바른 경우에도 오류로 간주됩니다. 이 벤치마크에서 Unlimited-OCR은 동일한 361개 영수증에서 최악의 SROIE CER(0.6552)을 기록하면서 동시에 최고의 정규식 필드 F1(0.3376)을 기록했습니다. CER 순위와 필드 순위는 서로 다른 우승자를 선정합니다.
CER이 여전히 유용한 OCR 지표입니까?
그렇습니다. 원시 OCR 계열과 축어적 텍스트 소비자에게는 유용합니다. 기존 엔진(Tesseract, PaddleOCR, EasyOCR, docTR)은 CER이 공정하게 측정하는 원시 문자 스트림을 출력합니다. 이 벤치마크에서 이들의 SROIE CER은 0.1971~0.3347 범위이며 필드 성능과 일치합니다. CER은 엔진이 출력을 정규화하거나 정답이 표시되는 텍스트가 아닌 구조를 포함하는 경우(CORD)에는 잘못된 지표입니다.
VLM OCR 모델의 문자 오류율이 높은 이유는 무엇입니까?
대부분 읽기 능력이 아니라 출력 규칙 때문입니다. 벤치마크의 프로토콜 분석은 VLM의 SROIE CER 예산 중 약 18%가 대소문자 대체에, 약 10%가 줄 병합/구분 기호 누락에 기인한다고 추정합니다. 필드 값 자체는 올바릅니다. Unlimited-OCR의 CER 0.6552 대 WER 0.4779는 그 특징을 보여줍니다. 문자는 접히고 단어는 살아남습니다.
OCR 엔진과 문서 파싱 VLM을 비교할 때 가장 좋은 지표는 무엇인가요?
필드 수준 F1 — 원시 OCR 파이프라인에는 정규식 후처리, 두 계열 모두에는 LLM 후처리를 적용합니다. SROIE에서 LLM 필드 F1은 계열과 무관하게 6개 엔진을 0.57–0.62로 수렴시키며, 정규식 필드 F1만이 CORD 테이블을 합리적으로 순위 매기는 유일한 렌즈이며, 여기서 PaddleOCR-VL의 0.3412가 벤치마크 최고입니다. 숫자와 함께 항상 후처리 방식과 출력 규칙을 명시하십시오.
PaddleOCR-VL의 CER은 CORD에서 왜 그렇게 높은데 필드 F1은 최고인가요?
CORD의 정답이 순수한 보이는 텍스트가 아닌 주석 구조를 포함하고 있고, PaddleOCR-VL의 출력이 가장 깔끔하기 때문입니다 — 가장 짧고, 가장 정규화되어 있어서 — 구조적으로 확장된 문자열과의 편집 거리가 가장 큽니다. 필드 렌즈에서는 동일한 텍스트가 인도네시아 영수증 필드를 0.3412 필드 F1으로 추출하여 벤치마크 최고를 기록합니다. CORD CER은 모든 엔진에 대해 구조적으로 사용 불가능합니다. 필드 지표만이 CORD 비교의 공정한 방법입니다.
대소문자 통합이란 무엇이며 왜 CER을 부풀리나요?
대소문자 통합은 모든 텍스트를 단일 대소문자로 정규화하는 것입니다 — TAN CHAY YEE는 tan chay yee가 됩니다. CER은 문자를 정확히 비교하므로, 접힌 각 문자는 값이 동일함에도 정답의 대문자에 대한 대체로 간주됩니다. 이 벤치마크의 프로토콜 분석에서 대소문자 대체는 VLM의 SROIE CER 예산의 약 18%를 차지합니다 — 이것이 VLM이 영수증을 완벽하게 읽어도 실패한 모델처럼 보이는 CER을 보고하는 이유입니다.
OCR 엔진을 비교할 때 CER과 필드 수준 F1 중 무엇을 사용해야 하나요?
전통적인 OCR과 VLM 엔진을 모두 다루는 비교에는 필드 수준 F1을 사용하세요. 파이프라인이 문자 스트림이 아닌 필드를 소비하고, CER은 정규화된 VLM 출력과 구조 보강 정답에 대해 체계적으로 부풀려지기 때문입니다. CER은 원시 OCR 계열 내에서만, 또는 다운스트림 소비자가 있는 그대로의 텍스트를 필요로 할 때만 사용하세요. 이 벤치마크에서 두 지표는 크게 다릅니다: CER은 docTR을 2위, Unlimited-OCR을 8위로 매기고, 정규식 필드 F1은 docTR을 8위, Unlimited-OCR을 1위로 매깁니다.
이 CER 및 필드 F1 수치는 어디서 나온 것인가요?
모든 표의 수치는 ImageToTableai/benchmark-ocr에 호스팅된 1차 벤치마크의 게시된 results/summary_metrics.csv 또는 results/field_method_comparison.csv의 행이며, 각 실행마다 모델 버전과 환경 지문을 기록한 편집된 manifest.json이 하나씩 있습니다. ~76%/~18%/~10% CER 분해는 벤치마크의 분석 노트에서 파생된 프로토콜 기반 추정치로, 명시적으로 CSV 열이 아닙니다. 데이터셋 정의는 아래에 인용된 SROIE 및 CORD 논문에서 가져왔습니다.
방법론 및 출처
프로토콜
이 페이지는 독립적이고 재현 가능한 벤치마크 실행의 지표 공정성 차원을 보고합니다. 제3자 주장에 대한 조사가 아닙니다. 고정 테스트 분할만 사용: SROIE 2019 테스트 및 CORD v2 테스트; 훈련 분할은 평가하지 않았습니다. 8개 엔진이 동결된 프로토콜 reports/receipt_v1_official_protocol.md에 따라 파인튜닝 없이 기본 설정으로 실행되었습니다. 16개 점수화 실행 모두 error_rate 0.0으로 완료되었습니다. 데이터는 2026년 8월에 수집되었습니다.
실행 환경
- 하드웨어: 모든 GPU 실행은 단일 NVIDIA RTX 4090(24GB)에서 수행되었습니다. Tesseract는 CPU 전용(compute_type=cpu)으로 실행되었으며, 모든 표에 그렇게 표시되어 있습니다.
- 엔진 및 버전: Tesseract 5.3.4, PaddleOCR 3.7.0, EasyOCR 1.7.2, docTR v1.0.1, Docling 2.119.0, Surya2 0.22.1, Unlimited-OCR vLLM-served, PaddleOCR-VL 1.6.
- 필드 후처리: 정규식 필드 F1 = 각 엔진의 OCR 텍스트에 적용된 고정
sroie_receipt_regex/cord_receipt_regex패턴; LLM 필드 F1 = 동일한 텍스트를 읽는 deepseek-v4-flash(field_method_comparison.csv의 llm_model 열).
지표 정의
- 문자 오류율(CER): 인식 텍스트와 정답 텍스트 간의 레벤슈타인 편집 거리 — 최소 삽입/삭제/대체 횟수를 정답 길이로 나눈 값. 낮을수록 좋습니다. 정확한 문자 재현만 측정합니다.
- 단어 오류율(WER): 단어 단위의 동일한 편집 거리 로직 — 단어는 단일 대소문자 치환에도 유지되므로, CER/WER 차이는 문자를 변경하되 단어를 깨지 않는 정규화를 드러냅니다.
- 필드 값 F1: 추출된 필드 값에 대한 정밀도와 재현율의 조화 평균; 필드는 정답과 정확히 일치할 때만 일치합니다. 정규식 열과 LLM 열은 동일한 OCR 텍스트에 대한 두 가지 후처리이며, 혼합되지 않습니다.
- 출력 규칙: 엔진이 텍스트를 형식화하는 방식. 기존 엔진은 이를 유지하고, 문서 파싱 VLM은 이를 정규화합니다 — 이 페이지가 측정하는 축입니다.
- 정답 구조: 참조 텍스트가 순수한 가시 텍스트(SROIE)인지, 주석 구조(CORD
gt_text)로 보강되었는지 여부 — 후자는 모든 엔진의 CER을 높입니다.
출처 목록
- summary_metrics.csv (GitHub raw). 16개 행 = 8개 엔진 × 2개 영수증 데이터셋. 열에는 cer, wer, field_f1_regex, field_acc_regex, compute_type, error_rate가 포함됩니다. 이 페이지의 모든 CER/WER 및 정규식 필드 F1 수치는 여기의 행에서 비롯되며, 파일/모델/데이터셋 수준에서 인용됩니다.
- field_method_comparison.csv (GitHub raw). 정규식 대 VLM 필드 추출 비교. VLM 필드 F1 표의 출처.
- ImageToTableai/benchmark-ocr 저장소. 결과 CSV, 실행 매니페스트, 고정 프로토콜(
reports/receipt_v1_official_protocol.md), 재현용 샘플 목록을 호스팅하는 공개 저장소. - results/manifests (GitHub). 실행별 매니페스트 JSON. 환경 지문 및 아티팩트 해시가 포함된 고정 실행.
- receipt_v1_official_protocol.md. 고정 실행 계약: 고정 분할, 공식 테스트 분할, 워밍업, 점수 매기기, CORD 대 SROIE 분리 규칙. 이 페이지에 인용된 프로토콜 수준 규칙의 출처.
- 벤치마크 프로토콜 분석. VLM 정규화 메커니즘, CORD 정답 구조 메커니즘, SROIE 분해 메커니즘. 여기에는 “프로토콜 파생 추정치 — CSV 열 아님”이라는 명시적 라벨로 인용됨; 분할은 방향성일 뿐 정밀하지 않습니다.
- OCR-D 프로젝트 — 품질 보증 사양. 공식 CER 정의 / 총 문자 수 및 WER 유사 정의. 공식 정의 기준.
- Huang et al., “ICDAR2019 Competition on Scanned Receipt OCR and Information Extraction” (2019). SROIE 2019 데이터셋 정의, 작업 구조, 라이선스(CC-BY-4.0).
- Park et al., “CORD: A Consolidated Receipt Dataset for Post-OCR Parsing” (2020). CORD 데이터셋 정의, 중첩 필드 스키마, 라이선스(CC-BY-4.0).
한계
- 분해 수치는 프로토콜 기반 추정치이지 측정값이 아닙니다: ~76%/~18%/~10% SROIE CER 분해는 벤치마크의 프로토콜 분석 노트(WRITING_BRIEF §8.2)에서 비롯된 것이지 CSV 열에서 비롯된 것이 아닙니다. 방향은 견고하지만, 정확한 백분율은 지점 측정값이 아닌 방향성 추정치로 취급해야 합니다.
- 영수증만 해당: SROIE 및 CORD 영수증입니다. 송장, 양식, 표 또는 긴 문서에서의 동작은 측정되지 않았습니다. 메커니즘은 일반화되지만 수치는 일반화되지 않습니다.
- 단일 LLM 후처리: 모든 LLM 필드 F1 수치는 온도 0에서 deepseek-v4-flash를 사용합니다. 다른 LLM은 절대 F1 값과 가능한 수렴 대역을 변경합니다. 대역 내 교차 계열 순서가 안정적인 신호입니다.
- CER은 축어적 텍스트 사례에 여전히 유효합니다: 결론은 VLM 스타일 출력의 교차 계열 비교로 한정됩니다. 원시 OCR 동일 계열 비교 및 정확한 문자 종속 다운스트림 소비자의 경우 CER은 여전히 합법적인 지표로 남아 있으며, 이 페이지는 해당 맥락에서 CER에 반대하는 주장이 아닙니다.
- CORD는 SROIE 순위에 병합되지 않았습니다: 언어와 정답 구조가 다릅니다. CORD는 벤치마크 프로토콜에 따라 필드 지표에 대해서만 비교됩니다.
- 버전 및 하드웨어 고정: 수치는 위에 나열된 2026년 8월 모델 버전과 하나의 GPU 티어(RTX 4090)에 적용됩니다. 최신 릴리스는 CER 및 필드 F1을 변경하며, 한 자릿수 백분율 차이는 노이즈로 취급해야 합니다.
- 표본 크기: 361 + 100개 표본. 부트스트랩 신뢰 구간은 벤치마크 평가 출력에 보고되지만 이 페이지에서 행별로 재생산되지는 않습니다.
관련 참고 자료: 필드 수준 대 문자 수준 정확도 · 기존 OCR 대 문서 파싱 VLM · 정규식 대 LLM 필드 추출 · 영수증에서 PaddleOCR 대 EasyOCR · Surya2 대 Unlimited-OCR 대 PaddleOCR-VL · OCR 대기 시간 벤치마크 · 1,000페이지당 OCR 비용
관련 읽을거리: AI OCR 정확도가 기존 OCR과 다른 이유 · 이미지에서 AI 추출 대 기존 OCR 파이프라인