2025-12-15 23:03:36 +01:00
|
|
|
# Anexo A. Código fuente y datos analizados {.unnumbered}
|
|
|
|
|
|
|
|
|
|
## A.1 Repositorio del Proyecto
|
|
|
|
|
|
|
|
|
|
El código fuente completo y los datos utilizados en este trabajo están disponibles en el siguiente repositorio:
|
|
|
|
|
|
|
|
|
|
**URL del repositorio:** https://github.com/seryus/MastersThesis
|
|
|
|
|
|
|
|
|
|
El repositorio incluye:
|
|
|
|
|
|
|
|
|
|
- **Notebooks de experimentación**: Código completo de los experimentos realizados
|
|
|
|
|
- **Scripts de evaluación**: Herramientas para evaluar modelos OCR
|
|
|
|
|
- **Dataset**: Imágenes y textos de referencia utilizados
|
|
|
|
|
- **Resultados**: Archivos CSV con los resultados de los 64 trials de Ray Tune
|
|
|
|
|
|
|
|
|
|
## A.2 Estructura del Repositorio
|
|
|
|
|
|
2025-12-16 00:25:16 +01:00
|
|
|
```mermaid
|
2025-12-16 00:31:27 +01:00
|
|
|
---
|
|
|
|
|
title: "Estructura del repositorio del proyecto"
|
|
|
|
|
---
|
2025-12-16 00:25:16 +01:00
|
|
|
flowchart LR
|
|
|
|
|
root["MastersThesis/"] --> docs["docs/"]
|
|
|
|
|
root --> src["src/"]
|
|
|
|
|
root --> instructions["instructions/"]
|
2025-12-16 00:48:14 +01:00
|
|
|
root --> scripts["Scripts generación"]
|
2025-12-16 00:25:16 +01:00
|
|
|
|
|
|
|
|
src --> nb1["paddle_ocr_fine_tune_unir_raytune.ipynb"]
|
|
|
|
|
src --> py1["paddle_ocr_tuning.py"]
|
2025-12-16 00:48:14 +01:00
|
|
|
src --> csv["raytune_paddle_subproc_results_*.csv"]
|
|
|
|
|
|
|
|
|
|
scripts --> gen1["generate_mermaid_figures.py"]
|
|
|
|
|
scripts --> gen2["apply_content.py"]
|
2025-12-15 23:03:36 +01:00
|
|
|
```
|
2025-12-16 00:25:16 +01:00
|
|
|
|
|
|
|
|
**Descripción de componentes:**
|
|
|
|
|
|
2025-12-16 00:48:14 +01:00
|
|
|
- **docs/**: Capítulos de la tesis en Markdown (estructura UNIR)
|
|
|
|
|
- **src/**: Código fuente de experimentación
|
|
|
|
|
- `paddle_ocr_fine_tune_unir_raytune.ipynb`: Notebook principal con 64 trials Ray Tune
|
|
|
|
|
- `paddle_ocr_tuning.py`: Script CLI para evaluación OCR
|
|
|
|
|
- `raytune_paddle_subproc_results_20251207_192320.csv`: Resultados de optimización
|
|
|
|
|
- **instructions/**: Plantilla e instrucciones UNIR
|
|
|
|
|
- **Scripts de generación**: `generate_mermaid_figures.py` y `apply_content.py` para generar el documento TFM
|
2025-12-15 23:03:36 +01:00
|
|
|
|
|
|
|
|
## A.3 Requisitos de Software
|
|
|
|
|
|
|
|
|
|
Para reproducir los experimentos se requieren las siguientes dependencias:
|
|
|
|
|
|
|
|
|
|
| Componente | Versión |
|
|
|
|
|
|------------|---------|
|
|
|
|
|
| Python | 3.11.9 |
|
|
|
|
|
| PaddlePaddle | 3.2.2 |
|
|
|
|
|
| PaddleOCR | 3.3.2 |
|
|
|
|
|
| Ray | 2.52.1 |
|
|
|
|
|
| Optuna | 4.6.0 |
|
|
|
|
|
| jiwer | (última versión) |
|
|
|
|
|
| PyMuPDF | (última versión) |
|
|
|
|
|
|
|
|
|
|
## A.4 Instrucciones de Ejecución
|
|
|
|
|
|
|
|
|
|
1. Clonar el repositorio
|
|
|
|
|
2. Instalar dependencias: `pip install -r requirements.txt`
|
|
|
|
|
3. Ejecutar el notebook `src/paddle_ocr_fine_tune_unir_raytune.ipynb`
|
|
|
|
|
|
|
|
|
|
## A.5 Licencia
|
|
|
|
|
|
|
|
|
|
El código se distribuye bajo licencia MIT.
|