Capstone Project - Text Prediction App
Alejandra A.
2025-08-17
Introducción
- Este proyecto es parte del Data Science Capstone (Johns Hopkins / Coursera).
- Objetivo: construir un algoritmo de predicción de texto.
- Producto final:
- Una Shiny App para predecir la siguiente palabra.
- Una presentación corta (este archivo).
Exploración de Datos
- Se usaron los corpus de blogs, noticias y Twitter en inglés.
- Estadísticas básicas (ejemplo):
- Blogs: ~900,000 líneas.
- Noticias: ~1,000,000 líneas.
- Twitter: ~2,300,000 líneas.
- Distribución de palabras (frecuencias, histogramas).
- Se utilizó muestreo para reducir tamaño y acelerar el procesamiento.
El Algoritmo
- Basado en N-gramas (unigramas, bigramas, trigramas).
- Proceso:
- Tokenización y limpieza de texto (minúsculas, sin puntuación).
- Construcción de tablas de frecuencias (con
tidytext).
- Predicción usando backoff model:
- Si existe trigram → usarlo.
- Si no, buscar bigram.
- Si no, unigram más frecuente.
La Shiny App
- Entrada: un cuadro de texto donde el usuario escribe una frase.
- Salida: la palabra más probable que sigue.
- Implementación:
- Librerías:
shiny, dplyr, tidytext.
- Tablas de n-gramas preprocesadas (.Rds).
- La app está publicada en shinyapps.io.
Conclusiones
- El modelo funciona razonablemente bien con un enfoque simple de n-gramas.
- Limitaciones: tamaño del corpus y precisión frente a modelos más complejos (ej. redes neuronales).
- Próximos pasos:
- Optimizar memoria y velocidad.
- Mejorar exactitud con técnicas de NLP modernas.
- Entrega:
- Shiny App en shinyapps.io.
- Presentación publicada en RPubs.