docs
Some checks failed
build_docker / essential (pull_request) Successful in 1s
build_docker / build_gpu (pull_request) Has been cancelled
build_docker / build_easyocr (pull_request) Has been cancelled
build_docker / build_easyocr_gpu (pull_request) Has been cancelled
build_docker / build_doctr (pull_request) Has been cancelled
build_docker / build_doctr_gpu (pull_request) Has been cancelled
build_docker / build_raytune (pull_request) Has been cancelled
build_docker / build_cpu (pull_request) Has been cancelled
Some checks failed
build_docker / essential (pull_request) Successful in 1s
build_docker / build_gpu (pull_request) Has been cancelled
build_docker / build_easyocr (pull_request) Has been cancelled
build_docker / build_easyocr_gpu (pull_request) Has been cancelled
build_docker / build_doctr (pull_request) Has been cancelled
build_docker / build_doctr_gpu (pull_request) Has been cancelled
build_docker / build_raytune (pull_request) Has been cancelled
build_docker / build_cpu (pull_request) Has been cancelled
This commit is contained in:
@@ -150,22 +150,7 @@ El espacio de búsqueda se definió utilizando `tune.choice()` para parámetros
|
||||
|
||||
#### Arquitectura de Ejecución
|
||||
|
||||
Se implementó una arquitectura basada en contenedores Docker para aislar los servicios OCR y facilitar la reproducibilidad:
|
||||
|
||||
```mermaid
|
||||
---
|
||||
title: "Arquitectura de ejecución con Docker Compose"
|
||||
---
|
||||
flowchart LR
|
||||
subgraph Docker["Docker Compose"]
|
||||
A["RayTune Container"]
|
||||
B["OCR Service Container"]
|
||||
end
|
||||
|
||||
A -->|"HTTP POST /evaluate"| B
|
||||
B -->|"JSON {CER, WER, TIME}"| A
|
||||
A -.->|"Health check /health"| B
|
||||
```
|
||||
Se implementó una arquitectura basada en contenedores Docker para aislar los servicios OCR y facilitar la reproducibilidad (ver sección 4.2.3 para detalles de la arquitectura).
|
||||
|
||||
#### Ejecución con Docker Compose
|
||||
|
||||
@@ -186,11 +171,11 @@ El servicio OCR expone una API REST que retorna métricas en formato JSON:
|
||||
|
||||
```json
|
||||
{
|
||||
"CER": 0.0125,
|
||||
"WER": 0.1040,
|
||||
"TIME": 331.09,
|
||||
"CER": 0.0149,
|
||||
"WER": 0.0762,
|
||||
"TIME": 15.8,
|
||||
"PAGES": 5,
|
||||
"TIME_PER_PAGE": 66.12
|
||||
"TIME_PER_PAGE": 3.16
|
||||
}
|
||||
```
|
||||
|
||||
@@ -233,6 +218,42 @@ El servicio OCR expone una API REST que retorna métricas en formato JSON:
|
||||
|
||||
*Fuente: Elaboración propia.*
|
||||
|
||||
#### Justificación de Ejecución Local vs Cloud
|
||||
|
||||
La decisión de ejecutar los experimentos en hardware local en lugar de utilizar servicios cloud se fundamenta en un análisis de costos y beneficios operativos.
|
||||
|
||||
**Tabla 9.** *Costos de GPU en plataformas cloud.*
|
||||
|
||||
| Plataforma | GPU | Costo/Hora | Costo Mensual |
|
||||
|------------|-----|------------|---------------|
|
||||
| AWS EC2 g4dn.xlarge | NVIDIA T4 (16 GB) | $0.526 | ~$384 |
|
||||
| Google Colab Pro | T4/P100 | ~$1.30 | $10 + CU extras |
|
||||
| Google Colab Pro+ | T4/V100/A100 | ~$1.30 | $50 + CU extras |
|
||||
|
||||
*Fuente: Elaboración propia a partir de precios públicos de AWS y Google Cloud (enero 2026).*
|
||||
|
||||
Para las tareas específicas de este proyecto, los costos estimados en cloud serían:
|
||||
|
||||
**Tabla 10.** *Análisis de costos del proyecto en plataformas cloud.*
|
||||
|
||||
| Tarea | Tiempo GPU | Costo AWS | Costo Colab Pro |
|
||||
|-------|------------|-----------|-----------------|
|
||||
| Ajuste hiperparámetros (64×3 trials) | ~3 horas | ~$1.58 | ~$3.90 |
|
||||
| Evaluación completa (45 páginas) | ~5 min | ~$0.04 | ~$0.11 |
|
||||
| Desarrollo y depuración (20 horas/mes) | 20 horas | ~$10.52 | ~$26.00 |
|
||||
|
||||
*Fuente: Elaboración propia.*
|
||||
|
||||
Las ventajas de la ejecución local incluyen:
|
||||
|
||||
1. **Costo cero de GPU**: La RTX 3060 ya está disponible en el equipo de desarrollo
|
||||
2. **Sin límites de tiempo**: AWS y Colab imponen timeouts de sesión que interrumpen experimentos largos
|
||||
3. **Acceso instantáneo**: Sin tiempo de aprovisionamiento de instancias cloud
|
||||
4. **Almacenamiento local**: Dataset y resultados en disco sin costos de transferencia
|
||||
5. **Iteración rápida**: Reinicio inmediato de contenedores Docker para depuración
|
||||
|
||||
Para un proyecto de investigación con múltiples iteraciones de ajuste de hiperparámetros, la ejecución local ahorra aproximadamente $50-100 mensuales comparado con servicios cloud, además de ofrecer mayor flexibilidad en la velocidad de iteración durante el desarrollo.
|
||||
|
||||
### Limitaciones Metodológicas
|
||||
|
||||
1. **Tamaño del dataset**: El dataset contiene 24 páginas de un único tipo de documento. Resultados pueden no generalizar a otros formatos.
|
||||
|
||||
@@ -305,11 +305,11 @@ docker compose -f docker-compose.tuning.doctr.yml down
|
||||
Respuesta del servicio OCR:
|
||||
```json
|
||||
{
|
||||
"CER": 0.0125,
|
||||
"WER": 0.1040,
|
||||
"TIME": 331.09,
|
||||
"CER": 0.0149,
|
||||
"WER": 0.0762,
|
||||
"TIME": 15.8,
|
||||
"PAGES": 5,
|
||||
"TIME_PER_PAGE": 66.12
|
||||
"TIME_PER_PAGE": 3.16
|
||||
}
|
||||
```
|
||||
|
||||
@@ -592,15 +592,16 @@ La configuración óptima identificada se evaluó sobre el dataset completo de 2
|
||||
|
||||
```mermaid
|
||||
---
|
||||
title: "Comparación Baseline vs Optimizado (24 páginas)"
|
||||
title: "Reducción de errores: Baseline vs Optimizado"
|
||||
---
|
||||
xychart-beta
|
||||
x-axis ["CER", "WER"]
|
||||
x-axis ["CER Baseline", "CER Optimizado", "WER Baseline", "WER Optimizado"]
|
||||
y-axis "Tasa de error (%)" 0 --> 16
|
||||
bar "Baseline" [7.78, 14.94]
|
||||
bar "Optimizado" [1.49, 7.62]
|
||||
bar [7.78, 1.49, 14.94, 7.62]
|
||||
```
|
||||
|
||||
*Leyenda: CER = Character Error Rate, WER = Word Error Rate. Baseline = configuración por defecto de PaddleOCR. Optimizado = configuración encontrada por Ray Tune.*
|
||||
|
||||
#### Impacto Práctico
|
||||
|
||||
**En un documento típico de 10,000 caracteres:**
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
|
||||
### Conclusión
|
||||
|
||||
Para un proyecto de investigación con múltiples iteraciones de ajuste de hiperparámetros y desarrollo, **la ejecución local ahorra ~$10-50/mes** comparado con cloud, además de ofrecer mayor flexibilidad y velocidad de iteración
|
||||
Para un proyecto de investigación con múltiples iteraciones de ajuste de hiperparámetros y desarrollo, **la ejecución local ahorra ~$50-100/mes** comparado con cloud, además de ofrecer mayor flexibilidad y velocidad de iteración
|
||||
|
||||
## Resumen Ejecutivo
|
||||
|
||||
|
||||
Reference in New Issue
Block a user