Intel® Extension for Scikit-learn is a seamless way to speed up your Scikit-learn application.
Project description
Intel(R) Extension for Scikit-learn*
Extension for Scikit-learn is a free software AI accelerator designed to deliver over 10-100X acceleration to your existing scikit-learn code. The software acceleration is achieved with vector instructions, AI hardware-specific memory optimizations, threading, and optimizations.
With Extension for Scikit-learn, you can:
- Speed up training and inference by up to 100x with equivalent mathematical accuracy
- Benefit from performance improvements across different hardware configurations, including GPUs and multi-GPU configurations
- Integrate the extension into your existing Scikit-learn applications without code modifications
- Continue to use the open-source scikit-learn API
- Enable and disable the extension with a couple of lines of code or at the command line
🛠 Installation
Intel(R) Extension for Scikit-learn is available at the Python Package Index, in Conda-Forge and in Intel's conda channel. Intel(R) Extension for Scikit-learn is also available as a part of Intel® oneAPI AI Analytics Toolkit (AI Kit).
To install through pip:
pip install scikit-learn-intelex
See the documentation for more details about supported platforms and other ways of installing it.
You can build the package from sources as well.
⚡️ Get Started
Easiest way to benefit from accelerations from the extension is by patching scikit-learn with it:
- Enable CPU optimizations
import numpy as np
from sklearnex import patch_sklearn
patch_sklearn()
from sklearn.cluster import DBSCAN
X = np.array([[1., 2.], [2., 2.], [2., 3.],
[8., 7.], [8., 8.], [25., 80.]], dtype=np.float32)
clustering = DBSCAN(eps=3, min_samples=2).fit(X)
-
Enable GPU optimizations
Note: executing on GPU has additional system software requirements - see details.
import numpy as np
from sklearnex import patch_sklearn, config_context
patch_sklearn()
from sklearn.cluster import DBSCAN
X = np.array([[1., 2.], [2., 2.], [2., 3.],
[8., 7.], [8., 8.], [25., 80.]], dtype=np.float32)
with config_context(target_offload="gpu:0"):
clustering = DBSCAN(eps=3, min_samples=2).fit(X)
Usage without patching
Alternatively, all functionalities are also available under a separate module which can be imported directly, without involving any patching.
-
To run on CPU:
import numpy as np from sklearnex.cluster import DBSCAN X = np.array([[1., 2.], [2., 2.], [2., 3.], [8., 7.], [8., 8.], [25., 80.]], dtype=np.float32) clustering = DBSCAN(eps=3, min_samples=2).fit(X)
-
To run on GPU:
import numpy as np from sklearnex import config_context from sklearnex.cluster import DBSCAN X = np.array([[1., 2.], [2., 2.], [2., 3.], [8., 7.], [8., 8.], [25., 80.]], dtype=np.float32) with config_context(target_offload="gpu:0"): clustering = DBSCAN(eps=3, min_samples=2).fit(X)
🚀 Scikit-learn patching
Configurations:
- HW: c5.24xlarge AWS EC2 Instance using an Intel Xeon Platinum 8275CL with 2 sockets and 24 cores per socket
- SW: scikit-learn version 0.24.2, scikit-learn-intelex version 2021.2.3, Python 3.8
Intel(R) Extension for Scikit-learn patching affects performance of specific Scikit-learn functionality. Refer to the list of supported algorithms and parameters for details. In cases when unsupported parameters are used, the package fallbacks into original Scikit-learn. If the patching does not cover your scenarios, submit an issue on GitHub.
Read more about it in the documentation for scikit-learn patching.
👀 Follow us on Medium
We publish blogs on Medium, so follow us to learn tips and tricks for more efficient data analysis with the help of Intel(R) Extension for Scikit-learn. Here are our latest blogs:
- Save Time and Money with Intel Extension for Scikit-learn
- Superior Machine Learning Performance on the Latest Intel Xeon Scalable Processors
- Leverage Intel Optimizations in Scikit-Learn
- Intel Gives Scikit-Learn the Performance Boost Data Scientists Need
- From Hours to Minutes: 600x Faster SVM
- Improve the Performance of XGBoost and LightGBM Inference
- Accelerate Kaggle Challenges Using Intel AI Analytics Toolkit
- Accelerate Your scikit-learn Applications
- Accelerate Linear Models for Machine Learning
- Accelerate K-Means Clustering
🔗 Important links
- Notebook examples
- Documentation
- scikit-learn API and patching
- Benchmark code
- Building from Sources
- About Intel(R) oneAPI Data Analytics Library
💬 Support
Report issues, ask questions, and provide suggestions using:
You may reach out to project maintainers privately at onedal.maintainers@intel.com
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file scikit_learn_intelex-2025.10.1-py314-none-win_amd64.whl.
File metadata
- Download URL: scikit_learn_intelex-2025.10.1-py314-none-win_amd64.whl
- Upload date:
- Size: 3.2 MB
- Tags: Python 3.14, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.32.5 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cf1cc11fe4b4dc770e0c07fe257e5318b5d97fe0c854dbabb69e2a7f858a8053
|
|
| MD5 |
713fa3d9ffc6dfd9de9081eeaa61be47
|
|
| BLAKE2b-256 |
3e790c24d5a6a60c51504620281ce25f25f7b32118509bafb16738cdf45df67d
|
File details
Details for the file scikit_learn_intelex-2025.10.1-py314-none-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: scikit_learn_intelex-2025.10.1-py314-none-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 4.9 MB
- Tags: Python 3.14, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.32.5 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
887c27b1b084d51b518e4700c13067e70d14b62cf519782c79f5a5f64f4ba2fd
|
|
| MD5 |
fc38e4de8b3ceb299053a7a8e6a66080
|
|
| BLAKE2b-256 |
3547ae21d36852291ba736d4b0602d571a7714809620ab37cd22b5b56f35f252
|
File details
Details for the file scikit_learn_intelex-2025.10.1-py313-none-win_amd64.whl.
File metadata
- Download URL: scikit_learn_intelex-2025.10.1-py313-none-win_amd64.whl
- Upload date:
- Size: 3.2 MB
- Tags: Python 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.32.5 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
748e68e6981993b6889469f6391fef66f1af912e9b3cd91b936a0220e0b061b9
|
|
| MD5 |
d6966b81e6eeb7611b1d08c4cf68f8e3
|
|
| BLAKE2b-256 |
dedc28d1121039e712d86e8ec84ba157c8cb7337eb89fc81270218cf030de1f4
|
File details
Details for the file scikit_learn_intelex-2025.10.1-py313-none-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: scikit_learn_intelex-2025.10.1-py313-none-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 4.9 MB
- Tags: Python 3.13, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.32.5 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d5d5be1bd7158793ed7151b33e203434452c4160b979974e31a656caccc7ce9a
|
|
| MD5 |
c9c2a0ec79dcd2eb0bad53d1ff62a163
|
|
| BLAKE2b-256 |
4960ecf5e64285b80a0edd930b85a5f8c5f47226d15456263987081121286588
|
File details
Details for the file scikit_learn_intelex-2025.10.1-py312-none-win_amd64.whl.
File metadata
- Download URL: scikit_learn_intelex-2025.10.1-py312-none-win_amd64.whl
- Upload date:
- Size: 3.2 MB
- Tags: Python 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.32.5 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4e38dec4864e2284d52a708e12bb66c3663eba4bb5a6821489dfab65fe4937ca
|
|
| MD5 |
23be03b4a04bebec67c4273ab34f4d52
|
|
| BLAKE2b-256 |
23353402908afbc4475ebc7fc8df91848b3fc24b06699f46dc0ee37825e0f046
|
File details
Details for the file scikit_learn_intelex-2025.10.1-py312-none-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: scikit_learn_intelex-2025.10.1-py312-none-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 4.9 MB
- Tags: Python 3.12, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.32.5 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4d47d26bec9eab207f6d5b672d9e7c21bd817fe4973558eeb1640bf31d7cbf58
|
|
| MD5 |
f5349e234c4c02b0c91b80afc305dbde
|
|
| BLAKE2b-256 |
17f650983162348c85059f1fab5ca673fcf34a66f3346581cc47221f2c6c1bb4
|
File details
Details for the file scikit_learn_intelex-2025.10.1-py311-none-win_amd64.whl.
File metadata
- Download URL: scikit_learn_intelex-2025.10.1-py311-none-win_amd64.whl
- Upload date:
- Size: 3.1 MB
- Tags: Python 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.32.5 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a75e1c1ef7d5abb483646a723537edab82111d4d4901c4492f2e9ac27336842
|
|
| MD5 |
c2f34ad5cdb93637c9d6e60b0effcd36
|
|
| BLAKE2b-256 |
a0ceaf71395bfd929cd7c770c798c2e14f07cc8ef18fad9557b4ee403b3bd117
|
File details
Details for the file scikit_learn_intelex-2025.10.1-py311-none-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: scikit_learn_intelex-2025.10.1-py311-none-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 4.9 MB
- Tags: Python 3.11, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.32.5 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
42e7e8c667c2bee049e6b13ee767d071ca95a1c4127ce8b5512a56ebeb2b4222
|
|
| MD5 |
8208135d7acf5c38d347e91e593bb5da
|
|
| BLAKE2b-256 |
1e930d8729bb99d78c13c27c33bd71aa63596d622467d54d29ab399a1b6da61e
|
File details
Details for the file scikit_learn_intelex-2025.10.1-py310-none-win_amd64.whl.
File metadata
- Download URL: scikit_learn_intelex-2025.10.1-py310-none-win_amd64.whl
- Upload date:
- Size: 3.1 MB
- Tags: Python 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.32.5 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2bfbba9e0e6411f4284fc42496282f073e7c66f5ccd6cf7a3a83b9bb7404ebb5
|
|
| MD5 |
9270d0668720c926cd146d759c2b9c0d
|
|
| BLAKE2b-256 |
064d7fddb2a2873c1ebe35ad3b48028b13c57111cce7b286442c4ff05152901b
|
File details
Details for the file scikit_learn_intelex-2025.10.1-py310-none-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: scikit_learn_intelex-2025.10.1-py310-none-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 4.9 MB
- Tags: Python 3.10, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.32.5 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f1ef222dbb360779b241bbe80af437ee6af0d70e2d7efa79b7c522d7c15afcda
|
|
| MD5 |
1ed1091675e36642168e95b1df763e7f
|
|
| BLAKE2b-256 |
234ff0dd6615ae6366142902aa724c2b23dbafc64dc8c7206b4e00a435aa62b9
|