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
|
@@ -15,7 +15,6 @@
|
|
|
15
15
|
# ===============================================================================
|
|
16
16
|
|
|
17
17
|
import logging
|
|
18
|
-
from abc import ABC
|
|
19
18
|
|
|
20
19
|
import numpy as np
|
|
21
20
|
from sklearn.linear_model import LinearRegression as _sklearn_LinearRegression
|
|
@@ -33,8 +32,9 @@ from .._utils import (
|
|
|
33
32
|
get_patch_message,
|
|
34
33
|
register_hyperparameters,
|
|
35
34
|
)
|
|
35
|
+
from ..utils.validation import validate_data
|
|
36
36
|
|
|
37
|
-
if
|
|
37
|
+
if not sklearn_check_version("1.2"):
|
|
38
38
|
from sklearn.linear_model._base import _deprecate_normalize
|
|
39
39
|
|
|
40
40
|
from scipy.sparse import issparse
|
|
@@ -42,12 +42,7 @@ from sklearn.utils.validation import check_is_fitted, check_X_y
|
|
|
42
42
|
|
|
43
43
|
from onedal.common.hyperparameters import get_hyperparameters
|
|
44
44
|
from onedal.linear_model import LinearRegression as onedal_LinearRegression
|
|
45
|
-
from onedal.utils import _num_features, _num_samples
|
|
46
|
-
|
|
47
|
-
if sklearn_check_version("1.6"):
|
|
48
|
-
from sklearn.utils.validation import validate_data
|
|
49
|
-
else:
|
|
50
|
-
validate_data = _sklearn_LinearRegression._validate_data
|
|
45
|
+
from onedal.utils.validation import _num_features, _num_samples
|
|
51
46
|
|
|
52
47
|
|
|
53
48
|
@register_hyperparameters({"fit": get_hyperparameters("linear_regression", "train")})
|
|
@@ -60,26 +55,46 @@ class LinearRegression(PatchableEstimator, _sklearn_LinearRegression):
|
|
|
60
55
|
**_sklearn_LinearRegression._parameter_constraints
|
|
61
56
|
}
|
|
62
57
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
58
|
+
if sklearn_check_version("1.7"):
|
|
59
|
+
|
|
60
|
+
def __init__(
|
|
61
|
+
self,
|
|
62
|
+
fit_intercept=True,
|
|
63
|
+
copy_X=True,
|
|
64
|
+
tol=1e-06, # for sparse solver only, not used by oneDAL
|
|
65
|
+
n_jobs=None,
|
|
66
|
+
positive=False,
|
|
67
|
+
):
|
|
68
|
+
super().__init__(
|
|
69
|
+
fit_intercept=fit_intercept,
|
|
70
|
+
copy_X=copy_X,
|
|
71
|
+
tol=tol,
|
|
72
|
+
n_jobs=n_jobs,
|
|
73
|
+
positive=positive,
|
|
74
|
+
)
|
|
75
|
+
|
|
76
|
+
else:
|
|
77
|
+
|
|
78
|
+
def __init__(
|
|
79
|
+
self,
|
|
80
|
+
fit_intercept=True,
|
|
81
|
+
copy_X=True,
|
|
82
|
+
n_jobs=None,
|
|
83
|
+
positive=False,
|
|
84
|
+
):
|
|
85
|
+
super().__init__(
|
|
86
|
+
fit_intercept=fit_intercept,
|
|
87
|
+
copy_X=copy_X,
|
|
88
|
+
n_jobs=n_jobs,
|
|
89
|
+
positive=positive,
|
|
90
|
+
)
|
|
76
91
|
|
|
77
92
|
else:
|
|
78
93
|
|
|
79
94
|
def __init__(
|
|
80
95
|
self,
|
|
81
96
|
fit_intercept=True,
|
|
82
|
-
normalize="deprecated"
|
|
97
|
+
normalize="deprecated",
|
|
83
98
|
copy_X=True,
|
|
84
99
|
n_jobs=None,
|
|
85
100
|
positive=False,
|
|
@@ -246,20 +261,17 @@ class LinearRegression(PatchableEstimator, _sklearn_LinearRegression):
|
|
|
246
261
|
assert sample_weight is None
|
|
247
262
|
|
|
248
263
|
supports_multi_output = daal_check_version((2025, "P", 1))
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
"
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
X, y = validate_data(self, **check_params)
|
|
259
|
-
else:
|
|
260
|
-
X, y = check_X_y(**check_params)
|
|
264
|
+
X, y = validate_data(
|
|
265
|
+
self,
|
|
266
|
+
X=X,
|
|
267
|
+
y=y,
|
|
268
|
+
dtype=[np.float64, np.float32],
|
|
269
|
+
accept_sparse=["csr", "csc", "coo"],
|
|
270
|
+
y_numeric=True,
|
|
271
|
+
multi_output=supports_multi_output,
|
|
272
|
+
)
|
|
261
273
|
|
|
262
|
-
if
|
|
274
|
+
if not sklearn_check_version("1.2"):
|
|
263
275
|
self._normalize = _deprecate_normalize(
|
|
264
276
|
self.normalize,
|
|
265
277
|
default=False,
|
|
@@ -287,10 +299,7 @@ class LinearRegression(PatchableEstimator, _sklearn_LinearRegression):
|
|
|
287
299
|
self._save_attributes()
|
|
288
300
|
|
|
289
301
|
def _onedal_predict(self, X, queue=None):
|
|
290
|
-
|
|
291
|
-
X = validate_data(self, X, accept_sparse=False, reset=False)
|
|
292
|
-
else:
|
|
293
|
-
X = check_array(X, accept_sparse=False)
|
|
302
|
+
X = validate_data(self, X, accept_sparse=False, reset=False)
|
|
294
303
|
|
|
295
304
|
if not hasattr(self, "_onedal_estimator"):
|
|
296
305
|
self._initialize_onedal_estimator()
|
|
@@ -34,16 +34,12 @@ if daal_check_version((2024, "P", 1)):
|
|
|
34
34
|
from daal4py.sklearn._utils import sklearn_check_version
|
|
35
35
|
from daal4py.sklearn.linear_model.logistic_path import daal4py_fit, daal4py_predict
|
|
36
36
|
from onedal.linear_model import LogisticRegression as onedal_LogisticRegression
|
|
37
|
-
from onedal.utils import _num_samples
|
|
37
|
+
from onedal.utils.validation import _num_samples
|
|
38
38
|
|
|
39
39
|
from .._config import get_config
|
|
40
40
|
from .._device_offload import dispatch, wrap_output_data
|
|
41
41
|
from .._utils import PatchableEstimator, PatchingConditionsChain, get_patch_message
|
|
42
|
-
|
|
43
|
-
if sklearn_check_version("1.6"):
|
|
44
|
-
from sklearn.utils.validation import validate_data
|
|
45
|
-
else:
|
|
46
|
-
validate_data = _sklearn_LogisticRegression._validate_data
|
|
42
|
+
from ..utils.validation import validate_data
|
|
47
43
|
|
|
48
44
|
_sparsity_enabled = daal_check_version((2024, "P", 700))
|
|
49
45
|
|
|
@@ -293,23 +289,14 @@ if daal_check_version((2024, "P", 1)):
|
|
|
293
289
|
|
|
294
290
|
assert sample_weight is None
|
|
295
291
|
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
)
|
|
305
|
-
else:
|
|
306
|
-
X, y = check_X_y(
|
|
307
|
-
X,
|
|
308
|
-
y,
|
|
309
|
-
accept_sparse=_sparsity_enabled,
|
|
310
|
-
accept_large_sparse=_sparsity_enabled,
|
|
311
|
-
dtype=[np.float64, np.float32],
|
|
312
|
-
)
|
|
292
|
+
X, y = validate_data(
|
|
293
|
+
self,
|
|
294
|
+
X,
|
|
295
|
+
y,
|
|
296
|
+
accept_sparse=_sparsity_enabled,
|
|
297
|
+
accept_large_sparse=_sparsity_enabled,
|
|
298
|
+
dtype=[np.float64, np.float32],
|
|
299
|
+
)
|
|
313
300
|
|
|
314
301
|
self._onedal_gpu_initialize_estimator()
|
|
315
302
|
try:
|
|
@@ -332,22 +319,14 @@ if daal_check_version((2024, "P", 1)):
|
|
|
332
319
|
if queue is None or queue.sycl_device.is_cpu:
|
|
333
320
|
return daal4py_predict(self, X, "computeClassLabels")
|
|
334
321
|
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
)
|
|
344
|
-
else:
|
|
345
|
-
X = check_array(
|
|
346
|
-
X,
|
|
347
|
-
accept_sparse=_sparsity_enabled,
|
|
348
|
-
accept_large_sparse=_sparsity_enabled,
|
|
349
|
-
dtype=[np.float64, np.float32],
|
|
350
|
-
)
|
|
322
|
+
X = validate_data(
|
|
323
|
+
self,
|
|
324
|
+
X,
|
|
325
|
+
reset=False,
|
|
326
|
+
accept_sparse=_sparsity_enabled,
|
|
327
|
+
accept_large_sparse=_sparsity_enabled,
|
|
328
|
+
dtype=[np.float64, np.float32],
|
|
329
|
+
)
|
|
351
330
|
|
|
352
331
|
assert hasattr(self, "_onedal_estimator")
|
|
353
332
|
return self._onedal_estimator.predict(X, queue=queue)
|
|
@@ -356,22 +335,14 @@ if daal_check_version((2024, "P", 1)):
|
|
|
356
335
|
if queue is None or queue.sycl_device.is_cpu:
|
|
357
336
|
return daal4py_predict(self, X, "computeClassProbabilities")
|
|
358
337
|
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
)
|
|
368
|
-
else:
|
|
369
|
-
X = check_array(
|
|
370
|
-
X,
|
|
371
|
-
accept_sparse=_sparsity_enabled,
|
|
372
|
-
accept_large_sparse=_sparsity_enabled,
|
|
373
|
-
dtype=[np.float64, np.float32],
|
|
374
|
-
)
|
|
338
|
+
X = validate_data(
|
|
339
|
+
self,
|
|
340
|
+
X,
|
|
341
|
+
reset=False,
|
|
342
|
+
accept_sparse=_sparsity_enabled,
|
|
343
|
+
accept_large_sparse=_sparsity_enabled,
|
|
344
|
+
dtype=[np.float64, np.float32],
|
|
345
|
+
)
|
|
375
346
|
|
|
376
347
|
assert hasattr(self, "_onedal_estimator")
|
|
377
348
|
return self._onedal_estimator.predict_proba(X, queue=queue)
|
|
@@ -380,22 +351,14 @@ if daal_check_version((2024, "P", 1)):
|
|
|
380
351
|
if queue is None or queue.sycl_device.is_cpu:
|
|
381
352
|
return daal4py_predict(self, X, "computeClassLogProbabilities")
|
|
382
353
|
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
)
|
|
392
|
-
else:
|
|
393
|
-
X = check_array(
|
|
394
|
-
X,
|
|
395
|
-
accept_sparse=_sparsity_enabled,
|
|
396
|
-
accept_large_sparse=_sparsity_enabled,
|
|
397
|
-
dtype=[np.float64, np.float32],
|
|
398
|
-
)
|
|
354
|
+
X = validate_data(
|
|
355
|
+
self,
|
|
356
|
+
X,
|
|
357
|
+
reset=False,
|
|
358
|
+
accept_sparse=_sparsity_enabled,
|
|
359
|
+
accept_large_sparse=_sparsity_enabled,
|
|
360
|
+
dtype=[np.float64, np.float32],
|
|
361
|
+
)
|
|
399
362
|
|
|
400
363
|
assert hasattr(self, "_onedal_estimator")
|
|
401
364
|
return self._onedal_estimator.predict_log_proba(X, queue=queue)
|
|
@@ -35,15 +35,11 @@ if daal_check_version((2024, "P", 600)):
|
|
|
35
35
|
from sklearn.utils import check_scalar
|
|
36
36
|
|
|
37
37
|
from onedal.linear_model import Ridge as onedal_Ridge
|
|
38
|
-
from onedal.utils import _num_features, _num_samples
|
|
38
|
+
from onedal.utils.validation import _num_features, _num_samples
|
|
39
39
|
|
|
40
40
|
from .._device_offload import dispatch, wrap_output_data
|
|
41
41
|
from .._utils import PatchableEstimator, PatchingConditionsChain
|
|
42
|
-
|
|
43
|
-
if sklearn_check_version("1.6"):
|
|
44
|
-
from sklearn.utils.validation import validate_data
|
|
45
|
-
else:
|
|
46
|
-
validate_data = _sklearn_Ridge._validate_data
|
|
42
|
+
from ..utils.validation import validate_data
|
|
47
43
|
|
|
48
44
|
@control_n_jobs(decorated_methods=["fit", "predict", "score"])
|
|
49
45
|
class Ridge(PatchableEstimator, _sklearn_Ridge):
|
|
@@ -307,15 +303,15 @@ if daal_check_version((2024, "P", 600)):
|
|
|
307
303
|
include_boundaries="left",
|
|
308
304
|
)
|
|
309
305
|
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
"
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
306
|
+
X, y = validate_data(
|
|
307
|
+
self,
|
|
308
|
+
X=X,
|
|
309
|
+
y=y,
|
|
310
|
+
dtype=[np.float64, np.float32],
|
|
311
|
+
accept_sparse=["csr", "csc", "coo"],
|
|
312
|
+
y_numeric=True,
|
|
313
|
+
multi_output=True,
|
|
314
|
+
)
|
|
319
315
|
|
|
320
316
|
if not sklearn_check_version("1.2"):
|
|
321
317
|
self._normalize = _deprecate_normalize(
|
|
@@ -383,8 +379,8 @@ else:
|
|
|
383
379
|
from daal4py.sklearn.linear_model import Ridge
|
|
384
380
|
from onedal._device_offload import support_input_format
|
|
385
381
|
|
|
386
|
-
Ridge.fit = support_input_format(
|
|
387
|
-
Ridge.predict = support_input_format(
|
|
388
|
-
Ridge.score = support_input_format(
|
|
382
|
+
Ridge.fit = support_input_format(Ridge.fit)
|
|
383
|
+
Ridge.predict = support_input_format(Ridge.predict)
|
|
384
|
+
Ridge.score = support_input_format(Ridge.score)
|
|
389
385
|
|
|
390
386
|
logging.warning("Ridge requires oneDAL version >= 2024.6 but it was not found")
|
|
@@ -29,13 +29,71 @@ from onedal.tests.utils._dataframes_support import (
|
|
|
29
29
|
from sklearnex.tests.utils import _IS_INTEL
|
|
30
30
|
|
|
31
31
|
|
|
32
|
+
# Note: this is arranged as a fixture with a finalizer instead of as a parameter
|
|
33
|
+
# 'True' / 'False' in order to undo the changes later so that it doesn't affect
|
|
34
|
+
# other tests afterwards. It returns a function instead of making the change
|
|
35
|
+
# directly, in order to avoid importing the estimator class before the import test
|
|
36
|
+
# itself, but it still needs to import the class inside the the function that it
|
|
37
|
+
# returns due to serialization logic in pytest causing differences w.r.t. current
|
|
38
|
+
# closure where the function is called.
|
|
39
|
+
@pytest.fixture(params=[False, True])
|
|
40
|
+
def non_batched_route(request):
|
|
41
|
+
def change_parameters(queue, macro_block):
|
|
42
|
+
from sklearnex.linear_model import LinearRegression
|
|
43
|
+
|
|
44
|
+
if request.param and daal_check_version((2025, "P", 500)):
|
|
45
|
+
if queue and queue.sycl_device.is_gpu:
|
|
46
|
+
pytest.skip("Test for CPU-only functionality")
|
|
47
|
+
if macro_block is not None:
|
|
48
|
+
pytest.skip("Parameter combination with no effect")
|
|
49
|
+
|
|
50
|
+
non_batched_route.curr_cpu_max_cols_batched = (
|
|
51
|
+
LinearRegression.get_hyperparameters("fit").cpu_max_cols_batched
|
|
52
|
+
)
|
|
53
|
+
non_batched_route.curr_cpu_small_rows_threshold = (
|
|
54
|
+
LinearRegression.get_hyperparameters("fit").cpu_small_rows_threshold
|
|
55
|
+
)
|
|
56
|
+
non_batched_route.curr_cpu_small_rows_max_cols_batched = (
|
|
57
|
+
LinearRegression.get_hyperparameters(
|
|
58
|
+
"fit"
|
|
59
|
+
).cpu_small_rows_max_cols_batched
|
|
60
|
+
)
|
|
61
|
+
LinearRegression.get_hyperparameters("fit").cpu_max_cols_batched = 1
|
|
62
|
+
LinearRegression.get_hyperparameters("fit").cpu_small_rows_threshold = 1
|
|
63
|
+
LinearRegression.get_hyperparameters(
|
|
64
|
+
"fit"
|
|
65
|
+
).cpu_small_rows_max_cols_batched = 1
|
|
66
|
+
|
|
67
|
+
elif request.param and not daal_check_version((2025, "P", 500)):
|
|
68
|
+
pytest.skip("Functionality introduced in later versions")
|
|
69
|
+
|
|
70
|
+
def restore_params():
|
|
71
|
+
from sklearnex.linear_model import LinearRegression
|
|
72
|
+
|
|
73
|
+
if request.param and daal_check_version((2025, "P", 500)):
|
|
74
|
+
LinearRegression.get_hyperparameters("fit").cpu_max_cols_batched = (
|
|
75
|
+
non_batched_route.curr_cpu_max_cols_batched
|
|
76
|
+
)
|
|
77
|
+
LinearRegression.get_hyperparameters("fit").cpu_small_rows_threshold = (
|
|
78
|
+
non_batched_route.curr_cpu_small_rows_threshold
|
|
79
|
+
)
|
|
80
|
+
LinearRegression.get_hyperparameters(
|
|
81
|
+
"fit"
|
|
82
|
+
).cpu_small_rows_max_cols_batched = (
|
|
83
|
+
non_batched_route.curr_cpu_small_rows_max_cols_batched
|
|
84
|
+
)
|
|
85
|
+
|
|
86
|
+
request.addfinalizer(restore_params)
|
|
87
|
+
return change_parameters
|
|
88
|
+
|
|
89
|
+
|
|
32
90
|
@pytest.mark.parametrize("dataframe,queue", get_dataframes_and_queues())
|
|
33
91
|
@pytest.mark.parametrize("dtype", [np.float32, np.float64])
|
|
34
92
|
@pytest.mark.parametrize("macro_block", [None, 1024])
|
|
35
93
|
@pytest.mark.parametrize("overdetermined", [False, True])
|
|
36
94
|
@pytest.mark.parametrize("multi_output", [False, True])
|
|
37
95
|
def test_sklearnex_import_linear(
|
|
38
|
-
dataframe, queue, dtype, macro_block, overdetermined, multi_output
|
|
96
|
+
dataframe, queue, dtype, macro_block, non_batched_route, overdetermined, multi_output
|
|
39
97
|
):
|
|
40
98
|
if (not overdetermined or multi_output) and not daal_check_version((2025, "P", 1)):
|
|
41
99
|
pytest.skip("Functionality introduced in later versions")
|
|
@@ -65,6 +123,7 @@ def test_sklearnex_import_linear(
|
|
|
65
123
|
hparams = LinearRegression.get_hyperparameters("fit")
|
|
66
124
|
hparams.cpu_macro_block = macro_block
|
|
67
125
|
hparams.gpu_macro_block = macro_block
|
|
126
|
+
non_batched_route(queue, macro_block)
|
|
68
127
|
|
|
69
128
|
X = X.astype(dtype=dtype)
|
|
70
129
|
y = y.astype(dtype=dtype)
|
|
@@ -49,7 +49,7 @@ def test_sklearnex_multiclass_classification(dataframe, queue):
|
|
|
49
49
|
from sklearnex.linear_model import LogisticRegression
|
|
50
50
|
|
|
51
51
|
X, y = load_iris(return_X_y=True)
|
|
52
|
-
X_train, X_test, y_train, y_test = prepare_input(X, y, dataframe, queue)
|
|
52
|
+
X_train, X_test, y_train, y_test = prepare_input(X, y, dataframe, queue=queue)
|
|
53
53
|
|
|
54
54
|
logreg = LogisticRegression(fit_intercept=True, solver="lbfgs", max_iter=200).fit(
|
|
55
55
|
X_train, y_train
|
|
@@ -72,7 +72,7 @@ def test_sklearnex_binary_classification(dataframe, queue):
|
|
|
72
72
|
from sklearnex.linear_model import LogisticRegression
|
|
73
73
|
|
|
74
74
|
X, y = load_breast_cancer(return_X_y=True)
|
|
75
|
-
X_train, X_test, y_train, y_test = prepare_input(X, y, dataframe, queue)
|
|
75
|
+
X_train, X_test, y_train, y_test = prepare_input(X, y, dataframe, queue=queue)
|
|
76
76
|
|
|
77
77
|
logreg = LogisticRegression(fit_intercept=True, solver="newton-cg", max_iter=100).fit(
|
|
78
78
|
X_train, y_train
|
|
@@ -14,13 +14,12 @@
|
|
|
14
14
|
# limitations under the License.
|
|
15
15
|
# ===============================================================================
|
|
16
16
|
|
|
17
|
-
from daal4py.sklearn._n_jobs_support import control_n_jobs
|
|
18
17
|
from daal4py.sklearn.manifold import TSNE
|
|
19
18
|
from onedal._device_offload import support_input_format
|
|
20
19
|
|
|
21
20
|
from .._utils import PatchableEstimator
|
|
22
21
|
|
|
23
|
-
TSNE.fit = support_input_format(
|
|
24
|
-
TSNE.fit_transform = support_input_format(
|
|
22
|
+
TSNE.fit = support_input_format(TSNE.fit)
|
|
23
|
+
TSNE.fit_transform = support_input_format(TSNE.fit_transform)
|
|
25
24
|
TSNE._doc_link_module = "daal4py"
|
|
26
25
|
TSNE._doc_link_template = PatchableEstimator._doc_link_template
|
|
@@ -17,6 +17,4 @@
|
|
|
17
17
|
from daal4py.sklearn.metrics import pairwise_distances
|
|
18
18
|
from onedal._device_offload import support_input_format
|
|
19
19
|
|
|
20
|
-
pairwise_distances = support_input_format(
|
|
21
|
-
pairwise_distances
|
|
22
|
-
)
|
|
20
|
+
pairwise_distances = support_input_format(pairwise_distances)
|
|
@@ -17,6 +17,4 @@
|
|
|
17
17
|
from daal4py.sklearn.model_selection import train_test_split
|
|
18
18
|
from onedal._device_offload import support_input_format
|
|
19
19
|
|
|
20
|
-
train_test_split = support_input_format(
|
|
21
|
-
train_test_split
|
|
22
|
-
)
|
|
20
|
+
train_test_split = support_input_format(train_test_split)
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
# ===============================================================================
|
|
16
16
|
|
|
17
17
|
import warnings
|
|
18
|
+
from functools import wraps
|
|
18
19
|
|
|
19
20
|
import numpy as np
|
|
20
21
|
from sklearn.neighbors import LocalOutlierFactor as _sklearn_LocalOutlierFactor
|
|
@@ -28,11 +29,7 @@ from sklearnex.neighbors.common import KNeighborsDispatchingBase
|
|
|
28
29
|
from sklearnex.neighbors.knn_unsupervised import NearestNeighbors
|
|
29
30
|
|
|
30
31
|
from ..utils._array_api import get_namespace
|
|
31
|
-
|
|
32
|
-
if sklearn_check_version("1.6"):
|
|
33
|
-
from sklearn.utils.validation import validate_data
|
|
34
|
-
else:
|
|
35
|
-
validate_data = _sklearn_LocalOutlierFactor._validate_data
|
|
32
|
+
from ..utils.validation import check_feature_names
|
|
36
33
|
|
|
37
34
|
|
|
38
35
|
@control_n_jobs(decorated_methods=["fit", "kneighbors", "_kneighbors"])
|
|
@@ -59,7 +56,7 @@ class LocalOutlierFactor(KNeighborsDispatchingBase, _sklearn_LocalOutlierFactor)
|
|
|
59
56
|
if sklearn_check_version("1.2"):
|
|
60
57
|
self._validate_params()
|
|
61
58
|
|
|
62
|
-
self._onedal_knn_fit(X, y, queue)
|
|
59
|
+
self._onedal_knn_fit(X, y, queue=queue)
|
|
63
60
|
|
|
64
61
|
if self.contamination != "auto":
|
|
65
62
|
if not (0.0 < self.contamination <= 0.5):
|
|
@@ -146,34 +143,15 @@ class LocalOutlierFactor(KNeighborsDispatchingBase, _sklearn_LocalOutlierFactor)
|
|
|
146
143
|
# This would cause issues in fit_predict. Also, available_if
|
|
147
144
|
# is hard to unwrap, and this is the most straighforward way.
|
|
148
145
|
@available_if(_sklearn_LocalOutlierFactor._check_novelty_fit_predict)
|
|
146
|
+
@wraps(_sklearn_LocalOutlierFactor.fit_predict, assigned=["__doc__"])
|
|
149
147
|
@wrap_output_data
|
|
150
148
|
def fit_predict(self, X, y=None):
|
|
151
|
-
"""Fit the model to the training set X and return the labels.
|
|
152
|
-
|
|
153
|
-
**Not available for novelty detection (when novelty is set to True).**
|
|
154
|
-
Label is 1 for an inlier and -1 for an outlier according to the LOF
|
|
155
|
-
score and the contamination parameter.
|
|
156
|
-
|
|
157
|
-
Parameters
|
|
158
|
-
----------
|
|
159
|
-
X : {array-like, sparse matrix} of shape (n_samples, n_features), default=None
|
|
160
|
-
The query sample or samples to compute the Local Outlier Factor
|
|
161
|
-
w.r.t. the training samples.
|
|
162
|
-
|
|
163
|
-
y : Ignored
|
|
164
|
-
Not used, present for API consistency by convention.
|
|
165
|
-
|
|
166
|
-
Returns
|
|
167
|
-
-------
|
|
168
|
-
is_inlier : ndarray of shape (n_samples,)
|
|
169
|
-
Returns -1 for anomalies/outliers and 1 for inliers.
|
|
170
|
-
"""
|
|
171
149
|
return self.fit(X)._predict()
|
|
172
150
|
|
|
173
151
|
def _kneighbors(self, X=None, n_neighbors=None, return_distance=True):
|
|
174
152
|
check_is_fitted(self)
|
|
175
|
-
if
|
|
176
|
-
self
|
|
153
|
+
if X is not None:
|
|
154
|
+
check_feature_names(self, X, reset=False)
|
|
177
155
|
return dispatch(
|
|
178
156
|
self,
|
|
179
157
|
"kneighbors",
|
|
@@ -189,34 +167,9 @@ class LocalOutlierFactor(KNeighborsDispatchingBase, _sklearn_LocalOutlierFactor)
|
|
|
189
167
|
kneighbors = wrap_output_data(_kneighbors)
|
|
190
168
|
|
|
191
169
|
@available_if(_sklearn_LocalOutlierFactor._check_novelty_score_samples)
|
|
170
|
+
@wraps(_sklearn_LocalOutlierFactor.score_samples, assigned=["__doc__"])
|
|
192
171
|
@wrap_output_data
|
|
193
172
|
def score_samples(self, X):
|
|
194
|
-
"""Opposite of the Local Outlier Factor of X.
|
|
195
|
-
|
|
196
|
-
It is the opposite as bigger is better, i.e. large values correspond
|
|
197
|
-
to inliers.
|
|
198
|
-
|
|
199
|
-
**Only available for novelty detection (when novelty is set to True).**
|
|
200
|
-
The argument X is supposed to contain *new data*: if X contains a
|
|
201
|
-
point from training, it considers the later in its own neighborhood.
|
|
202
|
-
Also, the samples in X are not considered in the neighborhood of any
|
|
203
|
-
point. Because of this, the scores obtained via ``score_samples`` may
|
|
204
|
-
differ from the standard LOF scores.
|
|
205
|
-
The standard LOF scores for the training data is available via the
|
|
206
|
-
``negative_outlier_factor_`` attribute.
|
|
207
|
-
|
|
208
|
-
Parameters
|
|
209
|
-
----------
|
|
210
|
-
X : {array-like, sparse matrix} of shape (n_samples, n_features)
|
|
211
|
-
The query sample or samples to compute the Local Outlier Factor
|
|
212
|
-
w.r.t. the training samples.
|
|
213
|
-
|
|
214
|
-
Returns
|
|
215
|
-
-------
|
|
216
|
-
opposite_lof_scores : ndarray of shape (n_samples,)
|
|
217
|
-
The opposite of the Local Outlier Factor of each input samples.
|
|
218
|
-
The lower, the more abnormal.
|
|
219
|
-
"""
|
|
220
173
|
check_is_fitted(self)
|
|
221
174
|
|
|
222
175
|
distances_X, neighbors_indices_X = self._kneighbors(
|
|
@@ -25,18 +25,18 @@ from sklearn.neighbors._kd_tree import KDTree
|
|
|
25
25
|
from sklearn.utils.validation import check_is_fitted
|
|
26
26
|
|
|
27
27
|
from daal4py.sklearn._utils import sklearn_check_version
|
|
28
|
-
from onedal.utils import _check_array, _num_features, _num_samples
|
|
28
|
+
from onedal.utils.validation import _check_array, _num_features, _num_samples
|
|
29
29
|
|
|
30
30
|
from .._utils import PatchableEstimator, PatchingConditionsChain
|
|
31
31
|
from ..utils._array_api import get_namespace
|
|
32
|
+
from ..utils.validation import check_feature_names
|
|
32
33
|
|
|
33
34
|
|
|
34
35
|
class KNeighborsDispatchingBase(PatchableEstimator):
|
|
35
36
|
def _fit_validation(self, X, y=None):
|
|
36
37
|
if sklearn_check_version("1.2"):
|
|
37
38
|
self._validate_params()
|
|
38
|
-
|
|
39
|
-
self._check_feature_names(X, reset=True)
|
|
39
|
+
check_feature_names(self, X, reset=True)
|
|
40
40
|
if self.metric_params is not None and "p" in self.metric_params:
|
|
41
41
|
if self.p is not None:
|
|
42
42
|
warnings.warn(
|