Presentation is loading. Please wait.

Presentation is loading. Please wait.

Artificial Intelligence The different levels of language analysis Fall 2008 professor: Luigi Ceccaroni.

Similar presentations

Presentation on theme: "Artificial Intelligence The different levels of language analysis Fall 2008 professor: Luigi Ceccaroni."— Presentation transcript:

1 Artificial Intelligence The different levels of language analysis Fall 2008 professor: Luigi Ceccaroni

2 The different levels of language analysis A NL system must use considerable knowledge about the structure of the language itself, including: –What the words are –How words combine to form sentences –What the words mean –How word meanings contribute to sentence meaning –… 2

3 The different levels of language analysis We cannot completely account for linguistic behavior without also taking into account: –humans’ general world knowledge –their reasoning abilities For example, to participate in a conversation it is necessary: –Knowledge about the structure of the language, but also –Knowledge about the world in general –Knowledge about the conversational setting in particular 3

4 The different levels of language analysis The following are some of the different forms of knowledge relevant for NL understanding: –Phonetic and phonological knowledge –Morphological knowledge –Syntactic knowledge –Semantic knowledge –Pragmatic knowledge –Discourse knowledge –World knowledge 4

5 Phonetic and phonological knowledge It concerns how words are related to the sounds that realize them Such knowledge is crucial for speech- based systems 5

6 Morphological knowledge Use of lexicons –Reference books containing an alphabetical list of words with information about them 6 Lexeme cant- Information cantar V / Infinitive -o/-es/-a/-em/-eu/-en

7 Morphological knowledge Versió simple: utilització de formaris (llista de formes amb informació morfològica i els lexemes corresponents) Morfema = lexema (o arrel) o gramema Lexema cant Gramema o es a em en

8 Morphological knowledge Analitzadors morfològics: –Diccionaris de morfemes: diccionari d’arrels (lexemes), de sufixes, prefixes, infixesdiccionari d’arrels (lexemes), de sufixes, prefixes, infixes –Morfotàctica: regles de combinació de morfemes –Variacions fonològiques: canvis al combinar els morfemes (ex., ploure, plovisquejar) Tipus d’analitzadors –FSA (finite state automaton) –FST (finite state transducer) –cascada de FSTs

9 Syntactic knowledge Detection of tractable units: paragraphs and sentences: –Location of marks of punctuation: “.”, “?”, “!”, “…” Problems: acronyms, initials –Machine learning and classification techniques They take into account contextual information 9

10 Syntactic knowledge Detection of units of meaning –Recognition and adequate grouping of words “/Parlarà/ /sens dubte/ /de/ /les/ /reestructuracions/ /urbanes/ /a/ /Sant Cugat/” Assignment of grammatical categories Addition of semantic information to lexical units (use of ontologies and dictionaries) Acknowledgment and classification of proper names and entities 10

11 Syntactic knowledge Correspondence between orthographic and grammatical words –“dóna-m’ho”, “dímelo” (1 orthographic word, 3 grammatical words) –“sens dubte”, “sin embargo” (2 orthographic words, 1 p. grammatical word) Homonymy –Same form, different grammatical categories: “wheel” (rueda, ruleta): noun “wheel” (empujar): verb 11

12 Syntactic knowledge Polysemy –Same form and category, different meanings: “bank” (grupo): data bank, electronic resource bank “bank” (banco): bank account, bank balance “bank” (ribera): river bank, river + burst its banks Acronyms –“The cell’s DNA sample was identified by PRC, a process approved by the official UBI.” 12

13 Syntactic knowledge Abbreviations –For example, the word "abbreviation" can itself be represented by the abbreviation "abbr." or "abbrev.“ Formulae and units of measurements –“One of many famous formulae is Albert Einstein's E = mc².” –“In the US the inch is now defined as m, and the avoirdupois pound is now defined as g.” 13

14 Syntactic knowledge Syntactic categories: adjective (ADJ) adjective phrase (ADJP) adverb (ADV) adverbial phrase (ADVP) article (ART) auxiliary verb (AUX) determiner (DET) noun (N) noun phrase (NP) preposition (P) 14 prepositional phrase (PP) pronoun (PRO) relative clause (REL) relative pronoun (REL- PRO) quantifying determiner (QDET) sentence (S) verb (V) verb phrase (VP)

15 Syntactic knowledge –Problema de la granularitat (verb -> transitiu/intransitiu) –Propietats sintàctiques de concordança gènere (masculí/femení)gènere (masculí/femení) nombre (singular/plural)nombre (singular/plural) persona (primera, segona...)persona (primera, segona...) cas (acusatiu,datiu..)cas (acusatiu,datiu..)

16 Altres propietats sintàctiques: –Tipus de complement del verb –Preposicions que accepta una paraula Categoria semàntica Informació morfològica –Derivació : prefixos/infixos/sufixos plov + -isquej- + ar re- + estructura + -cio + -ns Representation prefix arrel sufix

17 Informació lèxica re- + estructura + -cio + -ns prefix arrel sufix repetició nom plural Representation

18 Informació lèxica plov + -isquej- + ar arrel infix diminutiu Representation sufix infinitiu

19 Syntax and semantics Examples: –John sold the book to Mary. –The book was sold to Mary by John. –*After it fell in the river, John sold the book to Mary. –After it fell in the river, the book was sold to Mary by John. –*John are in the corner. –*John put the book. –Flying planes are dangerous. –Flying planes is dangerous.

20 Collaboration between parsers Anàlisi SintàcticaInterpretació Semàntica sense sintaxi sense semàntica procés en cascada (1) –sintaxi | semàntica procés en cascada (2) –{sintaxi + filtre semàntic} | semàntica procés en paral·lel –{sintaxi, semàntica}

21 Pre-process Segmentació Localització d’unitats (paraules) Lematització, anàlisi morfològica Desambiguació morfosintàctica (POS-tagging) Etiquetat semàntic Desambiguació semàntica (WSD) Detecció i classificació d‘entitats amb nom (named entity recognition, NER)

22 Quina es la capital de França? quina quin DT0FS00 quina NCFS000 és ésser VMIP3S0 la el TDFS0 ell PP3FSO00 la I capital capital AQPCS00 capital NCFS000 capitalNCMS000 de de SPS00 França frança NP00000-loc ? ? Fit quina quin DT0FS00 és ésser VMIP3S0 la elTDFS0 capital capital NCFS000 de de SPS00 França frança NP00000-loc ? ? Fit resultat de l'anàlisi morfològica resultat del POS-tagging Example

23 Post-process Anàlisi semàntica - pragmàtica Anàlisi il·locutiva –Reconeixement d’intencions

24 24 The component steps of communication A typical communication episode, in which speaker S wants to inform hearer H about proposition P using words W, is composed of 7 processes: –Intention. Speakers S decides that there is some proposition P that is worth saying to hearer H. –Generation. The speaker plans how to turn the proposition P into an utterance that makes it likely that the hearer can infer the meaning P (or something close to it). 24

25 25 The component steps of communication –Synthesis. The speaker produces the physical realization W’ of the words W. This can be via ink on paper, vibrations in air, or some other medium. –Perception. H perceives W’ as W2’ and decodes it as the words W2. When the medium is speech, the perception is called speech recognition; when it is printing, it is called optical character recognition (OCR). Both are now commonplace. 25

26 26 The component steps of communication –Analysis. We divide it into 3 main parts: Syntactic interpretation (or parsing) is the process of building a parse tree for an input string. The interior nodes of the parse tree represent phrases and the leaf nodes represent words. Semantic interpretation is the process of extracting the meaning of an utterance. Utterances with several possible interpretations are said to be ambiguous. Pragmatic interpretation takes into account the fact that the same words can have different meanings in different situations. 26

27 27 The component steps of communication –Disambiguation. H infers that S intended to convey Pi (where ideally Pi = P). Communication works because H does the work of figuring out which interpretation is the one S probably meant to convey. Disambiguation is a process that depends heavily on uncertain reasoning. –Incorporation. H decides to believe Pi (or not). A totally naive agent might believe everything it hears. A sophisticated agent treats the speech act as evidence for Pi, not confirmation of it. 27

28 Syntactic analysis Objectives: –Determining if a sentence is syntactically correct –Creating a structure with information which can be used during the semantic analysis

29 Syntactic analysis Alphabet (vocabulary): Σ Concatenation operations Σ* (free monoid): set of all strings that can be formed with symbols of Σ Language: L ⊆ Σ* Given a string w 1 n of Σ*: w 1 n = w 1, …, w n w i ∈ Σ –We have to determine if w 1 n ∈ L

30 Ways to define membership Grammar –G ⇒ L(G) –w 1 n ∈ L(G) ? Language model –P(w 1 n ) –si P(w 1 n ) > 0 ⇒ w 1 n ∈ L Corpora (sentences, patterns), which define correct sentences: Syntactic dictionaries Composition rules

31 Most usual way: grammar Non-terminal vocabulary (set of variables) Terminal vocabulary (alphabet) Production set Initial variable Σ ∩ V = Ø Σ ∪ V = vocabulary S ∈ V

32 Grammars and parsing To examine how the syntactic structure of a sentence can be computed: –Grammar, a formal specification of the structures allowable in the language –Parsing technique, the method of analyzing a sentence to determine its structure according to the grammar The most common way of representing how a sentence is broken into its major subparts (constituents), and how those subparts are broken up in turn, is a tree.

33 Grammars and sentence structure Tree representation for the sentence Adrià menja el bacallà: S NP NAME Adrià VP V menja NP ART N bacallà el

34 Grammars and sentence structure The sentence (S) consists of an initial noun phrase (NP) and a verb phrase (VP). The initial noun phrase is made of the simple NAME Adrià. The verb phrase is composed of a verb (V) menja and an NP, which consists of an article (ART) el and a common noun (N) bacallà. In list notation this same structure could be represented as: (S (NP (NAME Adrià)) (VP (V menja) (NP (ART el) (N bacallà) )))

35 Grammars and sentence structure To construct a tree structure for a sentence, you must know what structures are legal. A set of rewrite rules describes what tree structures are allowable. These rules say that a certain symbol may be expanded in the tree by a sequence of other symbols. A set of rules constitutes a grammar: 1.S → NP VP 2.VP → V NP 3.NP → NAME 4.NP → ART N 5.NAME → Adrià 6.V → menja 7.ART → el 8.N → bacallà

36 Grammars and sentence structure Rule 1 says that an S may consist of an NP followed by a VP. Rule 2 says that a VP may consist of a V followed by an NP. Rules 3 and 4 say that an NP may consist of a NAME or may consist of an ART followed by an N. Rules define possible words for the categories. Grammars consisting entirely of rules with a single symbol on the left-hand side, called the mother, are called context-free grammars (CFGs).

37 Grammars and sentence structure Context-free grammars (CFGs) are a very important class of grammars because: –the formalism is powerful enough to describe most of the structure in natural languages, –yet is restricted enough so that efficient parsers can be built to analyze sentences. Symbols that cannot be further decomposed in a grammar (the words Adrià, menja…) are called terminal symbols. The other symbols, such as NP and VP, are called nonterminal symbols. The grammatical symbols such as N and V that describe word categories are called lexical symbols. Many words will be listed under multiple categories. For example, poder would be listed under V (can) and N (power). Grammars have a special symbol called the start symbol. Usually, the start symbol is S (also meaning sentence).

38 Grammars and sentence structure A grammar is said to derive a sentence if there is a sequence of rules that allow you to rewrite the start symbol into the sentence, for instance, Adrià menja el bacallà. This can be seen by showing the sequence of rewrites starting from the S symbol, as follows: S => NP VP (rewriting S) => NAME VP (rewriting NP) => Adrià VP (rewriting NAME) => Adrià V NP (rewriting VP) => Adrià menja NP (rewriting V) => Adrià menja ART N (rewriting NP) => Adrià menja el N (rewriting ART) => Adrià menja el bacallà (rewriting N)

39 Grammars and sentence structure Two important processes are based on derivations: –The first is sentence generation, which uses derivations to construct legal sentences. A simple generator could be implemented by randomly choosing rewrite rules, starting from the S symbol, until you have a sequence of words. The preceding example shows that the sentence Adrià menja el bacallà can be generated from the grammar. –The second process based on derivations is parsing, which identifies the structure of sentences given a grammar.

40 Parsing as a search procedure In derivations, there are two basic methods of searching: – A top-down strategy starts with the S symbol and then searches through different ways to rewrite the symbols until the input sentence is generated, or until all possibilities have been explored. The preceding example demonstrates that Adrià menja el bacallà is a legal sentence by showing the derivation that could be found by this process.

41 Parsing as a search procedure In a bottom-up strategy, you start with the words in the sentence and use the rewrite rules backward to reduce the sequence of symbols until it consists solely of S. The left-hand side of each rule is used to rewrite the symbol on the right-hand side. A possible bottom-up parse of the sentence Adrià menja el bacallà is: => NAME menja el bacallà (rewriting Adrià) => NAME V el bacallà (rewriting menja) => NAME V ART bacallà (rewriting el) => NAME V ART N (rewriting bacallà) => NP V ART N (rewriting NAME) => NP V NP (rewriting ART N) => NP VP (rewriting V NP) => S (rewriting NP VP) A tree representation can be viewed as a record of the CFG rules that account for the structure of the sentence.

42 What makes a good grammar In constructing a grammar for a language, you are interested in: –generality, the range of sentences the grammar analyzes correctly; –selectivity, the range of non-sentences it identifies as problematic; –understandability, the simplicity of the grammar itself.

43 Generative capacity Grammatical formalisms based on rewrite rules can be compared according to their generative capacity, which is the range of languages that each formalism can describe. It turns out that no natural language can be characterized precisely enough to define the generative capacity. Formal languages, however, allow a precise mathematical characterization.

44 Generative capacity Consider a formal language consisting of the symbols a, b, c and d (think of these as words). Then consider a language L1 that allows sequences of letters in alphabetical order. For example, abd, ad, bcd and abcd are all legal sentences. To describe this language, we can write a grammar in which the right- hand side of every rule consists of one terminal symbol possibly followed by one nonterminal. Such a grammar is called a regular grammar. For L1 the grammar would be: S -> a S1S -> dS1 -> dS3 -> d S -> b S2S1 -> b S2S2 -> c S3 S -> c S3S1 -> c S3S2 -> d

45 Generative capacity Consider another language, L2, that consists only of sentences that have a sequence of a’s followed by an equal number of b’s—that is, ab, aabb, aaabbb, and so on. You cannot write a regular grammar that can generate L2 exactly. A context-free grammar to generate L2, however, is simple: S -> a bS -> a S b

46 Generative capacity Some languages cannot be generated by a CFG. One example is the language that consists of a sequence of a’s, followed by the same number of b’s, followed by the same number of c's - that is, abc, aabbcc, aaabbbccc, and so on. Similarly, no context-free grammar can generate the language that consists of any sequence of letters repeated in the same order twice, such as abab, abcabc, acdabacdab, and so on. There are more general grammatical systems that can generate such sequences, however. One important class is the context- sensitive grammar, which consists of rules of the form: α A β → α ψ β where A is a symbol, α and β are (possibly empty) sequences of symbols, and ψ is a nonempty sequence of symbols.

47 Generative capacity Even more general are the type 0 grammars, which allow arbitrary rewrite rules. Work in formal language theory began with Chomsky (1956). Since the languages generated by regular grammars are a subset of those generated by context-free grammars, which in turn are a subset of those generated by context-sensitive grammars, which in turn are a subset of those generated by type 0 languages, they form a hierarchy of languages (called the Chomsky Hierarchy).

48 Languages associated to Chomsky-hierarchy grammars GrammarLanguagesAutomaton Type-0 Recursively enumerable Turing machine Type-1Context-sensitive Linear-bounded non-deterministic Turing machine Type-2Context-free Non-deterministic pushdown automaton Type-3Regular Finite state automaton

49 Grammaticality condition A sentence w (a string of Σ*) pertains to the language generated by grammar G, if grammar G can derive w starting from S, using production rules.

50 Obtaining the grammar Definition of the terminal tagset (Σ) Definition of the non-terminal tagset (V) Definition of grammar rules (P): –Manual construction –Automatic construction Grammatical inference (induction) –Semiautomatic construction

51 Grammars for language processing Minimum: context-free grammars (CFGs) Is NL a context-free language? No. Are CFGs sufficient? No. Solutions: –CFG + {procedural addition of context} –Logical grammars (unification) –Grammars enriched with statistical information (SCFGs) –…

52 CFG parsers and extensions Let’s start from a simplification of CFGs CFGs ⇒ RGs Finite state automata (FSAs) Extension of FSAs TNs (Transition Networks) ⇒ RTNs (Recursive Transition Networks) ⇒ ATNs (Augmented Transition Networks) W. A. Woods (1970) in "Transition Network Grammars for Natural Language Analysis" claims that by adding a recursive mechanism to a finite state model, parsing can be achieved much more efficiently. Charts (M. Kay, 1980) WFSTs (well-formed substring tables) …

53 Transition networks (TNs) Autòmat finit –Estats associats a parts de la frase –Transicions Etiquetes que fan referència a categories morfosintàctiques –Una transició és acceptable si la paraula té la mateixa categoria que apareix etiquetada a l’arc –No determinisme Més d’un estat inicial Una paraula amb més d’una categoria possible Més d’un arc per la mateixa categoria

54 q0q0 q1q1 q2q2 q4q4 q5q5 q6q6 El gat menja bacallà DET N V N DET N NAME V DET N N ADJ q3q3 V TNs: example

55 Limitat a llenguatges regulars No es pot dir que analitzi –Reconeix No-determinisme ⇒ backtracking –Ineficiència No separació entre gramàtica i analitzador –gramàtica ⇒ descripció del model sintàctic –analitzador (parser) ⇒ control TNs: limitations

56 Recurrent TNs (RTNs) Col·lecció de xarxes de transició (TNs) etiquetades amb un nom –Arcs Etiquetats amb categories → com xarxes normals –Etiquetes terminals Etiquetats amb identificadors de xarxes de transició (TNs) –Etiquetes no terminals: els estats finals de les TNs causen el retorn a l’estat destí de la transició que ha causat la crida Les RTN son dèbilment equivalents a les CFG

57 S 12 NPVP 3 NP 12 DET N N NAME ADJ PP 3 RTNs: examples

58 PP 12 3 P NP V VP V 1 23 RTNs: examples

59 RTNs: limitations Transicions només depenen de les categories (poc expressiu) –Llenguatge de context lliure Reconeixen però no analitzen Ineficiència inherent al backtracking

60 Charts Intenten eliminar redundàncies en l’anàlisi (alleugeriment del cost del backtracking) memoritzant estructures parcials ja construïdes. No afecten l’estratègia de l’anàlisi Inconvenients: espai, temps de construcció, només guarden components ben formats

61 Chart = graf dirigit que es construeix de manera dinàmica i incremental a mesura que es realitza l’anàlisi. Els nodes corresponen al principi i final de la frase i a les separacions entre paraules (N+1 nodes) La frase a analitzar és aquesta Charts

62 Els arcs es creen dinàmicament. Un arc de la posició i a la j (j ≥ i) engloba totes les paraules que estan entre la posició i i la j. Els arcs poden ser actius = objectius o hipòtesis per completar inactius = components completament analitzades La frase a analitzar és aquesta Charts

63 Regla puntejada (DR, “dotted rule”): producció de la gramàtica que conté algun punt en la seva part dreta. Per exemple, de la regla A −> BCD es poden derivar les següents regles puntejades: A −>. B C D (corresponent a un arc actiu) A −> B. C D ” A −> B C. D ” A −> B C D. (corresponent a un arc inactiu) Charts: notation

64 Arc d’un chart: i, j :nodes origen i destí X → abproducció de la gramàtica X → a.bDR El gat menja salmó Charts: notation

65 Basic rule of combination Arc actiu: Arc inactiu: Resultat:

66 Regla bàsica: Cada vegada que s’afegeix un arc inactiu al Chart, aleshores s’ha d’afegir al seu extrem esquerre un arc actiu per cada regla B → Ab de la gramàtica Inicialització: afegir els arcs inactius que corresponen a les categories lèxiques (terminals). Ex: Ascendant strategy

67 Descendant strategy Regla bàsica: Cada vegada que s’afegeix un arc actiu al Chart, aleshores, per cada regla B → b de la gramàtica, s’ha d’afegir un arc actiu al seu extrem dret Inicialització: Igual que abans però a més cal afegir l’arc actiu que correspon a l’objectiu d’obtenir una frase. Ex: La regla bàsica de combinació amb l’estratègia ascendent o descendent (o una combinació de les dues) és el que ens proporciona el mètode d’anàlisi

68 Charts: example el gat menja peix [Oracio → GN GV] [det] [n] [vt] [vi] [n] [GN → det n] [GN → n] [GN → det n] [Oracio → GN GV] [GV → vi] [GV → vt GN] [GV → vi ] [GV → vt GN] [Oracio → GN GV ] [GN → det n] [GN → n] [Oracio → GN GV ]

69 Features (rasgos) Context-free grammars provide the basis for most of the computational parsing mechanisms developed to date. As they have been described, they would be inconvenient for capturing natural language. The basic context-free mechanism can be extended defining constituents by a set of features. This extension allows aspects of natural language such as agreement and subcategorization to be handled in an intuitive and concise way.

70 Feature systems and augmented grammars In natural language there are often agreement restrictions between words and between phrases. For example, the noun phrase (NP) un hombres is not correct because the article un indicates a single object while the noun hombres indicates a plural object. The NP does not satisfy the number agreement restriction.

71 Feature systems and augmented grammars There are many other forms of agreement, including –subject-verb agreement –gender agreement for pronouns –restrictions between the head of the phrase and the form of its complement. Features are introduced to handle such phenomena. A feature NUMBER might be defined that takes a value of either s (for singular) or p (for plural) and we then might write an augmented CFG rule such as NP → ART N only when NUMBER 1 agrees with NUMBER 2 This rule says that a legal NP consists of an article (ART) followed by a noun (N), but only when the number feature of the first word agrees with the number feature of the second.

72 Feature systems and augmented grammars NP → ART N only when NUMBER 1 agrees with NUMBER 2 This one rule is equivalent to two CFG rules that would use different terminal symbols for encoding singular and plural forms of all NPs, such as NP-SING → ART-SING N-SING NP-PLURAL → ART-PLURAL N-PLURAL The two approaches seem similar in ease-of-use in this one example. Though, in the second case, all rules in the grammar that use an NP on the right-hand side would need to be duplicated to include a rule for NP-SING and a rule for NP-PLURAL, effectively doubling the size of the grammar.

73 Feature systems and augmented grammars Handling additional features, such as person agreement, would double the size of the grammar again, and so on. Using features, the size of the augmented grammar remains the same as the original one, yet accounts for agreement constraints. A constituent is defined as a feature structure (FS), a mapping from features to values that defines the relevant properties of the constituent.

74 Feature systems and augmented grammars Example: a FS for a constituent ART1 that represents a particular use of the word un: ART1:(CAT ART ROOT un NUMBER s) It is a constituent in the category ART that has its root in the word un and is singular. Usually an abbreviation is used that gives the CAT value more prominence: ART1: (ART ROOT un NUMBER s)

75 Feature systems and augmented grammars FSs can be used to represent larger constituents as well. FSs themselves can occur as values. Special features based on the integers (1, 2, 3…) stand for the subconstituents (first, second…). The representation of the NP constituent for the phrase un pez could be: NP1: (NPNUMBER s 1 (ARTROOT un NUMBER s) 2 (N ROOT pez NUMBER s))

76 Feature systems and augmented grammars The previous one can also be viewed as a representation of a parse tree: Subconstituent features 1 and 2 correspond to the subconstituent links in the tree.

77 Feature systems and augmented grammars The rules in an augmented grammar are stated in terms of FSs rather than simple categories. Variables are allowed as feature values so that a rule can apply to a wide range of situations. For example, a rule for simple NPs would be as follows: (NP NUMBER ?n): (ART NUMBER ?n) (N NUMBER ?n) This says that an NP constituent can consist of two subconstituents, the first being an ART and the second being an N, in which the NUMBER feature in all three constituents is identical.

78 Feature systems and augmented grammars (NP NUMBER ?n): (ART NUMBER ?n) (N NUMBER ?n) According to this rule, constituent NP1 given previously is a legal constituent. The constituent *(NP1 (ART NUMBER s) 2 (N NUMBER s)) is not allowed by this rule because there is no NUMBER feature in the NP. The constituent *(NP NUMBER s 1 (ART NUMBER s) 2 (N NUMBER p)) is not allowed because the NUMBER feature of the N constituent is not identical to the other two NUMBER features.

79 Feature systems and augmented grammars Variables are also useful in specifying ambiguity in a constituent. The word crisis is ambiguous between a singular and a plural reading. The word might have two entries in the lexicon that differ only by the value of the NUMBER feature. Alternatively, we could define a single entry that uses a variable as the value of the NUMBER feature: (N ROOT crisis NUMBER ?n) This works because any value of the NUMBER feature is allowed for the word crisis.

80 Feature systems and augmented grammars In many cases not just any value would work, but a range of values is possible. We introduce constrained variables, which are variables that can only take a value out of a specified list. For example, the variable ?n{s p} would be a variable that can take the value s or the value p. When we write such variables, we will drop the variable name altogether and just list the possible values. The word crisis might be represented by the constituent: (N ROOT crisis NUMBER ?n{s p}) or more simply as (N ROOT crisis NUMBER {s p})

81 Feature systems and augmented grammars There is an interesting issue of whether an augmented CFG can describe languages that cannot be described by a simple CFG. The answer depends on the constraints on what can be a feature value. If the set of feature values is finite, then it would always be possible to create new constituent categories for every combination of features. Thus it is expressively equivalent to a CFG. If the set of feature values is unconstrained then such grammars have arbitrary computational power. In practice, even when the set of values is not explicitly restricted, this power is not used, and the standard parsing algorithms can be used on grammars that include features.

82 ATN: example gf 1:det 2: Jump 3: Adjective 7:pp h 4:Noun 8: Send 6:Proper 5:Pronoun Xarxa per a reconèixer grups nominals (NP) TRETS: Number: Singular, Plural Default: empty Person: 1st, 2nd, 3rd Default: 3rd ROL: Nucli-Subjecte

83 Inicialitzacions, condicions i accions NP-1: f Determiner g A: Set Number to the number of * NP-4: g Noun h C: Number is empty or number is the number of * A: Set Number to the number of * Set Nucli-Subjecte to * NP-5: f Pronoun h A: Set Number to the number of * Set Person to the Person of * Set Nucli-Subjecte to * NP-6: f Proper h A: Set Number to the number of * Set Nucli-Subjecte to * ATN: example

84 ATN: limitations Són adequades per l’anàlisi descendent, però no resulta fàcil implementar una anàlisi ascendent o híbrida. Redundància de les operacions de backtracking: –ineficiència Problemes d’expressivitat notacional: –la gramàtica es barreja amb les accions

85 CFG recognition using difference lists An efficient implementation of CFGs can be obtained by making use of difference lists: a sophisticated Prolog technique. The key idea underlying difference lists is to represent the information about grammatical categories not as a single list, but as the difference between two lists. For example, instead of representing a woman shoots a man as [a,woman,shoots,a,man] we might represent it as the pair of lists [a,woman,shoots,a,man] [ ].

86 CFG recognition using difference lists Think of the first list as what needs to be consumed (or if you prefer: the input list), and the second list as what we should leave behind (or: the output list). Viewed from this (rather procedural) perspective the difference list [a,woman,shoots,a,man] [ ]. represents the sentence a woman shoots a man because it says: If I consume all the symbols on the left, and leave behind the symbols on the right, I have the sentence I am interested in.

87 CFG recognition using difference lists The sentence we are interested in is the difference between the contents of the two lists. Difference representations are not unique. In fact, we could represent a woman shoots a man in infinitely many ways. For example, we could also represent it as [a,woman,shoots,a,man,ploggle,woggle] [ploggle,woggle]. Again the point is: if we consume all the symbols on the left, and leave behind the symbols on the right, we have the sentence we are interested in.

88 CFG recognition using difference lists If we bear the idea of consuming something, and leaving something behind in mind, we obtain the following recognizer (Prolog notation): The s rule says: I know that the pair of lists X and Z represents a sentence if (1) I can consume X and leave behind a Y, and the pair X and Y represents a noun phrase, and (2) I can then go on to consume Y leaving Z behind, and the pair Y Z represents a verb phrase. s(X,Z) :- np(X,Y), vp(Y,Z). np(X,Z) :- det(X,Y), n(Y,Z). vp(X,Z) :- v(X,Y), np(Y,Z). vp(X,Z) :- v(X,Z). det([the|W],W). det([a|W],W). n([woman|W],W). n([man|W],W). v([shoots|W],W).

89 CFG recognition using difference lists The idea underlying the way we handle the words is similar. The code n([man|W],W). means we are handling man as the difference between [man|W] and W. Intuitively, the difference between what I consume and what I leave behind is precisely the word man.

90 CFG recognition using difference lists How do we use such grammars? Here's how to recognize sentences: s([a,woman,shoots,a,man],[]). yes This asks whether we can get an s by consuming the symbols in [a,woman,shoots,a,man], leaving nothing behind.

91 CFG recognition using difference lists Similarly, to generate all the sentences in the grammar, we ask s(X,[]). This asks: what values can you give to X, such that we get an s by consuming the symbols in X, leaving nothing behind? The queries for other grammatical categories also work the same way. For example, to find out if a woman is a noun phrase we ask: np([a,woman],[]).

92 CFG recognition using difference lists And we generate all the noun phrases in the grammar as follows: np(X,[]). It has to be admitted that this recognizer is not as easy to understand, at least at first, and it's a pain having to keep track of all those difference list variables. This is where DCGs come in.

Download ppt "Artificial Intelligence The different levels of language analysis Fall 2008 professor: Luigi Ceccaroni."

Similar presentations

Ads by Google