1

I am working on a project based something on natural language understanding. So, what I am currently doing is to try and reference the pronouns to their respective antecedents, for which I am trying to build a model. I have worked out the basic part of it, but to complete the task, I need to understand the narrative of the sentence. So what I want is to check whether the noun and object are associated with each other by the verb using an API in python.

Example:

method(laptop, have, operating-system) = yes

method(program, have, operating-system) = No

method("he"/"proper_noun", play, football) = yes

method("he"/"proper_noun", play, college) = No

I've heard about nltk's wordnet API, but I am not sure whether I can use it to perform the same. Can it be used? Also, I am kind of on a clock.

Any suggestions are welcome and appreciated.

Notes: I am using parsey-mcparseface to break the sentence. I could do the same with nltk but P-MPF is more accurate.

** Why isn't there an NLU tag available? **

Edit 1: Thanks to alexis, The thing I am trying to do is called "Anaphora Resolution".

  • 1
    You don't mention whether you're aware of the name for the task you're working on: "anaphora resolution". I don't see what wordnet has to do with it. – alexis Sep 25 '17 at 15:43
  • @alexis, I wasn't aware it even had a name. Also, thank you very much for the name, as it will make some things on my part easier. About the wordnet, I need a lexical database to find synonyms and find verb phrase referent. I just don't know how..! –  Sep 26 '17 at 07:47
  • Well, take a couple of hours to read on how anaphora resolution is usually approached. You may decide to change your approach. And see my answer. – alexis Sep 26 '17 at 10:02

1 Answers1

1

The name for what you want is "anaphora resolution", or "coreference resolution". It's a hard problem (probably harder than you realize-- nlp tasks are like that), so unless your purpose is just to learn, I recommend you try some existing solutions. I don't know of an anaphora resolution module in the nltk itself, but you can find it as part of the Stanford CoreNLP suite. See this question about how to interface to it from the nltk. (I haven't tried it myself).

alexis
  • 48,685
  • 16
  • 101
  • 161