the loose speak project james fan knowledge-based systems research group university of texas at...
TRANSCRIPT
The Loose Speak Project
James FanKnowledge-Based Systems Research Group
University of Texas at AustinMay 8, 2002
Outline
• Loose speak overview• Two types of LS:
• Complex nominal interpretation
• Metonymy
• Future work on LS
Loose Speak
• Loose speak(LS) : the phenomenon that human listeners are able to correctly interpret a speaker's imprecise utterance.
• Relevance: • LS common in human communication, but rarely
supported in human-computer-interaction.
• Lack of LS requires SMEs talk in precise terms to KB, makes KA tedious and error prone, and contributes to the brittleness of KB.
Here's a KA example without LS ...
Loose Speak Project• Task: given an imprecise expression, correctly
form an interpretation consistent with the existing KB.
• Goal:
1. To show that (semi)-automatic interpretation of imprecise terms is possible.
2. It can accelerate KA.
Here's how the previous example works with LS ...
Outline
• Loose speak overview• Two types of LS:
• Complex nominal interpretation
• Metonymy
• Future work on LS
Complex Nominal Interpretations• Complex nominal is an expression that has a head noun
proceeded by a modifying element. [Levi '78] the semantic relation between the two is implicit.
• Marble statue = statue made of marble
• Animal cell = cell that is the basic structural unit of an animal
• Metal detection = detecting metal. • Complex nominal interpretation task: given a complex
nominal, return the semantic relation between the head noun and it's modifying element.
Related Work
• A set of rules that includes most of the semantic relations in complex nominals [Levi '78].
• Hand coded rules [Leonard '84]. • Statistically learned rules [Lauer '95]. • Learned rules under the user's guidance
[Barker '98].
Our Approach• Given a complex nominal made of two concepts H &
M,
1. Search KB up to certain depth, return any relations between H & any of M's super/subclasses, or vice-versa.
2. If no relation is returned, select from a set of templates based on domain/range match.
Let's see what the templates are ...
Templates
• Templates: A set of 32 relations, which includes most of the common semantic relations occur in complex nominals.
• Example:
• (a H with (element-type ((a M))))
• (a H with (is-part-of ((a M))))
• ...• Zero, one, or multiple relations may be returned.
Let's step through a few examples ...
Example 1
• Given a complex nominal made of two concepts H & M,
1. Search KB up to certain depth, return any relations between H & any of M's super/subclasses, or vice-versa.
2. If no relation is returned, select from a set of templates based on domain/range match.
• M = Animal & H = Cell• Do breadth-first KB
search, and found the following in KB:
(every Cell has (is-basic-structural-unit-of ((a Organism)))
• Return:
(a Cell with
(is-basic-structural-unit-of ((a Animal)))
Example 2
• Given a complex nominal made of two concepts H & M,
1. Search KB up to certain depth, return any relations between H & any of M's super/subclasses, or vice-versa.
2. If no relation is returned, select from a set of templates based on domain/range match.
• M = Cell & H = Locomotion• Do breadth-first KB
search, and found the following in KB:
(every Locomotion has (object ((a Tangible-Entity))))
• Return:(a Locomotion has
(object ((a Cell))))
Example 3
• Given a complex nominal made of two concepts H & M,
1. Search KB up to certain depth, return any relations between H & any of M's super/subclasses, or vice-versa.
2. If no relation is returned, select from a set of templates based on domain/range match.
• M = Bond & H = Energy.• Do breadth-first KB
search, and found the nothing in KB:
• Select from the templates:•(a Create with (raw-material ((a Bond))) (result ((a Energy)))) -- match.•(a Create with (result ((a Bond))) (agent ((a Energy))) -- match.
•(a Energy with (element-type ((a Bond)))) -- mismatch.
... ...
Performance Measurements
• Precision = C / A, where C = number of instances in which a correct answer is returned, A = number of instances in which an answer is returned.
• Recall = C / T, where C = number of instances in which a correct answer is returned, T = the total number of test instances.
• Avg. ans. length = L / A, where L = total lengths of all the answers returned, A = number of instances in which an answer is returned.
Evaluation• Tested on 2 sets of data from Alberts [Alberts, el] with a
total of 184 test examples.
• Our approach has similar precision and recall values as the templates method does.
• Our approach has much shorter average answer length.• The distribution of answer lengths is bi-modal: 65% answers
have 1 or 2 choices; 19% have 9 or 10 choices.
Data set 1 Data set 2
Our approach
Templates only
Our approach
Templates only
Precision 97% 98% 82% 82%
Recall 94% 96% 81% 81%
Avg ans len
3.3 7.1 3.4 6.2
Evaluation (Continued)
• Our approach is compared to a templates based method because the templates resemble the hand-coded rules approach.
• Mistakes from data set 2 are caused by • invalid data entries (e.g. phosphate residue -> phosphate
substance translation)• incomplete KB (e.g. topic slot missing from KB).
Future Work for Complex Nominal Interpretation
• Gather more data for further evaluation.• Integrate the KB search with the templates.
KB Search And Templates Integration
• KB search is bounded by a certain depth.
• The selections from the templates can direct deeper searches.
• Example: • Cell Ribosome.• KB search: found nothing.• Templates:
• (a Ribosome with (is-part-of ((a Cell))))• (a Ribosome with (material ((a Cell))))• … …
• Deeper search reveals:• (a Ribosome with (element-type-of ((a Aggregate with (is-part-of ((a
Cytoplasm with (is-part-of ((a Cell))))))))))
Outline
• Loose Speak Overview• Two types of LS:
• Complex Nominal interpretation
• Metonymy
• Future work on LS
Metonymy
• Metonymy: a figurative speech in which "one entity [the metonym] is used to refer to another [the referent] that is related to it". [Lakoff & Johnson '80]
• Example:• Joe read Shakespeare. It was good.
• Metonymy resolution task: given an input expression denoting a piece of knowledge, identify any occurrence of metonymy, uncover the referent, and returned the paraphrased version of the input expression.
Traditional Approaches [Fass '91][Hobbs '93][Markert & Hahn '97][Harabagiu '98]
• Given an input (often in the form of sentences in natural language):
1. Detect metonymy based on detection of type constraints,
2. Resolve metonymy based on a search in metonymy space.
3. Anaphora is used to validate the result of the metonymy resolution.
Let's what the metonymy space is ...
Metonymy Space• Metonymy space: the set of entities related to the metonym.
• Metonymy space construction:
• given the metonym A, return set S = {X | exists A-r1-A1-r2-A2- ... -rn-X} where r1, r2, ..., rn are members of a fixed set of slots, such as has-part, material, agent, result, etc., and A1, A2, ..., X are frames.
• Given A = Shakespeare, S = {Shakespeare, His Head, His Text, } because
• Shakespeare, r1 = self
• Shakespeare-has-part-His Head, r1 = has-part
• Shakespeare-agent-of-Write-result-His Text, r1 = agent-of, A1 = Write, r2 = result
Let's step through a few examples ...
Metonymy Example 1 (Traditional Approach)
• Given an input (often in the form of sentences in natural language):
1. Detect metonymy based on detection of type constraints,
2. Resolve metonymy based on a search in metonymy space.
3. Anaphora is used to validate the result of the metonymy resolution.
• Given: “Joe read Shakespeare. It was good.”
• Type constraints:•agent-of-read: Person.
•object-of-read: Text• MetonymySpace =
{Shakespeare, His Head, His Text ... }.
• Selects His Text• Anaphora It confirms
His Text fits better than Shakespeare.
Metonymy Example 2 (Traditional Approach)
• Given an input (often in the form of sentences in natural language):
1. Detect metonymy based on detection of type constraints,
2. Resolve metonymy based on a search in metonymy space.
3. Anaphora is used to validate the result of the metonymy resolution.
• Given: “electrons are removed from water molecules.”
• Type Constraints:•object-of-remove: Entity.•base-of-remove: Entity.
• No violation found, no metonymy resolution needed.
Metonymy Example 2 (Continued)
• However the input, “Electrons are removed from water molecules”, does need metonymy resolution in our representation because:
• Remove requires the base have the object as its part, e.g. water molecule should have a part called electron.
• Water molecule does not have a part called electron. It has a hydrogen atom part, which has a electron part, and it has an oxygen atom part, which has a electron part.
• Therefore the literal translation of the input does NOT work, and the traditional approach does NOT give the correct answer either.
Our Approach• Given KM expression that can
be translated into X-r-Y, where X, Y are frames, and r is a slot:
DoX' = X, Y' = YI = Ideal(X, r)M = MetonymySpace(Y) Y = m such that m M and distance(m, I) < distance(m', I) for all m' M
I = Ideal(Y, rinverse)M = MetonymySpace(X) X = m such that m M and distance(m, I) < distance(m', I) for all m' M
Until (X = X' and Y = Y')Return X'-r-Y'
• Given (a Read with (object (Shakespeare))), translate it into: Read-object-Shakespeare1st iteration
X’ = Read, Y’ = Shakespeare
I = (a Text with (purpose ((a Role with (in-event ((a Read))))))
M = {Shakespeare, His Head, His Text, …}
Y = His TextI = (a Event)M = {Read}X = Read
2nd iteration…
Return Read-object-His Text
Ideal and Metonymy Space• Ideal:
1. Type constraints.
2. Add/delete/precondition list of the action.
3. Teleological constraints.
• Metonymy Space: given the metonym A, return set S: {X | exists A-r1-A1-r2-A2- … -rn-X} where r1, r2, … , rn are members of a fixed set of slots, such as has-part, material, agent, result, etc., and A1, A2, … , X are frames.
• Search depth: the n in the A-r1-A1-r2-A2- … -rn-X path mentioned above. For example, search depth of A = 0, search depth of A1 = 1, etc.
Distance Measurement and Comparison
• Distance - (p, n, t): the similarity between an element from the metonymy space and the ideal.
• p: number of shared properties between the element and the ideal.
• n: search depth of the element in the metonymy space.• t: taxonomical distance between the element and the ideal.
• Given (p1, n1, t1) and (p2, n2, t2), then.• (p1, n1, t1) < (p2, n2, t2) if:
• p1 > p2 or.• p1 = p2 and n1 < n2 or.• p1 = p2 and n1 = n2 and t1 < t2.
Metonymy Example 2 (Continued)1 Given KM expression that can
be translated into X-r-Y, where X, Y are frames, and r is a slot:
DoX' = X, Y' = YI = Ideal(X, r)M = MetonymySpace(Y) Y = m such that m M and distance(m, I) < distance(m', I) for all m' M
I = Ideal(Y, rinverse)M = MetonymySpace(X) X = m such that m M and distance(m, I) < distance(m', I) for all m' M
Until (X = X' and Y = Y')Return X'-r-Y'
1 Given (a Remove with (object ((a Electron))) (base ((a Water-Molecule)))), translate into Remove-object-Electron and Remove-base-Water-Molecule. Let’s consider Remove-base-Water-Molecule:
1st iteration:X’ = Remove, Y’ = Water-Molecule
I=(a Tangible-Entity;;type constraintwith (purpose ((a Role with (in-event ((a
Remove)))) ;;teleological constraint(has-part ((a Electron)))) ;; del-listM = {Water-Molecule, Oxygen-Atom,
Hydrogen-Atom, Electron, …}Y = Oxygen-AtomI = (an Event}M = {Remove}X = Remove
2nd iteration:…
Return: (a Remove with (object ((a Electron))) (base ((a Oxygen-Atom with (is-part-of ((a Water-Molecule)))))))
Metonymy Example 3• Given KM expression that can
be translated into X-r-Y, where X, Y are frames, and r is a slot:
DoX' = X, Y' = YI = Ideal(X, r)M = MetonymySpace(Y) Y = m such that m M and distance(m, I) < distance(m', I) for all m' M
I = Ideal(Y, rinverse)M = MetonymySpace(X) X = m such that m M and distance(m, I) < distance(m', I) for all m' M
Until (X = X' and Y = Y')Return X'-r-Y'
• Given (a Nucleus with (content ((a Object)))), translate it into Nucleus-content-Object.
I = (a Tangible-Entity)
M = {Object }
Y = Object
I = (a Container)
M = {Nucleus, Container, Nucleoplasm, ...}
X = Container
1st iteration.
X' = Nucleus, Y' = Object
2nd iteration:
…
Return: (a Nucleus with (purpose ((a Container with (content ((a Object)))))))
Metonymy Example 4• Given KM expression that can
be translated into X-r-Y, where X, Y are frames, and r is a slot:
DoX' = X, Y' = YI = Ideal(X, r)M = MetonymySpace(Y) Y = m such that m M and distance(m, I) < distance(m', I) for all m' M
I = Ideal(Y, rinverse)M = MetonymySpace(X) X = m such that m M and distance(m, I) < distance(m', I) for all m' M
Until (X = X' and Y = Y')Return X'-r-Y'
• Given (a Catalyze with (instrument ((a Mitochondrion)))), translate it into Catalyze-instrument-Mitochondrion.
1st iteration:
X' = Catalyze, Y' = MitochondrionI = (a Chemical-Object with
(purpose ((a Catalyst))))M = {Mitochondrion, Container,
Aggregate, Oxido-Reductase, ...}Y = Oxido-ReductaseI = (a Event)M = {Catalyze}X = Catalyze2nd iteration:
...Return: (a Catalyze with (instrument
((a Oxido-Reductase with (element-type-of ((a Aggregate with (content-of ((a Be-Contained with (in-event-of ((a Container with (purpose-of ((a Mitochondrion)).
Future Work on Metonymy
• Test data bounded by KB. More data needed for evaluation.
• Other applications of the metonymy resolution algorithm.
Other Applications of Metonymy Resolution
• Shields SMEs from the idiosyncrasy of the representation:
• roles, • spatial representations, • aggregates, • properties.
• E.g. instead of (a Car with (color ((a Color-Value with (value (:pair *red Object)))))), do (a Car with (color (*red))) directly
• LS generation for concise display of the knowledge to users.
Outline
• Loose speak overview• Two types of LS:
• Complex nominal interpretation
• Metonymy
• Future work on LS
Future Work on LS Project• Discover more patterns of LS.
• Overly general speak: stating knowledge in an overly general way, often using a general concept in the place of a specific one.
• Example: "there may be 15 [RNA] polymerases speeding along the same stretch of DNA ..".
• More extensive evaluations.• Explore the process of theory and validation.