hero775 commited on
Commit
fc15529
·
verified ·
1 Parent(s): f3db873

honesty: v2 손글씨 인식 회귀 명시(v1 우세), 정확도=합성 in-domain 범위, 손글씨 교정 재학습 진행중

Browse files
Files changed (1) hide show
  1. README.md +18 -9
README.md CHANGED
@@ -47,7 +47,10 @@ library_name: llama.cpp
47
  - **Our own conversion** — GGUF built directly from `baidu/Unlimited-OCR` original safetensors, BatiAI-signed (`general.author = BatiAI`).
48
  - **MIT** — fully commercial-friendly.
49
 
50
- ## 🆕 batisee **v2** (recommended) — Korean-tuned, fixes dense-document looping
 
 
 
51
 
52
  **v2** is a **BatiAI fine-tune** of batisee (LoRA on the text decoder), trained on rendered Korean
53
  documents **+ real AI-Hub Korean handwriting**. It targets a failure mode we found while stress-testing v1:
@@ -72,7 +75,11 @@ v2 cures this.
72
  **CER 0.349 → 0.245** (~30 % relative), **every category down** — receipt 0.148→0.065,
73
  multi-column 0.637→0.242, form 0.231→0.136, invoice 0.310→0.242, official 0.065→0.018, report 0.047→0.030.
74
 
75
- 3. **Handwriting stays robust:** **0 degenerate loops / 80** real AI-Hub handwriting pages (v2 recipe).
 
 
 
 
76
 
77
  **v2 files** — in the `v2/` folder; the v1 files stay at the repo root, unchanged:
78
 
@@ -98,8 +105,10 @@ removes the loops without hurting tables or legitimate repeated cells (validated
98
  36 dense synthetic pages; tables/receipts unaffected). Use this recipe for v2.
99
 
100
  **Honest limitations (read before you rely on it):**
101
- - Validated on **rendered/synthetic Korean documents + real handwriting**; real-world **camera photos and
102
- heavy skew remain the frontier** (shared with v1).
 
 
103
  - Tables are scored by **structure (TEDS)**, not CER — cell text can still slip on hard scans.
104
  - **There is no separate "field-extraction" mode.** An `"extract fields."` prompt returns the same full-page
105
  parse as `"document parsing."`, *not* structured JSON — parse the full-page output yourself for key/values.
@@ -107,8 +116,7 @@ removes the loops without hurting tables or legitimate repeated cells (validated
107
  **v2** 는 batisee 의 **BatiAI 파인튜닝**(텍스트 디코더 LoRA)입니다. 렌더 한국어 문서 **+ 실제 AI-Hub 한국어 손글씨**로 학습했고,
108
  v1 의 약점(밀집 영수증·다단 페이지에서 Q4 GGUF 가 `<|det|>image` 수만 토큰 반복 루프에 빠지는 현상 — 강한 penalty 로도 안 고쳐짐)을
109
  **파인튜닝으로 해결**했습니다. 밀집 문서 CER 17–27(퇴화)→**0.20**, 루프 4/24→**0/24**, 파스 CER 0.349→0.245(약 30%↓, 전 카테고리 개선),
110
- 손글씨 80장 루프 0/80. **반드시 v2 레시피(`--repeat-penalty 1.1 --repeat-last-n 512`)** 사용. 한계: 합성·렌더 문서+손글씨 검증(실제 카메라 사진은 미해결),
111
- 표는 구조(TEDS) 기준, **별도 필드추출(JSON) 기능 없음**(`extract fields.` = `document parsing.` 과 동일 출력).
112
 
113
  ## ⭐ Korean OCR results / 한국어 OCR 검증
114
 
@@ -177,10 +185,11 @@ This model is a GGUF distribution of `baidu/Unlimited-OCR` (**MIT**), which is b
177
 
178
  ## Roadmap
179
 
180
- - ✅ **v2 shipped** — Korean fine-tune (LoRA + real handwriting): fixes dense-document looping, ~30 % parse-CER reduction. See the v2 section above.
181
- - Next: **real-world camera photos / heavy skew / low-quality scans** — still the frontier; v2's gains are on rendered docs + handwriting.
 
182
  - Ollama support once the `deepseek2ocr` engine merges.
183
- - ✅ **v2 출시 완료** — 한국어 파인튜닝(LoRA+실손글씨): 밀집문서 루프 해결 + 파스 CER 약 30%↓. 다음 단계는 실제 카메라 사진·왜곡·저품질 스캔.
184
 
185
  ## About BatiFlow
186
 
 
47
  - **Our own conversion** — GGUF built directly from `baidu/Unlimited-OCR` original safetensors, BatiAI-signed (`general.author = BatiAI`).
48
  - **MIT** — fully commercial-friendly.
49
 
50
+ ## 🆕 batisee **v2** (recommended for printed / dense documents) — fixes dense-document looping
51
+
52
+ > **Which to use:** **v2** for printed / dense / structured documents (receipts, multi-column, forms — fixes v1's looping).
53
+ > **v1** (repo root) for **free handwriting** — v2 currently regresses there (see point 3 below). A corrected handwriting fine-tune is in progress.
54
 
55
  **v2** is a **BatiAI fine-tune** of batisee (LoRA on the text decoder), trained on rendered Korean
56
  documents **+ real AI-Hub Korean handwriting**. It targets a failure mode we found while stress-testing v1:
 
75
  **CER 0.349 → 0.245** (~30 % relative), **every category down** — receipt 0.148→0.065,
76
  multi-column 0.637→0.242, form 0.231→0.136, invoice 0.310→0.242, official 0.065→0.018, report 0.047→0.030.
77
 
78
+ 3. **⚠️ Handwriting — loop-safe, but a recognition regression vs v1 (be aware).** v2 no longer *loops* on
79
+ handwriting (0 degenerate / 80 pages), **but it recognizes real Korean handwriting *worse* than v1.**
80
+ On held-out real AI-Hub handwriting, order-agnostic word recall is **≈ 7 % for v2 vs ≈ 30 % for v1** — the
81
+ fine-tune over-anchored on printed-document patterns and tends to hallucinate document vocabulary on
82
+ free handwriting. **For handwriting, prefer v1 (repo root).** A corrected handwriting fine-tune is in progress.
83
 
84
  **v2 files** — in the `v2/` folder; the v1 files stay at the repo root, unchanged:
85
 
 
105
  36 dense synthetic pages; tables/receipts unaffected). Use this recipe for v2.
106
 
107
  **Honest limitations (read before you rely on it):**
108
+ - **Accuracy gains are measured on rendered/synthetic Korean documents** (same generator family used for
109
+ fine-tuning — in-domain). Real-world generalization beyond that is **not** proven by these numbers.
110
+ - **Free handwriting is a regression vs v1** (word-recall ≈ 7 % vs ≈ 30 %) — see point 3 above. Use v1 for handwriting.
111
+ - Real-world **camera photos and heavy skew remain the frontier** (shared with v1; quantified separately).
112
  - Tables are scored by **structure (TEDS)**, not CER — cell text can still slip on hard scans.
113
  - **There is no separate "field-extraction" mode.** An `"extract fields."` prompt returns the same full-page
114
  parse as `"document parsing."`, *not* structured JSON — parse the full-page output yourself for key/values.
 
116
  **v2** 는 batisee 의 **BatiAI 파인튜닝**(텍스트 디코더 LoRA)입니다. 렌더 한국어 문서 **+ 실제 AI-Hub 한국어 손글씨**로 학습했고,
117
  v1 의 약점(밀집 영수증·다단 페이지에서 Q4 GGUF 가 `<|det|>image` 수만 토큰 반복 루프에 빠지는 현상 — 강한 penalty 로도 안 고쳐짐)을
118
  **파인튜닝으로 해결**했습니다. 밀집 문서 CER 17–27(퇴화)→**0.20**, 루프 4/24→**0/24**, 파스 CER 0.349→0.245(약 30%↓, 전 카테고리 개선),
119
+ **반드시 v2 레시피(`--repeat-penalty 1.1 --repeat-last-n 512`)** 사용. ⚠️ **손글씨는 v1보다 퇴행**(루프는 0/80이나 실제 인식은 v2 단어 recall ≈7% < v1 ≈30% — 파인튜닝이 인쇄문서에 과적합) → **손글씨는 v1(루트) 권장**, 교정 재학습 진행 중. 정확도 수치는 **합성 in-domain 기준**(실 일반화 미증명). 표는 구조(TEDS) 기준, **별도 필드추출(JSON) 기능 없음**(`extract fields.` = `document parsing.` 과 동일 출력).
 
120
 
121
  ## ⭐ Korean OCR results / 한국어 OCR 검증
122
 
 
185
 
186
  ## Roadmap
187
 
188
+ - ✅ **v2 shipped** — fixes dense-document looping, ~30 % parse-CER reduction on printed docs. See the v2 section above.
189
+ - 🔧 **In progress — handwriting fine-tune (corrected):** v2 regressed free-handwriting recognition vs v1 (over-anchored on printed docs). Re-doing it with spatial-order labels + anti-forgetting recipe + a word-recall no-regression gate vs v1.
190
+ - Next: **real-world camera photos / heavy skew / low-quality scans** — still the frontier; v2's measured gains are on rendered/synthetic docs.
191
  - Ollama support once the `deepseek2ocr` engine merges.
192
+ - ✅ **v2 출시** — 밀집문서 루프 해결 + 인쇄문서 파스 CER 약 30%↓. 🔧 **손글씨는 교정 재학습 진행 중**(v2가 v1 대비 손글씨 퇴행 → 공간정렬 라벨+anti-forgetting+무회귀 게이트). 실 카메라/왜곡은 다음 프론티어.
193
 
194
  ## About BatiFlow
195