<p>The most common approach is use labeled data in order to train a supervised machine learning algorithm. If you want to follow it, check this tutorial <a href="http://nlpforhackers.io/training-pos-tagger/" rel="nofollow noreferrer">train your own POS tagger</a>, then, you will need a POS tagset and a corpus for create a POS tagger in supervised fashion.</p>

<p>In the other hand you can try some unsupervised methods. I found this semi-supervised method for Sinhala precisely <a href="https://arxiv.org/ftp/arxiv/papers/1407/1407.2989.pdf" rel="nofollow noreferrer">HIDDEN MARKOV MODEL BASED PART OF SPEECH TAGGER FOR SINHALA LANGUAGE </a>. Consider semi-supervised learning is a variation of unsupervised learning, hence dispite you do not need make big efforts to tag an entire corpus, some labels are needed. Finally, there are some completely unsupervised alternatives you can adapt to Sinhala. </p>

<p>Good luck!</p>
Building a POS tagger for a new language
<p>I'm kind of new to NLP and I'm trying to build a POS tagger for Sinhala language. Are there any specific steps to follow to build the system?</p>