I'm building a PoS tagger and I was wondering if there is a way to determine if a word is a verb other than looking in a list of verbs.

What i'm doing is marking all words as nouns, then if it ends with ed marking it as a past-participle verb, if ending ly then as an adverb, if ending in al then as adjective.

EDIT: I'm looking to do this in English.

  • I don't know many other ways to do that. But I can add "-ate" and "-are" to your list of suffixes. Your project would be a lot easier in say, Spanish especially, or German. :\
    – khaverim
    Commented Apr 26, 2014 at 19:57
  • @khanahk yes, it would be easier in spanish. thank you Commented Apr 26, 2014 at 20:14
  • 1
    The question is too broad, as it stands. Which language are you focusing on?
    – prash
    Commented Apr 26, 2014 at 21:25
  • @prash ah, okay. Sorry. I'm looking for English. Commented Apr 26, 2014 at 23:15

1 Answer 1


Since your goal is POS-tagging, looking up the word in a list may not always be helpful, because the same word may act like one of many classes, depending on its context. (See "set", for example.)

However, unsupervised (i.e. without using annotated data to train a model) POS tagging is a well-researched topic. The paper, "Two Decades of Unsupervised POS induction: How far have we come?" compares several approaches you could use, either for implementation, or for inspiration. As a starting point, I recommend looking into the Brown clustering algorithm (video), which, despite being one of the most effective methods mentioned there, is simple enough to be taught in introductory NLP classes.

  • can you provide me a link to the brown-clustering algorithm-- preferably one in not-so complicated language. I've having trouble finding one. Commented Apr 27, 2014 at 0:14
  • @gramme.ninja: done
    – prash
    Commented Apr 27, 2014 at 0:22

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.