El reconocimiento de entidades nombradas (NER) (también llamado fragmentación de entidades o extracción de entidades) es un componente del procesamiento del lenguaje natural (PLN) que identifica categorías predefinidas de objetos en un cuerpo de texto.
Estas categorías pueden incluir, pero no se limitan a, nombres de personas, organizaciones, ubicaciones, expresiones de tiempos, cantidades, códigos médicos, valores monetarios y porcentajes, entre otros. En esencia, el NER es el proceso de tomar una cadena de texto (es decir, una oración, un párrafo o un documento completo) e identificar y clasificar las entidades que se refieren a cada categoría.
Cuando se acuñó el término “NER” en la 6.ª Conferencia sobre Comprensión de Mensajes (MUC-6), el objetivo era agilizar las tareas de extracción de información, que implicaban procesar grandes cantidades de texto no estructurado e identificar información clave. Desde entonces, NER se ha expandido y evolucionado, y gran parte de su evolución se debe a los avances en machine learning y las técnicas de deep learning.
Según una encuesta de 2019, alrededor del 64 % de las empresas se basan en datos estructurados de recursos internos, pero menos del 18 % aprovecha los datos no estructurados y los comentarios en las redes sociales para tomar decisiones empresariales1.
Las organizaciones que utilizan el NER para la extracción de datos no estructurados se basan en una variedad de enfoques, pero la mayoría se dividen en tres categorías amplias: enfoques basados en reglas, enfoques de machine learning y enfoques híbridos.
Desde los inicios del NER, se han producido algunos avances metodológicos significativos, especialmente los que giran en torno a técnicas basadas en el deep learning. Las iteraciones más recientes incluyen:
El primer paso del NER es agregar un conjunto de datos de texto anotado. El conjunto de datos debe contener ejemplos de texto en los que las entidades con nombre estén etiquetadas o marcadas, indicando sus tipos. Las anotaciones se pueden realizar de forma manual o utilizando métodos automatizados.
Una vez recopilado el conjunto de datos, se debe limpiar y formatear el texto. Es posible que necesite eliminar caracteres innecesarios, normalizar el texto y/o dividir el mismo en oraciones o tokens.
Durante esta etapa, las características relevantes se extraen del texto preprocesado. Estas características pueden incluir el etiquetado de partes del discurso (etiquetado POS), incrustaciones de palabras e información contextual, entre otras. La elección de las características dependerá del modelo de NER específico que utilice la organización.
El siguiente paso es entrenar un modelo de machine learning o deep learning utilizando el conjunto de datos anotado y las características extraídas. El modelo aprende a identificar patrones y relaciones entre palabras en el texto, así como sus correspondientes etiquetas de entidad con nombre.
Una vez que haya entrenado el modelo de NER, deberá evaluarlo para valorar su rendimiento. Puede medir métricas como la precisión, la recuperación y la puntuación F1, que indican en qué medida el modelo identifica y clasifica correctamente las entidades nombradas.
Basándose en los resultados de la evaluación, perfeccionará el modelo para mejorar su rendimiento. Esto puede incluir el ajuste de hiperparámetros, la modificación de los datos de entrenamiento y/o el uso de técnicas más avanzadas (p. ej., ensamblaje o adaptación de dominios).
En esta fase, puede empezar a utilizar el modelo para realizar inferencias sobre un texto nuevo que no haya visto. El modelo tomará el texto de entrada, aplicará los pasos de preprocesamiento, extraerá las características relevantes y, en última instancia, predecirá las etiquetas de entidad nombradas para cada token o fragmento de texto.
Es posible que el resultado del modelo de NER deba someterse a pasos de posprocesamiento para perfeccionar los resultados y/o añadir información contextual. Es posible que deba completar tareas como la vinculación de entidades, en la que las entidades nombradas se vinculan a bases de conocimiento o bases de datos para un mayor enriquecimiento.
La forma más fácil de implementar un sistema de reconocimiento de entidades nombradas es confiar en una interfaz de programación de aplicaciones (API). Las API de NER son interfaces locales o basadas en la web que proporcionan acceso a las funcionalidades de NER. Algunos ejemplos populares de API de NER son:
NLTK es una plataforma líder de código abierto para crear programas Python para trabajar con datos de lenguaje humano. Proporciona interfaces fáciles de usar para más de 100 modelos de extracción entrenados 2. También incluye bibliotecas de procesamiento de texto para clasificación, tokenización, derivación, etiquetado, análisis y razonamiento semántico. NLKT tiene su propio clasificador para reconocer entidades con nombre, llamado ne_chunk, pero también proporciona un contenedor para usar el etiquetador NER de Stanford en Python.
Desarrollada por la Universidad de Stanford, la Stanford NER es una implementación de Java ampliamente considerada como la biblioteca estándar de extracción de entidades. Se basa en CRF y proporciona modelos preentrenados para extraer entidades con nombre.
Escrita en Python y conocida por su velocidad y facilidad de uso, SpaCy es una biblioteca de software de código abierto para PLN avanzado. Se basa en las últimas investigaciones y se ha diseñado para su uso con productos reales. También cuenta con un sistema estadístico avanzado que permite a los usuarios crear extractores de NER personalizados.
A medida que las tecnologías continúen evolucionando, los sistemas de NER se volverán más omnipresentes, lo que ayudará a las organizaciones a dar sentido a los datos que encuentran todos los días. Hasta ahora, ha demostrado ser fundamental para varios sectores, desde la sanidad y las finanzas hasta el servicio de atención al cliente y la ciberseguridad.
Algunos de los casos de uso más impactantes son:
El NER es un primer paso crucial para extraer información útil y estructurada de grandes bases de datos no estructuradas. Los motores de búsqueda utilizan el NER para mejorar la relevancia y precisión de sus resultados de búsqueda.
Los agregadores de noticias utilizan el NER para categorizar artículos e historias en función de las entidades nombradas que contienen, lo que permite una forma más organizada y eficiente de presentar las noticias al público. Por ejemplo, el NER para aplicaciones de noticias automatiza el proceso de clasificación, agrupando noticias similares y proporcionando una visión más completa determinados acontecimientos de actualidad.
Con la proliferación de plataformas de redes sociales, la cantidad de datos textuales disponibles para el análisis es abrumadora. El NER desempeña un papel importante en el análisis de las redes sociales, al identificar entidades clave en publicaciones y comentarios para comprender las tendencias y las opiniones públicas sobre diferentes temas (especialmente las opiniones sobre marcas y productos). Esta información puede ayudar a las empresas a realizar análisis de sentimiento, desarrollar estrategias de marketing, elaborar respuestas del servicio de atención al cliente y acelerar los esfuerzos de desarrollo de productos.
Los asistentes virtuales y los chatbots de inteligencia artificial generativa utilizan el NER para comprender con precisión las solicitudes de los usuarios y las consultas de atención al cliente. Al identificar entidades cruciales en las consultas de los usuarios, estas herramientas con IA pueden proporcionar respuestas precisas y específicas del contexto. Por ejemplo, en la consulta "Buscar restaurantes de soul food cerca de Piedmont Park," el NER ayuda al asistente a entender "soul food" como el tipo de gastronomía, "restaurantes" como el tipo de establecimiento y "Piedmont Park" como la ubicación.
En ciberseguridad, el NER ayuda a las empresas a identificar posibles amenazas y anomalías en los registros de red y otros datos relacionados con la seguridad. Por ejemplo, puede identificar direcciones IP, URL, nombres de usuario y nombres de archivo sospechosos en los registros de seguridad de la red. Como tal, el NER puede facilitar investigaciones más exhaustivas de incidentes de seguridad y mejorar la seguridad general de la red.
El NER ha recorrido un largo camino desde su creación, integrando tecnologías innovadoras y ampliando de manera prolífica su utilidad a lo largo del camino. Sin embargo, hay algunos retos dignos de mención que deben tenerse en cuenta a la hora de evaluar las tecnologías de NER.
Aunque el NER ha avanzado mucho en idiomas como el inglés, no tiene el mismo nivel de precisión en muchos otros. Esto se debe a menudo a la falta de datos etiquetados en estos idiomas. El NER multilingüe, que implica la transferencia de conocimientos de un idioma a otro, es un área activa de investigación que puede ayudar a cerrar la brecha lingüística.
A veces, las entidades también pueden estar anidadas dentro de otras entidades, y reconocer estas entidades anidadas puede ser todo un reto. Por ejemplo, en la frase "La Universidad Estatal de Pensilvania, University Park se fundó en 1855", tanto "Universidad Estatal de Pensilvania" como "La Universidad Estatal de Pensilvania, University Park" son entidades válidas.
Además, aunque los modelos de NER generales pueden identificar entidades comunes como nombres y ubicaciones, pueden tener problemas con entidades que son específicas de un determinado dominio. Por ejemplo, en medicina, la identificación de términos complejos como nombres de enfermedades o de medicamentos puede suponer un reto. Los modelos de NER específicos del dominio pueden entrenarse con datos especializados y específicos del mismo, pero obtener esa información puede resultar complicado.
Los modelos de NER también pueden encontrarse con problemas más amplios de ambigüedad (por ejemplo, "Apple" podría referirse a una fruta o a la empresa tecnológica); variación del nombre de la entidad (p. ej., "EUA", " EE. UU.", " Estados Unidos" y "Estados Unidos de América" se refieren todos al mismo país); e información contextual limitada (en la que los textos y/o las frases no contienen suficiente contexto para identificar y categorizar con precisión las entidades).
Aunque el NER tiene sus retos, los continuos avances mejoran constantemente su precisión y aplicabilidad y, por tanto, ayudan a minimizar el impacto de las lagunas tecnológicas existentes.
Aunque el NER es un campo bien establecido, todavía queda mucho trabajo por hacer.
Si echamos un vistazo al futuro, un área prometedora son las técnicas de aprendizaje no supervisado para el NER. Aunque las técnicas de aprendizaje supervisado han dado buenos resultados, requieren muchos datos etiquetados, que pueden ser difíciles de obtener. Las técnicas de aprendizaje no supervisado no requieren datos etiquetados y pueden ayudar a las organizaciones a superar los problemas de disponibilidad de datos.
Otra dirección interesante es la integración del NER con otras tareas de PLN. Por ejemplo, los modelos conjuntos para el NER y la vinculación de entidades (que implica vincular entidades a sus entradas correspondientes en una base de conocimientos) o la resolución de NER y correferencias (que implica determinar cuándo dos o más expresiones en un texto se refieren a la misma entidad) podrían permitir sistemas que comprendan y procesen mejor el texto.
El aprendizaje few-shot y el NER multimodal también amplían las capacidades de las tecnologías de NER. Con el aprendizaje few-shot, los modelos se entrenan para realizar tareas con solo unos pocos ejemplos, lo que puede ser particularmente útil cuando los datos etiquetados son escasos. El NER multimodal, por otro lado, implica la integración de texto con otros tipos de entidades. Una imagen o un fragmento de audio, por ejemplo, podría proporcionar un contexto adicional que ayude a reconocer entidades.
Diseñe asistentes y agentes de IA escalables con facilidad, automatice tareas repetitivas y simplifique procesos complejos con IBM watsonx Orchestrate.
Acelere el valor empresarial de la inteligencia artificial con una cartera potente y flexible de bibliotecas, servicios y aplicaciones.
Reinvente las operaciones y flujos de trabajo críticos añadiendo IA para maximizar las experiencias, la toma de decisiones en tiempo real y el valor empresarial.
1 Analytics and AI-driven enterprises thrive in the Age of With. Deloitte Insights. 25 de julio de 2019
2 3 open source NLP tools for data extraction. InfoWorld. 10 de julio de 2023