⚡️ New package - Intel(R) Extension for Scikit-learn*
- **Intel(R) Extension for Scikit-learn*** contains scikit-learn patching functionality originally available in daal4py package. All future updates for the patching will be available in Intel(R) Extension for Scikit-learn only. Please use the package instead of daal4py.
⚠️ Deprecations
- Scikit-learn patching functionality in daal4py was deprecated and moved to a separate package - **Intel(R) Extension for Scikit-learn***. All future updates for the patching will be available in Intel(R) Extension for Scikit-learn only. Please use the package instead of daal4py for the Scikit-learn acceleration.
📚 Support Materials
- Medium blogs:
- [Intel Gives Scikit-Learn the Performance Boost Data Scientists Need](https://medium.com/intel-analytics-software/intel-gives-scikit-learn-the-performance-boost-data-scientists-need-42eb47c80b18)
- [From Hours to Minutes: 600x Faster SVM](https://medium.com/intel-analytics-software/from-hours-to-minutes-600x-faster-svm-647f904c31ae)
- [Improve the Performance of XGBoost and LightGBM Inference](https://medium.com/intel-analytics-software/improving-the-performance-of-xgboost-and-lightgbm-inference-3b542c03447e)
- [Accelerate Kaggle Challenges Using Intel AI Analytics Toolkit](https://medium.com/intel-analytics-software/accelerate-kaggle-challenges-using-intel-ai-analytics-toolkit-beb148f66d5a)
- Kaggle kernels:
- [Accelerate sklearn algorithms using sklearnex](https://www.kaggle.com/kppetrov/accelerate-sklearn-algorithms-using-sklearnex)
- [Fast SVC using scikit-learn-intelex for NLP](https://www.kaggle.com/kppetrov/fast-svc-using-scikit-learn-intelex-for-nlp)
- [Fast SVC using scikit-learn-intelex for MNIST](https://www.kaggle.com/kppetrov/fast-svc-using-scikit-learn-intelex-for-mnist)
- [Fast KNN using scikit-learn-intelex for MNIST](https://www.kaggle.com/kppetrov/fast-knn-using-scikit-learn-intelex-for-mnist)
- [Using scikit-learn-intelex for What's Cooking](https://www.kaggle.com/kppetrov/using-scikit-learn-intelex-for-what-s-cooking)
🛠️ Library Engineering
- Enabled new PyPI distribution channel for Intel(R) Extension for Scikit-learn and daal4py:
- Four latest Python versions (3.6, 3.7, 3.8) are supported on Linux, Windows and MacOS.
- Support of both CPU and GPU is included in the package.
- You can download daal4py using the following command: `pip install daal4py`
- You can download Intel(R) Extension for Scikit-learn using the following command: `pip install scikit-learn-intelex`
🚨 New Features
- Patches for four latest scikit-learn releases: 0.21.X, 0.22.X, 0.23.X and 0.24.X
- [CPU] Acceleration of `roc_auc_score` function
- [CPU] Bit-to-bit results reproducibility for: LinearRegression, Ridge, SVC, KMeans, PCA, Lasso, ElasticNet, tSNE, KNeighborsClassifier, KNeighborsRegressor, NearestNeighbors, RandomForestClassifier, RandomForestRegressor
🚀 Improved performance
- [CPU] RandomForestClassifier and RandomForestRegressor scikit-learn estimators: training and prediction
- [CPU] Principal Component Analysis (PCA) scikit-learn estimator: training
- [CPU] Support Vector Classification (SVC) scikit-learn estimators: training and prediction
- [CPU] Support Vector Classification (SVC) scikit-learn estimator with the `probability==True` parameter: training and prediction
🐛 Bug Fixes
- [CPU] Improved accuracy of `RandomForestClassifier` and `RandomForestRegressor` scikit-learn estimators
- [CPU] Fixed patching issues with `pairwise_distances`
- [CPU] Fixed the behavior of the `patch_sklearn` and `unpatch_sklearn` functions
- [CPU] Fixed unexpected behavior that made accelerated functionality unavailable through scikit-learn patching if the input was not of `float32` or `float64` data types. Scikit-learn patching now works with all numpy data types.
- [CPU] Fixed a memory leak that appeared when `DataFrame` from pandas was used as an input type
- [CPU] Fixed performance issue for interoperability with `Modin`