Tokenización y NER sobre Cien años de soledad

Procesamiento de Lenguaje Natural · Semana 3

13 de julio de 2026 · NRC-8774 · 2 entregables

El docente compartió 1 cuaderno esta semana. No lo subo: es suyo.

De qué iba

El proyecto pedía tokenizar con las librerías de Python a partir de una página HTML, y lo trabajamos en equipo sobre el artículo de Wikipedia de Cien años de soledad. Bajé el texto con requests y BeautifulSoup, lo limpié con expresiones regulares —de 79.996 caracteres quedaron 75.599— y de ahí salió todo el recorrido: tokenización con NLTK, quitar puntuación, quitar stop words, comparar el stemming de SnowballStemmer contra la lematización de spaCy, sinónimos con WordNet, etiquetado POS y reconocimiento de entidades con es_core_news_sm. El NER acertó con García Márquez como PER y con Macondo, Aracataca y Cartagena de Indias como LOC, pero también me etiquetó «llegó» como persona y «Después» como lugar. El informe lo escribimos con portada, tabla de contenido, planeación con responsables por tarea, resultados y referencias en APA.

  • Extraje y limpié el artículo de Wikipedia: de 79.996 caracteres crudos quedaron 75.599, alrededor de un 5,5 % menos
  • Comparé stemming y lematización sobre la misma muestra: «novelista» queda en «novel» con Snowball y sigue siendo «novelista» con spaCy
  • Corrí NER con es_core_news_sm: acertó con García Márquez como PER, Macondo y Colombia como LOC y la Editorial Sudamericana como ORG, y falló clasificando apellidos como lugares
  • Hice aparte una práctica de NER sobre otro artículo de Wikipedia y el modelo devolvió 62 entidades sobre 4.994 caracteres ya limpios

Qué pedían

El enunciado y la rúbrica, tal cual los publicaron.

Procesamiento Natural del Lenguaje_S3_Proyecto_CE_24022023.pdfdocumento · 712,3 KB

Qué entregué

Lo que salió de esa semana.

Oviedo_Alexander_Proyecto_S3_PNL.docxinforme · 4,0 MB · 2 528 palabras
Oviedo_Alexander_Proyecto_S3_PNL.ipynbcuaderno · 835,7 KB · 32 celdas

El examen de la semana

Los puntos extra eran cuestionarios opcionales que sumaban a la nota. Cuento de qué iban; las respuestas no las publico.

Lo que usé por el camino

Notas sueltas, datos y código de apoyo.

crear_notebook_pnl_s3.pyscript · 46,4 KB
generar_docx_pnl_s3.pyscript · 32,9 KB

Seguir leyendo

Esa misma semana, en las otras materias: