  We present a machine learning package for the classification of periodic
variable stars. Our package is intended to be general: it can classify any
single band optical light curve comprising at least a few tens of observations
covering durations from weeks to years, with arbitrary time sampling. We use
light curves of periodic variable stars taken from OGLE and EROS-2 to train the
model. To make our classifier relatively survey-independent, it is trained on
16 features extracted from the light curves (e.g. period, skewness, Fourier
amplitude ratio). The model classifies light curves into one of seven
superclasses - Delta Scuti, RR Lyrae, Cepheid, Type II Cepheid, eclipsing
binary, long-period variable, non-variable - as well as subclasses of these,
such as ab, c, d, and e types for RR Lyraes. When trained to give only
superclasses, our model achieves 0.98 for both recall and precision as measured
on an independent validation dataset (on a scale of 0 to 1). When trained to
give subclasses, it achieves 0.81 for both recall and precision. In order to
assess classification performance of the subclass model, we applied it to the
MACHO, LINEAR, and ASAS periodic variables, which gave recall/precision of
0.92/0.98, 0.89/0.96, and 0.84/0.88, respectively. We also applied the subclass
model to Hipparcos periodic variable stars of many other variability types that
do not exist in our training set, in order to examine how much those types
degrade the classification performance of our target classes. In addition, we
investigate how the performance varies with the number of data points and
duration of observations. We find that recall and precision do not vary
significantly if the number of data points is larger than 80 and the duration
is more than a few weeks. The classifier software of the subclass model is
available from the GitHub repository (https://goo.gl/xmFO6Q).
