fall 2004 lecture notes #6

26
Fall 2004 Lecture Notes #6 EECS 595 / LING 541 / SI 661 Natural Language Processing

Upload: cicero

Post on 24-Jan-2016

19 views

Category:

Documents


0 download

DESCRIPTION

EECS 595 / LING 541 / SI 661. Natural Language Processing. Fall 2004 Lecture Notes #6. Natural Language Generation. What is NLG?. Mapping meaning to text Stages: Content selection Lexical selection Sentence structure: aggregation, referring expressions Discourse structure. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Fall 2004 Lecture Notes #6

Fall 2004

Lecture Notes #6

EECS 595 / LING 541 / SI 661

Natural Language Processing

Page 2: Fall 2004 Lecture Notes #6

Natural Language Generation

Page 3: Fall 2004 Lecture Notes #6

What is NLG?

• Mapping meaning to text

• Stages:– Content selection– Lexical selection– Sentence structure: aggregation, referring

expressions– Discourse structure

Acrobat Document

Page 4: Fall 2004 Lecture Notes #6

Systemic grammars

• Language is viewed as a resource for expressing meaning in context (Halliday, 1985)

• Layers: mood, transitivity, theme

The system will save the document

Mood subject finite predicator object

Transitivity actor process goal

Theme theme rheme

Acrobat Document

Page 5: Fall 2004 Lecture Notes #6

Example

(:process save-1:actor system-1:goal document-1:speechact assertion:tense future

) Input is underspecified

Page 6: Fall 2004 Lecture Notes #6

The Functional Unification Formalism (FUF)

• Based on Kay’s (83) formalism

• partial information, declarative, uniform, compact

• same framework used for all stages: syntactic realization, lexicalization, and text planning

Page 7: Fall 2004 Lecture Notes #6

Functional analysis

• Functional vs. structured analysis

• “John eats an apple”

• actor (John), affected (apple), process (eat)

• NP VP NP

• suitable for generation

Page 8: Fall 2004 Lecture Notes #6

Partial vs. complete specification

• Voice: An apple is eaten by John

• Tense: John ate an apple

• Mode: Did John ear an apple?

• Modality: John must eat an apple

• prolog: p(X,b,c)

action = eat

actor = John

object = apple

Page 9: Fall 2004 Lecture Notes #6

Unification

• Target sentence

• input FD

• grammar

• unification process

• linearization process

Page 10: Fall 2004 Lecture Notes #6

Sample input

((cat s) (prot ((n ((lex john))))) (verb ((v ((lex like))))) (goal ((n ((lex mary))))))

Page 11: Fall 2004 Lecture Notes #6

Sample grammar((alt top (((cat s) (prot ((cat np))) (goal ((cat np))) (verb ((cat vp) (number {prot number}))) (pattern (prot verb goal))) ((cat np) (n ((cat noun) (number {^ ^ number}))) (alt (((proper yes) (pattern (n))) ((proper no) (pattern (det n)) (det ((cat article) (lex “the”))))))) ((cat vp) (pattern (v)) (v ((cat verb)))) ((cat noun)) ((cat verb)) ((cat article)))))

Page 12: Fall 2004 Lecture Notes #6

Sample output((cat s) (goal ((cat np) (n ((cat noun) (lex mary) (number {goal number}))) (pattern (n)) (proper yes))) (pattern (prot verb goal)) (prot ((cat np) (n ((cat noun) (lex john) (number {verb number}))) (number {verb number}) (pattern (n)) (proper yes))) (verb ((cat vp) (pattern (v)) (v ((cat verb) (lex like))))))

Page 13: Fall 2004 Lecture Notes #6

Comparison with Prolog

• Similarities:– both have unification at the core

– Prolog program = FUF grammar

– Prolog query = FUF input

• Differences:– Prolog: first order term unification

– FUF: arbitrarily rooted directed graphs are unified

Page 14: Fall 2004 Lecture Notes #6

The SURGE grammar• Syntactic realization front-end

• variable level of abstraction

• 5600 branches and 1600 alts

Lexicalchooser

SURGELinearizerMorphology

Lexicalized FD Syntactic FD

Text

Page 15: Fall 2004 Lecture Notes #6

Systems developed using FUF/SURGE

• COMET

• MAGIC

• ZEDDOC

• PLANDOC

• FLOWDOC

• SUMMONS

Page 16: Fall 2004 Lecture Notes #6

CFUF

• Fast implementation by Mark Kharitonov (C++)

• Up to 100 times faster than Lisp/FUF

• Speedup higher for larger inputs

Page 17: Fall 2004 Lecture Notes #6

References

• Cole, Mariani, Uszkoreit, Zaenen, Zue (eds.) Survey of the State of the Art in Human Language Technology, 1995

• Elhadad, Using Argumentation to Control Lexical Choice: A Functional Unification Implementation, 1993

• Elhadad, FUF: the Universal Unifier, User Manual, 1993

• Elhadad and Robin, SURGE: a Comprehensive Plug-in Syntactic Realization Component for Text Generation, 1999

• Kharitonov, CFUF: A Fast Interpreter for the Functional Unification Formalism, 1999

• Radev, Language Reuse and Regeneration: Generating Natural Language Summaries from Multiple On-Line Sources, Department of Computer Science, Columbia University, October 1998

Page 18: Fall 2004 Lecture Notes #6

Path notation

• You can view a FD as a tree• To specify features, you can use a path

– {feature feature … feature} value

– e.g. {prot number}

• You can also use relative paths– {^ number} value => the feature number for the current

node

– {^ ^ number} value => the feature number for the node above the current node

Page 19: Fall 2004 Lecture Notes #6

Sample grammar((alt top (((cat s) (prot ((cat np))) (goal ((cat np))) (verb ((cat vp) (number {prot number}))) (pattern (prot verb goal))) ((cat np) (n ((cat noun) (number {^ ^ number}))) (alt (((proper yes) (pattern (n))) ((proper no) (pattern (det n)) (det ((cat article) (lex “the”))))))) ((cat vp) (pattern (v)) (v ((cat verb)))) ((cat noun)) ((cat verb)) ((cat article)))))

Page 20: Fall 2004 Lecture Notes #6

Unification Example

Page 21: Fall 2004 Lecture Notes #6

Unify Prot

Page 22: Fall 2004 Lecture Notes #6

Unify Goal

Page 23: Fall 2004 Lecture Notes #6

Unify vp

Page 24: Fall 2004 Lecture Notes #6

Unify verb

Page 25: Fall 2004 Lecture Notes #6

Finish

Page 26: Fall 2004 Lecture Notes #6

Readings for next time

• J&M Chapters 14, 15, 20