scikit-learn-intelex 2025.4.0__py39-none-win_amd64.whl → 2025.5.0__py39-none-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of scikit-learn-intelex might be problematic. Click here for more details.
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/__main__.py +1 -1
- scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/daal4py/_daal4py.cp39-win_amd64.pyd +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/doc/third-party-programs.txt +1 -1
- scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/daal4py/mb/__init__.py +83 -0
- scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/daal4py/mb/gbt_convertors.py +855 -0
- scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/daal4py/mb/logistic_regression_builders.py +217 -0
- scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/mb/model_builders.py → scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/daal4py/mb/tree_based_builders.py +99 -91
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/mpi_transceiver.cp39-win_amd64.pyd +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/_n_jobs_support.py +6 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/_utils.py +1 -1
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +2 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/k_means.py +6 -38
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +12 -8
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +2 -6
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +3 -7
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +41 -153
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_coordinate_descent.py +13 -15
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_linear.py +7 -10
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_ridge.py +22 -57
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +3 -4
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/_t_sne.py +8 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +30 -7
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +2 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +6 -16
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +4 -7
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +3 -5
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +4 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/base.py +8 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +82 -5
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/__init__.py +125 -83
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/_config.py +27 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/_device_offload.py +79 -83
- scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp39-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp39-win_amd64.pyd +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/basic_statistics/basic_statistics.py +21 -17
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/basic_statistics/incremental_basic_statistics.py +44 -39
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/dbscan.py +35 -42
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/kmeans.py +83 -74
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/kmeans_init.py +57 -24
- scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/onedal/common/_backend.py +233 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/common/hyperparameters.py +4 -4
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/common/tests/test_sycl.py +27 -12
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/covariance/covariance.py +27 -19
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +35 -32
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +6 -10
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +179 -78
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +39 -25
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/decomposition/pca.py +28 -16
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/decomposition/tests/test_incremental_pca.py +2 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/ensemble/forest.py +130 -93
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/incremental_linear_model.py +76 -57
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/linear_model.py +63 -37
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/logistic_regression.py +96 -68
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/neighbors/neighbors.py +156 -119
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/primitives/get_tree.py +5 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/primitives/kernel_functions.py +21 -18
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/primitives/tests/test_kernel_functions.py +4 -4
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/svm.py +80 -32
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/tests/test_csr_svm.py +10 -9
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvc.py +10 -10
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvr.py +8 -8
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svc.py +5 -5
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svr.py +10 -10
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +1 -13
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/utils/_array_api.py +3 -1
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/utils/_dpep_helpers.py +16 -1
- scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/onedal/utils/_sycl_queue_manager.py +147 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/utils/tests/test_validation.py +3 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/utils/validation.py +47 -16
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/__init__.py +3 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/__main__.py +2 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/_config.py +48 -6
- scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/sklearnex/_device_offload.py +143 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/_utils.py +28 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +13 -20
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +34 -40
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/cluster/dbscan.py +6 -8
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/cluster/k_means.py +2 -6
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +42 -60
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/decomposition/pca.py +7 -17
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/dispatcher.py +4 -4
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/doc/third-party-programs.txt +207 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/ensemble/_forest.py +106 -362
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/glob/__main__.py +1 -1
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/glob/dispatcher.py +1 -1
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +6 -6
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_linear.py +41 -126
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +42 -85
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/linear.py +48 -39
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/logistic_regression.py +34 -71
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/ridge.py +14 -18
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +60 -1
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +2 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/manifold/t_sne.py +2 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/metrics/pairwise.py +1 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/metrics/ranking.py +1 -1
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/model_selection/split.py +1 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/_lof.py +7 -54
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/common.py +3 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_classification.py +31 -73
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_regression.py +30 -70
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_unsupervised.py +5 -13
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +3 -13
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +48 -62
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_basic_statistics_spmd.py +10 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_incremental_basic_statistics_spmd.py +8 -4
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_dbscan_spmd.py +13 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_kmeans_spmd.py +10 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_covariance_spmd.py +7 -4
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_incremental_covariance_spmd.py +13 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_incremental_pca_spmd.py +9 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_pca_spmd.py +7 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/tests/test_forest_spmd.py +25 -8
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_incremental_linear_spmd.py +6 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_linear_regression_spmd.py +12 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_logistic_regression_spmd.py +12 -5
- {scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/mb → scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors}/__init__.py +2 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/tests/test_neighbors_spmd.py +27 -5
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/_common.py +12 -25
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/nusvc.py +35 -128
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/nusvr.py +9 -21
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/svc.py +33 -126
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/svr.py +9 -21
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_common.py +26 -11
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +16 -23
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +4 -4
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/utils/base.py +2 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/utils/validation.py +8 -22
- {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.5.0.dist-info}/METADATA +2 -2
- scikit_learn_intelex-2025.5.0.dist-info/RECORD +257 -0
- scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/_daal4py.cp39-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp39-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp39-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_base.py +0 -38
- scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_policy.py +0 -55
- scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_spmd_policy.py +0 -30
- scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/tests/test_policy.py +0 -76
- scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/utils/__init__.py +0 -49
- scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/_device_offload.py +0 -126
- scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +0 -19
- scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/neighbors.py +0 -25
- scikit_learn_intelex-2025.4.0.dist-info/RECORD +0 -259
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/tests/test_dbscan.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/tests/test_decision_forest.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/coordinate_descent.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/linear.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_loss.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/ridge.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_linear.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_ridge.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/_split.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/tests/test_split.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/_models_info.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_monkeypatch.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_patching.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/utils/_launch_algorithms.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/tests/test_kneighbors.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/tests/test_utils.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_incremental_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/utils.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_dbscan.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans_init.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/common/_estimator_checks.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/common/_mixin.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_covariance.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_incremental_covariance.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/datatypes/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/datatypes/tests/common.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/ensemble/tests/test_random_forest.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_linear_regression.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_ridge_regression.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_linear_regression.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_logistic_regression.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_ridge.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/neighbors/tests/test_knn_classification.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/primitives/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/tests/test_common.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/tests/utils/_dataframes_support.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_incremental_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_dbscan.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/conftest.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/covariance/tests/test_incremental_covariance.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/ensemble/tests/test_forest.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_linear.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_ridge.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_ridge.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/manifold/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/metrics/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/metrics/tests/test_metrics.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/model_selection/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/model_selection/tests/test_model_selection.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/tests/test_neighbors.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_incremental_pca.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/incremental_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/incremental_covariance.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/incremental_pca.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/incremental_linear_model.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/linear_model.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/logistic_regression.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/tests/test_svm.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_config.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_parallel.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_patching.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/utils/_array_api.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/utils/parallel.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/utils/tests/test_validation.py +0 -0
- {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.5.0.dist-info}/LICENSE.txt +0 -0
- {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.5.0.dist-info}/WHEEL +0 -0
- {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.5.0.dist-info}/top_level.txt +0 -0
|
@@ -20,9 +20,11 @@ from abc import ABC
|
|
|
20
20
|
|
|
21
21
|
import numpy as np
|
|
22
22
|
|
|
23
|
-
from daal4py.sklearn._utils import daal_check_version
|
|
24
|
-
from onedal import
|
|
23
|
+
from daal4py.sklearn._utils import daal_check_version
|
|
24
|
+
from onedal._device_offload import supports_queue
|
|
25
25
|
from onedal.basic_statistics import BasicStatistics
|
|
26
|
+
from onedal.common._backend import bind_default_backend
|
|
27
|
+
from onedal.utils import _sycl_queue_manager as QM
|
|
26
28
|
|
|
27
29
|
if daal_check_version((2023, "P", 200)):
|
|
28
30
|
from .kmeans_init import KMeansInit
|
|
@@ -32,13 +34,13 @@ from sklearn.exceptions import ConvergenceWarning
|
|
|
32
34
|
from sklearn.metrics.pairwise import euclidean_distances
|
|
33
35
|
from sklearn.utils import check_random_state
|
|
34
36
|
|
|
35
|
-
from ..
|
|
37
|
+
from .._config import _get_config
|
|
36
38
|
from ..common._mixin import ClusterMixin, TransformerMixin
|
|
37
39
|
from ..datatypes import from_table, to_table
|
|
38
|
-
from ..utils import _check_array, _is_arraylike_not_scalar, _is_csr
|
|
40
|
+
from ..utils.validation import _check_array, _is_arraylike_not_scalar, _is_csr
|
|
39
41
|
|
|
40
42
|
|
|
41
|
-
class _BaseKMeans(
|
|
43
|
+
class _BaseKMeans(TransformerMixin, ClusterMixin, ABC):
|
|
42
44
|
def __init__(
|
|
43
45
|
self,
|
|
44
46
|
n_clusters,
|
|
@@ -60,6 +62,15 @@ class _BaseKMeans(onedal_BaseEstimator, TransformerMixin, ClusterMixin, ABC):
|
|
|
60
62
|
self.random_state = random_state
|
|
61
63
|
self.n_local_trials = n_local_trials
|
|
62
64
|
|
|
65
|
+
@bind_default_backend("kmeans_common", no_policy=True)
|
|
66
|
+
def _is_same_clustering(self, labels, best_labels, n_clusters): ...
|
|
67
|
+
|
|
68
|
+
@bind_default_backend("kmeans.clustering")
|
|
69
|
+
def train(self, params, X_table, centroids_table): ...
|
|
70
|
+
|
|
71
|
+
@bind_default_backend("kmeans.clustering")
|
|
72
|
+
def infer(self, params, model, centroids_table): ...
|
|
73
|
+
|
|
63
74
|
def _validate_center_shape(self, X, centers):
|
|
64
75
|
"""Check if centers is compatible with X and n_clusters."""
|
|
65
76
|
if centers.shape[0] != self.n_clusters:
|
|
@@ -73,14 +84,19 @@ class _BaseKMeans(onedal_BaseEstimator, TransformerMixin, ClusterMixin, ABC):
|
|
|
73
84
|
f"match the number of features of the data {X.shape[1]}."
|
|
74
85
|
)
|
|
75
86
|
|
|
76
|
-
def _get_kmeans_init(self, cluster_count, seed, algorithm):
|
|
77
|
-
return KMeansInit(
|
|
87
|
+
def _get_kmeans_init(self, cluster_count, seed, algorithm, is_csr):
|
|
88
|
+
return KMeansInit(
|
|
89
|
+
cluster_count=cluster_count,
|
|
90
|
+
seed=seed,
|
|
91
|
+
algorithm=algorithm,
|
|
92
|
+
is_csr=is_csr,
|
|
93
|
+
)
|
|
78
94
|
|
|
79
95
|
# Get appropriate backend (required for SPMD)
|
|
80
96
|
def _get_basic_statistics_backend(self, result_options):
|
|
81
97
|
return BasicStatistics(result_options)
|
|
82
98
|
|
|
83
|
-
def _tolerance(self, X_table, rtol, is_csr,
|
|
99
|
+
def _tolerance(self, X_table, rtol, is_csr, dtype):
|
|
84
100
|
"""Compute absolute tolerance from the relative tolerance"""
|
|
85
101
|
if rtol == 0.0:
|
|
86
102
|
return rtol
|
|
@@ -88,13 +104,13 @@ class _BaseKMeans(onedal_BaseEstimator, TransformerMixin, ClusterMixin, ABC):
|
|
|
88
104
|
|
|
89
105
|
bs = self._get_basic_statistics_backend("variance")
|
|
90
106
|
|
|
91
|
-
res = bs._compute_raw(X_table, dummy,
|
|
107
|
+
res = bs._compute_raw(X_table, dummy, dtype, is_csr)
|
|
92
108
|
mean_var = from_table(res["variance"]).mean()
|
|
93
109
|
|
|
94
110
|
return mean_var * rtol
|
|
95
111
|
|
|
96
112
|
def _check_params_vs_input(
|
|
97
|
-
self, X_table, is_csr,
|
|
113
|
+
self, X_table, is_csr, default_n_init=10, dtype=np.float32
|
|
98
114
|
):
|
|
99
115
|
# n_clusters
|
|
100
116
|
if X_table.shape[0] < self.n_clusters:
|
|
@@ -103,7 +119,7 @@ class _BaseKMeans(onedal_BaseEstimator, TransformerMixin, ClusterMixin, ABC):
|
|
|
103
119
|
)
|
|
104
120
|
|
|
105
121
|
# tol
|
|
106
|
-
self._tol = self._tolerance(X_table, self.tol, is_csr,
|
|
122
|
+
self._tol = self._tolerance(X_table, self.tol, is_csr, dtype)
|
|
107
123
|
|
|
108
124
|
# n-init
|
|
109
125
|
# TODO(1.4): Remove
|
|
@@ -159,42 +175,34 @@ class _BaseKMeans(onedal_BaseEstimator, TransformerMixin, ClusterMixin, ABC):
|
|
|
159
175
|
X_table,
|
|
160
176
|
init,
|
|
161
177
|
random_seed,
|
|
162
|
-
policy,
|
|
163
178
|
is_csr,
|
|
164
179
|
dtype=np.float32,
|
|
165
180
|
n_centroids=None,
|
|
166
181
|
):
|
|
167
182
|
n_clusters = self.n_clusters if n_centroids is None else n_centroids
|
|
168
|
-
# Use host policy for KMeans init, only for csr data
|
|
169
|
-
# as oneDAL KMeansInit for CSR data is not implemented on GPU
|
|
170
|
-
if is_csr:
|
|
171
|
-
init_policy = self._get_policy(None, None)
|
|
172
|
-
logging.getLogger("sklearnex").info("Running Sparse KMeansInit on CPU")
|
|
173
|
-
else:
|
|
174
|
-
init_policy = policy
|
|
175
183
|
|
|
176
184
|
if isinstance(init, str) and init == "k-means++":
|
|
177
|
-
if not is_csr
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
centers_table = alg.compute_raw(X_table, init_policy, dtype)
|
|
185
|
+
algorithm = "plus_plus_dense" if not is_csr else "plus_plus_csr"
|
|
186
|
+
alg = self._get_kmeans_init(
|
|
187
|
+
cluster_count=n_clusters,
|
|
188
|
+
seed=random_seed,
|
|
189
|
+
algorithm=algorithm,
|
|
190
|
+
is_csr=is_csr,
|
|
191
|
+
)
|
|
192
|
+
# We pass down the queue that was set through the KMeans.fit()
|
|
193
|
+
queue = QM.get_global_queue()
|
|
194
|
+
centers_table = alg.compute_raw(X_table, dtype, queue=queue)
|
|
188
195
|
elif isinstance(init, str) and init == "random":
|
|
189
|
-
if not is_csr
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
196
|
+
algorithm = "random_dense" if not is_csr else "random_csr"
|
|
197
|
+
alg = self._get_kmeans_init(
|
|
198
|
+
cluster_count=n_clusters,
|
|
199
|
+
seed=random_seed,
|
|
200
|
+
algorithm=algorithm,
|
|
201
|
+
is_csr=is_csr,
|
|
202
|
+
)
|
|
203
|
+
# We pass down the queue that was set through the KMeans.fit()
|
|
204
|
+
queue = QM.get_global_queue()
|
|
205
|
+
centers_table = alg.compute_raw(X_table, dtype, queue=queue)
|
|
198
206
|
elif _is_arraylike_not_scalar(init):
|
|
199
207
|
if _is_csr(init):
|
|
200
208
|
# oneDAL KMeans only supports Dense Centroids
|
|
@@ -205,13 +213,13 @@ class _BaseKMeans(onedal_BaseEstimator, TransformerMixin, ClusterMixin, ABC):
|
|
|
205
213
|
assert centers.shape[1] == X_table.column_count
|
|
206
214
|
# KMeans is implemented on both CPU and GPU for Dense and CSR data
|
|
207
215
|
# The original policy can be used here
|
|
208
|
-
centers_table = to_table(centers, queue=
|
|
216
|
+
centers_table = to_table(centers, queue=QM.get_global_queue())
|
|
209
217
|
else:
|
|
210
218
|
raise TypeError("Unsupported type of the `init` value")
|
|
211
219
|
|
|
212
220
|
return centers_table
|
|
213
221
|
|
|
214
|
-
def _init_centroids_sklearn(self, X, init, random_state,
|
|
222
|
+
def _init_centroids_sklearn(self, X, init, random_state, dtype=np.float32):
|
|
215
223
|
# For oneDAL versions < 2023.2 or callable init,
|
|
216
224
|
# using the scikit-learn implementation
|
|
217
225
|
logging.getLogger("sklearnex").info("Computing KMeansInit with Stock sklearn")
|
|
@@ -239,16 +247,14 @@ class _BaseKMeans(onedal_BaseEstimator, TransformerMixin, ClusterMixin, ABC):
|
|
|
239
247
|
f"callable, got '{ init }' instead."
|
|
240
248
|
)
|
|
241
249
|
|
|
242
|
-
return to_table(centers, queue=getattr(
|
|
250
|
+
return to_table(centers, queue=getattr(QM.get_global_queue(), "_queue", None))
|
|
243
251
|
|
|
244
|
-
def _fit_backend(
|
|
245
|
-
self, X_table, centroids_table, module, policy, dtype=np.float32, is_csr=False
|
|
246
|
-
):
|
|
252
|
+
def _fit_backend(self, X_table, centroids_table, dtype=np.float32, is_csr=False):
|
|
247
253
|
params = self._get_onedal_params(is_csr, dtype)
|
|
248
254
|
|
|
249
255
|
assert X_table.dtype == dtype
|
|
250
256
|
|
|
251
|
-
result =
|
|
257
|
+
result = self.train(params, X_table, centroids_table)
|
|
252
258
|
|
|
253
259
|
return (
|
|
254
260
|
result.responses,
|
|
@@ -257,16 +263,20 @@ class _BaseKMeans(onedal_BaseEstimator, TransformerMixin, ClusterMixin, ABC):
|
|
|
257
263
|
result.iteration_count,
|
|
258
264
|
)
|
|
259
265
|
|
|
260
|
-
def _fit(self, X
|
|
261
|
-
policy = self._get_policy(queue, X)
|
|
266
|
+
def _fit(self, X):
|
|
262
267
|
is_csr = _is_csr(X)
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
268
|
+
|
|
269
|
+
if _get_config()["use_raw_input"] is False:
|
|
270
|
+
X = _check_array(
|
|
271
|
+
X,
|
|
272
|
+
dtype=[np.float64, np.float32],
|
|
273
|
+
accept_sparse="csr",
|
|
274
|
+
force_all_finite=False,
|
|
275
|
+
)
|
|
276
|
+
X_table = to_table(X, queue=QM.get_global_queue())
|
|
267
277
|
dtype = X_table.dtype
|
|
268
278
|
|
|
269
|
-
self._check_params_vs_input(X_table, is_csr,
|
|
279
|
+
self._check_params_vs_input(X_table, is_csr, dtype=dtype)
|
|
270
280
|
|
|
271
281
|
self.n_features_in_ = X_table.column_count
|
|
272
282
|
|
|
@@ -277,12 +287,10 @@ class _BaseKMeans(onedal_BaseEstimator, TransformerMixin, ClusterMixin, ABC):
|
|
|
277
287
|
if best_inertia is None:
|
|
278
288
|
return True
|
|
279
289
|
else:
|
|
280
|
-
mod = self._get_backend("kmeans_common", None, None)
|
|
281
290
|
better_inertia = inertia < best_inertia
|
|
282
|
-
|
|
291
|
+
return better_inertia and not self._is_same_clustering(
|
|
283
292
|
labels, best_labels, self.n_clusters
|
|
284
293
|
)
|
|
285
|
-
return better_inertia and not same_clusters
|
|
286
294
|
|
|
287
295
|
random_state = check_random_state(self.random_state)
|
|
288
296
|
|
|
@@ -300,18 +308,18 @@ class _BaseKMeans(onedal_BaseEstimator, TransformerMixin, ClusterMixin, ABC):
|
|
|
300
308
|
if use_onedal_init:
|
|
301
309
|
random_seed = random_state.randint(np.iinfo("i").max)
|
|
302
310
|
centroids_table = self._init_centroids_onedal(
|
|
303
|
-
X_table, init, random_seed,
|
|
311
|
+
X_table, init, random_seed, is_csr, dtype=dtype
|
|
304
312
|
)
|
|
305
313
|
else:
|
|
306
314
|
centroids_table = self._init_centroids_sklearn(
|
|
307
|
-
X, init, random_state,
|
|
315
|
+
X, init, random_state, dtype=dtype
|
|
308
316
|
)
|
|
309
317
|
|
|
310
318
|
if self.verbose:
|
|
311
319
|
print("Initialization complete")
|
|
312
320
|
|
|
313
321
|
labels, inertia, model, n_iter = self._fit_backend(
|
|
314
|
-
X_table, centroids_table,
|
|
322
|
+
X_table, centroids_table, dtype, is_csr
|
|
315
323
|
)
|
|
316
324
|
|
|
317
325
|
if self.verbose:
|
|
@@ -350,7 +358,7 @@ class _BaseKMeans(onedal_BaseEstimator, TransformerMixin, ClusterMixin, ABC):
|
|
|
350
358
|
centroids = self.model_.centroids
|
|
351
359
|
self._cluster_centers_ = from_table(centroids)
|
|
352
360
|
else:
|
|
353
|
-
raise NameError("This model
|
|
361
|
+
raise NameError("This model has not been trained")
|
|
354
362
|
return self._cluster_centers_
|
|
355
363
|
|
|
356
364
|
@cluster_centers_.setter
|
|
@@ -360,7 +368,6 @@ class _BaseKMeans(onedal_BaseEstimator, TransformerMixin, ClusterMixin, ABC):
|
|
|
360
368
|
self.n_iter_ = 0
|
|
361
369
|
self.inertia_ = 0
|
|
362
370
|
|
|
363
|
-
self.model_ = self._get_backend("kmeans", "clustering", "model")
|
|
364
371
|
self.model_.centroids = to_table(self._cluster_centers_)
|
|
365
372
|
self.n_features_in_ = self.model_.centroids.column_count
|
|
366
373
|
self.labels_ = np.arange(self.model_.centroids.row_count)
|
|
@@ -371,27 +378,26 @@ class _BaseKMeans(onedal_BaseEstimator, TransformerMixin, ClusterMixin, ABC):
|
|
|
371
378
|
def cluster_centers_(self):
|
|
372
379
|
del self._cluster_centers_
|
|
373
380
|
|
|
374
|
-
def _predict(self, X,
|
|
381
|
+
def _predict(self, X, result_options=None):
|
|
375
382
|
is_csr = _is_csr(X)
|
|
376
383
|
|
|
377
|
-
|
|
378
|
-
X_table = to_table(X, queue=queue)
|
|
384
|
+
X_table = to_table(X, queue=QM.get_global_queue())
|
|
379
385
|
params = self._get_onedal_params(is_csr, X_table.dtype, result_options)
|
|
380
386
|
|
|
381
|
-
result =
|
|
387
|
+
result = self.infer(params, self.model_, X_table)
|
|
382
388
|
|
|
383
|
-
if
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
return result.objective_function_value * (-1)
|
|
389
|
+
if result_options == "compute_exact_objective_function":
|
|
390
|
+
# This is only set for score function
|
|
391
|
+
return -1 * result.objective_function_value
|
|
387
392
|
else:
|
|
388
393
|
return from_table(result.responses).ravel()
|
|
389
394
|
|
|
390
|
-
def _score(self, X
|
|
395
|
+
def _score(self, X):
|
|
391
396
|
result_options = "compute_exact_objective_function"
|
|
392
397
|
|
|
393
398
|
return self._predict(
|
|
394
|
-
X,
|
|
399
|
+
X,
|
|
400
|
+
result_options,
|
|
395
401
|
)
|
|
396
402
|
|
|
397
403
|
def _transform(self, X):
|
|
@@ -426,9 +432,11 @@ class KMeans(_BaseKMeans):
|
|
|
426
432
|
self.algorithm = algorithm
|
|
427
433
|
assert self.algorithm == "lloyd"
|
|
428
434
|
|
|
435
|
+
@supports_queue
|
|
429
436
|
def fit(self, X, y=None, queue=None):
|
|
430
|
-
return
|
|
437
|
+
return self._fit(X)
|
|
431
438
|
|
|
439
|
+
@supports_queue
|
|
432
440
|
def predict(self, X, queue=None):
|
|
433
441
|
"""Predict the closest cluster each sample in X belongs to.
|
|
434
442
|
|
|
@@ -446,7 +454,7 @@ class KMeans(_BaseKMeans):
|
|
|
446
454
|
labels : ndarray of shape (n_samples,)
|
|
447
455
|
Index of the cluster each sample belongs to.
|
|
448
456
|
"""
|
|
449
|
-
return
|
|
457
|
+
return self._predict(X)
|
|
450
458
|
|
|
451
459
|
def fit_predict(self, X, y=None, queue=None):
|
|
452
460
|
"""Compute cluster centers and predict cluster index for each sample.
|
|
@@ -509,6 +517,7 @@ class KMeans(_BaseKMeans):
|
|
|
509
517
|
|
|
510
518
|
return self._transform(X)
|
|
511
519
|
|
|
520
|
+
@supports_queue
|
|
512
521
|
def score(self, X, queue=None):
|
|
513
522
|
"""Opposite of the value of X on the K-means objective.
|
|
514
523
|
|
|
@@ -522,7 +531,7 @@ class KMeans(_BaseKMeans):
|
|
|
522
531
|
score: float
|
|
523
532
|
Opposite of the value of X on the K-means objective.
|
|
524
533
|
"""
|
|
525
|
-
return
|
|
534
|
+
return self._score(X)
|
|
526
535
|
|
|
527
536
|
|
|
528
537
|
def k_means(
|
|
@@ -15,18 +15,52 @@
|
|
|
15
15
|
# ==============================================================================
|
|
16
16
|
|
|
17
17
|
import numpy as np
|
|
18
|
-
from scipy.sparse import issparse
|
|
19
18
|
from sklearn.utils import check_random_state
|
|
20
19
|
|
|
21
|
-
from daal4py.sklearn._utils import daal_check_version
|
|
20
|
+
from daal4py.sklearn._utils import daal_check_version
|
|
21
|
+
from onedal._device_offload import supports_queue
|
|
22
|
+
from onedal.common._backend import bind_default_backend
|
|
23
|
+
from onedal.utils import _sycl_queue_manager as QM
|
|
24
|
+
from sklearnex._config import config_context, get_config
|
|
22
25
|
|
|
23
|
-
from ..common._base import BaseEstimator as onedal_BaseEstimator
|
|
24
26
|
from ..datatypes import from_table, to_table
|
|
25
|
-
from ..utils import _check_array
|
|
27
|
+
from ..utils.validation import _check_array
|
|
26
28
|
|
|
27
29
|
if daal_check_version((2023, "P", 200)):
|
|
28
30
|
|
|
29
|
-
|
|
31
|
+
def force_host_if_csr(func):
|
|
32
|
+
"""
|
|
33
|
+
Decorator to force computation on the host if the input data is in CSR format.
|
|
34
|
+
|
|
35
|
+
CSR (Compressed Sparse Row) format is not supported on GPU. This decorator ensures that
|
|
36
|
+
the computation is performed on the host (CPU) when the input data is in CSR format.
|
|
37
|
+
It is necessary that `self.is_csr` is to the correct value (True or False) before calling.
|
|
38
|
+
It temporarily modifies the configuration to target the CPU and removes the global SYCL queue
|
|
39
|
+
to ensure the computation is executed on the host. The original configuration is restored upon exit.
|
|
40
|
+
|
|
41
|
+
Parameters:
|
|
42
|
+
func (function): The function to be decorated.
|
|
43
|
+
|
|
44
|
+
Returns:
|
|
45
|
+
function: The wrapped function with the modified configuration if the input data is in CSR format.
|
|
46
|
+
"""
|
|
47
|
+
config = get_config()
|
|
48
|
+
# `auto` rather than `cpu` is necessary in order to force host when a SYCL cpu target is unavailable
|
|
49
|
+
config["target_offload"] = "auto"
|
|
50
|
+
|
|
51
|
+
def wrapper(self, *args, **kwargs):
|
|
52
|
+
if self.is_csr:
|
|
53
|
+
with (
|
|
54
|
+
config_context(**config),
|
|
55
|
+
QM.manage_global_queue(None, None),
|
|
56
|
+
):
|
|
57
|
+
return func(self, *args, **kwargs)
|
|
58
|
+
else:
|
|
59
|
+
return func(self, *args, **kwargs)
|
|
60
|
+
|
|
61
|
+
return wrapper
|
|
62
|
+
|
|
63
|
+
class KMeansInit:
|
|
30
64
|
"""
|
|
31
65
|
KMeansInit oneDAL implementation.
|
|
32
66
|
"""
|
|
@@ -37,17 +71,22 @@ if daal_check_version((2023, "P", 200)):
|
|
|
37
71
|
seed=777,
|
|
38
72
|
local_trials_count=None,
|
|
39
73
|
algorithm="plus_plus_dense",
|
|
74
|
+
is_csr=False,
|
|
40
75
|
):
|
|
41
76
|
self.cluster_count = cluster_count
|
|
42
77
|
self.seed = seed
|
|
43
78
|
self.local_trials_count = local_trials_count
|
|
44
79
|
self.algorithm = algorithm
|
|
80
|
+
self.is_csr = is_csr
|
|
45
81
|
|
|
46
82
|
if local_trials_count is None:
|
|
47
83
|
self.local_trials_count = 2 + int(np.log(cluster_count))
|
|
48
84
|
else:
|
|
49
85
|
self.local_trials_count = local_trials_count
|
|
50
86
|
|
|
87
|
+
@bind_default_backend("kmeans_init.init", lookup_name="compute")
|
|
88
|
+
def backend_compute(self, params, X_table): ...
|
|
89
|
+
|
|
51
90
|
def _get_onedal_params(self, dtype=np.float32):
|
|
52
91
|
return {
|
|
53
92
|
"fptype": dtype,
|
|
@@ -68,31 +107,25 @@ if daal_check_version((2023, "P", 200)):
|
|
|
68
107
|
params = self._get_onedal_params(X.dtype)
|
|
69
108
|
return (params, X, X.dtype)
|
|
70
109
|
|
|
71
|
-
def _compute_raw(self, X_table,
|
|
110
|
+
def _compute_raw(self, X_table, dtype=np.float32):
|
|
72
111
|
params = self._get_onedal_params(dtype)
|
|
73
|
-
|
|
74
|
-
result = module.compute(policy, params, X_table)
|
|
75
|
-
|
|
112
|
+
result = self.backend_compute(params, X_table)
|
|
76
113
|
return result.centroids
|
|
77
114
|
|
|
78
|
-
def _compute(self, X
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
if issparse(X):
|
|
82
|
-
policy = self._get_policy(None, None)
|
|
83
|
-
_, X_table, dtype = self._get_params_and_input(X, queue)
|
|
84
|
-
|
|
85
|
-
centroids = self._compute_raw(X_table, module, policy, dtype)
|
|
86
|
-
|
|
115
|
+
def _compute(self, X):
|
|
116
|
+
_, X_table, dtype = self._get_params_and_input(X, queue=QM.get_global_queue())
|
|
117
|
+
centroids = self._compute_raw(X_table, dtype)
|
|
87
118
|
return from_table(centroids)
|
|
88
119
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
)
|
|
120
|
+
@force_host_if_csr
|
|
121
|
+
def compute_raw(self, X_table, dtype=np.float32, queue=None):
|
|
122
|
+
# no @supports_queue decorator here, because we only accept X_table that has no queue information
|
|
123
|
+
return self._compute_raw(X_table, dtype)
|
|
93
124
|
|
|
125
|
+
@force_host_if_csr
|
|
126
|
+
@supports_queue
|
|
94
127
|
def compute(self, X, queue=None):
|
|
95
|
-
return self._compute(X
|
|
128
|
+
return self._compute(X)
|
|
96
129
|
|
|
97
130
|
def kmeans_plusplus(
|
|
98
131
|
X,
|
|
@@ -107,6 +140,6 @@ if daal_check_version((2023, "P", 200)):
|
|
|
107
140
|
return (
|
|
108
141
|
KMeansInit(
|
|
109
142
|
n_clusters, seed=random_seed, local_trials_count=n_local_trials
|
|
110
|
-
).compute(X, queue),
|
|
143
|
+
).compute(X, queue=queue),
|
|
111
144
|
np.full(n_clusters, -1),
|
|
112
145
|
)
|