1 / 31

Métodos basados en Charts

Métodos basados en Charts. Extensiones a partir de Charts Métodos Tabulares CKY Earley. Extensiones a partir de Charts. Desarrollo de las técnicas básicas de Charts (Kay) y de sus implementaciones tabulares (CKY, Earley) Problemas:

thad
Download Presentation

Métodos basados en Charts

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Métodos basados en Charts • Extensiones a partir de Charts • Métodos Tabulares • CKY • Earley

  2. Extensiones a partir de Charts • Desarrollo de las técnicas básicas de Charts (Kay) y de sus implementaciones tabulares (CKY, Earley) • Problemas: • El tamaño del Chart aumenta con el tamaño de la gramática (número de reglas, longitud) • Se crean arcos activos e inactivos inútiles. • Se dice que la técnica de los Charts aporta mayor flexibilidad a la estrategia de análisis pero realmente se utiliza casi siempre una estrategia ascendente, eventualmente corregida con predicciones descendentes

  3. Posibles soluciones • Propagación de Restricciones • CSP (Quesada) • Análisis bidireccionales • Dirigidos por el núcleo (Head driven) • Dirigidos por functores • Dirigidos por islas (Island driven) • Uso de Charts para formalismos de unificación • Utilización de restrictores • Backbone grammars para predecir

  4. CSP 1 • Ambigüedad de la gramática (externa) vs ambigüedad del analizador (interna) • 2 estrategias: • Mecanismo básico bidireccional ascendente • Predicciones descendentes • derivaciones parciales • adyacencias • Mecanismo horizontal de propagación de las restricciones

  5. CSP 2 S  A1 b S  A2 c A1 a A1 a A1 A2 a A2 a A2 a a a b oración a analizar A2 A2 A2 A1 A1 A1 a b a a gramática 0 1 2 3 4 S  A1  b A2  a  A2  A2  a  A2  A2  a  A2  A1  a  A1  A1  a  A1  A1  a  A1 

  6. CSP 3 Restricciones en la posición 3 A2 A2 A1 A1 A1 a b a a 0 1 2 3 4 S  A1  b A2  a  A2  A2  a  A2  A1  a  A1  A1  a  A1 

  7. CSP 4 propagación de restricciones a las posiciones 2 y 1 A1 a b a a 0 1 2 3 4 S  A1  b A1  a  A1  A1  a  A1 

  8. Head-driven Chart parsing • Comenzar la aplicación de la regla por el constituyente más informativo/restrictivo • Motivación lingüística: HG, HPSG • Adquisición automática • Generalización de parsing LC • Generalización de estrategias izquierda/derecha • Extended Head Grammar

  9. Island-driven parsing • Se comienza el análisis por algunas posiciones de la oración determinadas dinámicamente (islas) • Cómo seleccionarlas • palabras no ambiguas • base NPs • Segmentos detectados con alta precisión (speech) • Cómo extenderlas • aproximación local • aproximación neighbouring

  10. Métodos tabulares • Programación dinámica • Aplicables a Gramáticas independientes del contexto (sin limitaciones) • CKI (Cocke, Kasami, Younger,1967) • Earley 1969 • Extensibles a unificación, probabilísticas, etc...

  11. Esquemas de análisis Sikkel, 1997 • Mecanismo unificado de descripción de analizadores • proceso constructivo • Parser (esquema): • dada una oración, se construye un conjunto inicial de items. • dada una gramática, existe un conjunto de reglas que permite construir nuevos items a partir de los antiguos. • Parser (algoritmo): • Esquema de parsing • + estructuras de datos • + estructuras de control • (+ estructuras de comunicación)

  12. Esquema CKY • G = <N, , P,S >, G  CNF, w = a1 ... an • <X, H, D> • X = {[A, i, j] | 0  i < j  A  NG } • H = {[A, j-1, j] | A  aj  PG  1  j  n } • D = {[B, i, j], [C, j, k]  [A, i, k] | A  BC  PG  0  i < k < j} • V (D) = {[A, i, j] | A * ai+1 ... aj} dominio, conjunto de items conjunto entidades válidas conjunto de hipótesis conjunto de pasos deductivos

  13. CKY 1 Complejidad espacial n2 temporal n3 Exigencia de Forma Normal de Chomsky Construcción de la tabla de análisis tij 1  i w1  j wi + 1 donde w = a1, ... an es la frase a analizar

  14. CKY 2 A  ti,j B C a1 a2 ... ai ... an j

  15. CKY 3 Que el símbolo A esté en la posición tij de la tabla significa que desde el símbolo A se puede derivar el fragmento del texto ai, ... ai+j-1 (cadena de longitud j que comienza en la posición i-ésima) La condición de gramaticalidad es obviamente que el símbolo inicial de la gramática (F) cumpla que f  t1|w|

  16. CKY 4 La forma de construcción es ascendente Se construye la fila 1 utilizando las reglas unarias de la gramática: fila j=1 ti1 = {A| [A --> ai]  P} A continuación se construyen las filas j=2,... La base del algoritmo es que al construir la fila j ya han sido construidas las anteriores: fila j tij = {A| k, 1  k  j, [A --> BC]  P, B  tik,C  ti+k,j-k}

  17. CKY 5 • Add the lexical edges • for w = 2 to N: • for i = 0 to N-w: • for k = 1 to w-1: • if: • ABC and • B chart[i,i+k] and • C chart[i+k,i+w] • then: • add ABC to chart[i,i+w] • If Schart[0,N], return the corresponding parse tomada de Loper

  18. Gramática en CNF G2

  19. el gato come pescado oracion el gato come oracion gato come pescado oracion el gato GN gato come oracion come pescado GV el (det) A gato (n) B, GN come (vt, vi) C, GV pescado (n) B, GN CKY 6

  20. Esquema Earley Pearley = <I, H, D> I = {[A  , i, j] | A    PG 0  i  j} D = Dinit Dscan Dcompl Dpred H = { [a1, 0, 1],..., [an, n-1, n]} inicialización scanning Dinit = {[S  , 0, 0]} Dscan = {[A  a, i, j], [a, j, j+1] [A  a, i, j+1]} Dcompl = {[A  B, i, j], [B , j, k] [AB, i, k]} Dpred = {[A  B, i, j] [B, j, j]} compleción predicción V = {[A  , i, j] | * ai+1 ... aj S * a1 ... ai A } F = {[S  , 0, n]} C = {[S  , 0, n] |  * a1 ... an}

  21. Earley 1 Complejidad espacial n2 temporal n3, n2 si la gramática no es ambigua No es preciso CNF La estrategia de análisis es descendente F  SN, FV. SN  *N. SN  *DET, *N. FV  *V, SN.

  22. Earley 2 Cada estado corresponde al consumo de una palabra de la cadena de entrada: I0, I1, ... Ii, ... I|w| Los estados son conjuntos de “parse list” que indican grados de aplicación de las reglas para llegar a dicho estado. [A --> , i]  Ij quiere decir que S -->  Adonde  --> a1 a2 ... ai --> ai+1 ai+2 ... aj La condición de gramaticalidad será [S --> , 0]  I|w|

  23. Earley 3 S     a1 a2 ... ai ... aj an S -->  A  [A --> , i]  Ij

  24. Earley 4 proceso iterativo: construcción del estado I0 construcción del resto de estados (extensión) operaciones: predicción descendente scanning (absorción de una palabra) compleción (final de una regla)

  25. Earley 5 Initialization Predictor Scanner Completer tomada de Loper

  26. Earley 6 Construcción de I0: 1) si [S--> ]  P entonces [S--> ]  I0 2) si [B--> ]  I0 (lo cual sólo es posible si [B--> ]  I0) y [A--> ]  I0entonces [A--> ]  I0 3) si [A--> ]  I0 y [B--> ]  P entonces [B--> ]  I0

  27. Earley 7 Extensión: 4) si [B--> a, i]  Ij-1y a = ajentonces [B--> a, i]  Ij (scanning) 5) si [A--> , i]  Ijy [B--> , k]  Iientonces [B--> , k]  Ij (compleción) 6) si [A--> , i]  Ij y [B--> ]  P entonces [B--> , j]  Ij (predicción)

  28. Earley 8 For each rule S in the grammar: Add S to chart[0,0] For i = 0 to N: for edge in queue[i]: if edge is incomplete and edge.next is a part of speech: scanner(edge) if edge is incomplete and edge.next is not a POS: predictor(edge) if edge is complete: completer(edge) tomada de Loper

  29. ejemplo: el gato come pescado SN FV *DET *N [F SN FV]  I0 [SN *N]  I0 [SN *DET *N]  I0  F Earley 9 inicialización predicción predicción

  30. Earley 10 [F--> SN FV] [SN--> *N] [SN--> *DET *N] I0 (4) el [SN--> *DET *N] I1 (4) gato [SN--> *DET *N ] I2

  31. Earley 11 [SN--> *DET *N ] [F--> SNFV] [FV--> *V SN] I2 aplico (5), miro en I0 añado el 2º item aplico (6) añado el 3º (4) come aplico (4) aplico (6) dos veces [FV--> *V SN] [SN--> *DET *N ] [SN--> *N ] I3 [SN--> *N ] [FV--> *V SN ] [F--> SN FV ] (4) pescado aplico (4) aplico (5), miro en I3 aplico (5), miro en I2

More Related