Ir al contenido principal
23 noviembre, 2025

Extracción de entidades nombradas (NER) paso a paso con spaCy

23 noviembre, 2025

Introducción a la⁣ extracción de entidades nombradas (NER)



La‍ extracción de Entidades Nombradas ⁤(NER) es un subproceso de la minería⁣ de texto (text⁢ mining) que involucra la identificación y clasificación de nombres de‌ personas, lugares, organizaciones y incluso términos específicos del mercado dentro de un texto. La eficiencia del ‌proceso de NER puede tener un impacto significativo en muchos campos, incluyendo inteligencia de negocios, publicidad en línea y⁢ seguridad de la información.

En este tutorial, nos adentraremos en el uso de spaCy, una poderosa librería en Python diseñada específicamente para las tareas​ de procesamiento del lenguaje natural⁢ (NLP).‍ Veremos paso a paso cómo ⁣realizar ​NER utilizando spaCy.

1. ​Instalación de spaCy



Puedes instalar spaCy utilizando ​pip, la herramienta ⁢de instalación de paquetes de Python. En la terminal, simplemente ejecuta⁤ el siguiente comando:

«`python
pip install spacy
«`

Para realizar NER,​ también necesitarás descargar uno de los ⁤modelos de lenguaje entrenados disponibles en spaCy. Para ello, ejecuta el siguiente ‌comando:

«`python
python -m spacy download en_core_web_sm
«`

2.Importar ⁢spaCy y ⁢cargar⁤ el modelo de lenguaje



Ahora que todo está‌ instalado, puedes importar spaCy ⁤y cargar el modelo de⁤ lenguaje. El siguiente código te permitirá hacerlo.

«`python
import spacy
nlp = ‍spacy.load(‘en_core_web_sm’)
«`

En este punto, ya‍ estás listo para​ realizar NER utilizando ​spaCy.

3. Procesar tu texto



El siguiente paso‍ es⁣ procesar tu texto utilizando el ⁤objeto `nlp` que⁢ acabas ​de‍ crear. Este objeto​ es una‌ función de procesamiento ​de lenguaje que ⁤combina varias etapas, incluyendo la tokenización,‍ la identificación de partes de discurso y, por supuesto, la‍ extracción de entidades nombradas.

«`python
texto = «Apple Inc. es una empresa‍ de‍ tecnología con sede en Cupertino,California.»
doc = nlp(texto)
«`

4. Extracción de⁢ entidades nombradas



Las entidades nombradas se encuentran en ​el atributo `ents` del objeto `Doc` procesado. ​Puedes​ iterar sobre ellas para mostrar sus textos y etiquetas.

«`python
for ent ⁢in doc.ents:
‍ print(ent.text, ent.label_)
«`

Este código imprimirá ​todas las ‍entidades⁣ nombradas en tu texto junto con sus categorías. ⁢En nuestro ejemplo, las entidades son «Apple Inc.», que ‌es una ORGANIZATION ‍y «Cupertino, California.», que es una GPE⁤ ( geo-political entity, es decir, ⁤una ‍entidad​ geopolítica).

5. visualización de entidades nombradas



Para facilitar la comprensión y el ​análisis, spaCy ofrece una⁣ función de visualización llamada displaCy.Esta te permite renderizar tu ⁤texto con las entidades nombradas destacadas.

«`python
from ⁢spacy‍ import displacy
displacy.render(doc, style=’ent’)
«`

Al ejecutar el código ​anterior, verás tu texto con las entidades resaltadas⁤ en diferentes ‌colores dependiendo⁢ de su tipo.

Conclusión



Hemos revisado la extracción de entidades nombradas utilizando​ la potente librería‍ de procesamiento⁤ de‌ lenguaje natural spaCy. No ​sólo la extracción de entidades‌ es ⁢un proceso rápido y⁢ fácil, sino que también‌ el ⁣paquete incluye funciones de ‌visualización para ⁤ayudarte a entender⁣ mejor tus datos.

El NER es un componente clave en ⁢una ‍variedad ​de aplicaciones, desde la extracción⁤ de información,⁣ pasando⁤ por ‍las respuestas a las preguntas, hasta ⁤el análisis de sentimientos. ‍La capacidad de trabajar con esta herramienta⁣ significa una‍ gran ventaja para cualquier persona que se ocupe del⁤ análisis ⁢de textos.