3. Jan 2004 CSA3050: NLG2 3
Revealing Quotations
• Language understanding is somewhat like
counting from one to infinity; language
generation is like counting from infinity
back to one. [Y. Wilks, 1988]
• Generation from what?! [C. Longuet-
Higgins]
• Moral: there is no consensus about the
level of representation we start from. This
applies in particular to surface realisation.
4. Jan 2004 CSA3050: NLG2 4
Surface Realisation
• There is, however, some agreement that output
should be specified in terms of function rather
than syntactic form
• Consider the case of voice (syntactic form)
The system will save the document vs.
The document will be saved by the system
• Output of a discourse planner is not in terms of
voice, active v. passive.
• More likely in terms of notions like topic, focus
etc. whose surface realisation is left to a
subsequent processing stage.
5. Jan 2004 CSA3050: NLG2 5
Two Approaches to
Surface Realisation
• Systemic Grammar (Halliday 1985)
– Systemic Functional Linguistics
– Language as a resource for expressing meaning in
context.
– Sentences are regarded collections of functions that
are mapped to grammatical forms.
• Functional Unification Grammar (Kay 1979)
– Grammar is a "feature structure" (recursive
attribute/value pairs).
– Input specification is another feature structure
– Realisation viewed as further specification of input to
yield output sentence via fundamental operation of
functional unification.
6. Jan 2004 CSA3050: NLG2 6
Systemic Grammar:
Multi-Layered Sentence Analysis
the system will save the document
Mood subject finite predicator object
Transitivity actor process goal
Theme theme rheme
• Mood layer defines interaction between reader and writer:
telling v. asking v. ordering
• Transitivity layer expresses propositional content
• Theme layer deals with topic (highlighting function)
7. Jan 2004 CSA3050: NLG2 7
Systemic Grammar
• Grammar is represented as a graph called
a system network. This comprises
• and systems (curly braces)
– conjunctive features in boldface
• or systems (straight vertical lines)
– disjunctive features in normal face
• realisation statements (in italic).
– specify how disjunctive features are realised
9. Jan 2004 CSA3050: NLG2 9
Realisation Statements
• +X: insert the function X
+predicator
• X=Y: conflate the functions X and Y
goal = subject
• X>Y: order X somewhere before Y
subject > predicator
• X/A: function X has grammatical feature Y
subject/noun phrase
• X!L assign function X to lexical item L
passive!be
10. Jan 2004 CSA3050: NLG2 10
Generation Procedure
1. Traverse network from left to right, choosing
the appropriate features and collecting the
appropriate realisation statements.
2. Build an intermediate expression that obeys
the constraints set by the realisation
statements.
3. Recurse back through the grammar at a lower
level for functions not fully specified.
11. Jan 2004 CSA3050: NLG2 11
Example Input
(
:process save-1
:actor system-1
:goal document-1
:speechact assertion
:tense future
)
• N.B. This specification resembles that used by
PENMAN system (Mann 1983) based on KL-
ONE knowledge base.
12. Jan 2004 CSA3050: NLG2 12
Generation 1
• Start with clause feature
– insert predicator and classify as verb
• Proceed to mood subsystem
• after interrogating input specification
(assertion is specified) choose indicative
and declarative features.
• Insert subject and finite functions with
ordering subject > finite > predicator
13. Jan 2004 CSA3050: NLG2 13
Output of Mood System
Mood subject finite predicator
14. Jan 2004 CSA3050: NLG2 14
Generation 2
• Proceed to Transitivity subsystem.
• Assuming save-1 is a material process
(from KB)
– Insert goal and process functions
– Conflate process with (finite, predicator) pair
– Proceed to Voice subsystem
– Choose Active feature and obey realisation
statements.
15. Jan 2004 CSA3050: NLG2 15
Output of Transitivity System
Mood subject finite predicator object
Transitivity actor process goal
16. Jan 2004 CSA3050: NLG2 16
Generation 3
• Proceed to Theme subsystem
• Since there is no thematic specification in
the input, choose Unmarked Theme
– Insert theme and rheme functions
– Conflate theme with subject and rheme with
predicator,object
17. Jan 2004 CSA3050: NLG2 17
Output of Mood Subsystem
Mood subject finite predicator object
Transitivity actor process goal
Theme theme rheme
18. Jan 2004 CSA3050: NLG2 18
Generation 4
• Generation now recursively enters the
grammar at lower levels to fully specify
– the phrases (noun phrase network, auxiliary
network – not shown here)
– lexical items (usually through entries in the
knowledge base)
– and possibly morphological choices
19. Jan 2004 CSA3050: NLG2 19
Result of Generation
the system will save the document
Mood subject finite predicator object
Transitivity actor process goal
Theme theme rheme
20. Jan 2004 CSA3050: NLG2 20
Functional Unification Grammar
• Build the generation grammar as a feature
structure (FS)
• Build input specification as an FS
• Unify the two together (functional
unification operation).
• Linearize result.
21. Jan 2004 CSA3050: NLG2 21
Feature Structures
• Feature structures are essentially sets of
attribute value pairs
attribute1 value1
attribute2 value2
:
attribute3 value3
22. Jan 2004 CSA3050: NLG2 22
Feature Structure 2
• These can be used to express facts of
different kinds
name mike
height 156
:
eyes green
number sing
gender masc
:
case nom
human facts agreement facts
23. Jan 2004 CSA3050: NLG2 23
Feature Structures 3
• Furthermore, values can themselves be
feature structures
number sing
gender masc
case nom
cat NP
agreement
24. Jan 2004 CSA3050: NLG2 24
Functional Unification
• The information in feature structures can
be combined together by means of the
functional unification () operation.
name mike
height 156
eyes green
name mike
height 156
eyes green
=
26. Jan 2004 CSA3050: NLG2 26
Input Specification –
as a Feature Structure
cat S
actor head lex system
process head lex save
tense future
goal head lex document
27. 27
Partial Result
cat S
actor cat NP
head lex system
process cat VP
number {actor number}
head lex save
tense future
goal cat NP
head lex document
pattern (actor process goal)