numpy matplotlib scikit-learn Pillow