This is a Python 3 porting of RDRPOSTagger, the original for Python 2 is here
Note: if you are looking for a FOSS POS tagger for Python 3, have a look at Spacy
RDRPOSTagger is a robust, easy-to-use and language-independent toolkit for POS and morphological tagging. It employs an error-driven approach to automatically construct tagging rules in the form of a binary tree. The main properties of RDRPOSTagger are as follows:
-
RDRPOSTagger obtains very fast performance in both learning and tagging process.
-
RDRPOSTagger achieves a very competitive accuracy in comparison to the state-of-the-art results. See experimental results including performance speed and tagging accuracy for 13 languages in our AI Communications article.
-
RDRPOSTagger supports the pre-trained POS and morphological tagging models for Bulgarian, Czech, Dutch, English, French, German, Hindi, Italian, Portuguese, Spanish, Swedish, Thai and Vietnamese. Additionally, RDRPOSTagger supports the pre-trained Universal POS tagging models for 40 languages.
The general architecture and experimental results of RDRPOSTagger can be found in our following papers:
-
Dat Quoc Nguyen, Dai Quoc Nguyen, Dang Duc Pham and Son Bao Pham. RDRPOSTagger: A Ripple Down Rules-based Part-Of-Speech Tagger. In Proceedings of the Demonstrations at the 14th Conference of the European Chapter of the Association for Computational Linguistics, EACL 2014, pp. 17-20, 2014. [.PDF] [.bib]
-
Dat Quoc Nguyen, Dai Quoc Nguyen, Dang Duc Pham and Son Bao Pham. A Robust Transformation-Based Learning Approach Using Ripple Down Rules for Part-Of-Speech Tagging. AI Communications (AICom), vol. 29, no. 3, pp. 409-422, 2016. [.PDF] [.bib]
Please cite either the EACL or the AICom paper whenever RDRPOSTagger is used to produce published results or incorporated into other software.
RDRPOSTagger is also available to download (10MB .zip file including all pre-trained models) at: https://sourceforge.net/projects/rdrpostagger/files/RDRPOSTagger_v1.2.3.zip
Find more information about RDRPOSTagger at its website: http://rdrpostagger.sourceforge.net/
See the file FullUsage.html
for examples and explanations. It still applies to this Python 3 version.
Example:
cd pSCRDRtagger
python3 RDRPOSTagger.py train ../data/goldTrain
python3 RDRPOSTagger.py tag ../data/goldTrain.RDR ../data/goldTrain.DICT ../data/rawTest
cd ../Util
python3 Eval.py ../data/rawTest.TAGGED ../data/goldTest