added machine learning support with scikit-learn