Este post fue hecho público como parte del Blogatón de ciencia de datos
Introducción
Este post es parte de una serie de blogs en curso sobre el procesamiento del lenguaje natural (PNL). En el post anterior, discutimos algunas tareas importantes de la PNL. Espero que después de leer ese post puedas comprender el poder de la PNL en la Inteligencia Artificial. Entonces, en esta parte de esta serie, comenzaremos nuestra discusión sobre el análisis semántico, que es un nivel de las tareas de PNL, y veremos todas las terminologías o conceptos importantes en este análisis.
Esta es la parte 9 de la serie de blogs sobre la Guía paso a paso para el procesamiento del lenguaje natural.
Tabla de contenido
1. ¿Qué es el análisis semántico?
- Diferencia entre análisis semántico y léxico
- Dos partes del análisis semántico
2. Análisis semántico con Machine Learning
- Desambiguación del sentido de la palabra
- Extracción de relaciones
3. Ítems del análisis semántico
- Hiponimia
- Homonimia
- Polisemia
- Sinonimia
- Antonio
- Meronomía
4. Representación de significado
- Bloques de construcción del sistema semántico
- Enfoques de las representaciones de significado
- Necesidad de representaciones de significado
5. Semántica léxica
- Pasos involucrados en la semántica léxica
6. Técnicas de análisis semántico
- Modelo de clasificación de texto
- Extractor de texto
Análisis semántico
El análisis semántico es el procedimiento de hallar el significado del texto. Este análisis da a las computadoras el poder de comprender e interpretar oraciones, párrafos o documentos completos, analizando su estructura gramatical e identificando las relaciones entre palabras individuales de la oración en un contexto particular.
Por eso, el objetivo del análisis semántico es extraer el significado exacto o el significado del diccionario del texto. El trabajo de un analizador semántico es verificar el significado del texto.
Como ya hemos comentado que el análisis léxico se encarga del significado de las palabras, entonces me viene a la mente una pregunta:
¿En qué se diferencia el análisis semántico del análisis léxico?
El análisis léxico se basa en tokens más pequeños pero, por el contrario, el análisis semántico se centra en fragmentos más grandes.
Dado que el análisis semántico se centra en fragmentos más grandes, podemos dividir el análisis semántico en las dos partes siguientes:
Estudiar el significado de la palabra individual
Es el primer componente del análisis semántico en el que estudiamos el significado de palabras individuales. Este componente se conoce como semántica léxica.
Estudiar la combinación de palabras individuales
En este componente, combinamos las palabras individuales para proporcionar significado a las oraciones.
NOTA:
Como comentamos, la tarea más importante del análisis semántico es hallar el significado adecuado de la oración.
A modo de ejemplo, considere la próxima oración:
Sentence: Ram is great
En la oración anterior, el hablante está hablando de Lord Ram o de una persona cuyo nombre es Ram. Es por esto que es esencial la tarea de obtener el significado correcto de la oración.
Análisis de sentimiento con aprendizaje automático
Podemos hacer que el análisis semántico funcione automáticamente con la ayuda de algoritmos de aprendizaje automático al alimentar algoritmos de aprendizaje automático mejorados semánticamente con muestras de datos de texto, podemos entrenar a las máquinas para que hagan predicciones precisas sustentadas en sus resultados anteriores.
Aunque implementamos un enfoque semántico para el aprendizaje automático, hay varias subtareas involucradas que incluyen
- Desambiguación del sentido de la palabra
- Extracción de relaciones.
Analicemos cada una de las tareas anteriores una por una en detalle.
Desambiguación del sentido de la palabra
Como hemos comentado, el lenguaje natural es ambiguo y polisémico; a veces, la misma palabra puede tener diferentes significados dependiendo de su uso en la oración.
Por eso, en el análisis semántico con aprendizaje automático, las computadoras usan la desambiguación del sentido de palabras para establecer qué significado es correcto en el contexto dado.
A modo de ejemplo,
Consider the word: Orange
¡La palabra anterior puede referirse a un color, una fruta o inclusive una ciudad en Florida!
Fuente de la imagen: imágenes de Google
Extracción de relaciones
En esta tarea, intentamos detectar las relaciones semánticas presentes en un texto. Por lo general, las relaciones involucran a dos o más entidades, como nombres de personas, lugares, nombres de compañías, etc.
Estas entidades se unen por medio de una categoría semántica, como «trabaja en», «vive en», «es el director ejecutivo de», «con sede en».
A modo de ejemplo, Considere la próxima frase
Phrase: Steve Jobs is the founder of Apple, which is headquartered in California
La frase anterior contiene dos relaciones diferentes:
Fuente de la imagen: imágenes de Google
Ítems del análisis semántico
Algunos ítems importantes del análisis semántico son los siguientes:
Hiponimia
Representa la vinculación entre una definición genérico y las instancias de ese término genérico. Aquí el término genérico se conoce como hiperónimo y sus instancias se denominan hipónimos.
A modo de ejemplo,
The word color is hypernym, and the colors blue, yellow, green, etc. are hyponyms.
Homonimia
Puede ser definido como las palabras que disponen la misma ortografía o la misma forma pero que disponen significados diferentes y no relacionados.
A modo de ejemplo,
The word “Bat” is a homonymy word.
La palabra anterior es homonimia debido a que un murciélago puede ser un implemento de dos maneras:
- Para golpear una pelota
- El murciélago además es un mamífero volador nocturno.
Polisemia
La polisemia es una palabra griega, que significa «Muchas señales». Es una palabra o frase con un sentido distinto pero relacionado. Dicho de otra forma, podemos decir que la polisemia tiene la misma ortografía pero significados diferentes y relacionados.
A modo de ejemplo,
The word "Bank" is a Polysemy word.
La palabra anterior es una palabra polisemia que tiene los siguientes significados:
- Una institución financiera.
- El edificio en el que se encuentra dicha institución.
- Un sinónimo de “confiar en”.
Diferencia entre polisemia y homonimia
Tanto la polisemia como la homonimia disponen la misma sintaxis u ortografía, pero la principal diferencia entre ellas es que en la polisemia, los significados de las palabras están relacionados, pero en la homonimia, los significados de las palabras no están relacionados.
A modo de ejemplo, si se trata de la misma palabra «Banco» como se mencionó previamente, podemos escribir el significado como
- ‘una institución financiera’ o
- ‘la orilla de un río’.
En ese caso, se convierte en un ejemplo de un homónimo, dado que los significados no están relacionados entre sí.
Sinonimia
Representa la vinculación entre dos ítems léxicos de diferentes formas pero que expresan el mismo significado o uno cercano.
A modo de ejemplo,
‘author/writer’, ‘fate/destiny'
Antonio
Es la vinculación entre dos ítems léxicos que disponen simetría entre sus componentes semánticos con respecto a un eje. El alcance de la antonimia es el siguiente:
Aplicación de propiedad o no:
A modo de ejemplo,
‘life/death’, ‘certitude/incertitude’
Aplicación de propiedad escalable:
A modo de ejemplo,
‘rich/poor’, ‘hot/cold’
Aplicación de un uso:
A modo de ejemplo,
‘father/son’, ‘moon/sun’
Meronomía
Se establece como la disposición lógica de texto y palabras que denota una parte constituyente o miembro de algo.
A modo de ejemplo,
A segment of an orange
Representación de significado
El análisis semántico crea una representación del significado de una oración. Pero antes de profundizar en el concepto y los enfoques relacionados con la representación del significado, primero debemos comprender los componentes básicos del sistema semántico.
Bloques de construcción del sistema semántico
Mientras representan el significado de las palabras, los siguientes bloques de construcción juegan un papel importante:
Entidades
Representa al individuo, como una organización en particular, ubicación, nombre de las personas, etc.
A modo de ejemplo,
Punjab, China, Chirag, Kshitiz all are entities.
Conceptos
Representa la categoría general de los individuos como una persona, ciudad, etc.
Relaciones
Representa la vinculación entre entidades y conceptos.
A modo de ejemplo,
Sentence: Ram is a person
Predicados
Representa las estructuras verbales.
A modo de ejemplo,
Semantic roles and Case Grammar
Ahora, tenemos una breve idea de la representación del significado que muestra cómo juntar los componentes básicos de los sistemas semánticos. Dicho de otra forma, muestra cómo juntar entidades, conceptos, relaciones y predicados para describir una situación. Además posibilita razonar sobre el mundo semántico.
Aproximaciones a las representaciones de significado
El análisis semántico utiliza los siguientes enfoques para la representación del significado:
- Lógica de predicado de primer orden (FOPL)
- Redes semánticas
- Marcos
- Dependencia conceptual (CD)
- Arquitectura basada en reglas
- Gramática de casos
- Gráficos conceptuales
Necesidad de representaciones de significado
Las razones detrás de la necesidad de la representación del significado son las siguientes:
Vinculación de ítems lingüísticos a ítems no lingüísticos
Con la ayuda de la representación del significado, podemos vincular ítems lingüísticos con ítems no lingüísticos.
Representando variedad a nivel léxico
Con la ayuda de la representación del significado, podemos representar sin ambigüedades formas canónicas a nivel léxico.
Puede usarse para razonar
La representación del significado se puede usar para razonar para verificar lo que es correcto en el mundo, así como para extraer el conocimiento con la ayuda de la representación semántica.
Semántica léxica
Es la primera parte del análisis semántico, en la que estudiamos el significado de palabras individuales. Incluye palabras, subpalabras, afijos (subunidades), palabras compuestas y además frases. Todas las palabras, subpalabras, etc. se conocen colectivamente como ítems léxicos.
En palabras simples, podemos decir que la semántica léxica representa la vinculación entre ítems léxicos, el significado de las oraciones y la sintaxis de la oración.
Los pasos que tenemos que seguir al hacer semántica léxica son los siguientes:
- Clasificación de ítems léxicos.
- Descomposición de ítems léxicos.
- Además se analizan las diferencias, así como las semejanzas entre diversas estructuras léxico-semánticas.
Técnicas de análisis semántico
Podemos usar cualquiera de las dos técnicas de análisis semántico a continuación en función del tipo de información que le gustaría obtener de los datos proporcionados.
- modelo de clasificación de texto(que asigna categorías predefinidas al texto)
- extractor de texto (que extrae información particular del texto).
Modelos de clasificación semántica
Clasificación de temas
Basado en el contenido, Este modelo ordena el texto en categorías predefinidas. En una compañía, los equipos de servicio al cliente pueden querer categorizar los tickets de soporte a medida que ingresan a su mesa de ayuda y, según la categoría, distribuirán el trabajo.
Con la ayuda del análisis semántico, las herramientas de aprendizaje automático pueden reconocer un ticket como un «Problema de pago» o un«Problema de envío».
Análisis de los sentimientos
En el análisis de sentimiento, nuestro objetivo es detectar las emociones como positivo, negativo o neutral en un texto para denotar urgencia.
A modo de ejemplo, Etiquetar menciones de Twitter por sentimiento para tener una idea de cómo se sienten los clientes con respecto a su producto y poder identificar a los clientes insatisfechos en tiempo real.
Clasificación por intención
Podemos clasifique el texto según los requerimientos del nuevo usuario.
Puede usar este tipo de modelos para etiquetar los correos electrónicos de ventas como «Interesado» o «No interesado» para llegar de forma proactiva a aquellos usuarios que quieran probar su producto.
Modelos de extracción semántica
Extracción de palabras clave
Es usado para hallar palabras y expresiones relevantes de un texto. Esta técnica se utiliza de forma separada o se puede utilizar junto con uno de los métodos anteriores para obtener información más valiosa.
A modo de ejemplo, podría analizar las palabras clave en un montón de tweets que han sido categorizados como “negativos” y detectar qué palabras o temas se mencionan con más frecuencia.
Extracción de entidades
La idea de la extracción de entidades es identificar entidades nombradas en el texto, como nombres de personas, compañías, lugares, etc.
Esto puede ser útil para que un equipo de servicio al cliente extraiga automáticamente nombres de productos, números de envío, correos electrónicos y cualquier otro dato relevante de los tickets de soporte al cliente.
¡Esto termina nuestra Parte 9 de la serie de blogs sobre procesamiento del lenguaje natural!
Otras publicaciones de blog mías
Además puede consultar mis publicaciones de blog anteriores.
Publicaciones anteriores del blog de ciencia de datos.
Aquí está mi perfil de Linkedin en caso de que desees conectarte conmigo. Estaré feliz de estar conectado contigo.
Para cualquier consulta, puede enviarme un email al Gmail.
Notas finales
¡Gracias por leer!
Espero que les haya gustado el post. Si te gusta, compártelo con tus amigos además. ¿Algo no mencionado o deseas compartir tus pensamientos? No dude en comentar a continuación y me pondré en contacto con usted. 😉
Los medios que se muestran en este post no son propiedad de DataPeaker y se usan a discreción del autor.
Relacionado
Posts Relacionados:
- Análisis sintáctico | Guía para dominar el procesamiento del lenguaje natural (Parte 11)
- Guía para el procesamiento del lenguaje natural en Python (Parte -1)
- Análisis de sentimiento | Análisis de sentimientos en el procesamiento del lenguaje natural
- Detección de lenguaje mediante procesamiento de lenguaje natural