diff --git a/docs/03_objetivos_metodologia.md b/docs/03_objetivos_metodologia.md index a6d2541..d14bdd4 100644 --- a/docs/03_objetivos_metodologia.md +++ b/docs/03_objetivos_metodologia.md @@ -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. diff --git a/docs/04_desarrollo_especifico.md b/docs/04_desarrollo_especifico.md index d1064fe..0f012ff 100644 --- a/docs/04_desarrollo_especifico.md +++ b/docs/04_desarrollo_especifico.md @@ -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:** diff --git a/docs/metrics/metrics.md b/docs/metrics/metrics.md index 8b4e0e9..38ea7f2 100644 --- a/docs/metrics/metrics.md +++ b/docs/metrics/metrics.md @@ -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 diff --git a/thesis_output/figures/figura_1.png b/thesis_output/figures/figura_1.png deleted file mode 100644 index 346c735..0000000 Binary files a/thesis_output/figures/figura_1.png and /dev/null differ diff --git a/thesis_output/figures/figura_2.png b/thesis_output/figures/figura_2.png deleted file mode 100644 index 9ca94ae..0000000 Binary files a/thesis_output/figures/figura_2.png and /dev/null differ diff --git a/thesis_output/figures/figura_3.png b/thesis_output/figures/figura_3.png deleted file mode 100644 index 880a709..0000000 Binary files a/thesis_output/figures/figura_3.png and /dev/null differ diff --git a/thesis_output/figures/figura_4.png b/thesis_output/figures/figura_4.png deleted file mode 100644 index 445950f..0000000 Binary files a/thesis_output/figures/figura_4.png and /dev/null differ diff --git a/thesis_output/figures/figura_5.png b/thesis_output/figures/figura_5.png deleted file mode 100644 index 5acbfb1..0000000 Binary files a/thesis_output/figures/figura_5.png and /dev/null differ diff --git a/thesis_output/figures/figura_6.png b/thesis_output/figures/figura_6.png deleted file mode 100644 index a6a559c..0000000 Binary files a/thesis_output/figures/figura_6.png and /dev/null differ diff --git a/thesis_output/figures/figura_7.png b/thesis_output/figures/figura_7.png deleted file mode 100644 index 2704c1b..0000000 Binary files a/thesis_output/figures/figura_7.png and /dev/null differ diff --git a/thesis_output/figures/figura_8.png b/thesis_output/figures/figura_8.png deleted file mode 100644 index 2583474..0000000 Binary files a/thesis_output/figures/figura_8.png and /dev/null differ diff --git a/thesis_output/figures/figura_9.png b/thesis_output/figures/figura_9.png deleted file mode 100644 index 2583474..0000000 Binary files a/thesis_output/figures/figura_9.png and /dev/null differ diff --git a/thesis_output/figures/figures_manifest.json b/thesis_output/figures/figures_manifest.json deleted file mode 100644 index 0637a08..0000000 --- a/thesis_output/figures/figures_manifest.json +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/thesis_output/plantilla_individual.htm b/thesis_output/plantilla_individual.htm index a470396..0bffb4f 100644 --- a/thesis_output/plantilla_individual.htm +++ b/thesis_output/plantilla_individual.htm @@ -4637,7 +4637,7 @@ _Toc14106979">Pipeline Moderno de OCR

Los sistemas OCR modernos siguen típicamente un pipeline de dos etapas principales, precedidas opcionalmente por una fase de preprocesamiento:

Figura 1. Pipeline de un sistema OCR moderno

-

Pipeline de un sistema OCR moderno

+

[Insertar diagrama Mermaid aquí]

Fuente: Elaboración propia.

 

Etapa de Preprocesamiento

@@ -4880,7 +4880,7 @@ Configuraciones con alta probabilidad bajo 3.   Beneficiarse de la infraestructura de Ray para distribución

4.   Acceder a las visualizaciones de Optuna

Figura 2. Ciclo de optimización con Ray Tune y Optuna

-

Ciclo de optimización con Ray Tune y Optuna

+

[Insertar diagrama Mermaid aquí]

Fuente: Elaboración propia.

 

HPO en Sistemas OCR

@@ -4958,7 +4958,7 @@ concretos y metodología de trabajo
Metodología del trabajo

Visión General

Figura 3. Fases de la metodología experimental

-

Fases de la metodología experimental

+

[Insertar diagrama Mermaid aquí]

Fuente: Elaboración propia.

 

Descripción de las fases:

@@ -4978,7 +4978,7 @@ concretos y metodología de trabajo
- Método: page.get_text("dict") de PyMuPDF - Preservación de estructura de líneas - Tratamiento de texto vertical/marginal - Normalización de espacios y saltos de línea

Estructura del Dataset

Figura 4. Estructura del dataset de evaluación

-

Estructura del dataset de evaluación

+

[Insertar diagrama Mermaid aquí]

Fuente: Elaboración propia.

 

Clase ImageTextDataset

@@ -5001,11 +5001,7 @@ concretos y metodología de trabajo
El espacio de búsqueda se definió utilizando tune.choice() para parámetros booleanos y tune.uniform() para parámetros continuos, con OptunaSearch como algoritmo de optimización configurado para minimizar CER en 64 trials. La implementación completa está disponible en src/raytune/raytune_ocr.py (ver Anexo A).

Fase 4: Ejecución de Optimización

Arquitectura de Ejecución

-

Se implementó una arquitectura basada en contenedores Docker para aislar los servicios OCR y facilitar la reproducibilidad:

-

Figura 5. Arquitectura de ejecución con Docker Compose

-

Arquitectura de ejecución con Docker Compose

-

Fuente: Elaboración propia.

-

 

+

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

Los servicios se orquestan mediante Docker Compose (src/docker-compose.tuning.*.yml):

# Iniciar servicio OCR
@@ -5018,11 +5014,11 @@ docker compose -f docker-compose.tuning.doctr.yml run raytune --service doctr --
 docker compose -f docker-compose.tuning.doctr.yml down

El servicio OCR expone una API REST que retorna métricas en formato 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
 }

Fase 5: Validación

Protocolo de Validación

@@ -5041,6 +5037,24 @@ docker compose -f docker-compose.tuning.doctr.yml down

Componente

Versión

Sistema Operativo

Ubuntu 24.04.3 LTS

Python

3.12.3

PaddleOCR

3.3.2

PaddlePaddle

3.2.2

Ray

2.52.1

Optuna

4.7.0

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 18. 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.

+

 

+

Para las tareas específicas de este proyecto, los costos estimados en cloud serían:

+

Tabla 19. 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.

1.   Ejecución en CPU: Los tiempos de procesamiento (~70s/página) serían significativamente menores con GPU.

@@ -5086,7 +5100,7 @@ color:#0098CD;mso-font-kerning:16.0pt;mso-bidi-font-weight:bold'>1.   Calidad variable: Documentos digitales de alta calidad pero con posibles artefactos de compresión PDF.

Alternativas Evaluadas

Se seleccionaron tres soluciones OCR de código abierto representativas del estado del arte:

-

Tabla 18. Soluciones OCR evaluadas en el benchmark comparativo.

+

Tabla 20. Soluciones OCR evaluadas en el benchmark comparativo.

Solución

Desarrollador

Versión

Justificación de selección

EasyOCR

Jaided AI

Última estable

Popularidad, facilidad de uso

PaddleOCR

Baidu

PP-OCRv5

Estado del arte industrial

DocTR

Mindee

Última estable

Orientación académica

Fuente: Elaboración propia.

 

@@ -5104,7 +5118,7 @@ color:#0098CD;mso-font-kerning:16.0pt;mso-bidi-font-weight:bold'>Configuración del Experimento

Dataset de Evaluación

Se utilizó el documento "Instrucciones para la redacción y elaboración del TFE" del Máster Universitario en Inteligencia Artificial de UNIR, ubicado en la carpeta instructions/.

-

Tabla 19. Características del dataset de evaluación inicial.

+

Tabla 21. Características del dataset de evaluación inicial.

Característica

Valor

Documento fuente

Instrucciones TFE UNIR

Número de páginas evaluadas

5 (benchmark inicial)

Formato

PDF digital (no escaneado)

Idioma principal

Español

Resolución de conversión

300 DPI

Formato de imagen

PNG

Fuente: Elaboración propia.

 

@@ -5122,7 +5136,7 @@ color:#0098CD;mso-font-kerning:16.0pt;mso-bidi-font-weight:bold'>Resultados del Benchmark

Resultados de PaddleOCR (Configuración Baseline)

Durante el benchmark inicial se evaluó PaddleOCR con configuración por defecto en un subconjunto del dataset. Los resultados preliminares mostraron variabilidad significativa entre páginas, con CER entre 1.54% y 6.40% dependiendo de la complejidad del layout.

-

Tabla 20. Variabilidad del CER por tipo de contenido.

+

Tabla 22. Variabilidad del CER por tipo de contenido.

Tipo de contenido

CER aproximado

Observaciones

Texto corrido

~1.5-2%

Mejor rendimiento

Texto con listas

~3-4%

Rendimiento medio

Tablas

~5-6%

Mayor dificultad

Encabezados + notas

~4-5%

Layouts mixtos

Fuente: Elaboración propia.

 

@@ -5133,7 +5147,7 @@ color:#0098CD;mso-font-kerning:16.0pt;mso-bidi-font-weight:bold'>1.   Los errores más frecuentes fueron: confusión de acentos, caracteres duplicados, y errores en signos de puntuación.

Comparativa de Modelos

Los tres modelos evaluados representan diferentes paradigmas de OCR:

-

Tabla 21. Comparativa de arquitecturas OCR evaluadas.

+

Tabla 23. Comparativa de arquitecturas OCR evaluadas.

Modelo

Tipo

Componentes

Fortalezas Clave

EasyOCR

End-to-end (det + rec)

CRAFT + CRNN/Transformer

Ligero, fácil de usar, multilingüe

PaddleOCR

End-to-end (det + rec + cls)

DB + SVTR/CRNN

Soporte multilingüe robusto, pipeline configurable

DocTR

End-to-end (det + rec)

DB/LinkNet + CRNN/SAR/ViTSTR

Orientado a investigación, API limpia

Fuente: Elaboración propia.

 

@@ -5157,7 +5171,7 @@ color:#0098CD;mso-font-kerning:16.0pt;mso-bidi-font-weight:bold'>Justificación de la Selección de PaddleOCR

Criterios de Selección

La selección de PaddleOCR para la fase de optimización se basó en los siguientes criterios:

-

Tabla 22. Evaluación de criterios de selección.

+

Tabla 24. Evaluación de criterios de selección.

Criterio

EasyOCR

PaddleOCR

DocTR

CER benchmark

~6-8%

~5-6%

~7-9%

Configurabilidad

Baja (3 params)

Alta (>10 params)

Media (5 params)

Soporte español

Sí

Sí (dedicado)

Limitado

Documentación

Media

Alta

Alta

Mantenimiento

Medio

Alto

Medio

Fuente: Elaboración propia.

 

@@ -5206,7 +5220,7 @@ color:#0098CD;mso-font-kerning:16.0pt;mso-bidi-font-weight:bold'>Configuración del Experimento

Entorno de Ejecución

El experimento se ejecutó en el siguiente entorno:

-

Tabla 23. Entorno de ejecución del experimento.

+

Tabla 25. Entorno de ejecución del experimento.

Componente

Versión/Especificación

Sistema operativo

Ubuntu 24.04.3 LTS

Python

3.12.3

PaddlePaddle

3.2.2

PaddleOCR

3.3.2

Ray

2.52.1

Optuna

4.7.0

CPU

AMD Ryzen 7 5800H

RAM

16 GB DDR4

GPU

NVIDIA RTX 3060 Laptop (5.66 GB VRAM)

Fuente: Elaboración propia.

 

@@ -5216,8 +5230,8 @@ color:#0098CD;mso-font-kerning:16.0pt;mso-bidi-font-weight:bold'>·     Incompatibilidades CUDA/cuDNN: Cada motor OCR requiere versiones específicas de CUDA y cuDNN que no pueden coexistir en un mismo entorno virtual

·     Aislamiento de Ray Tune: Ray Tune tiene sus propias dependencias que pueden entrar en conflicto con las librerías de inferencia OCR

Esta arquitectura containerizada permite ejecutar cada componente en su entorno aislado óptimo, comunicándose via API REST:

-

Figura 6. Arquitectura de ejecución con Docker Compose

-

Arquitectura de ejecución con Docker Compose

+

Figura 5. Arquitectura de ejecución con Docker Compose

+

[Insertar diagrama Mermaid aquí]

Fuente: Elaboración propia.

 

La arquitectura containerizada (src/docker-compose.tuning.*.yml) ofrece:

@@ -5235,22 +5249,22 @@ docker compose -f docker-compose.tuning.doctr.yml run raytune --service doctr -- docker compose -f docker-compose.tuning.doctr.yml down

Respuesta del servicio OCR:

{
-    "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
 }

Dataset Extendido

Para la fase de optimización se extendió el dataset:

-

Tabla 24. Características del dataset de optimización.

+

Tabla 26. Características del dataset de optimización.

Característica

Valor

Páginas totales

24

Páginas por trial

5 (páginas 5-10)

Estructura

Carpetas img/ y txt/ pareadas

Resolución

300 DPI

Formato imagen

PNG

Fuente: Elaboración propia.

 

La clase ImageTextDataset gestiona la carga de pares imagen-texto desde la estructura de carpetas pareadas. La implementación está disponible en el repositorio (ver Anexo A).

Espacio de Búsqueda

El espacio de búsqueda se definió considerando los hiperparámetros más relevantes identificados en la documentación de PaddleOCR, utilizando tune.choice() para parámetros booleanos y tune.uniform() para umbrales continuos. La implementación está disponible en src/raytune/raytune_ocr.py (ver Anexo A).

-

Tabla 25. Descripción detallada del espacio de búsqueda.

+

Tabla 27. Descripción detallada del espacio de búsqueda.

Parámetro

Tipo

Rango

Descripción

use_doc_orientation_classify

Booleano

{True, False}

Clasificación de orientación del documento completo

use_doc_unwarping

Booleano

{True, False}

Corrección de deformación/curvatura

textline_orientation

Booleano

{True, False}

Clasificación de orientación por línea de texto

text_det_thresh

Continuo

[0.0, 0.7]

Umbral de probabilidad para píxeles de texto

text_det_box_thresh

Continuo

[0.0, 0.7]

Umbral de confianza para cajas detectadas

text_det_unclip_ratio

Fijo

0.0

Coeficiente de expansión (no explorado)

text_rec_score_thresh

Continuo

[0.0, 0.7]

Umbral de confianza de reconocimiento

Fuente: Elaboración propia.

 

@@ -5260,7 +5274,7 @@ docker compose -f docker-compose.tuning.doctr.yml down

1.   Parámetros booleanos completos: Los tres parámetros de preprocesamiento se exploran completamente para identificar cuáles son necesarios para documentos digitales.

Configuración de Ray Tune

Se configuró Ray Tune con OptunaSearch como algoritmo de búsqueda, optimizando CER en 64 trials con 2 ejecuciones concurrentes. La implementación está disponible en src/raytune/raytune_ocr.py (ver Anexo A).

-

Tabla 26. Parámetros de configuración de Ray Tune.

+

Tabla 28. Parámetros de configuración de Ray Tune.

Parámetro

Valor

Justificación

Métrica objetivo

CER

Métrica estándar para OCR

Modo

min

Minimizar tasa de error

Algoritmo

OptunaSearch (TPE)

Eficiente para espacios mixtos

Número de trials

64

Balance entre exploración y tiempo

Trials concurrentes

2

Limitado por memoria disponible

Fuente: Elaboración propia.

 

@@ -5273,13 +5287,13 @@ docker compose -f docker-compose.tuning.doctr.yml down

Resultados de la Optimización

Ejecución del Experimento

El experimento se ejecutó exitosamente con los siguientes resultados globales:

-

Tabla 27. Resumen de la ejecución del experimento.

+

Tabla 29. Resumen de la ejecución del experimento.

Métrica

Valor

Trials completados

64/64

Trials fallidos

0

Tiempo total

~6.4 horas

Tiempo medio por trial

367.72 segundos

Páginas procesadas

320 (64 trials × 5 páginas)

Fuente: Elaboración propia.

 

Estadísticas Descriptivas

Del archivo CSV de resultados (raytune_paddle_subproc_results_20251207_192320.csv):

-

Tabla 28. Estadísticas descriptivas de los 64 trials.

+

Tabla 30. Estadísticas descriptivas de los 64 trials.

Estadística

CER

WER

Tiempo (s)

Tiempo/Página (s)

count

64

64

64

64

mean

5.25%

14.28%

347.61

69.42

std

11.03%

10.75%

7.88

1.57

min

1.15%

9.89%

320.97

64.10

25%

1.20%

10.04%

344.24

68.76

50% (mediana)

1.23%

10.20%

346.42

69.19

75%

4.03%

13.20%

350.14

69.93

max

51.61%

59.45%

368.57

73.63

Fuente: Elaboración propia.

 

@@ -5288,7 +5302,7 @@ docker compose -f docker-compose.tuning.doctr.yml down

1.   Mediana vs Media: La mediana del CER (1.23%) es mucho menor que la media (5.25%), confirmando una distribución sesgada hacia valores bajos con outliers altos.

1.   Tiempo consistente: El tiempo de ejecución es muy estable (std = 1.57 s/página), indicando que las configuraciones de hiperparámetros no afectan significativamente el tiempo de inferencia.

Distribución de Resultados

-

Tabla 29. Distribución de trials por rango de CER.

+

Tabla 31. Distribución de trials por rango de CER.

Rango CER

Número de trials

Porcentaje

< 2%

43

67.2%

2% - 5%

7

10.9%

5% - 10%

2

3.1%

10% - 20%

5

7.8%

> 20%

7

10.9%

Fuente: Elaboración propia.

 

@@ -5306,24 +5320,24 @@ Configuración óptima: text_det_box_thresh: 0.5412 text_det_unclip_ratio: 0.0 text_rec_score_thresh: 0.6350

-

Tabla 30. Configuración óptima identificada.

+

Tabla 32. Configuración óptima identificada.

Parámetro

Valor óptimo

Valor por defecto

Cambio

textline_orientation

True

False

Activado

use_doc_orientation_classify

False

False

Sin cambio

use_doc_unwarping

False

False

Sin cambio

text_det_thresh

0.4690

0.3

+0.169

text_det_box_thresh

0.5412

0.6

-0.059

text_det_unclip_ratio

0.0

1.5

-1.5 (fijado)

text_rec_score_thresh

0.6350

0.5

+0.135

Fuente: Elaboración propia.

 

Análisis de Correlación

Se calculó la correlación de Pearson entre los parámetros continuos y las métricas de error:

-

Tabla 31. Correlación de parámetros con CER.

+

Tabla 33. Correlación de parámetros con CER.

Parámetro

Correlación con CER

Interpretación

text_det_thresh

-0.523

Correlación moderada negativa

text_det_box_thresh

+0.226

Correlación débil positiva

text_rec_score_thresh

-0.161

Correlación débil negativa

text_det_unclip_ratio

NaN

Varianza cero (valor fijo)

Fuente: Elaboración propia.

 

-

Tabla 32. Correlación de parámetros con WER.

+

Tabla 34. Correlación de parámetros con WER.

Parámetro

Correlación con WER

Interpretación

text_det_thresh

-0.521

Correlación moderada negativa

text_det_box_thresh

+0.227

Correlación débil positiva

text_rec_score_thresh

-0.173

Correlación débil negativa

Fuente: Elaboración propia.

 

Hallazgo clave: El parámetro text_det_thresh muestra la correlación más fuerte (-0.52 con ambas métricas), indicando que valores más altos de este umbral tienden a reducir el error. Este umbral controla qué píxeles se consideran "texto" en el mapa de probabilidad del detector.

Impacto del Parámetro textline_orientation

El parámetro booleano textline_orientation demostró tener el mayor impacto en el rendimiento:

-

Tabla 33. Impacto del parámetro textline_orientation.

+

Tabla 35. Impacto del parámetro textline_orientation.

textline_orientation

CER Medio

CER Std

WER Medio

N trials

True

3.76%

7.12%

12.73%

32

False

12.40%

14.93%

21.71%

32

Fuente: Elaboración propia.

 

@@ -5331,15 +5345,15 @@ Configuración óptima:

1.   Reducción del CER: Con textline_orientation=True, el CER medio es 3.3 veces menor (3.76% vs 12.40%).

1.   Menor varianza: La desviación estándar también se reduce significativamente (7.12% vs 14.93%), indicando resultados más consistentes.

1.   Reducción del CER: 69.7% cuando se habilita la clasificación de orientación de línea.

-

Figura 7. Impacto de textline_orientation en CER

-

Impacto de textline_orientation en CER

+

Figura 6. Impacto de textline_orientation en CER

+

[Insertar diagrama Mermaid aquí]

Fuente: Elaboración propia.

 

Explicación técnica:

El parámetro textline_orientation activa un clasificador que determina la orientación de cada línea de texto detectada. Para documentos con layouts mixtos (tablas, encabezados laterales, direcciones postales), este clasificador asegura que el texto se lea en el orden correcto, evitando la mezcla de líneas de diferentes columnas o secciones.

Análisis de Fallos Catastróficos

Los trials con CER muy alto (>20%) presentaron patrones específicos:

-

Tabla 34. Características de trials con fallos catastróficos.

+

Tabla 36. Características de trials con fallos catastróficos.

Trial

CER

text_det_thresh

textline_orientation

Diagnóstico

#47

51.61%

0.017

True

Umbral muy bajo

#23

43.29%

0.042

False

Umbral bajo + sin orientación

#12

38.76%

0.089

False

Umbral bajo + sin orientación

#56

35.12%

0.023

False

Umbral muy bajo + sin orientación

Fuente: Elaboración propia.

 

@@ -5351,22 +5365,23 @@ Configuración óptima:

Comparación Baseline vs Optimizado

Evaluación sobre Dataset Completo

La configuración óptima identificada se evaluó sobre el dataset completo de 24 páginas, comparando con la configuración baseline (valores por defecto de PaddleOCR). Los parámetros optimizados más relevantes fueron: textline_orientation=True, text_det_thresh=0.4690, text_det_box_thresh=0.5412, y text_rec_score_thresh=0.6350.

-

Tabla 35. Comparación baseline vs optimizado (24 páginas).

+

Tabla 37. Comparación baseline vs optimizado (24 páginas).

Modelo

CER

Precisión Caracteres

WER

Precisión Palabras

PaddleOCR (Baseline)

7.78%

92.22%

14.94%

85.06%

PaddleOCR-HyperAdjust

1.49%

98.51%

7.62%

92.38%

Fuente: Elaboración propia.

 

Métricas de Mejora

-

Tabla 36. Análisis cuantitativo de la mejora.

+

Tabla 38. Análisis cuantitativo de la mejora.

Forma de Medición

CER

WER

Valor baseline

7.78%

14.94%

Valor optimizado

1.49%

7.62%

Mejora absoluta

-6.29 pp

-7.32 pp

Reducción relativa del error

80.9%

49.0%

Factor de mejora

5.2×

2.0×

Fuente: Elaboración propia.

 

-

Figura 8. Comparación Baseline vs Optimizado (24 páginas)

-

Comparación Baseline vs Optimizado (24 páginas)

+

Figura 7. Reducción de errores: Baseline vs Optimizado

+

[Insertar diagrama Mermaid aquí]

Fuente: Elaboración propia.

 

+

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:

-

Tabla 37. En un documento típico de 10,000 caracteres

+

Tabla 39. En un documento típico de 10,000 caracteres

Configuración

Caracteres con error

Palabras con error*

Baseline

~778

~225

Optimizada

~149

~115

Reducción

629 menos

110 menos

Fuente: Elaboración propia.

 

@@ -5374,7 +5389,7 @@ Configuración óptima:

Interpretación del notebook:

"La optimización de hiperparámetros mejoró la precisión de caracteres de 92.2% a 98.5%, una ganancia de 6.3 puntos porcentuales. Aunque el baseline ya ofrecía resultados aceptables, la configuración optimizada reduce los errores residuales en un 80.9%."

Tiempo de Ejecución

-

Tabla 38. Métricas de tiempo del experimento.

+

Tabla 40. Métricas de tiempo del experimento.

Métrica

Valor

Tiempo total del experimento

~6.4 horas

Tiempo medio por trial

347.61 segundos (~5.8 min)

Tiempo medio por página

69.42 segundos

Variabilidad (std)

1.57 segundos/página

Páginas procesadas totales

320

Fuente: Elaboración propia.

 

@@ -5399,20 +5414,20 @@ Configuración óptima:

Esta sección presenta un análisis consolidado de los resultados obtenidos en las fases de benchmark comparativo y optimización de hiperparámetros. Se discuten las implicaciones prácticas, se evalúa el cumplimiento de los objetivos planteados y se identifican las limitaciones del estudio.

Resumen Consolidado de Resultados

Progresión del Rendimiento

-

Tabla 39. Evolución del rendimiento a través del estudio.

+

Tabla 41. Evolución del rendimiento a través del estudio.

Fase

Configuración

CER

Mejora vs anterior

Benchmark inicial

Baseline (5 páginas)

~5-6%

-

Optimización (mejor trial)

Optimizada (5 páginas)

1.15%

~80%

Validación final

Optimizada (24 páginas)

1.49%

-

Fuente: Elaboración propia.

 

El incremento del CER de 1.15% (5 páginas) a 1.49% (24 páginas) es esperado debido a la mayor diversidad de layouts en el dataset completo.

Comparación con Objetivo

-

Tabla 40. Verificación del objetivo general.

+

Tabla 42. Verificación del objetivo general.

Aspecto

Objetivo

Resultado

Cumplimiento

Métrica

CER

CER

✓

Umbral

< 2%

1.49%

✓

Método

Sin fine-tuning

Solo hiperparámetros

✓

Hardware

Sin GPU

CPU only

✓

Fuente: Elaboración propia.

 

Análisis Detallado de Hiperparámetros

Jerarquía de Importancia

Basándose en el análisis de correlación y el impacto observado:

-

Tabla 41. Ranking de importancia de hiperparámetros.

+

Tabla 43. Ranking de importancia de hiperparámetros.

Rank

Parámetro

Impacto

Evidencia

1

textline_orientation

Crítico

Reduce CER 69.7%

2

text_det_thresh

Alto

Correlación -0.52

3

text_rec_score_thresh

Medio

Correlación -0.16

4

text_det_box_thresh

Bajo

Correlación +0.23

5

use_doc_orientation_classify

Nulo

Sin mejora

6

use_doc_unwarping

Nulo

Sin mejora

Fuente: Elaboración propia.

 

@@ -5426,7 +5441,7 @@ Configuración óptima:

Recomendación: Siempre activar textline_orientation=True para documentos estructurados.

Análisis del Parámetro text_det_thresh

Comportamiento observado:

-

Tabla 42. Comportamiento observado

+

Tabla 44. Comportamiento observado

Rango

CER típico

Comportamiento

0.0 - 0.1

>20%

Fallos catastróficos

0.1 - 0.3

5-15%

Rendimiento pobre

0.3 - 0.5

1-5%

Rendimiento óptimo

0.5 - 0.7

2-8%

Rendimiento aceptable

Fuente: Elaboración propia.

 

@@ -5444,17 +5459,17 @@ Configuración óptima:

Para documentos PDF digitales como los evaluados, estos módulos son innecesarios e incluso pueden introducir artefactos. Su desactivación reduce el tiempo de procesamiento sin pérdida de precisión.

Análisis de Casos de Fallo

Clasificación de Errores

-

Tabla 43. Tipología de errores observados.

+

Tabla 45. Tipología de errores observados.

Tipo de error

Frecuencia

Ejemplo

Causa probable

Pérdida de acentos

Alta

más → mas

Modelo de reconocimiento

Duplicación de caracteres

Media

titulación → titulacióon

Solapamiento de detecciones

Confusión de puntuación

Media

¿ → ?

Caracteres similares

Pérdida de eñe

Baja

año → ano

Modelo de reconocimiento

Texto desordenado

Variable

Mezcla de líneas

Fallo de orientación

Fuente: Elaboración propia.

 

Patrones de Fallo por Tipo de Contenido

-

Tabla 44. Tasa de error por tipo de contenido.

+

Tabla 46. Tasa de error por tipo de contenido.

Tipo de contenido

CER estimado

Factor de riesgo

Párrafos de texto

~1%

Bajo

Listas numeradas

~2%

Medio

Tablas simples

~3%

Medio

Encabezados + pie de página

~2%

Medio

Tablas complejas

~5%

Alto

Texto en columnas

~4%

Alto

Fuente: Elaboración propia.

 

Comparación con Objetivos Específicos

-

Tabla 45. Cumplimiento de objetivos específicos.

+

Tabla 47. Cumplimiento de objetivos específicos.

Objetivo

Descripción

Resultado

Estado

OE1

Comparar soluciones OCR

EasyOCR, PaddleOCR, DocTR evaluados; PaddleOCR seleccionado

✓ Cumplido

OE2

Preparar dataset de evaluación

24 páginas con ground truth

✓ Cumplido

OE3

Identificar hiperparámetros críticos

textline_orientation y text_det_thresh identificados

✓ Cumplido

OE4

Optimizar con Ray Tune (≥50 trials)

64 trials ejecutados

✓ Cumplido

OE5

Validar configuración optimizada

CER: 7.78% → 1.49% documentado

✓ Cumplido

Fuente: Elaboración propia.

 

@@ -5474,7 +5489,7 @@ Configuración óptima:

Implicaciones Prácticas

Guía de Configuración Recomendada

Para documentos académicos en español similares a los evaluados:

-

Tabla 46. Configuración recomendada para PaddleOCR.

+

Tabla 48. Configuración recomendada para PaddleOCR.

Parámetro

Valor

Prioridad

Justificación

textline_orientation

True

Obligatorio

Reduce CER en 69.7%

text_det_thresh

0.45 (rango: 0.4-0.5)

Recomendado

Correlación fuerte con CER

text_rec_score_thresh

0.6 (rango: 0.5-0.7)

Recomendado

Filtra reconocimientos poco confiables

text_det_box_thresh

0.55 (rango: 0.5-0.6)

Opcional

Impacto moderado

use_doc_orientation_classify

False

No recomendado

Innecesario para PDFs digitales

use_doc_unwarping

False

No recomendado

Innecesario para PDFs digitales

Fuente: Elaboración propia.

 

@@ -5514,21 +5529,21 @@ Configuración óptima:

Validación con Aceleración GPU

Para evaluar la viabilidad práctica del enfoque optimizado en escenarios de producción, se realizó una validación adicional utilizando aceleración GPU. Esta fase complementa los experimentos en CPU presentados anteriormente y demuestra la aplicabilidad del método cuando se dispone de hardware con capacidad de procesamiento paralelo.

Configuración del Entorno GPU

-

Tabla 47. Especificaciones del entorno de validación GPU.

+

Tabla 49. Especificaciones del entorno de validación GPU.

Componente

Especificación

GPU

NVIDIA GeForce RTX 3060 Laptop

VRAM

5.66 GB

CUDA

12.4

Sistema Operativo

Ubuntu 24.04.3 LTS

Kernel

6.14.0-37-generic

Fuente: Elaboración propia.

 

El entorno de validación representa hardware de consumo típico para desarrollo de aplicaciones de machine learning, permitiendo evaluar el rendimiento en condiciones realistas de despliegue.

Comparación CPU vs GPU

Se evaluó el tiempo de procesamiento utilizando la configuración optimizada identificada en la fase anterior, comparando el rendimiento entre CPU y GPU.

-

Tabla 48. Rendimiento comparativo CPU vs GPU.

+

Tabla 50. Rendimiento comparativo CPU vs GPU.

Métrica

CPU

GPU (RTX 3060)

Factor de Aceleración

Tiempo/Página

69.4s

0.55s

126x

Dataset completo (45 páginas)

~52 min

~25 seg

126x

Fuente: Elaboración propia.

 

La aceleración de 126x obtenida con GPU transforma la aplicabilidad práctica del sistema. Mientras que el procesamiento en CPU limita el uso a escenarios de procesamiento por lotes sin restricciones de tiempo, la velocidad con GPU habilita casos de uso interactivos y de tiempo real.

Comparación de Modelos PaddleOCR

PaddleOCR ofrece dos variantes de modelos: Mobile (optimizados para dispositivos con recursos limitados) y Server (mayor precisión a costa de mayor consumo de memoria). Se evaluó la viabilidad de ambas variantes en el hardware disponible.

-

Tabla 49. Comparación de modelos Mobile vs Server en RTX 3060.

+

Tabla 51. Comparación de modelos Mobile vs Server en RTX 3060.

Modelo

VRAM Requerida

Resultado

Recomendación

PP-OCRv5 Mobile

0.06 GB

Funciona correctamente

✓ Recomendado

PP-OCRv5 Server

5.3 GB

OOM en página 2

✗ Requiere >8 GB VRAM

Fuente: Elaboración propia.

 

@@ -5547,7 +5562,7 @@ y trabajo futuro

Este capít

Conclusiones Generales

Este Trabajo Fin de Máster ha demostrado que es posible mejorar significativamente el rendimiento de sistemas OCR preentrenados mediante optimización sistemática de hiperparámetros, sin requerir fine-tuning ni recursos GPU dedicados.

El objetivo principal del trabajo era alcanzar un CER inferior al 2% en documentos académicos en español. Los resultados obtenidos confirman el cumplimiento de este objetivo:

-

Tabla 50. Cumplimiento del objetivo de CER.

+

Tabla 52. Cumplimiento del objetivo de CER.

Métrica

Objetivo

Resultado

CER

< 2%

1.49%

Fuente: Elaboración propia.

 

@@ -5669,12 +5684,12 @@ major-latin;mso-bidi-font-family:"Calibri Light";mso-bidi-theme-font:major-latin └── .gitea/workflows/ci.yaml # Pipeline CI/CD

A.3 Requisitos de Software

Sistema de Desarrollo

-

Tabla 51. Especificaciones del sistema de desarrollo.

+

Tabla 53. Especificaciones del sistema de desarrollo.

Componente

Especificación

Sistema Operativo

Ubuntu 24.04.3 LTS

CPU

AMD Ryzen 7 5800H

RAM

16 GB DDR4

GPU

NVIDIA RTX 3060 Laptop (5.66 GB VRAM)

CUDA

12.4

Fuente: Elaboración propia.

 

Dependencias

-

Tabla 52. Dependencias del proyecto.

+

Tabla 54. Dependencias del proyecto.

Componente

Versión

Python

3.12.3

Docker

29.1.5

NVIDIA Container Toolkit

Requerido para GPU

Ray

2.52.1

Optuna

4.7.0

Fuente: Elaboración propia.

 

@@ -5750,7 +5765,7 @@ results = run_tuner(trainable, PADDLE_OCR_SEARCH_SPACE, num_samples=64) analyze_results(results, prefix='raytune_paddle', config_keys=PADDLE_OCR_CONFIG_KEYS) "

Servicios y Puertos

-

Tabla 53. Servicios Docker y puertos.

+

Tabla 55. Servicios Docker y puertos.

Servicio

Puerto

Script de Ajuste

PaddleOCR

8002

paddle_ocr_payload

DocTR

8003

doctr_payload

EasyOCR

8002

easyocr_payload

Fuente: Elaboración propia.

 

@@ -5761,7 +5776,7 @@ analyze_results(results, prefix='raytune_paddle', config_keys=PADDLE_OCR_CONFIG_

·     DocTR - Más rápido (0.50s/página)

·     EasyOCR - Balance intermedio

Resumen de Resultados

-

Tabla 54. Resumen de resultados del benchmark por servicio.

+

Tabla 56. Resumen de resultados del benchmark por servicio.

Servicio

CER Base

CER Ajustado

Mejora

PaddleOCR

8.85%

7.72%

12.8%

DocTR

12.06%

12.07%

0%

EasyOCR

11.23%

11.14%

0.8%

Fuente: Elaboración propia.

 

diff --git a/thesis_output/plantilla_individual.htm.bak b/thesis_output/plantilla_individual.htm.bak deleted file mode 100644 index 138698c..0000000 --- a/thesis_output/plantilla_individual.htm.bak +++ /dev/null @@ -1,6075 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - -
- -

 

- -

- -

Universidad -Internacional de La Rioja

- -

Escuela -Superior de Ingeniería y

- -

Tecnología

- -

 

- -

 

- -

 

- -

 

- -

Máster Universitario -en Inteligencia artificial

- -

Optimización de Hiperparámetros OCR -con Ray Tune para Documentos Académicos en Español

- - - -

 

- -

           

- - - - - - - - - - - - - - - - - - -
-

Trabajo fin de - estudio presentado por:

-
-

Sergio Jiménez Jiménez

-
-

Tipo de - trabajo:

-
-

Desarrollo - Software

-
-

Director/a:

-
-

Javier Rodrigo - Villazón Terrazas

-
-

Fecha:

-
-

06.10.2025

-
- -

 

- -
-
- -

Resumen

- -

En este -apartado se introducirá un breve resumen en español del trabajo realizado -(extensión entre 150 y 300 palabras). Este resumen debe incluir el objetivo o -propósito de la investigación, la metodología, los resultados y las -conclusiones.

- -

El resumen -debe contener lo qué se ha pretendido realizar (objetivo o propósito de la -investigación), cómo se ha realizado (método o proceso desarrollado) y para qué -se ha realizado (resultados y conclusiones).

- -

 

- -
- -

Importante: La extensión mínima en un TFE individual es de 50 páginas, sin contar -portada, resumen, abstract, índices y anexos.

- -
- -

 

- -

Palabras clave: (De 3 a 5 palabras) Descriptores -del trabajo que lo enmarcan en unas temáticas determinadas. Serán los -utilizados para localizar tu trabajo si llega a ser publicado.

- -

 

- -

 

- -
-
- -

 

- -

Abstract

- -

En -este apartado se introducirá un breve resumen en inglés del trabajo -realizado (extensión entre 150 y 300 palabras). Este resumen debe incluir el -objetivo o propósito de la investigación, la metodología, los resultados y las -conclusiones.

- -

 

- -

Keywords: (De 3 a 5 palabras en inglés)

- -

 

- -

 

- -
-
- -

 

- - - -

Índice de contenidos

- -

1.    Introducción. 1

- -

1.1.      Motivación. 1

- -

1.2.      Planteamiento -del trabajo. 3

- -

1.3.      Estructura -del trabajo. 3

- -

2.    Contexto -y estado del arte. 4

- -

2.1.      Contexto -del problema. 4

- -

2.2.      Estado -del arte. 4

- -

2.3.      Conclusiones. 5

- -

3.    Objetivos -concretos y metodología de trabajo. 6

- -

3.1.      Objetivo -general 6

- -

3.2.      Objetivos -específicos. 7

- -

3.3.      Metodología -del trabajo. 8

- -

4.    Desarrollo específico de la contribución. 9

- -

5.    Conclusiones -y trabajo futuro. 13

- -

5.1.      Conclusiones. 13

- -

5.2.      Líneas -de trabajo futuro. 13

- -

Referencias bibliográficas. 14

- -

Anexo A.     Código -fuente y datos analizados 15

- -


-Índice de figuras

- -

Figura 1. Ejemplo -de figura realizada para nuestro trabajo. 2

- -


-Índice de tablas

- -

Tabla 1. Ejemplo -de tabla con sus principales elementos. 2

- -

 

- -

 

- -

 

- -

 

- -

 

- -

 

- -

 

- -

 

- -

 

- -

 

- -

 

- -

 

- -

 

- -

 

- -

 

- -

 

- -
- -
-
- -
- -

1.   -Introducción

- -

El primer capítulo es siempre -una introducción. En ella debes resumir de forma esquemática pero -suficientemente clara lo esencial de cada una de las partes del trabajo. La -lectura de este primer capítulo ha de dar una primera idea clara de lo que se -pretendía, las conclusiones a las que se ha llegado y del procedimiento -seguido.

- -

Como tal, es uno de los -capítulos más importantes de la memoria. Las ideas -principales a transmitir son la identificación del problema a tratar, la -justificación de su importancia, los objetivos generales (a grandes rasgos) y -un adelanto de la contribución que esperas hacer.

- -

Típicamente una introducción -tiene tres apartados: Motivación, Planteamiento del trabajo, Estructura del -trabajo. (Texto Normal del menú de estilos.)

- -

Ejemplo de nota al pie[1].

- -

 

- -

1.1. Motivación

- -

En este apartado se deberá -presentar el problema de estudio al que se quiere dar solución y justificar su -importancia para la comunidad educativa y científica.

- -

La lectura de este apartado -debe dar una idea clara de las razones, motivos e intereses que han llevado a -la elección de este tema. Recuerda que para poder justificar este trabajo debe -haber referencias a la investigación previa sobre el tema objeto de estudio, -independientemente de que luego se profundice en otros apartados.

- -

Las siguientes preguntas -puedan ayudar a la redacción de este apartado:

- -

  ¿Cuál es el problema que quieres tratar?

- -

  ¿Cuáles crees que son las causas?

- -

  ¿Por qué es relevante el problema?

- -

 

- -

A continuación, se indica con -un ejemplo cómo deben introducirse los títulos y las fuentes en Tablas y Figuras.

- -

 

- -

Tabla 1. Ejemplo de tabla con sus principales -elementos.

- -
- -

- -
- -

Fuente: American Psychological Association, -2020a.

- - - -

 

- -

Figura 1. Ejemplo de figura realizada para nuestro -trabajo.

- -

- -

Fuente: -American Psychological Association, 2020b.

- -

 

- -

 

- -

 

- -

 

- -

 

- -

1.2. Planteamiento del trabajo

- -

Se debe plantear, de forma -breve, el problema / necesidad detectada de la que se parte para proponer la -propuesta y la finalidad del TFE. Los objetivos se van a plantear -posteriormente, pero en este apartado debe quedar claro qué te planteas con la -intervención.

- -

Es necesario que los temas -escogidos tengan una vinculación directa con la ingeniería de software, el -desarrollo web y/o la ciberseguridad y, por tanto, el tema trabajado debe estar -en consonancia con la titulación.

- -

Las siguientes preguntas -puedan ayudar a la redacción de este apartado:

- -

  ¿Cómo se podría solucionar el problema?

- -

  -¿Qué es lo que se propone? Aquí -describes tus objetivos en términos generales.

- -

 

- -

1.3. Estructura del trabajo

- -

Aquí describes brevemente lo -que vas a contar en cada uno de los capítulos siguientes.

- -

 

- -
-
- -

 

- -

2.   -Contexto -y estado del arte

- -

Después de la introducción, se suele describir el contexto de -aplicación. Suele ser un capítulo (o dos en ciertos casos) en el que se estudia -a fondo el dominio de aplicación, citando numerosas referencias. Debe aportar -un buen resumen del conocimiento que ya existe en el campo de los problemas -habituales identificados.

- -

Es conveniente que revises los estudios actuales publicados en la línea -elegida, y deberás consultar diferentes fuentes. No es suficiente con la -consulta on-line, es necesario acudir a la biblioteca y consultar manuales -técnicos.

- -

Hay que tener presente los autores de referencia en la temática del -trabajo de investigación. Si se ha excluido a alguno de los relevantes hay que -justificar adecuadamente su exclusión. Si por la extensión del trabajo no se -puede señalar a todos los autores, habrá que justificar por qué se han elegido -unos y se ha prescindido de otros.

- -

La organización específica en -secciones dependerá estrechamente el trabajo concreto que vayas a realizar. En -este punto será fundamental la colaboración con tu DIRECTOR, él podrá -asesorarte y guiarte, aunque siempre debes tener claro que el trabajo fundamental -es tuyo.

- -

El capítulo debería concluir -con una última sección de resumen de conclusiones, resumiendo las principales -averiguaciones del estudio del dominio y cómo van a afectar al desarrollo -específico del trabajo.

- -

Recuerda que para citar trabajos de diferentes autores es fundamental e -imprescindible seguir el formato APA, según se describe en -el documento Normativa_APA.pdf disponible en el apartado de Documentación del -Aula de información general del Máster Universitario en Inteligencia Artificial -(MIA). No se debe mencionar, ni utilizar ninguna fuente, sin citarla apropiadamente.

- -

2.1. Contexto del problema

- -

2.2. Estado del arte

- -

Estado del arte (base -teórica): antecedentes, estudios actuales, comparativa de herramientas -existentes, etc.

- -

2.3. Conclusiones

- -

Conclusiones (nexo de unión de lo investigado con el trabajo a realizar).

- -

 

- -
-
- -

 

- -

3.   -Objetivos -concretos y metodología de trabajo

- -

Este tercer capítulo es el -puente entre el estudio del dominio y la contribución a realizar. Según el -trabajo concreto, el bloque se puede organizar de distintas formas, pero hay -tres elementos que deben estar presentes con mayor o menor detalle: (1) objetivo -general, (2) objetivos específicos y (3) metodología de trabajo.

- -

Es muy importante, por no -decir imprescindible, que los objetivos (general y específicos) sean SMART -(Doran, 1981) según la idea de George T. Doran que utilizó la palabra smart (inteligente en inglés) para definir las -características de un objetivo:

- -

          S: Specific / Específico: que -exprese claramente qué es exactamente -lo que se quiere conseguir.

- -

          M: Measurable / Medible: que se -puedan establecer medidas que determinen el éxito o fracaso y también el -progreso en la consecución del objetivo.

- -

          A: Attainable / Alcanzable: que -sea viable su consecución en base al esfuerzo, tiempo y recursos disponibles -para conseguirlo.

- -

          R: Relevant / Relevante: que -tenga un impacto demostrable, es decir que sea útil para un propósito concreto.

- -

          T: Time-Related / Con un tiempo -determinado: que se pueda llevar a cabo en una fecha determinada.

- -

3.1. Objetivo general

- -

Los trabajos aplicados se -centran en conseguir un impacto concreto, demostrando la efectividad de una -tecnología, proponiendo una nueva metodología o aportando nuevas herramientas -tecnológicas. El objetivo por tanto no debe ser sin más “crear una herramienta” -o “proponer una metodología”, sino que debe centrarse en conseguir un efecto -observable. Además, como se ha dicho antes el objetivo general debe ser SMART

- -

Ejemplo de objetivo general -SMART: Mejorar el servicio de audio guía de un museo convirtiéndolo en una guía -interactiva controlada por voz y valorada positivamente, un mínimo 4 sobre 5, -por los visitantes del museo.

- -

Este objetivo descrito -anteriormente podría dar lugar a un trabajo de tipo 2 (desarrollo de software) -que plantease el desarrollo de un bot conversacional -que procesara la señal de voz recogida a través del micrófono y a través de -técnicas de procesamiento del lenguaje natural fuera capaz de mantener una -conversación con el visitante para determinar el contenido en el que está -interesado o resolver las posibles dudas o preguntas que pudiera tener a lo -largo de su visita.

- -

3.2. Objetivos específicos

- -

Independientemente del tipo de -trabajo, la hipótesis o el objetivo general típicamente se dividirán en un -conjunto de objetivos más específicos analizables por separado. Estos objetivos -específicos suelen ser explicaciones de los diferentes pasos o tareas a seguir -en la consecución del objetivo general.

- -

Con los objetivos específicos -has de concretar qué pretendes conseguir. Estos objetivos que deben ser SMART -se formulan con un verbo en infinitivo más el contenido del objeto de estudio. -Se suelen usar viñetas para cada uno de los objetivos. Se pueden utilizar -fórmulas verbales, como las siguientes:

- - - -

Los objetivos específicos -suelen ser alrededor de 5. Normalmente uno o dos sobre el marco teórico o -estado del arte y dos o tres sobre el desarrollo específico de la contribución.

- -

En un trabajo como el anterior -se incluirían objetivos específicos tales como:

- - - - - -

 

- -

3.3. Metodología del trabajo

- -

De cara a alcanzar los objetivos específicos (y con ellos el objetivo -general o la validación/refutación de la hipótesis), será necesario realizar -una serie de pasos. La metodología del trabajo debe describir qué pasos se van -a dar, el porqué de cada paso, qué instrumentos se van a utilizar, cómo se van -a analizar los resultados, etc.

- -
-
- -

 

- -

4.   Desarrollo -específico de la contribución

- -

En este -apartado debes desarrollar la descripción de tu contribución. Es muy -dependiente del tipo de trabajo concreto, y puedes contar con la ayuda de tu -director para estudiar cómo comunicar los detalles de tu contribución. A -continuación, te presentamos la estructura habitual para cada uno de los tipos -de trabajo, aunque suele ser común desarrollar los apartados en función de las -fases o actividades que se hayan establecido en la metodología de trabajo.

- -

 

- -

Tipo 1. Piloto experimental

- -

 

- -

Este -tipo de trabajos suelen seguir la estructura típica al describir experimentos -científicos, dividida en descripción del experimento, presentación de los -resultados y discusión de los resultados.

- -

 

- -

Capítulo 4 - Descripción -detallada del experimento

- -

En el capítulo de Objetivos y Metodología del Trabajo ya habrás -descrito a grandes rasgos la metodología experimental que vas a seguir. Pero si -tu trabajo se centra en describir un piloto, deberás dedicar un capítulo a -describir con todo detalle las características del piloto. Como mínimo querrás -mencionar:

- -

-Qué tecnologías se utilizaron -(incluyendo justificación de por qué se emplearon y descripciones detalladas de -las mismas).

- -

-Cómo se organizó el piloto

- -

-Qué personas participaron (con -datos demográficos)

- -

-Qué técnicas de evaluación -automática se emplearon.

- -

-Cómo transcurrió el experimento.

- -

-Qué instrumentos de seguimiento y -evaluación se utilizaron.

- -

-Qué tipo de análisis estadísticos -se ha empleado (si procede).

- -

 

- -

Capítulo 5 - Descripción de -los resultados

- -

En el siguiente capítulo deberás detallar los resultados obtenidos, con -tablas de resumen, gráficas de resultados, identificación de datos relevantes, -etc. Es una exposición objetiva, sin valorar los resultados ni justificarlos.

- -

 

- -

Capítulo 6 - Discusión

- -

Tras la presentación objetiva de los resultados, querrás aportar una -discusión de los mismos. En este capítulo puedes -discutir la relevancia de los resultados, presentar posibles explicaciones para -los datos anómalos y resaltar aquellos datos que sean particularmente -relevantes para el análisis del experimento.

- -

 

- -

Tipo 2. Desarrollo de -software

- -

 

- -

En un trabajo de desarrollo de software es importante justificar los -criterios de diseño seguidos para desarrollar el programa, seguido de la -descripción detallada del producto resultante y finalmente una evaluación de la -calidad y aplicabilidad del producto. Esto suele verse reflejado en la -siguiente estructura de capítulos:

- -

 

- -

Capítulo 4 - Identificación -de requisitos

- -

En este capítulo se debe indicar el trabajo previo realizado para guiar -el desarrollo del software. Esto debería incluir la identificación adecuada del -problema a tratar, así como del contexto habitual de uso o funcionamiento de la -aplicación. Idealmente, la identificación de requisitos se debería hacer -contando con expertos en la materia a tratar.

- -

 

- -

Capítulo 5 - Descripción de -la herramienta software desarrollada

- -

En el caso de desarrollos de -software, deberían aportarse detalles del proceso de desarrollo, incluyendo -las fases e hitos del proceso. También deben presentarse diagramas explicativos -de la arquitectura o funcionamiento, así como capturas de pantalla que permitan -al lector entender el funcionamiento del programa.

- -

 

- -

Capítulo 6 - Evaluación

- -

La evaluación debería cubrir por lo menos una mínima evaluación de la -usabilidad de la herramienta, así como de su aplicabilidad para resolver el -problema propuesto. Estas evaluaciones suelen realizarse con usuarios expertos.

- -

 

- -

Tipo 3. Comparativa de -soluciones

- -

 

- - - -

Este tipo de trabajos suelen -seguir la estructura típica de un estudio comparativo, parten de plantear la -comparativa a realizar, describen el desarrollo de la misma -y analizan los resultados.

- -

 

- -

Capítulo 4 - Planteamiento de la comparativa

- -

En este capítulo se debe -indicar el trabajo previo realizado para identificar el problema concreto a -tratar, así como las posibles soluciones alternativas que se van a evaluar. -También se deben identificar los criterios de éxito para la comparativa, las medidas -que se van a tomar, etc.

- -

 

- -

Capítulo 5 - Desarrollo de la comparativa

- -

En este capítulo se debería -desarrollar con todo detalle la comparativa realizada, con todos los resultados -y mediciones obtenidos. Puede ser útil acompañar las descripciones con -gráficas, tablas y otros instrumentos para plasmar los datos obtenidos.

- -

 

- -

Capítulo 6 - Discusión y análisis de resultados

- -

Mientras que el capítulo -anterior se centraría en informar de los resultados y comparaciones obtenidos, -en este capítulo se abordará la discusión sobre su posible significado, así -como el análisis de las ventajas y desventajas de las distintas soluciones -evaluadas.

- -

 

- -

En -el capítulo de Objetivos y Metodología del Trabajo ya habrás descrito a grandes -rasgos la metodología experimental que vas a seguir. Pero si tu trabajo se -centra en describir un piloto, deberás dedicar un capítulo a describir con todo -detalle las características del piloto. Como mínimo querrás mencionar:

- -

·       Qué tecnologías se utilizaron -(incluyendo justificación de por qué se emplearon y descripciones -detalladas de las mismas).

- -

·       Cómo se organizó el piloto

- -

·       Qué personas participaron (con -datos demográficos)

- -

·       Qué técnicas de evaluación -automática se emplearon.

- -

·       Cómo transcurrió́ el experimento.

- -

·       Qué instrumentos de seguimiento y -evaluación se utilizaron.

- -

·       -Qué -tipo de análisis estadísticos se ha empleado (si procede).

- -

 

- -

.
-

- - - -

5.   -Conclusiones -y trabajo futuro

- -

5.1.  Conclusiones

- -

Este último capítulo (en ocasiones, -dos capítulos complementarios) es habitual en todos los tipos de trabajos y presenta -el resumen final de tu trabajo y debe servir para informar del alcance y -relevancia de tu aportación.

- -

Suele estructurarse empezando con un -resumen del problema tratado, de cómo se ha abordado y de por qué la solución -sería válida.

- -

Es -recomendable que incluya también un resumen de las contribuciones del trabajo, -en el que relaciones las contribuciones y los resultados obtenidos con los -objetivos que habías planteado para el trabajo, discutiendo hasta qué punto has -conseguido resolver los objetivos planteados.

- -

5.2.  Líneas de trabajo futuro

- -

Finalmente, se suele dedicar una última sección a hablar de líneas de -trabajo futuro que podrían aportar valor añadido al TFE realizado. La sección -debería señalar las perspectivas de futuro que abre el trabajo desarrollado -para el campo de estudio definido. En el fondo, debes justificar de qué modo -puede emplearse la aportación que has desarrollado y en qué campos.

- -

 

- -

 

- -

 

- -
-
- -

 

- -

Referencias -bibliográficas

- -

Según la normativa APA debe ponerse -con sangría francesa y debe estar ordenado por orden alfabético según el -apellido del primer autor.

- -

Toda la bibliografía que aparezca en -este apartado debe estar citada en el trabajo. La mayor parte de las citas -deben aparecer en el capítulo 2, que es donde se realiza el estudio del estado -del arte. Además, se recomienda evitar citas que hagan referencia a Wikipedia y -que no todas las referencias sean solo enlaces de internet, es decir, que se -vea alguna variabilidad entre libros, congresos, artículos y enlaces puntuales -de internet.

- -

Se recomienda encarecidamente -utilizar el gestor de bibliografía de Word para gestionar la bibliografía.

- -

Ejemplo:

- -

Doran, G. T. -(1981). There's a S.M.A.R.T. way to write management's goals and objectives. Management Review (AMA FORUM), 70, 35-36.

- -


- 

- -

Anexo A.    -Código fuente y datos analizados

- -

Es recomendable que el estudiante incluya en -su memoria la URL del repositorio donde tiene alojado el código fuente -desarrollado durante el TFE. El estudiante debe ser el único autor del código y -único propietario del repositorio. En el repositorio no debe haber commit de ningún otro usuario del repositorio.

- -

De igual forma, los datos que hayan utilizado -para el análisis, siempre que así se considere oportuno, también deberían están -alojamos en el mismo repositorio.

- -

Si el TFE está asociado a una actividad o -proyecto de Empresa, se debe justificar en la memoria que, por temas de -confidencialidad, no se deja disponible ni el código fuente ni los datos -utilizados.

- -

 

- -

 

- -

 

- -
- -

- -
- - - -
- -

[1] Ejemplo de nota al pie.

- -
- -
- - - - diff --git a/thesis_output/plantilla_individual_files/colorschememapping.xml b/thesis_output/plantilla_individual_files/colorschememapping.xml deleted file mode 100644 index b200daa..0000000 --- a/thesis_output/plantilla_individual_files/colorschememapping.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/filelist.xml b/thesis_output/plantilla_individual_files/filelist.xml deleted file mode 100644 index 25b2004..0000000 --- a/thesis_output/plantilla_individual_files/filelist.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/header.htm b/thesis_output/plantilla_individual_files/header.htm deleted file mode 100644 index 42e10e5..0000000 Binary files a/thesis_output/plantilla_individual_files/header.htm and /dev/null differ diff --git a/thesis_output/plantilla_individual_files/image001.png b/thesis_output/plantilla_individual_files/image001.png deleted file mode 100644 index 8d8942b..0000000 Binary files a/thesis_output/plantilla_individual_files/image001.png and /dev/null differ diff --git a/thesis_output/plantilla_individual_files/image002.gif b/thesis_output/plantilla_individual_files/image002.gif deleted file mode 100644 index ab5c01f..0000000 Binary files a/thesis_output/plantilla_individual_files/image002.gif and /dev/null differ diff --git a/thesis_output/plantilla_individual_files/image003.gif b/thesis_output/plantilla_individual_files/image003.gif deleted file mode 100644 index ab5c01f..0000000 Binary files a/thesis_output/plantilla_individual_files/image003.gif and /dev/null differ diff --git a/thesis_output/plantilla_individual_files/image003.png b/thesis_output/plantilla_individual_files/image003.png deleted file mode 100644 index da81321..0000000 Binary files a/thesis_output/plantilla_individual_files/image003.png and /dev/null differ diff --git a/thesis_output/plantilla_individual_files/image004.jpg b/thesis_output/plantilla_individual_files/image004.jpg deleted file mode 100644 index 611d78b..0000000 Binary files a/thesis_output/plantilla_individual_files/image004.jpg and /dev/null differ diff --git a/thesis_output/plantilla_individual_files/image005.png b/thesis_output/plantilla_individual_files/image005.png deleted file mode 100644 index 6a3daf4..0000000 Binary files a/thesis_output/plantilla_individual_files/image005.png and /dev/null differ diff --git a/thesis_output/plantilla_individual_files/image006.gif b/thesis_output/plantilla_individual_files/image006.gif deleted file mode 100644 index eba1d96..0000000 Binary files a/thesis_output/plantilla_individual_files/image006.gif and /dev/null differ diff --git a/thesis_output/plantilla_individual_files/item0001.xml b/thesis_output/plantilla_individual_files/item0001.xml deleted file mode 100644 index 26bed88..0000000 --- a/thesis_output/plantilla_individual_files/item0001.xml +++ /dev/null @@ -1,258 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This value indicates the number of saves or revisions. The application is responsible for updating this value after each revision. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/item0003.xml b/thesis_output/plantilla_individual_files/item0003.xml deleted file mode 100644 index 17bc8dd..0000000 --- a/thesis_output/plantilla_individual_files/item0003.xml +++ /dev/null @@ -1 +0,0 @@ -Dor81JournalArticle{D7C468B5-5E32-4254-9330-6DB2DDB01037}There's a S.M.A.R.T. way to write management's goals and objectives1981DoranG.T.Management Review (AMA FORUM)35-36701 \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/item0005.xml b/thesis_output/plantilla_individual_files/item0005.xml deleted file mode 100644 index ce42a91..0000000 --- a/thesis_output/plantilla_individual_files/item0005.xml +++ /dev/null @@ -1 +0,0 @@ -<_Flow_SignoffStatus xmlns="27c1adeb-3674-457c-b08c-8a73f31b6e23" xsi:nil="true"/> \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/item0007.xml b/thesis_output/plantilla_individual_files/item0007.xml deleted file mode 100644 index 607faca..0000000 --- a/thesis_output/plantilla_individual_files/item0007.xml +++ /dev/null @@ -1 +0,0 @@ -DocumentLibraryFormDocumentLibraryFormDocumentLibraryForm \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/item0013.xml b/thesis_output/plantilla_individual_files/item0013.xml deleted file mode 100644 index 26bed88..0000000 --- a/thesis_output/plantilla_individual_files/item0013.xml +++ /dev/null @@ -1,258 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This value indicates the number of saves or revisions. The application is responsible for updating this value after each revision. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/item0015.xml b/thesis_output/plantilla_individual_files/item0015.xml deleted file mode 100644 index 17bc8dd..0000000 --- a/thesis_output/plantilla_individual_files/item0015.xml +++ /dev/null @@ -1 +0,0 @@ -Dor81JournalArticle{D7C468B5-5E32-4254-9330-6DB2DDB01037}There's a S.M.A.R.T. way to write management's goals and objectives1981DoranG.T.Management Review (AMA FORUM)35-36701 \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/item0017.xml b/thesis_output/plantilla_individual_files/item0017.xml deleted file mode 100644 index 607faca..0000000 --- a/thesis_output/plantilla_individual_files/item0017.xml +++ /dev/null @@ -1 +0,0 @@ -DocumentLibraryFormDocumentLibraryFormDocumentLibraryForm \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/item0019.xml b/thesis_output/plantilla_individual_files/item0019.xml deleted file mode 100644 index 26bed88..0000000 --- a/thesis_output/plantilla_individual_files/item0019.xml +++ /dev/null @@ -1,258 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This value indicates the number of saves or revisions. The application is responsible for updating this value after each revision. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/item0021.xml b/thesis_output/plantilla_individual_files/item0021.xml deleted file mode 100644 index 17bc8dd..0000000 --- a/thesis_output/plantilla_individual_files/item0021.xml +++ /dev/null @@ -1 +0,0 @@ -Dor81JournalArticle{D7C468B5-5E32-4254-9330-6DB2DDB01037}There's a S.M.A.R.T. way to write management's goals and objectives1981DoranG.T.Management Review (AMA FORUM)35-36701 \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/item0023.xml b/thesis_output/plantilla_individual_files/item0023.xml deleted file mode 100644 index 607faca..0000000 --- a/thesis_output/plantilla_individual_files/item0023.xml +++ /dev/null @@ -1 +0,0 @@ -DocumentLibraryFormDocumentLibraryFormDocumentLibraryForm \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/props002.xml b/thesis_output/plantilla_individual_files/props002.xml deleted file mode 100644 index 86b71d3..0000000 --- a/thesis_output/plantilla_individual_files/props002.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/props004.xml b/thesis_output/plantilla_individual_files/props004.xml deleted file mode 100644 index 29b878f..0000000 --- a/thesis_output/plantilla_individual_files/props004.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/props006.xml b/thesis_output/plantilla_individual_files/props006.xml deleted file mode 100644 index 1ade933..0000000 --- a/thesis_output/plantilla_individual_files/props006.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/props008.xml b/thesis_output/plantilla_individual_files/props008.xml deleted file mode 100644 index 18d4345..0000000 --- a/thesis_output/plantilla_individual_files/props008.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/props014.xml b/thesis_output/plantilla_individual_files/props014.xml deleted file mode 100644 index 86b71d3..0000000 --- a/thesis_output/plantilla_individual_files/props014.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/props016.xml b/thesis_output/plantilla_individual_files/props016.xml deleted file mode 100644 index 29b878f..0000000 --- a/thesis_output/plantilla_individual_files/props016.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/props018.xml b/thesis_output/plantilla_individual_files/props018.xml deleted file mode 100644 index 18d4345..0000000 --- a/thesis_output/plantilla_individual_files/props018.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/props020.xml b/thesis_output/plantilla_individual_files/props020.xml deleted file mode 100644 index 86b71d3..0000000 --- a/thesis_output/plantilla_individual_files/props020.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/props022.xml b/thesis_output/plantilla_individual_files/props022.xml deleted file mode 100644 index 29b878f..0000000 --- a/thesis_output/plantilla_individual_files/props022.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/props024.xml b/thesis_output/plantilla_individual_files/props024.xml deleted file mode 100644 index 18d4345..0000000 --- a/thesis_output/plantilla_individual_files/props024.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/thesis_output/plantilla_individual_files/themedata.thmx b/thesis_output/plantilla_individual_files/themedata.thmx deleted file mode 100644 index 69725bf..0000000 Binary files a/thesis_output/plantilla_individual_files/themedata.thmx and /dev/null differ