OpenPR-NBEM is an C++ implementation of Naive Bayes Classifier, which is a well-known generative classification algorithm for the application such as text classification. The Naive Bayes algorithm requires the probabilistic distribution to be discrete. OpenPR-NBEM uses the multinomial event model for representation. The maximum likelihood estimate is used for supervised learning, and the expectation-maximization estimate is used for semi-supervised and un-supervised learning.