Download de presentatie
De presentatie wordt gedownload. Even geduld aub
GepubliceerdIvo Michiels Laatst gewijzigd meer dan 10 jaar geleden
1
Taaltheorie en Taalverwerking Parsing Continued
2
Totnutoe: Top-Down-Parser
3
Waarom is de Top-Down-Parser niet goed genoeg?
4
Het probleem van Natuurlijke-Taal-Verwerking:
5
Waarom is de Left Corner Parser niet goed genoeg? Het probleem van Natuurlijke-Taal-Verwerking: Ambiguïteit
6
"Inhoudelijk" (syntactisch/semantisch/pragmatisch) probleem: Welke interpretatie te kiezen?
7
Ambiguïteit "Inhoudelijk" (syntactisch/semantisch/pragmatisch) probleem: Welke interpretatie te kiezen? Computationeel probleem: Hoe te zorgen dat alle analyses beschouwd worden?
8
Ambiguïteit als computationeel probleem: Hoe te zorgen dat alle analyses beschouwd worden? Hoe gaat dat bij de Left-Corner Parser? Back-tracking
9
Ambiguïteit als computationeel probleem: Hoe te zorgen dat alle analyses beschouwd worden? Hoe gaat dat bij de Top-Down-Parser? Back-tracking Voordeel: heel overzichtelijk. Nadeel: inefficiënt.
10
Duplication of effort in the Top-Down-Parser [J&M Fig. 10.14] als gevolg van locale ambiguïteit. Cf.: "KLM redirected a flight from Indianapolis to Houston."
11
Nu: Efficiënt parseren: de Earley parser.
12
Russell & Norvig, pp. 800 - 806. Martin & Jurafsky, pp. 377 - 385. De Earley parser. Nieuw idee: Alle tussenresultaten bewaren ("dynamic programming")
13
Chart-parsing: Alle tussenresultaten bewaren. Wellformed substring table. Put the students in section 2 of Computer Science 101 in room 6. V NP PP
14
Chart-parsing: Alle tussenresultaten bewaren. Put the students in section 2 of Computer Science 101 in room 6. V NP PP S SS
15
Earley Parser: Left-corner parsing met "active chart". Combinatie van top-down en bottom-up. Top-down proces: Predictor Bottom-up proces: Scanner Extender
16
Predictie-proces: Left-corner: S NP VP NP det N
17
Predictie-proces: Left-corner: S NP VP NP det N Stel: det herkend
18
Predictie-proces: Left-corner: S NP VP NP det N [det herkend]
19
Predictie-proces: Left-corner: S NP VP NP det N Stel: det herkend; N herkend.
20
Predictie-proces: Left-corner: S NP VP NP det N Stel: det herkend; N herkend.
21
Active chart. Niet alleen: alle tussenresultaten bewaren. Ook: alle partiële tussenresultaten bewaren. Boekhouding over wat er nog gedaan moet worden valt samen met het bewaren van de tussenresultaten.
22
Predictie Put the students in section 2 of Computer Science 101 in room 6. S NP VP
23
Predictie Put the students in section 2 of Computer Science 101 in room 6. S NP VP NP det N
24
Predictie Put the students in section 2 of Computer Science 101 in room 6. S NP VP NP det N
25
Predictie Put the students in section 2 of Computer Science 101 in room 6. S V NP PP
26
Predictie Put the students in section 2 of Computer Science 101 in room 6. S V NP PP
27
Predictie Put the students in section 2 of Computer Science 101 in room 6. S V NP PP NP det N
28
Active Chart bevat: herkende constituenten, b.v.: NP det N PP gedeeltelijk herkende constituenten, b.v.: NP det N PP plannen, b.v.: NP det N PP
29
Active Chart bevat: herkende constituenten, b.v.: [5, 10, NP det N PP ] gedeeltelijk herkende constituenten, b.v.: [5, 7, NP det N PP ] plannen, b.v.: [5, 5, NP det N PP ]
30
Chart parsing Begintoestand: (Plan:) [0, 0, S' S ] Doel: (S die de hele zin omvat:) [0, n, S' S ]
31
Start Put the students in section 2 of Computer Science 101 in room 6. S' S
32
Put the students in section 2 of Computer Science 101 in room 6. S' S Doel
33
Earley Parser Acties: Top-down agenda-expansie: Predictor Woordsoort checken: Scanner Succes propageren (bottom-up): Completer (Extender)
34
Earley Parser Main: Chart:= leeg Add-edge(0,0, S' S) For all words do: Scanner Return (chart)
35
Earley Parser Main: Chart:= leeg Add-edge(0,0, S' S) For all words do: Scanner Return (chart) Add-Edge(e) If e nog niet in chart then voeg e toe If e heeft de dot helemaal rechts then Extender(e) else Predictor(e) ( e = i,j, A BC )
36
Earley Parser Top-down expansie: Predictor (i, j, A ... B...) Voor alle regels B : Add-edge(j,j, B )
37
Earley Parser Scanner (j, word) [Zoekt de woordsoort (“part-of-speech”) van word op, en geeft dat door aan alle edges die dat kunnen gebruiken.] Voor alle woordsoorten B van word: Voor alle edges van de vorm [i,j, A ... B...]: Add-Edge(i, j+1, A ... B...)
38
Earley Parser Extender (j, k, B ... ) Propageer succes: ["Move the dot" voor edges die vragen om de non-terminal B.] Voor alle edges van de vorm [i,j, A ... B...]: Add-Edge(i, k, A ... B...)
39
Opdracht van deze week: Maak een Earley-parser in Prolog
40
Deeltentamen over blok a in de tussentoets-week
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.