I want to find all material nouns in a sentence. Using pos_tag set of nltk only give NN, NNS, NNP etc. Is there any existing work to find out material nouns or how can we solve this problem?

Edit: An example will be

Input: Don't forget to bring water bottle, a blanket and shoes **during your visit.**

Output: [water bottle, blanket, shoes]

  • $\begingroup$ Welcom to DS Stack Exchange. Please elaborate more in your question, could you add more details? $\endgroup$
    – Leevo
    Commented Apr 24, 2020 at 14:31
  • $\begingroup$ A simple approach would be to elaborate a list of materials then check for those nouns. There would be some mistakes (material nouns that have other uses, new materials that don't appears in your list). $\endgroup$ Commented Apr 24, 2020 at 17:06
  • $\begingroup$ @Leevo added an example of I/O.To Icrmorin, elaboration is not possible since list is infinite in the universe. $\endgroup$
    – CKM
    Commented Apr 25, 2020 at 3:38
  • $\begingroup$ Does your corpus have a fixed set of materials? Or they could be about anything? It's possible there is not training data for such a task. One option would be to manually label few hundreds of sentences, and train a first classifier on those. $\endgroup$
    – Leevo
    Commented Apr 25, 2020 at 10:42
  • $\begingroup$ Alternatively, you could run a PoS tagger on the nltk categories (NN, NNS, NNP), and the work by subtraction, i.e. finding which, among those, do not correspond to material nouns. Do you think that's possible? $\endgroup$
    – Leevo
    Commented Apr 25, 2020 at 10:44


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.