Files
MastersThesis/docs/metrics/metrics_doctr.md
Sergio Jimenez Jimenez 8bc3b38d46
All checks were successful
build_docker / essential (pull_request) Successful in 1s
build_docker / build_cpu (pull_request) Successful in 3m53s
build_docker / build_easyocr (pull_request) Successful in 15m2s
build_docker / build_gpu (pull_request) Successful in 19m57s
build_docker / build_easyocr_gpu (pull_request) Successful in 15m43s
build_docker / build_doctr (pull_request) Successful in 16m40s
build_docker / build_doctr_gpu (pull_request) Successful in 13m25s
metrics and raytune reuslts
2026-01-19 13:00:08 +01:00

3.7 KiB
Raw Blame History

Resultados de Ajuste de Hiperparámetros DocTR

Fecha de Ajuste: 2026-01-19 Plataforma: NVIDIA RTX 3060 Laptop GPU Muestras: 64 Páginas de Prueba: 5-10 (primer documento)

¿Por Qué Solo 5 Páginas?

Usamos solo 5 páginas (páginas 5-10) para el ajuste de hiperparámetros porque:

  1. Velocidad: 64 pruebas × 5 páginas = 320 evaluaciones de página. Con 45 páginas, serían 2,880 evaluaciones (~9x más tiempo)
  2. Eficiencia de recursos: Cada prueba toma ~2-20 segundos en GPU

Riesgo de Sobreajuste: El ajuste de hiperparámetros en un subconjunto pequeño PUEDE causar sobreajuste. Nuestros resultados confirman esto:

  • Subconjunto de ajuste: 38% mejora (7.43% CER)
  • Dataset completo: 0% mejora (12.07% CER)

La falta total de mejora en el dataset completo indica sobreajuste severo a las páginas 5-10, combinado con limitaciones a nivel de modelo (manejo de diacríticos, estructura de líneas) que los hiperparámetros no pueden corregir.

Evaluación del Dataset Completo (45 páginas)

Métrica Base Ajustado Mejora
CER 12.06% 12.07% 0%
WER 42.01% 42.26% 0%
Tiempo/Página 0.33s 0.34s -

Nota: El ajuste no generalizó al dataset completo. Los problemas de DocTR parecen ser a nivel de modelo (diacríticos, estructura de líneas).

Resultados del Subconjunto de Ajuste (páginas 5-10)

Métrica Base Ajustado Mejora
CER 12.06% 7.43% 38%
WER 42.01% 35.23% 16%

Nota: Las mejoras en el subconjunto de ajuste no se transfirieron al dataset completo.

Mejor Configuración Encontrada

{
  "assume_straight_pages": true,
  "straighten_pages": false,
  "preserve_aspect_ratio": false,
  "symmetric_pad": false,
  "disable_page_orientation": true,
  "disable_crop_orientation": false,
  "resolve_lines": true,
  "resolve_blocks": false,
  "paragraph_break": 0.0977
}

Hallazgos Clave

  1. straighten_pages: false - ¡Crítico! Configurarlo en true causa ~79% CER (catastrófico)
  2. assume_straight_pages: true - Funciona bien con escaneos de documentos rectos
  3. resolve_lines: true - Ayuda a mantener la estructura de líneas
  4. disable_page_orientation: true - Evita rotación innecesaria

Impacto de Parámetros

Parámetros que mejoraron la precisión:

  • straighten_pages=False absolutamente crítico
  • assume_straight_pages=True en los mejores resultados
  • resolve_lines=True mantiene la estructura del texto

Parámetros que perjudicaron la precisión:

  • straighten_pages=True catastróficamente malo (~79% CER)
  • resolve_blocks=True ligeramente peor que False

Limitaciones Conocidas

Incluso con ajuste, DocTR todavía tiene problemas:

  • Omite diacríticos (tildes) - probablemente problema a nivel de modelo
  • Todavía tiene mayor WER que PaddleOCR debido a problemas de estructura

Evaluación del Dataset Completo

Estado: Completado

curl -X POST http://localhost:8003/evaluate_full \
  -H "Content-Type: application/json" \
  -d '{
    "pdf_folder": "/app/dataset",
    "assume_straight_pages": true,
    "straighten_pages": false,
    "preserve_aspect_ratio": false,
    "symmetric_pad": false,
    "disable_page_orientation": true,
    "disable_crop_orientation": false,
    "resolve_lines": true,
    "resolve_blocks": false,
    "paragraph_break": 0.0977,
    "save_output": true
  }'

Resultado: CER 12.07%, WER 42.26%, 0.34s/página (sin mejora sobre la base)

Conclusión: Los problemas de precisión de DocTR son a nivel de modelo, no ajustables por hiperparámetros.