• No se han encontrado resultados

Introducción al Procesamiento de Lenguaje Natural. Grupo de PLN - InCo

N/A
N/A
Protected

Academic year: 2022

Share "Introducción al Procesamiento de Lenguaje Natural. Grupo de PLN - InCo"

Copied!
49
0
0

Texto completo

(1)

Introducción al Procesamiento de Lenguaje Natural

Grupo de PLN - InCo

(2)

Roles Semánticos

(3)

Agenda

• Representación de eventos

• Estructura argumental

• Roles Semánticos

• Aplicaciones

• Semantic Role Labeling

• PropBank

• FrameNet

(4)

Representación de eventos

Consideremos las siguientes oraciones:

• Juan comió.

• Juan comió una medialuna.

• Juan comió una medialuna en la mesa.

• Juan comió en la mesa.

• Juan comió al mediodía.

• Juan comió una medialuna al mediodía.

• Juan comió una medialuna al mediodía en la mesa.

(5)

Representación de eventos

Representación hasta el momento:

• comió1(juan)

• comió2(juan, medialuna)

• comió3(juan, medialuna, mesa)

• comió4(juan, mesa)

• comió5(juan, mediodía)

• comió6(juan, medialuna, mediodía)

• comió7(juan, medialuna, mediodía, mesa)

Muchos predicados que deberían estar relacionados entre sí.

(6)

Representación de eventos

Podemos dejar argumentos subespecificados:

• ∃x,y,z comió(juan, x, y, z)

• ∃y,z comió(juan, medialuna, y, z)

• ∃z comió(juan, medialuna, mesa, z)

• ∃x,z comió(juan, x, mesa, z)

• ∃x,y comió(juan, x, y, mediodía)

• ∃y comió(juan, medialuna, y , mediodía)

• comió(juan, medialuna, mesa, mediodía)

(7)

Representación de eventos

Usemos una variable de evento y separemos los argumentos:

∃e comer(e) ∧ el_que_come(e, juan)

∃e comer(e) ∧ el_que_come(e, juan) ∧ lo_comido(e, medialuna)

∃e comer(e) ∧ el_que_come(e, juan) ∧ lo_comido(e, medialuna) ∧ lugar(e, mesa)

∃e comer(e) ∧ el_que_come(e, juan) ∧ lugar(e, mesa)

∃e comer(e) ∧ el_que_come(e, juan) ∧ hora(e, mediodía)

∃e comer(e) ∧ el_que_come(e, juan) ∧ lo_comido(e, medialuna) ∧ hora(e, mediodía)

∃e comer(e) ∧ el_que_come(e, juan) ∧ lo_comido(e, medialuna) ∧ hora(e, mediodía) ∧ lugar(e, mesa)

Este enfoque se denomina Neo-Davidsoniano.

(8)

Representación de eventos

Ventajas del enfoque:

• Es flexible ante la aparición de diferentes argumentos.

• Permite la inferencia:

∃e comer(e) ∧ el_que_come(e, juan) ∧ lo_comido(e, medialuna)

∧ hora(e, mediodía) ∧ lugar(e, mesa)

∃e comer(e) ∧ el_que_come(e, juan) ∧ hora(e, mediodía) Desventajas:

• Cada verbo necesitaría su propio juego de argumentos.

(9)

Funciones sintácticas

Los sintagmas son los constituyentes de la oración y cumplen diversas funciones sintácticas:

sujeto

objeto directo

objeto indirecto

complemento de régimen

complemento circunstancial

[La maestra] entregó [un regalo] [a quienes se portaron bien] [ayer] [en la escuela].

Juan viajó [a París] antes de vivir [en Londres].

(Repaso: Introducción a la gramática del español)

(10)

Estructura argumental

verbo argumentos (complementos) (son subcategorizados) adjuntos

adjuntos

- complementos circunstanciales

argumentos - sujeto

- objeto directo - objeto indirecto

- complementos de régimen (preposicionales)

(11)

Estructura argumental

cantar: [sujeto, objeto directo, objeto indirecto]

dormir: [sujeto]

llover: [-]

(Repaso: Introducción a la gramática del español)

(12)

Estructura argumental

Juan (le) canta una canción a su amada.

Juan canta una canción.

Juan canta.

También él empieza a comer, a dormir, como un niño que duerme un sueño sin miedo.

Llueve.

Llueven pingüinos de punta.

(13)

Estructura argumental

Podemos definir varias entradas diferentes para cantar:

cantar1: [sujeto, objeto directo, objeto indirecto]

cantar2: [sujeto, objeto directo]

cantar3: [sujeto]

o definir argumentos opcionales:

cantar: [sujeto, (objeto directo), (objeto indirecto)]

(Repaso: Introducción a la gramática del español)

(14)

Roles semánticos

Establecen una relación entre sintaxis y semántica

El niño come la manzana.

sujeto ↔ agente

objeto directo ↔ tema (paciente)

La manzana es comida por el niño.

sujeto ↔ tema (paciente)

complemento agente ↔ agente

(15)

Roles semánticos

El ruido desagrada al maestro.

sujeto ↔ tema

objeto directo ↔ experimentante

El maestro detesta el ruido.

sujeto ↔ experimentante objeto directo ↔ tema

(Repaso: Introducción a la gramática del español)

(16)

Roles semánticos

Juan corta el pan con el cuchillo.

sujeto ↔ agente

objeto directo ↔ tema

complemento preposicional ↔ instrumento

(17)

Roles semánticos

• Existe una diferencia entre la función gramatical y el rol semántico del constituyente.

• El análisis sintáctico nos da:

– los constituyentes

– a veces también la función gramatical – pero no el rol semántico

(18)

Roles semánticos

Los roles semánticos son relaciones que se dan dentro de una oración, entre los distintos

sintagmas.

Implican un elemento distinguido, el predicado,

que estructura la grilla semántica.

(19)

Grilla Semántica

[Juan]AGENTE rompió [la ventana]TEMA.

[Juan]AGENTE rompió [la ventana]TEMA [con una piedra]INSTRUMENTO.

[Una piedra]INSTRUMENTO rompió [la ventana]TEMA. [La ventana]TEMA se rompió.

[La ventana]TEMA fue rota [por Juan]AGENTE.

La grilla semántica del predicado romper contiene los roles semánticos: AGENTE, TEMA, INSTRUMENTO.

(20)

Roles semánticos

¿Qué roles existen?

AGENTE – El mozo derramó la sopa.

EXPERIMENTANTE – Juan tiene dolor de cabeza.

FUERZA – El viento abrió la ventana.

TEMA – María rompió el hielo.

RESULTADO – El obrero construyó un muro.

CONTENIDO – Carolina dijo “¿Conocés a Juan?”

INSTRUMENTO – Juan abrió la puerta con la llave.

BENEFICIARIO – Pedro compró el boleto para su jefe.

ORIGEN – Volé desde Chile.

(21)

Roles semánticos

Se propuso una cantidad grande de roles semánticos, pero las propiedades no son siempre homogéneas.

1. Juan abre esa puerta con la llave roja.

2. La llave roja abre esa puerta.

3. Juan come la pasta con el tenedor.

4. *El tenedor come la pasta.

(Distintos tipos de instrumentos.)

Aun así son menos que tener roles específicos para cada verbo.

(22)

Si tuviéramos los roles semánticos…

[Juan]

AGENTE

comió [una medialuna]

TEMA

[al mediodía]

MOD-TIEMPO

[en la mesa]

MOD-LUGAR

.

∃e comer(e) ∧ agente(e, juan) ∧ tema(e,

medialuna) ∧ tiempo(e, mediodía) ∧ lugar(e,

mesa)

(23)

• Equivalencia de:

• Los obreros construyeron la casa

• La casa fue construida por los obreros

• Implicación de 1 a 2 en:

1. La oferta de una fórmula de pago de la deuda por Argentina está siendo considerada por los acreedores.

2. Argentina ofreció una fórmula de pago de la deuda.

Si tuviéramos los roles

semánticos…

(24)

¿Y para estos casos?

• Implicación de 1 a 2 y 3

1. Juan le vendió la casa a Pedro en $ 100.

2. Pedro pagó $ 100 por la casa.

3. Pedro le compró la casa a Juan.

Si tuviéramos los roles

semánticos…

(25)

Si tuviéramos los roles semánticos…

Respuestas a preguntas:

P: Cuándo fue derrotado Napoleón?

Buscar: [PACIENTE Napoleon] [PRED derrotar]

[ARGM-TMP *RESP*]

P: Quién derrotó a Napoleón?

Buscar: [PACIENTE Napoleon] [PRED derrotar]

[AGENTE *RESP*]

(26)

Si tuviéramos los roles semánticos…

Respuestas a preguntas:

Juan golpeó a Pedro con un palo ayer en la calle.

Quién?

A quién?

Cuándo ?

Dónde?

(27)

Si tuviéramos los roles semánticos…

• Resumen automático

– Los predicados y los núcleos de los roles argumentales resumen el contenido.

• Extracción de información

– Si se reconocen los roles estamos más

cerca de los atributos de una BD

(28)

Semantic Role Labeling

• En español: Etiquetado de Roles Semánticos (ERS)

• Tarea en PLN que consiste en asignar roles semánticos a constituyentes.

[Juan]AGENTE rompió [la ventana]TEMA [con una piedra]INSTRUMENTO.

Requiere:

Haber identificado los constituyentes sintácticos Haber identificado los predicados

(29)

Semantic Role Labeling

• Aprendizaje supervisado

• Necesidad de corpus para entrenamiento y testeo

• Además:

– Qué es un predicado – Cuáles son los roles

• Recursos: PropBank y FrameNet (para

el inglés)

(30)

Semantic Role Labeling

Pseudocódigo del procesamiento habitual:

function SemanticRoleLabel(words) returns labeled tree parse ← Parse(words)

for each predicate in parse do for each node in parse do

features ← ExtractFeatures(node,predicate,parse) ClassifyNode(node,features,parse)

(31)

Semantic Role Labeling

Necesitamos:

• Un parser (Collins, Charniak, FreeLing)

• Identificar cuáles son los predicados (habitualmente verbos)

• Un conjunto de features calculables para el predicado

• Un clasificador que utilice esos features

(SVM, Maximum Entropy)

(32)

Semantic Role Labeling

• Atributos para el aprendizaje (Gildea, Jurafsky, 2000, 2002):

Predicado (la palabra)

Tipo de constituyente (gn, gp, etc.)

Núcleo sintáctico del constituyente

Categoría gramatical del núcleo

Camino en el árbol de parsing del constituyente al predicado

Voz de la cláusula (activa o pasiva)

Posición lineal (antes o después del predicado)

Subcategorización del predicado (lo sacamos de la regla)

• Otros atributos usados:

(33)

Semantic Role Labeling

• En vez de generar un solo clasificador es posible proceder por etapas:

Eliminación como candidatos de algunos constituyentes.

Clasificación binaria de un nodo como constituyente o no.

Clasificación en n-clases según el esquema de roles semánticos que se utilice.

• Evaluación

Precision, recall, medida-F.

Baseline: sistema simple basado en reglas (p.ej., 1er gn antes del predicado es AGENTE, gn siguiente es TEMA, etc.)

(34)

Sin análisis sintáctico?

Se puede reformular el problema como un etiquetado de secuencias:

Juan agente rompió pred

la tema

ventana tema

con instrumento una instrumento piedra instrumento ...

(35)

Sin análisis sintáctico?

Collobert y Weston (2008, 2011) intentan resolver este problema como un caso de tagging

- Word embeddings (Wikipedia)

- Multitask learning (POS tagging, NER, SRL y otras tareas a la vez)

- Redes neuronales convolutivas

- Uno de los primeros ejemplos de Deep Learning

(36)

Recursos léxicos para SRL

Para el inglés (parcialmente para otras lenguas) se desarrollaron dos recursos:

• PropBank

• FrameNet

(37)

PropBank

http://verbs.colorado.edu/~mpalmer/projects/ace.html

Cuenta con:

• Grilla semántica para los verbos

Los argumentos se anotan con números: arg0, arg1, arg2 …

Arg0 – proto-agente Arg1 – proto-paciente

…a partir del arg2, los roles son específicos para cada verbo.

• Corpus de oraciones etiquetadas (Penn Treebank WSJ)

Más de 100.000 proposiciones (cláusulas) anotadas.

(38)

PropBank

Ejemplos de PropBank:

increase.01: go up incrementally Arg0: causer of increase

Arg1: thing increasing Arg2: amount increased Arg3: start point

Arg4: end point

(39)

PropBank

Ejemplos de PropBank:

• [

Arg0

Big Fruit Co.] increased [

Arg1

the price of bananas].

• [

Arg1

The price of bananas] was increased again [

Arg0

by Big Fruit Co.]

• [

Arg1

The price of bananas] increased [

Arg2

5%].

(40)

FrameNet

¿Qué pasa con estos ejemplos?

[El precio de la carne]

ARG1

aumentó [un 5%]

ARG2.

[El precio de la carne]

ARG1

subió [5%]

ARG2.

Hubo un aumento [de 5%]

ARG2

[en el precio de la carne]

ARG1.

Se usan distintos verbos, o incluso un nombre, pero hay equivalencia.

FrameNet da respuesta a esto, mientras que

(41)

FrameNet

http://framenet.icsi.berkeley.edu

• FrameNet es un proyecto de anotación manual de roles semánticos orientado a problemas del tipo anterior.

o 960 frames

o 11600 unidades léxicas

o 150,000 oraciones anotadas

(42)

FrameNet

• Un frame describe una situación.

• Se instancian los participantes (elementos del frame) en roles

semánticos, de modo particular para cada frame.

• Se codifican también relaciones entre

frames (herencia, causación) y con

(43)

FrameNet

Ingestion

Definition:

An Ingestor consumes food or drink (Ingestibles),

which entails putting the Ingestibles in the mouth for delivery to the digestive system. This may include the use of an Instrument. Sentences that describe the provision of food to others are NOT included in this frame.

(44)

FrameNet

Ingestion

FEs:

Core:

Ingestibles [Ingible]

The Ingestibles are the entities that are being consumed by the Ingestor.

Ingestor [Ing]

The Ingestor is the person eating or drinking.

(45)

FrameNet

Ingestion

FEs:

Non-Core:

Degree [Degr]

The extent to which the Ingestibles are consumed by the Ingestor.

The wolves DEVOURED the carcass completely.

Duration [Dur]

The length of time spent on the ingestion activity.

  They 've been EATING for hours!

….

(46)

FrameNet

Ingestion

Inherits From: Ingest_substance, Manipulation

Is Inherited By:

Subframe of:

Has Subframes:

Precedes:

Is Preceded by:

(47)

FrameNet

Ingestion

Lexical Units

breakfast.v, consume.v, devour.v, dine.v, down.v, drink.v, eat.v, feast.v, feed.v, gobble.v, gulp.n, gulp.v, guzzle.v, have.v, imbibe.v,

ingest.v, lap.v, lunch.v, munch.v, nibble.v, nosh.v, nurse.v, put away.v, put back.v, quaff.v, sip.n, sip.v, slurp.n, slurp.v, snack.v, sup.v, swig.n, swig.v, swill.v, tuck.v

(48)

Commiting-crime

Inherits From: Misdeed

Is Inherited By: Abusing, Kidnapping, Piracy, Rape, Robbery, Smuggling, Theft

Subframe of: Crime_scenario

Relaciones entre frames

(49)

¿Y para el español?

PropBank

• No existe un equivalente en español.

• El corpus AnCora tiene anotados algunos roles semánticos y la subcategorización (AnCoraVerb).

• http://clic.ub.edu/corpus/es FrameNet

• Existe un Spanish FrameNet

• 305 frames, 575 unidades léxicas, 10,000 oraciones anotadas.

• http://gemini.uab.es/SFN

Referencias

Documento similar

Presentamos la comparación de rendimiento entre el modelo BERT (Bidirectional Encoder Re- presentations from Transformers) y métodos más tradicionales de PLN (Procesamiento del

2 Introducción El origen de la dificultad para expresar formalmente la diferencia entre reglas por defecto y reglas excepcionales se encuentra en la forma de asignar estructura

The evaluation was carried out both automatically, by means of four objective measures (error, coverage, support and novelty), and manually, by means of a

Por ello, en este trabajo se equipara la subtarea de clasificaci´on de roles sem´anticos con la identificaci´on de los argumentos de la forma l´ogica del verbo, obvi´andose

El algoritmo desarrollado está basado en reglas y listas de excepciones, y presenta una mejora significativa con relación al prototipo creado en 2002, ya que ahora es capaz de

Introducci´ on: Teor´ıa de Redes Redes do Coocurrencia Redes de Asociaciones Aplicaciones Redes Semanticas y Sint´ acticas Construcci´ on de Redes.. Aplicaciones de la Teor´ıa de

para eliminar los temas correspondientes a “Semántica Computacional (semántica léxica)”, que pasaría a impartirse en la asignatura de “Fundamentos del procesamiento

• Desarrollamos Software Inteligente con procesamiento de Lenguaje Natural mediante técnicas de Inteligencia Artificial.. • Creamos programas que actúan como una persona real