Page 1
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Feature Structures, Unification
Scott FarrarCLMA, University of Washington
[email protected]
February 3, 2010
1/45
Page 2
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Today’s lecture
1 Some grammatical phenomenaLinguistic features
2 Feature structures
3 Operations on feature structuresSubsumptionUnification
4 Features in the NLTKCreating feature structuresFeatStruct behavior
2/45
Page 3
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Verb types
Consider the phrase structure rules in the PTB for verbs:
VP → VBZ NP...breaks the jar
VP → VBP NP...break the jar
VP → VBD NP...broke the jar
VP → VBN NP...broken the jar
We could capture the regularity by a rule like this:VP → VBx NPWhat exactly is ‘x’ representing?
3/45
Page 4
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Verb types
Consider the phrase structure rules in the PTB for verbs:
VP → VBZ NP...breaks the jar
VP → VBP NP...break the jar
VP → VBD NP...broke the jar
VP → VBN NP...broken the jar
We could capture the regularity by a rule like this:VP → VBx NPWhat exactly is ‘x’ representing?
3/45
Page 5
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Noun types
And for nouns:
NP → DT NN...the book
NP → DT NNS...the books
We could capture the regularity by a rule like this:NP → DT NNxWhat exactly is ‘x’ representing?
4/45
Page 6
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Noun types
And for nouns:
NP → DT NN...the book
NP → DT NNS...the books
We could capture the regularity by a rule like this:NP → DT NNxWhat exactly is ‘x’ representing?
4/45
Page 7
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subject-Verb Agreement
The parrot talks.
*The parrot talk.
They know Mary.
*They knows Mary.
We sing.
*We sings.
Furthermore agreement infomation is not captured intreebanks such as the PTB:S → NP VPThe NNx in the NP does not depend on the VBx in the VP.
5/45
Page 8
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subject-Verb Agreement
The parrot talks.
*The parrot talk.
They know Mary.
*They knows Mary.
We sing.
*We sings.
Furthermore agreement infomation is not captured intreebanks such as the PTB:S → NP VPThe NNx in the NP does not depend on the VBx in the VP.
5/45
Page 9
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subject-Verb Agreement
The parrot talks.
*The parrot talk.
They know Mary.
*They knows Mary.
We sing.
*We sings.
Furthermore agreement infomation is not captured intreebanks such as the PTB:S → NP VPThe NNx in the NP does not depend on the VBx in the VP.
5/45
Page 10
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subject-Verb Agreement
The parrot talks.
*The parrot talk.
They know Mary.
*They knows Mary.
We sing.
*We sings.
Furthermore agreement infomation is not captured intreebanks such as the PTB:S → NP VPThe NNx in the NP does not depend on the VBx in the VP.
5/45
Page 11
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subject-Verb Agreement
The parrot talks.
*The parrot talk.
They know Mary.
*They knows Mary.
We sing.
*We sings.
Furthermore agreement infomation is not captured intreebanks such as the PTB:S → NP VPThe NNx in the NP does not depend on the VBx in the VP.
5/45
Page 12
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subject-Verb Agreement
The parrot talks.
*The parrot talk.
They know Mary.
*They knows Mary.
We sing.
*We sings.
Furthermore agreement infomation is not captured intreebanks such as the PTB:S → NP VPThe NNx in the NP does not depend on the VBx in the VP.
5/45
Page 13
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subject-Verb Agreement
The parrot talks.
*The parrot talk.
They know Mary.
*They knows Mary.
We sing.
*We sings.
Furthermore agreement infomation is not captured intreebanks such as the PTB:S → NP VPThe NNx in the NP does not depend on the VBx in the VP.
5/45
Page 14
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
linguistic feature: a property-like element that changes thegrammatical behavior of syntactic constituents; the elementsinto which linguistic units, such as words, can be brokendown. For a given sub-domain of grammar, there is arelevant feature:
person: I go, you go, he goes
number: he dances, they dance
case: he brings John, John brings him
tense: go, went, gone
modality: may, can,
honorifics (e.g., Japanese)
evidentiality (e.g., Shipibo)
noun class (e.g., Chinese)
6/45
Page 15
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
linguistic feature: a property-like element that changes thegrammatical behavior of syntactic constituents; the elementsinto which linguistic units, such as words, can be brokendown. For a given sub-domain of grammar, there is arelevant feature:
person: I go, you go, he goes
number: he dances, they dance
case: he brings John, John brings him
tense: go, went, gone
modality: may, can,
honorifics (e.g., Japanese)
evidentiality (e.g., Shipibo)
noun class (e.g., Chinese)
6/45
Page 16
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
linguistic feature: a property-like element that changes thegrammatical behavior of syntactic constituents; the elementsinto which linguistic units, such as words, can be brokendown. For a given sub-domain of grammar, there is arelevant feature:
person: I go, you go, he goes
number: he dances, they dance
case: he brings John, John brings him
tense: go, went, gone
modality: may, can,
honorifics (e.g., Japanese)
evidentiality (e.g., Shipibo)
noun class (e.g., Chinese)
6/45
Page 17
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
linguistic feature: a property-like element that changes thegrammatical behavior of syntactic constituents; the elementsinto which linguistic units, such as words, can be brokendown. For a given sub-domain of grammar, there is arelevant feature:
person: I go, you go, he goes
number: he dances, they dance
case: he brings John, John brings him
tense: go, went, gone
modality: may, can,
honorifics (e.g., Japanese)
evidentiality (e.g., Shipibo)
noun class (e.g., Chinese)
6/45
Page 18
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
linguistic feature: a property-like element that changes thegrammatical behavior of syntactic constituents; the elementsinto which linguistic units, such as words, can be brokendown. For a given sub-domain of grammar, there is arelevant feature:
person: I go, you go, he goes
number: he dances, they dance
case: he brings John, John brings him
tense: go, went, gone
modality: may, can,
honorifics (e.g., Japanese)
evidentiality (e.g., Shipibo)
noun class (e.g., Chinese)
6/45
Page 19
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
linguistic feature: a property-like element that changes thegrammatical behavior of syntactic constituents; the elementsinto which linguistic units, such as words, can be brokendown. For a given sub-domain of grammar, there is arelevant feature:
person: I go, you go, he goes
number: he dances, they dance
case: he brings John, John brings him
tense: go, went, gone
modality: may, can,
honorifics (e.g., Japanese)
evidentiality (e.g., Shipibo)
noun class (e.g., Chinese)
6/45
Page 20
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
linguistic feature: a property-like element that changes thegrammatical behavior of syntactic constituents; the elementsinto which linguistic units, such as words, can be brokendown. For a given sub-domain of grammar, there is arelevant feature:
person: I go, you go, he goes
number: he dances, they dance
case: he brings John, John brings him
tense: go, went, gone
modality: may, can,
honorifics (e.g., Japanese)
evidentiality (e.g., Shipibo)
noun class (e.g., Chinese)
6/45
Page 21
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
linguistic feature: a property-like element that changes thegrammatical behavior of syntactic constituents; the elementsinto which linguistic units, such as words, can be brokendown. For a given sub-domain of grammar, there is arelevant feature:
person: I go, you go, he goes
number: he dances, they dance
case: he brings John, John brings him
tense: go, went, gone
modality: may, can,
honorifics (e.g., Japanese)
evidentiality (e.g., Shipibo)
noun class (e.g., Chinese)
6/45
Page 22
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
linguistic feature: a property-like element that changes thegrammatical behavior of syntactic constituents; the elementsinto which linguistic units, such as words, can be brokendown. For a given sub-domain of grammar, there is arelevant feature:
person: I go, you go, he goes
number: he dances, they dance
case: he brings John, John brings him
tense: go, went, gone
modality: may, can,
honorifics (e.g., Japanese)
evidentiality (e.g., Shipibo)
noun class (e.g., Chinese)
6/45
Page 23
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
Features are usually modeled as pairs of feature names andfeature values. A value refers to the language-specificphenomenon within the sub-domain:
person: 1st, 2nd, 3rdnumber: singular, plural, paucal, dual, trial, etc.case: accusative, ergative, locative, directionaltense: past, present, future, hodiernal past, hesternalpastmodality: conditional, subjunctive, abilitativehonorifics: plus honorific, minus honorificevidentiality: visual, auditory, hearsay, folklorenoun class: I, II, III, etc.
See http://grammaticalfeatures.net for a nice summary offeatures from a strictly linguistics perspective.
7/45
Page 24
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
Features are usually modeled as pairs of feature names andfeature values. A value refers to the language-specificphenomenon within the sub-domain:
person: 1st, 2nd, 3rd
number: singular, plural, paucal, dual, trial, etc.case: accusative, ergative, locative, directionaltense: past, present, future, hodiernal past, hesternalpastmodality: conditional, subjunctive, abilitativehonorifics: plus honorific, minus honorificevidentiality: visual, auditory, hearsay, folklorenoun class: I, II, III, etc.
See http://grammaticalfeatures.net for a nice summary offeatures from a strictly linguistics perspective.
7/45
Page 25
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
Features are usually modeled as pairs of feature names andfeature values. A value refers to the language-specificphenomenon within the sub-domain:
person: 1st, 2nd, 3rdnumber: singular, plural, paucal, dual, trial, etc.
case: accusative, ergative, locative, directionaltense: past, present, future, hodiernal past, hesternalpastmodality: conditional, subjunctive, abilitativehonorifics: plus honorific, minus honorificevidentiality: visual, auditory, hearsay, folklorenoun class: I, II, III, etc.
See http://grammaticalfeatures.net for a nice summary offeatures from a strictly linguistics perspective.
7/45
Page 26
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
Features are usually modeled as pairs of feature names andfeature values. A value refers to the language-specificphenomenon within the sub-domain:
person: 1st, 2nd, 3rdnumber: singular, plural, paucal, dual, trial, etc.case: accusative, ergative, locative, directional
tense: past, present, future, hodiernal past, hesternalpastmodality: conditional, subjunctive, abilitativehonorifics: plus honorific, minus honorificevidentiality: visual, auditory, hearsay, folklorenoun class: I, II, III, etc.
See http://grammaticalfeatures.net for a nice summary offeatures from a strictly linguistics perspective.
7/45
Page 27
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
Features are usually modeled as pairs of feature names andfeature values. A value refers to the language-specificphenomenon within the sub-domain:
person: 1st, 2nd, 3rdnumber: singular, plural, paucal, dual, trial, etc.case: accusative, ergative, locative, directionaltense: past, present, future, hodiernal past, hesternalpast
modality: conditional, subjunctive, abilitativehonorifics: plus honorific, minus honorificevidentiality: visual, auditory, hearsay, folklorenoun class: I, II, III, etc.
See http://grammaticalfeatures.net for a nice summary offeatures from a strictly linguistics perspective.
7/45
Page 28
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
Features are usually modeled as pairs of feature names andfeature values. A value refers to the language-specificphenomenon within the sub-domain:
person: 1st, 2nd, 3rdnumber: singular, plural, paucal, dual, trial, etc.case: accusative, ergative, locative, directionaltense: past, present, future, hodiernal past, hesternalpastmodality: conditional, subjunctive, abilitative
honorifics: plus honorific, minus honorificevidentiality: visual, auditory, hearsay, folklorenoun class: I, II, III, etc.
See http://grammaticalfeatures.net for a nice summary offeatures from a strictly linguistics perspective.
7/45
Page 29
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
Features are usually modeled as pairs of feature names andfeature values. A value refers to the language-specificphenomenon within the sub-domain:
person: 1st, 2nd, 3rdnumber: singular, plural, paucal, dual, trial, etc.case: accusative, ergative, locative, directionaltense: past, present, future, hodiernal past, hesternalpastmodality: conditional, subjunctive, abilitativehonorifics: plus honorific, minus honorific
evidentiality: visual, auditory, hearsay, folklorenoun class: I, II, III, etc.
See http://grammaticalfeatures.net for a nice summary offeatures from a strictly linguistics perspective.
7/45
Page 30
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
Features are usually modeled as pairs of feature names andfeature values. A value refers to the language-specificphenomenon within the sub-domain:
person: 1st, 2nd, 3rdnumber: singular, plural, paucal, dual, trial, etc.case: accusative, ergative, locative, directionaltense: past, present, future, hodiernal past, hesternalpastmodality: conditional, subjunctive, abilitativehonorifics: plus honorific, minus honorificevidentiality: visual, auditory, hearsay, folklore
noun class: I, II, III, etc.
See http://grammaticalfeatures.net for a nice summary offeatures from a strictly linguistics perspective.
7/45
Page 31
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
Features are usually modeled as pairs of feature names andfeature values. A value refers to the language-specificphenomenon within the sub-domain:
person: 1st, 2nd, 3rdnumber: singular, plural, paucal, dual, trial, etc.case: accusative, ergative, locative, directionaltense: past, present, future, hodiernal past, hesternalpastmodality: conditional, subjunctive, abilitativehonorifics: plus honorific, minus honorificevidentiality: visual, auditory, hearsay, folklorenoun class: I, II, III, etc.
See http://grammaticalfeatures.net for a nice summary offeatures from a strictly linguistics perspective.
7/45
Page 32
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Features and values
Definition
Features are usually modeled as pairs of feature names andfeature values. A value refers to the language-specificphenomenon within the sub-domain:
person: 1st, 2nd, 3rdnumber: singular, plural, paucal, dual, trial, etc.case: accusative, ergative, locative, directionaltense: past, present, future, hodiernal past, hesternalpastmodality: conditional, subjunctive, abilitativehonorifics: plus honorific, minus honorificevidentiality: visual, auditory, hearsay, folklorenoun class: I, II, III, etc.
See http://grammaticalfeatures.net for a nice summary offeatures from a strictly linguistics perspective.
7/45
Page 33
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Ontology of features
Whereas NPs, VPs, NNs, etc. are conceived of as categories(first-order “citizens”) in the grammar, features are moreproperty-like.
The VP has the feature value ‘past tense’
The verb is a ‘past tense’ verb
The noun has a case feature ‘absolutive’.
Just like, for example, an object like a car can have a colorproperty red.
8/45
Page 34
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Ontology of features
Whereas NPs, VPs, NNs, etc. are conceived of as categories(first-order “citizens”) in the grammar, features are moreproperty-like.
The VP has the feature value ‘past tense’
The verb is a ‘past tense’ verb
The noun has a case feature ‘absolutive’.
Just like, for example, an object like a car can have a colorproperty red.
8/45
Page 35
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Ontology of features
Whereas NPs, VPs, NNs, etc. are conceived of as categories(first-order “citizens”) in the grammar, features are moreproperty-like.
The VP has the feature value ‘past tense’
The verb is a ‘past tense’ verb
The noun has a case feature ‘absolutive’.
Just like, for example, an object like a car can have a colorproperty red.
8/45
Page 36
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Bundles of feature (values)
Sometimes features are conceived of as the atomic units thatcompose more complex categories.
A noun is a feature bundle of semantic, morphological andphonological features: form ‘dog’
number singular
animacy animate
9/45
Page 37
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Bundles of feature (values)
Sometimes features are conceived of as the atomic units thatcompose more complex categories.
A noun is a feature bundle of semantic, morphological andphonological features: form ‘dog’
number singular
animacy animate
9/45
Page 38
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Today’s lecture
1 Some grammatical phenomenaLinguistic features
2 Feature structures
3 Operations on feature structuresSubsumptionUnification
4 Features in the NLTKCreating feature structuresFeatStruct behavior
10/45
Page 39
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Feature structures
A feature structure is, informally speaking, a set of featurenames and values: feature1 value1
feature2 value2
feature3 value3
A feature structure is defined according to particulargrammatical traditions:
Functional Unification Grammar
Lexical Functional Grammar
Head-Driven Phrase Structure Grammar (Ling566)
11/45
Page 40
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Typed feature structures: HPSG formal definition
Definition
A typed feature structure is defined on a finite set offeatures Feat and a type hierarchy 〈Type, v〉. It is a tuple〈Q, r , δ, θ〉 where:
Q is a finite set of nodes,
r ∈ Q (r is the root node)
θ : Q −→ Type is a partial typing function
δ : Q × Feat −→ Q is a partial feature value function
subject to the following conditions:
1 r isn’t a θ-descendant.
2 all members of Q except r are θ-descendants of r .
3 Some systems add an extra (no cycles) condition:there is no node n or path π such that δ(n, π) = n.
from Copestake (2000), Appendix.
12/45
Page 41
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Typed feature structures: HPSG formal definition
Definition
A typed feature structure is defined on a finite set offeatures Feat and a type hierarchy 〈Type, v〉. It is a tuple〈Q, r , δ, θ〉 where:
Q is a finite set of nodes,
r ∈ Q (r is the root node)
θ : Q −→ Type is a partial typing function
δ : Q × Feat −→ Q is a partial feature value function
subject to the following conditions:
1 r isn’t a θ-descendant.
2 all members of Q except r are θ-descendants of r .
3 Some systems add an extra (no cycles) condition:there is no node n or path π such that δ(n, π) = n.
from Copestake (2000), Appendix.
12/45
Page 42
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
More about feature values
atomic value: an unstructured value, one with only one part[tense past
person 2
]
complex value: a structured value, itself a feature structuretense past
agreement
[person 2
number singular
]
13/45
Page 43
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
More about feature values
atomic value: an unstructured value, one with only one part[tense past
person 2
]
complex value: a structured value, itself a feature structuretense past
agreement
[person 2
number singular
]
13/45
Page 44
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Graphs or matrices
Feature structures are a type of attribute-value matrix(AVM), a more generalized data structure used to representall kinds of information. Feature structures (and AVMs) canbe represented as graphs with nodes and arcs (cf. text bookfigures)
Nodes correspond to variable values and the paths tothe variable names.
Arcs represent the feature names.
A feature path is a list of features through a featurestructure leading to a particular value.
14/45
Page 45
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Graphs or matrices
Feature structures are a type of attribute-value matrix(AVM), a more generalized data structure used to representall kinds of information. Feature structures (and AVMs) canbe represented as graphs with nodes and arcs (cf. text bookfigures)
Nodes correspond to variable values and the paths tothe variable names.
Arcs represent the feature names.
A feature path is a list of features through a featurestructure leading to a particular value.
14/45
Page 46
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Feature path
tense past
agreement
[person 2
number singular
]Path:〈agreement number〉 = singular
15/45
Page 47
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Feature path
tense past
agreement
[person 2
number singular
]Path:〈agreement number〉 = singular
15/45
Page 48
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Feature path
tense past
agreement
[person 2
number singular
]Path:〈agreement number〉 = singular
15/45
Page 49
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Feature path
tense past
agreement
[person 2
number singular
]Path:〈agreement number〉 = singular
15/45
Page 50
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Reentrant structures
Definition
Reentrant structure: one in which the attribute has avalue that is another feature structure.
S[
head 1
]NP
[head
[agr 2
]]VP
[head 1
[agr 2
]]
A feature structure can be used to represent partialinformation.
16/45
Page 51
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Reentrant structures
Definition
Reentrant structure: one in which the attribute has avalue that is another feature structure.
S[
head 1
]NP
[head
[agr 2
]]VP
[head 1
[agr 2
]]
A feature structure can be used to represent partialinformation.
16/45
Page 52
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
More linguistic examples
Feature structure for a verb:cat VB
lex | GO |tense past
aspect progressive
form “was going”
Feature structure for a noun:
cat NN
lex | dog |number PL
form “dogs”
17/45
Page 53
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Linguistic examples
Feature structure for a noun phrase (e.g., the boy):26666666666666666666664
cat NP
spec 1
26664cat DT
number SG
definite yes
form “the”
37775
head 2
26664cat NN
number SG
lex | boy |form “boy”
37775definite yes
number SG
37777777777777777777775
18/45
Page 54
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Today’s lecture
1 Some grammatical phenomenaLinguistic features
2 Feature structures
3 Operations on feature structuresSubsumptionUnification
4 Features in the NLTKCreating feature structuresFeatStruct behavior
19/45
Page 55
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subsumption
Definition
Subsumption is a relation that holds between featurestructures. A less specific (more abstract) feature structuresubsumes an equally or more specific one. The subsumptionsymbol is v.
[number PL
]
v
[number PL
person 3
]v
number PL
person 3
lex | dog |
20/45
Page 56
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subsumption
Definition
Subsumption is a relation that holds between featurestructures. A less specific (more abstract) feature structuresubsumes an equally or more specific one. The subsumptionsymbol is v.
[number PL
]v
[number PL
person 3
]
v
number PL
person 3
lex | dog |
20/45
Page 57
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subsumption
Definition
Subsumption is a relation that holds between featurestructures. A less specific (more abstract) feature structuresubsumes an equally or more specific one. The subsumptionsymbol is v.
[number PL
]v
[number PL
person 3
]v
number PL
person 3
lex | dog |
20/45
Page 58
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subsumption
[number PL
person 3
]
? ¬ v
[number PL
][
number PL]
?
¬ v
[number SG
][ ]
?
v
[number SG
]
21/45
Page 59
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subsumption
[number PL
person 3
]?
¬ v
[number PL
][
number PL]
?
¬ v
[number SG
][ ]
?
v
[number SG
]
21/45
Page 60
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subsumption
[number PL
person 3
]
?
¬ v[
number PL]
[number PL
]?
¬ v
[number SG
][ ]
?
v
[number SG
]
21/45
Page 61
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subsumption
[number PL
person 3
]
?
¬ v[
number PL]
[number PL
]?
¬ v
[number SG
][ ]
?
v
[number SG
]
21/45
Page 62
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subsumption
[number PL
person 3
]
?
¬ v[
number PL]
[number PL
]
?
¬ v[
number SG]
[ ]?
v
[number SG
]
21/45
Page 63
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subsumption
[number PL
person 3
]
?
¬ v[
number PL]
[number PL
]
?
¬ v[
number SG]
[ ]?
v
[number SG
]
21/45
Page 64
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subsumption
[number PL
person 3
]
?
¬ v[
number PL]
[number PL
]
?
¬ v[
number SG]
[ ]
?
v[
number SG]
21/45
Page 65
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Subsumption
Criteria for vF v G iff:
For every feature x in F , F (x) v G (x), where F (x)means “the value of the feature x of feature structureF ”.
For all paths p and q in F such that F (p) = F (q), it isalso the case that G (p) = G (q).
22/45
Page 66
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
The unification operation
Definition
Unification is a binary operation over two featuresstructures f 1 and f 2, used for comparing or combininginformation.
Unification of f 1 and f 2 either returns a merged featurestructure with the information from both f 1 and f 2, or falseif f 1 and f 2 are incompatible. The unification operator isrepresented by: t.[
number PL]t
[person 2
]=
[number PL
person 2
]
23/45
Page 67
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
The unification operation
Definition
Unification is a binary operation over two featuresstructures f 1 and f 2, used for comparing or combininginformation.
Unification of f 1 and f 2 either returns a merged featurestructure with the information from both f 1 and f 2, or falseif f 1 and f 2 are incompatible. The unification operator isrepresented by: t.
[number PL
]t
[person 2
]=
[number PL
person 2
]
23/45
Page 68
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
The unification operation
Definition
Unification is a binary operation over two featuresstructures f 1 and f 2, used for comparing or combininginformation.
Unification of f 1 and f 2 either returns a merged featurestructure with the information from both f 1 and f 2, or falseif f 1 and f 2 are incompatible. The unification operator isrepresented by: t.[
number PL]t
[person 2
]
=
[number PL
person 2
]
23/45
Page 69
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
The unification operation
Definition
Unification is a binary operation over two featuresstructures f 1 and f 2, used for comparing or combininginformation.
Unification of f 1 and f 2 either returns a merged featurestructure with the information from both f 1 and f 2, or falseif f 1 and f 2 are incompatible. The unification operator isrepresented by: t.[
number PL]t
[person 2
]=
[number PL
person 2
]
23/45
Page 70
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
The unification operation
For comparing information in two feature structures,unification can be used. Are two feature structures thesame, or are they incompatible?[
number PL]t
[number PL
]=
[number PL
][
number PL]t
[number SG
]= False
Unification preserves and possibly adds information to theresulting feature structure. This property is called:monotonicity
24/45
Page 71
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
The unification operation
For comparing information in two feature structures,unification can be used. Are two feature structures thesame, or are they incompatible?[
number PL]t
[number PL
]=
[number PL
]
[number PL
]t
[number SG
]= False
Unification preserves and possibly adds information to theresulting feature structure. This property is called:monotonicity
24/45
Page 72
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
The unification operation
For comparing information in two feature structures,unification can be used. Are two feature structures thesame, or are they incompatible?[
number PL]t
[number PL
]=
[number PL
][
number PL]t
[number SG
]=
False
Unification preserves and possibly adds information to theresulting feature structure. This property is called:monotonicity
24/45
Page 73
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
The unification operation
For comparing information in two feature structures,unification can be used. Are two feature structures thesame, or are they incompatible?[
number PL]t
[number PL
]=
[number PL
][
number PL]t
[number SG
]= False
Unification preserves and possibly adds information to theresulting feature structure. This property is called:monotonicity
24/45
Page 74
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
The unification operation
For comparing information in two feature structures,unification can be used. Are two feature structures thesame, or are they incompatible?[
number PL]t
[number PL
]=
[number PL
][
number PL]t
[number SG
]= False
Unification preserves and possibly adds information to theresulting feature structure. This property is called:
monotonicity
24/45
Page 75
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
The unification operation
For comparing information in two feature structures,unification can be used. Are two feature structures thesame, or are they incompatible?[
number PL]t
[number PL
]=
[number PL
][
number PL]t
[number SG
]= False
Unification preserves and possibly adds information to theresulting feature structure. This property is called:monotonicity
24/45
Page 76
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Unification of dissimilar structures
[agreement
[number PL
]]t
[number PL
]=
agreement[
number PL]
[number PL
]
25/45
Page 77
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Unification of dissimilar structures
[agreement
[number PL
]]t
[number PL
]=agreement
[number PL
][
number PL]
25/45
Page 78
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Unification: example
Grammar entry for a sentence26666666666666666666664
cat S
voice active
agent 1
"cat NP
number 4
#
process 2
"cat VB
number 4
#patient 3
hcat NP
ipattern
264subject 1
verb 2
object 3
375
37777777777777777777775
26/45
Page 79
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Unification: example
Grammar entry for a noun phrase2666666666666666666664
cat NP
spec 1
264cat DT
number 3
definite 4
375head 2
"cat NN
number 3
#number 3
definite 4
pattern
"first 1
second 2
#
3777777777777777777775
27/45
Page 80
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Unification: example
Lexical entries in AVM formcat DT
definite yes
number SG
form “the”
cat DT
definite yes
number PL
form “these”
28/45
Page 81
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Unification: example
Unifying a noun phrase with a determiner2666666666666666666664
cat NP
spec 1
264cat DT
number 3
definite 4
375head 2
"cat NN
number 3
#number 3
definite 4
pattern
"first 1
second 2
#
3777777777777777777775
t
26664cat DT
definite yes
number PL
form “these”
37775
29/45
Page 82
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Unification: example
Unifying the right part of a noun phrase with a determiner264cat DT
number 3
definite 4
375 t
26664cat DT
definite yes
number PL
form “these”
37775 =
26664cat DT
definite yes
number PL
form “these”
37775
30/45
Page 83
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Unification: example
Unifying the right part of a noun phrase with a determiner264cat DT
number 3
definite 4
375 t
26664cat DT
definite yes
number PL
form “these”
37775 =
26664cat DT
definite yes
number PL
form “these”
37775
30/45
Page 84
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Unification: example
Result of unification
cat NP
spec 1
cat DT
number PL
definite yes
form “these”
head 2
[cat NN
number PL
]number PL
definite yes
pattern
[first 1
second 2
]
31/45
Page 85
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Today’s lecture
1 Some grammatical phenomenaLinguistic features
2 Feature structures
3 Operations on feature structuresSubsumptionUnification
4 Features in the NLTKCreating feature structuresFeatStruct behavior
32/45
Page 86
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
The main features module
The NLTK has a module for feature structures andaccompanying operations: nltk.featstruct
The basic feature structure nltk.featstruct.FeatStructis implemented as a mapping (dictionary) from features tovalues.
>>>from nltk.featstruct import FeatStruct
>>>fs1 = FeatStruct(number=‘singular’, person=3)
>>>print fs1
[ number = ‘singular’ ][ person = 3 ]
33/45
Page 87
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
The main features module
>>>fs2 = FeatStruct(type=‘NP’, agr=fs1)
>>>print fs2
[ agr = [ number = ‘singular’ ] ][ [ person = 3 ] ][ ][ type = ’NP’ ]
34/45
Page 88
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Unification in the NLTK
The NLTK has an implementation of unification withnltk.featstruct.FeatStruct.unify().
fs1
[ agr = [ number = ‘singular’ ] ]
[ [ person = 3 ] ]
[ ]
[ type = ’NP’ ]
fs2
[ agr = [ number = ?n ] ]
[ ]
[ subj = [ number = ?n ] ]
35/45
Page 89
Feature Structures,Unification
Scott FarrarCLMA, Universityof Washington [email protected]
Some grammaticalphenomena
Linguistic features
Feature structures
Operations onfeature structures
Subsumption
Unification
Features in theNLTK
Creating featurestructures
FeatStruct behavior
Unification in the NLTK
>>>print fs2.unify(fs3)[ agr = [ number = ‘singular’ ] ][ [ person = 3 ] ][ ][ subj = [ number = ‘singular’ ] ][ ][ type = ‘NP’ ]
36/45
Page 90
Creating feature structures: FeatStruct
fs1 = FeatStruct(agreement= \
FeatStruct(number=‘singular’, person=‘third’))
[ agreement = [ number = ‘singular’ ] ]
[ [ person = ‘third’ ] ]
Use the FeatStruct constructor; note how quotes are used.
Page 91
Creating feature structures: FeatStruct
fs1 = FeatStruct(agreement= \
FeatStruct(number=‘singular’, person=‘third’))
[ agreement = [ number = ‘singular’ ] ]
[ [ person = ‘third’ ] ]
Use the FeatStruct constructor; note how quotes are used.
Page 92
Creating feature structures: FeatStruct
fs1 = FeatStruct(agreement= \
FeatStruct(number=‘singular’, person=‘third’))
[ agreement = [ number = ‘singular’ ] ]
[ [ person = ‘third’ ] ]
Use the FeatStruct constructor; note how quotes are used.
Page 93
Creating feature structures, short-hand
fs1 = FeatStruct("[agreement = \
[number=‘singular’,person=‘third’]]")
[ agreement = [ number = ‘singular’ ] ]
[ [ person = ‘third’ ] ]
The feature structure is parsed from the string. Values arequoted.
Page 94
Creating feature structures, short-hand
fs1 = FeatStruct("[agreement = \
[number=‘singular’,person=‘third’]]")
[ agreement = [ number = ‘singular’ ] ]
[ [ person = ‘third’ ] ]
The feature structure is parsed from the string. Values arequoted.
Page 95
Creating feature structures, short-hand
fs1 = FeatStruct("[agreement = \
[number=‘singular’,person=‘third’]]")
[ agreement = [ number = ‘singular’ ] ]
[ [ person = ‘third’ ] ]
The feature structure is parsed from the string. Values arequoted.
Page 96
Creating feature structures, short-hand w/o valuequotes
fs1 = FeatStruct("[agreement = \
[number=singular,person=third]]")
[ agreement = [ number = ‘singular’ ] ]
[ [ person = ‘third’ ] ]
Value quotes aren’t necessary.
Page 97
Creating feature structures, short-hand w/o valuequotes
fs1 = FeatStruct("[agreement = \
[number=singular,person=third]]")
[ agreement = [ number = ‘singular’ ] ]
[ [ person = ‘third’ ] ]
Value quotes aren’t necessary.
Page 98
Creating feature structures, short-hand w/o valuequotes
fs1 = FeatStruct("[agreement = \
[number=singular,person=third]]")
[ agreement = [ number = ‘singular’ ] ]
[ [ person = ‘third’ ] ]
Value quotes aren’t necessary.
Page 99
Using indices
fs = FeatStruct("[\
NAME=Lee, \
ADDRESS=(1)[NUMBER=74, STREET=‘rue Pascal’],\
SPOUSE=[NAME=Kim, ADDRESS->(1)],]")
[ ADDRESS = (1) [ NUMBER = 74 ] ]
[ [ STREET = ‘rue Pascal’ ] ]
[ ]
[ NAME = ’Lee’ ]
[ ]
[ SPOUSE = [ ADDRESS -> (1) ] ]
[ [ NAME = ‘Kim’ ] ]
The index is assigned a value, and then referenced.
Page 100
Using indices
fs = FeatStruct("[\
NAME=Lee, \
ADDRESS=(1)[NUMBER=74, STREET=‘rue Pascal’],\
SPOUSE=[NAME=Kim, ADDRESS->(1)],]")
[ ADDRESS = (1) [ NUMBER = 74 ] ]
[ [ STREET = ‘rue Pascal’ ] ]
[ ]
[ NAME = ’Lee’ ]
[ ]
[ SPOUSE = [ ADDRESS -> (1) ] ]
[ [ NAME = ‘Kim’ ] ]
The index is assigned a value, and then referenced.
Page 101
Using indices
fs = FeatStruct("[\
NAME=Lee, \
ADDRESS=(1)[NUMBER=74, STREET=‘rue Pascal’],\
SPOUSE=[NAME=Kim, ADDRESS->(1)],]")
[ ADDRESS = (1) [ NUMBER = 74 ] ]
[ [ STREET = ‘rue Pascal’ ] ]
[ ]
[ NAME = ’Lee’ ]
[ ]
[ SPOUSE = [ ADDRESS -> (1) ] ]
[ [ NAME = ‘Kim’ ] ]
The index is assigned a value, and then referenced.
Page 102
Using indices: reference before assignment
fs = FeatStruct("[\
NAME=Lee, \
SPOUSE=[NAME=Kim, ADDRESS->(1)], \
ADDRESS=(1)[NUMBER=74, STREET=‘rue Pascal’]]")
ValueError: Error parsing feature structure
[NAME=Lee,
SPOUSE=[NAME=Kim, ADDRESS->(1)], ...
^ Expected bound identifier
Page 103
Using indices: reference before assignment
fs = FeatStruct("[\
NAME=Lee, \
SPOUSE=[NAME=Kim, ADDRESS->(1)], \
ADDRESS=(1)[NUMBER=74, STREET=‘rue Pascal’]]")
ValueError: Error parsing feature structure
[NAME=Lee,
SPOUSE=[NAME=Kim, ADDRESS->(1)], ...
^ Expected bound identifier
Page 104
Using variables
from nltk.sem.logic import Variable
fs10=FeatStruct("\
[NP=[head=[agreement=?n]], \
VP=[head=(1)[agreement=?n]]]")
[ NP = [ head = [ agreement = ?n ] ] ]
[ ]
[ VP = [ head = [ agreement = ?n ] ] ]
Page 105
Using variables
from nltk.sem.logic import Variable
fs10=FeatStruct("\
[NP=[head=[agreement=?n]], \
VP=[head=(1)[agreement=?n]]]")
[ NP = [ head = [ agreement = ?n ] ] ]
[ ]
[ VP = [ head = [ agreement = ?n ] ] ]
Page 106
Example from textbook
What does this feature structure represent?26666664S
hhead 1
iNP
»head
hagreement 2
i–VP
»head 1
hagreement 2
i–
37777775
S → NPVP〈 NP head agreement 〉 = 〈 VP head agreement 〉〈 S head 〉 = 〈 VP head 〉
Page 107
Example from textbook
What does this feature structure represent?26666664S
hhead 1
iNP
»head
hagreement 2
i–VP
»head 1
hagreement 2
i–
37777775S → NPVP
〈 NP head agreement 〉 = 〈 VP head agreement 〉〈 S head 〉 = 〈 VP head 〉
Page 108
Example from textbook
What does this feature structure represent?26666664S
hhead 1
iNP
»head
hagreement 2
i–VP
»head 1
hagreement 2
i–
37777775S → NPVP〈 NP head agreement 〉 = 〈 VP head agreement 〉
〈 S head 〉 = 〈 VP head 〉
Page 109
Example from textbook
What does this feature structure represent?26666664S
hhead 1
iNP
»head
hagreement 2
i–VP
»head 1
hagreement 2
i–
37777775S → NPVP〈 NP head agreement 〉 = 〈 VP head agreement 〉〈 S head 〉 = 〈 VP head 〉
Page 110
Need to combine variables and indices
fs3=FeatStruct("\
[NP=[head=[agreement=?n]], \
VP=[head=(1)[agreement=?n]], \
S=[head->(1)]]")
[ NP = [ head = [ agreement = ?n ] ] ]
[ ]
[ S = [ head = (1) [ agreement = ?n ] ] ]
[ ]
[ VP = [ head -> (1) ]
Page 111
Need to combine variables and indices
fs3=FeatStruct("\
[NP=[head=[agreement=?n]], \
VP=[head=(1)[agreement=?n]], \
S=[head->(1)]]")
[ NP = [ head = [ agreement = ?n ] ] ]
[ ]
[ S = [ head = (1) [ agreement = ?n ] ] ]
[ ]
[ VP = [ head -> (1) ]
Page 112
Unification in NLTK
[ VP = [ head = [ agreement = [ number = ‘singular’ ] ] ] ]
[ [ [ [ person = ‘third’ ] ] ] ]
[ NP = [ head = [ agreement = ?n ] ] ]
[ ]
[ S = [ head = (1) [ agreement = ?n ] ] ]
[ ]
[ VP = [ head -> (1) ] ]
[ NP = [ head = [ agreement = (1) [ number = ‘singular’ ] ] ] ]
[ [ [ [ person = ‘third’ ] ] ] ]
[ ]
[ S = [ head = (2) [ agreement -> (1) ] ] ]
[ ]
[ VP = [ head -> (2) ] ]
Printed version looks odd, but graph is intact.
Page 113
Unification in NLTK
[ VP = [ head = [ agreement = [ number = ‘singular’ ] ] ] ]
[ [ [ [ person = ‘third’ ] ] ] ]
[ NP = [ head = [ agreement = ?n ] ] ]
[ ]
[ S = [ head = (1) [ agreement = ?n ] ] ]
[ ]
[ VP = [ head -> (1) ] ]
[ NP = [ head = [ agreement = (1) [ number = ‘singular’ ] ] ] ]
[ [ [ [ person = ‘third’ ] ] ] ]
[ ]
[ S = [ head = (2) [ agreement -> (1) ] ] ]
[ ]
[ VP = [ head -> (2) ] ]
Printed version looks odd, but graph is intact.