The release **Intel(R) Extension for Scikit-learn 2021.3** introduces the following changes:
📚 Support Materials
- Medium blogs:
- [Superior Machine Learning Performance on the Latest Intel Xeon Scalable Processors](https://medium.com/intel-analytics-software/superior-machine-learning-performance-on-the-latest-intel-xeon-scalable-processor-efdec279f5a3)
- [Leverage Intel Optimizations in Scikit-Learn (SVM Performance Training and Inference)](https://medium.com/intel-analytics-software/leverage-intel-optimizations-in-scikit-learn-f562cb9d5544)
- [Optimizing CatBoost Performance](https://medium.com/intel-analytics-software/optimizing-catboost-performance-4f73f0593071)
- [Performance Optimizations for End-to-End AI Pipelines](https://medium.com/intel-analytics-software/performance-optimizations-for-end-to-end-ai-pipelines-231e0966505a)
- Kaggle kernels:
- [Tabular Playground Series - Apr 2021] [RF with Intel Extension for Scikit-learn](https://www.kaggle.com/andreyrus/tps-apr-rf-with-intel-extension-for-scikit-learn)
- [Tabular Playground Series - Apr 2021] [SVM with Intel Extension for Scikit-learn](https://www.kaggle.com/napetrov/tps04-svm-with-intel-extension-for-scikit-learn)
- [Tabular Playground Series - Apr 2021] [SVM with Intel(R) Extension for Scikit-learn](https://www.kaggle.com/napetrov/tps04-svm-with-scikit-learn-intelex)
- [Tabular Playground Series - Jun 2021] [AutoGluon with Intel(R) Extension for Scikit-learn](https://www.kaggle.com/alex97andreev/tps-jun-autogluon-with-sklearnex)
- [Tabular Playground Series - Jun 2021] [Fast LogReg with Intel(R) Extension for Scikit-learn](https://www.kaggle.com/kppetrov/tps-jun-fast-logreg-with-scikit-learn-intelex)
- [Tabular Playground Series - Jun 2021] [Fast ML stack with Intel(R) Extension for Scikit-learn](https://www.kaggle.com/masdevas/fast-ml-stack-with-scikit-learn-intelex)
- [Tabular Playground Series - Jun 2021] [Fast Stacking with Intel(R) Extension for Scikit-learn](https://www.kaggle.com/owerbat/tps-jun-fast-stacking-with-scikit-learn-intelex)
- [Samples](https://github.com/intel/scikit-learn-intelex/tree/master/examples/notebooks) that illustrate the usage of Intel Extension for Scikit-learn
🛠️ Library Engineering
- Introduced optional dependencies on DPC++ runtime to Intel Extension for Scikit-learn and daal4py. To enable DPC++ backend, [install dpcpp_cpp_rt package](https://github.com/intel/scikit-learn-intelex#-installation). It reduces the default package size with all dependencies from 1.2GB to 400 MB.
🚨 New Features
- Introduced the support of scikit-learn 1.0 version in Intel(R) Extension for Scikit-learn. The 2021.3 release of Intel(R) Extension for Scikit-learn supports the latest scikit-learn releases: 0.22.X, 0.23.X, 0.24.X and 1.0.X.
- The support of `patch_sklearn` for several algorithms: *patch_sklearn(["SVC", "DBSCAN"])*
- [CPU] Acceleration of `SVR` estimator
- [CPU] Acceleration of `NuSVC` and `NuSVR` estimators
- [CPU] `Polynomial kernel` support in SVM algorithms
🚀 Improved performance
- [CPU] `SVM` algorithms training and prediction
- [CPU] `Linear`, `Ridge`, `ElasticNet`, and `Lasso` regressions prediction
🐛 Bug Fixes
- Fixed binary incompatibility for the versions of numpy earlier than 1.19.4
- Fixed an issue with a very large number of trees (> 7000) for `Random Forest` algorithm
- Fixed `patch_sklearn` to patch both fit and predict methods of `Logistic Regression` when the algorithm is given as a single parameter to `patch_sklearn`
- [CPU] Reduced the memory consumption of `SVM` prediction
- [GPU] Fixed an issue with kernel compilation on the platforms without hardware FP64 support
❗ Known Issues
- Intel(R) Extension for Scikit-learn package installed from PyPI repository can’t be found on Debian systems (including Google Collab). Mitigation: add “site-packages” folder into Python packages searching before importing the packages:
python
import sys
import os
import site
sys.path.append(os.path.join(os.path.dirname(site.getsitepackages()[0]), "site-packages"))