Reference resolution

From OpenCog
(Redirected from Anaphora resolution)
Jump to: navigation, search

The OpenCog natural language pipeline implements a basic form of reference resolution in opencog/nlp/anaphora. The code creates ReferenceLinks between pronouns and several possible references that they may refer to. The TruthValue on the ReferenceLinks is adjusted to indicate a general preference. It is presumed that a later stage, making use of word-sense disambiguation and common-sense reasoning will adjust the truth values to determine the true reference.

For example, the input sentences "blah blah ..." will result in

ReferenceLink <TV>
    WordInstanceNode "he@123"
    WordInstanceNode "blah@456"

being created.

Anaphora

Anaphora resolutions are fully supported by the current algorithm(Modified Hobbs Algorithm).

Cataphora

Cataphora resolutions are not supported right now

Split Antecedents

Only AND conjunctions are supported.

""The cook and waitress sigh and roll their eyes."" - The anaphor their has a split antecedent, referring to both cook and waitress.

Zero-Pronoun

Quantifiers

many
some
few
much
little
most
several

Example:

"We told all the students about the meeting, but only some came."

Numbers

e.g. "Twenty", "12", etc

Example:

"We told all the students about the meeting, but only twenty came."

Determiners

this
that
these
those

Examples:

"I made two stacks of books. These need to be reshelved and those need to be sold."
"these", "those" should refer to "stacks".
"He took the shot that won the game." here, "that" refers to "shot". Arguably "that" could refer to "took", a verb.

"that" can sometimes refer to verbs, often gerunds.
"that copier is always breaking down. We should do something about that. The second "that" refers to "breaking".
its not always a gerund: "I gave him a piece of my mind. That should keep him away for a while." "that" refers to "give", which is a verb.
"I will give him some sedative. That should calm him down." "that" should refer to "give". I guess you could argue that it refers to "sedative" .. maybe. but I think "that" refers to the action not the object.

Pleonastic it

(Incomplete)

NP < (PRP=m1) $.. (VP < ((/^V.*/ < /^(?:is|was|become|became)/) $.. (VP < (VBN $.. /S|SBAR/))))
NP < (PRP=m1) $.. (VP < ((/^V.*/ < /^(?:is|was|become|became)/) $.. (ADJP $.. (/S|SBAR/))))
NP < (PRP=m1) $.. (VP < ((/^V.*/ < /^(?:is|was|become|became)/) $.. (ADJP < (/S|SBAR/))))
NP < (PRP=m1) $.. (VP < ((/^V.*/ < /^(?:is|was|become|became)/) $.. (NP < /S|SBAR/)))
NP < (PRP=m1) $.. (VP < ((/^V.*/ < /^(?:is|was|become|became)/) $.. (NP $.. ADVP $.. /S|SBAR/)))
NP < (PRP=m1) $.. (VP < (MD $ .. (VP < ((/^V.*/ < /^(?:be|become)/) $.. (VP < (VBN $.. /S|SBAR/))))))
NP < (PRP=m1) $.. (VP < (MD $ .. (VP < ((/^V.*/ < /^(?:be|become)/) $.. (ADJP $.. (/S|SBAR/))))))
NP < (PRP=m1) $.. (VP < (MD $ .. (VP < ((/^V.*/ < /^(?:be|become)/) $.. (ADJP < (/S|SBAR/))))))
NP < (PRP=m1) $.. (VP < (MD $ .. (VP < ((/^V.*/ < /^(?:be|become)/) $.. (NP < /S|SBAR/)))))
NP < (PRP=m1) $.. (VP < (MD $ .. (VP < ((/^V.*/ < /^(?:be|become)/) $.. (NP $.. ADVP $.. /S|SBAR/)))))
NP < (PRP=m1) $.. (VP < ((/^V.*/ < /^(?:seems|appears|means|follows)/) $.. /S|SBAR/))
NP < (PRP=m1) $.. (VP < ((/^V.*/ < /^(?:turns|turned)/) $.. PRT $.. /S|SBAR/)

Source: Heeyoung Lee, Angel Chang, Yves Peirsman, Nathanael Chambers, Mihai Surdeanu and Dan Jurafsky. Deterministic coreference resolution based on entity-centric, precision-ranked rules. Computational Linguistics 39(4), 2013.

Coreferring Noun Phrases

Not supported.
Examples:

a. The project leaderi is refusing to help. The jerki thinks only of himself. - Coreferring noun phrases, whereby the second noun phrase is a predication over the first.
b. Some of our colleagues1 are going to be supportive. These kinds of people1 will earn our gratitude. - Coreferring noun phrases, whereby the second noun phrase is a predication over the first.

Special cases

Enough

Examples:

"the children kept fighting till they had enough" -- "enough" refers to "fighting".

"care for another beer? Thanks, I've had enough" -- enough refers to "beer".

See also