scikit-learn-intelex 2025.4.0__py39-none-win_amd64.whl → 2025.6.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.6.0.data}/data/Lib/site-packages/daal4py/__main__.py +1 -1
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/daal4py/_daal4py.cp39-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/daal4py/mb/__init__.py +83 -0
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/daal4py/mb/gbt_convertors.py +922 -0
- scikit_learn_intelex-2025.6.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.6.0.data/data/Lib/site-packages/daal4py/mb/tree_based_builders.py +129 -106
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.0.data}/data/Lib/site-packages/daal4py/sklearn/_utils.py +1 -1
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +2 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +12 -8
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +2 -6
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +3 -7
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +41 -153
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +30 -7
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +3 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +6 -16
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +4 -7
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +3 -5
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +4 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/base.py +8 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +82 -5
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/__init__.py +125 -83
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/_config.py +27 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/_device_offload.py +86 -82
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp39-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/onedal/cluster/dbscan.py +35 -42
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/cluster/kmeans.py +83 -74
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/cluster/kmeans_init.py +57 -24
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/onedal/common/_backend.py +233 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/common/hyperparameters.py +4 -4
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/onedal/covariance/covariance.py +27 -19
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +35 -32
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +6 -10
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +39 -25
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/decomposition/pca.py +28 -16
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/onedal/ensemble/forest.py +130 -93
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/onedal/neighbors/neighbors.py +156 -119
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/primitives/get_tree.py +5 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/primitives/kernel_functions.py +21 -18
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/onedal/svm/svm.py +80 -32
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +3 -13
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/utils/_array_api.py +14 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/utils/_dpep_helpers.py +16 -1
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/onedal/utils/_sycl_queue_manager.py +161 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/onedal/utils/validation.py +47 -16
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/__init__.py +3 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/__main__.py +2 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/_config.py +48 -6
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/sklearnex/_device_offload.py +194 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/_utils.py +36 -43
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/sklearnex/base.py +109 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +14 -20
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +31 -40
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/cluster/dbscan.py +10 -11
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/cluster/k_means.py +20 -19
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +49 -62
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/decomposition/pca.py +9 -20
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/dispatcher.py +4 -4
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/ensemble/_forest.py +111 -366
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/glob/__main__.py +1 -1
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/glob/dispatcher.py +1 -1
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +18 -6
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +37 -85
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/linear.py +52 -47
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/logistic_regression.py +45 -84
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/ridge.py +17 -20
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.0.data}/data/Lib/site-packages/sklearnex/manifold/t_sne.py +8 -6
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/metrics/pairwise.py +1 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/metrics/ranking.py +1 -1
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/model_selection/split.py +1 -3
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/neighbors/_lof.py +7 -54
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/neighbors/common.py +6 -5
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_classification.py +31 -73
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_regression.py +30 -70
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_unsupervised.py +5 -13
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +6 -19
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +45 -62
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors}/__init__.py +2 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/svm/_common.py +15 -28
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/svm/nusvc.py +36 -129
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/svm/nusvr.py +10 -22
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/svm/svc.py +34 -127
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/svm/svr.py +10 -22
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_common.py +51 -11
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_config.py +62 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +18 -24
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +4 -4
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_patching.py +89 -60
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +7 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/utils/base.py +2 -2
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/utils/validation.py +8 -22
- {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.6.0.dist-info}/METADATA +2 -3
- scikit_learn_intelex-2025.6.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/daal4py/doc/third-party-programs.txt +0 -424
- 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.6.0.data}/data/Lib/site-packages/daal4py/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/onedal/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/onedal/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/onedal/common/_estimator_checks.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/common/_mixin.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.0.data}/data/Lib/site-packages/onedal/datatypes/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/datatypes/tests/common.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/onedal/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/onedal/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/onedal/primitives/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/tests/test_common.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.0.data}/data/Lib/site-packages/sklearnex/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.0.data}/data/Lib/site-packages/sklearnex/conftest.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/sklearnex/manifold/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/metrics/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/model_selection/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/preview/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/spmd/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/sklearnex/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_parallel.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/utils/_array_api.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/utils/parallel.py +0 -0
- {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.dist-info}/LICENSE.txt +0 -0
- {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.6.0.dist-info}/WHEEL +0 -0
- {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.6.0.dist-info}/top_level.txt +0 -0
|
@@ -14,10 +14,13 @@
|
|
|
14
14
|
# limitations under the License.
|
|
15
15
|
# ==============================================================================
|
|
16
16
|
|
|
17
|
+
from functools import wraps
|
|
18
|
+
|
|
17
19
|
import numpy as np
|
|
18
20
|
from sklearn.exceptions import NotFittedError
|
|
19
21
|
from sklearn.metrics import accuracy_score
|
|
20
22
|
from sklearn.svm import NuSVC as _sklearn_NuSVC
|
|
23
|
+
from sklearn.utils.metaestimators import available_if
|
|
21
24
|
from sklearn.utils.validation import (
|
|
22
25
|
_deprecate_positional_args,
|
|
23
26
|
check_array,
|
|
@@ -26,26 +29,18 @@ from sklearn.utils.validation import (
|
|
|
26
29
|
|
|
27
30
|
from daal4py.sklearn._n_jobs_support import control_n_jobs
|
|
28
31
|
from daal4py.sklearn._utils import sklearn_check_version
|
|
32
|
+
from onedal.svm import NuSVC as onedal_NuSVC
|
|
29
33
|
|
|
30
34
|
from .._device_offload import dispatch, wrap_output_data
|
|
31
35
|
from ..utils._array_api import get_namespace
|
|
36
|
+
from ..utils.validation import validate_data
|
|
32
37
|
from ._common import BaseSVC
|
|
33
38
|
|
|
34
|
-
if sklearn_check_version("1.0"):
|
|
35
|
-
from sklearn.utils.metaestimators import available_if
|
|
36
|
-
|
|
37
|
-
from onedal.svm import NuSVC as onedal_NuSVC
|
|
38
|
-
|
|
39
|
-
if sklearn_check_version("1.6"):
|
|
40
|
-
from sklearn.utils.validation import validate_data
|
|
41
|
-
else:
|
|
42
|
-
validate_data = BaseSVC._validate_data
|
|
43
|
-
|
|
44
39
|
|
|
45
40
|
@control_n_jobs(
|
|
46
41
|
decorated_methods=["fit", "predict", "_predict_proba", "decision_function", "score"]
|
|
47
42
|
)
|
|
48
|
-
class NuSVC(
|
|
43
|
+
class NuSVC(BaseSVC, _sklearn_NuSVC):
|
|
49
44
|
__doc__ = _sklearn_NuSVC.__doc__
|
|
50
45
|
|
|
51
46
|
if sklearn_check_version("1.2"):
|
|
@@ -145,99 +140,27 @@ class NuSVC(_sklearn_NuSVC, BaseSVC):
|
|
|
145
140
|
sample_weight=sample_weight,
|
|
146
141
|
)
|
|
147
142
|
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
X : array-like of shape (n_samples, n_features)
|
|
161
|
-
For kernel="precomputed", the expected shape of X is
|
|
162
|
-
(n_samples_test, n_samples_train).
|
|
163
|
-
|
|
164
|
-
Returns
|
|
165
|
-
-------
|
|
166
|
-
T : ndarray of shape (n_samples, n_classes)
|
|
167
|
-
Returns the probability of the sample for each class in
|
|
168
|
-
the model. The columns correspond to the classes in sorted
|
|
169
|
-
order, as they appear in the attribute :term:`classes_`.
|
|
170
|
-
|
|
171
|
-
Notes
|
|
172
|
-
-----
|
|
173
|
-
The probability model is created using cross validation, so
|
|
174
|
-
the results can be slightly different than those obtained by
|
|
175
|
-
predict. Also, it will produce meaningless results on very small
|
|
176
|
-
datasets.
|
|
177
|
-
"""
|
|
178
|
-
check_is_fitted(self)
|
|
179
|
-
return self._predict_proba(X)
|
|
180
|
-
|
|
181
|
-
@available_if(_sklearn_NuSVC._check_proba)
|
|
182
|
-
def predict_log_proba(self, X):
|
|
183
|
-
"""Compute log probabilities of possible outcomes for samples in X.
|
|
184
|
-
|
|
185
|
-
The model need to have probability information computed at training
|
|
186
|
-
time: fit with attribute `probability` set to True.
|
|
187
|
-
|
|
188
|
-
Parameters
|
|
189
|
-
----------
|
|
190
|
-
X : array-like of shape (n_samples, n_features) or \
|
|
191
|
-
(n_samples_test, n_samples_train)
|
|
192
|
-
For kernel="precomputed", the expected shape of X is
|
|
193
|
-
(n_samples_test, n_samples_train).
|
|
194
|
-
|
|
195
|
-
Returns
|
|
196
|
-
-------
|
|
197
|
-
T : ndarray of shape (n_samples, n_classes)
|
|
198
|
-
Returns the log-probabilities of the sample for each class in
|
|
199
|
-
the model. The columns correspond to the classes in sorted
|
|
200
|
-
order, as they appear in the attribute :term:`classes_`.
|
|
201
|
-
|
|
202
|
-
Notes
|
|
203
|
-
-----
|
|
204
|
-
The probability model is created using cross validation, so
|
|
205
|
-
the results can be slightly different than those obtained by
|
|
206
|
-
predict. Also, it will produce meaningless results on very small
|
|
207
|
-
datasets.
|
|
208
|
-
"""
|
|
209
|
-
xp, _ = get_namespace(X)
|
|
210
|
-
|
|
211
|
-
return xp.log(self.predict_proba(X))
|
|
212
|
-
|
|
213
|
-
else:
|
|
214
|
-
|
|
215
|
-
@property
|
|
216
|
-
def predict_proba(self):
|
|
217
|
-
self._check_proba()
|
|
218
|
-
check_is_fitted(self)
|
|
219
|
-
return self._predict_proba
|
|
220
|
-
|
|
221
|
-
def _predict_log_proba(self, X):
|
|
222
|
-
xp, _ = get_namespace(X)
|
|
223
|
-
return xp.log(self.predict_proba(X))
|
|
224
|
-
|
|
225
|
-
predict_proba.__doc__ = _sklearn_NuSVC.predict_proba.__doc__
|
|
143
|
+
@available_if(_sklearn_NuSVC._check_proba)
|
|
144
|
+
@wraps(_sklearn_NuSVC.predict_proba, assigned=["__doc__"])
|
|
145
|
+
def predict_proba(self, X):
|
|
146
|
+
check_is_fitted(self)
|
|
147
|
+
return self._predict_proba(X)
|
|
148
|
+
|
|
149
|
+
@available_if(_sklearn_NuSVC._check_proba)
|
|
150
|
+
@wraps(_sklearn_NuSVC.predict_log_proba, assigned=["__doc__"])
|
|
151
|
+
def predict_log_proba(self, X):
|
|
152
|
+
xp, _ = get_namespace(X)
|
|
153
|
+
|
|
154
|
+
return xp.log(self.predict_proba(X))
|
|
226
155
|
|
|
227
156
|
@wrap_output_data
|
|
228
157
|
def _predict_proba(self, X):
|
|
229
|
-
sklearn_pred_proba = (
|
|
230
|
-
_sklearn_NuSVC.predict_proba
|
|
231
|
-
if sklearn_check_version("1.0")
|
|
232
|
-
else _sklearn_NuSVC._predict_proba
|
|
233
|
-
)
|
|
234
|
-
|
|
235
158
|
return dispatch(
|
|
236
159
|
self,
|
|
237
160
|
"predict_proba",
|
|
238
161
|
{
|
|
239
162
|
"onedal": self.__class__._onedal_predict_proba,
|
|
240
|
-
"sklearn":
|
|
163
|
+
"sklearn": _sklearn_NuSVC.predict_proba,
|
|
241
164
|
},
|
|
242
165
|
X,
|
|
243
166
|
)
|
|
@@ -306,23 +229,15 @@ class NuSVC(_sklearn_NuSVC, BaseSVC):
|
|
|
306
229
|
self._save_attributes()
|
|
307
230
|
|
|
308
231
|
def _onedal_predict(self, X, queue=None):
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
)
|
|
319
|
-
else:
|
|
320
|
-
X = check_array(
|
|
321
|
-
X,
|
|
322
|
-
dtype=[np.float64, np.float32],
|
|
323
|
-
force_all_finite=False,
|
|
324
|
-
accept_sparse="csr",
|
|
325
|
-
)
|
|
232
|
+
validate_data(
|
|
233
|
+
self,
|
|
234
|
+
X,
|
|
235
|
+
dtype=[np.float64, np.float32],
|
|
236
|
+
ensure_all_finite=False,
|
|
237
|
+
ensure_2d=False,
|
|
238
|
+
accept_sparse="csr",
|
|
239
|
+
reset=False,
|
|
240
|
+
)
|
|
326
241
|
|
|
327
242
|
return self._onedal_estimator.predict(X, queue=queue)
|
|
328
243
|
|
|
@@ -341,22 +256,14 @@ class NuSVC(_sklearn_NuSVC, BaseSVC):
|
|
|
341
256
|
return self.clf_prob.predict_proba(X)
|
|
342
257
|
|
|
343
258
|
def _onedal_decision_function(self, X, queue=None):
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
)
|
|
353
|
-
else:
|
|
354
|
-
X = check_array(
|
|
355
|
-
X,
|
|
356
|
-
dtype=[np.float64, np.float32],
|
|
357
|
-
force_all_finite=False,
|
|
358
|
-
accept_sparse="csr",
|
|
359
|
-
)
|
|
259
|
+
validate_data(
|
|
260
|
+
self,
|
|
261
|
+
X,
|
|
262
|
+
dtype=[np.float64, np.float32],
|
|
263
|
+
ensure_all_finite=False,
|
|
264
|
+
accept_sparse="csr",
|
|
265
|
+
reset=False,
|
|
266
|
+
)
|
|
360
267
|
|
|
361
268
|
return self._onedal_estimator.decision_function(X, queue=queue)
|
|
362
269
|
|
|
@@ -27,16 +27,12 @@ from daal4py.sklearn._utils import sklearn_check_version
|
|
|
27
27
|
from onedal.svm import NuSVR as onedal_NuSVR
|
|
28
28
|
|
|
29
29
|
from .._device_offload import dispatch, wrap_output_data
|
|
30
|
+
from ..utils.validation import validate_data
|
|
30
31
|
from ._common import BaseSVR
|
|
31
32
|
|
|
32
|
-
if sklearn_check_version("1.6"):
|
|
33
|
-
from sklearn.utils.validation import validate_data
|
|
34
|
-
else:
|
|
35
|
-
validate_data = BaseSVR._validate_data
|
|
36
|
-
|
|
37
33
|
|
|
38
34
|
@control_n_jobs(decorated_methods=["fit", "predict", "score"])
|
|
39
|
-
class NuSVR(
|
|
35
|
+
class NuSVR(BaseSVR, _sklearn_NuSVR):
|
|
40
36
|
__doc__ = _sklearn_NuSVR.__doc__
|
|
41
37
|
|
|
42
38
|
if sklearn_check_version("1.2"):
|
|
@@ -147,22 +143,14 @@ class NuSVR(_sklearn_NuSVR, BaseSVR):
|
|
|
147
143
|
self._save_attributes()
|
|
148
144
|
|
|
149
145
|
def _onedal_predict(self, X, queue=None):
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
)
|
|
159
|
-
else:
|
|
160
|
-
X = check_array(
|
|
161
|
-
X,
|
|
162
|
-
dtype=[np.float64, np.float32],
|
|
163
|
-
force_all_finite=False,
|
|
164
|
-
accept_sparse="csr",
|
|
165
|
-
)
|
|
146
|
+
X = validate_data(
|
|
147
|
+
self,
|
|
148
|
+
X,
|
|
149
|
+
dtype=[np.float64, np.float32],
|
|
150
|
+
ensure_all_finite=False,
|
|
151
|
+
accept_sparse="csr",
|
|
152
|
+
reset=False,
|
|
153
|
+
)
|
|
166
154
|
return self._onedal_estimator.predict(X, queue=queue)
|
|
167
155
|
|
|
168
156
|
fit.__doc__ = _sklearn_NuSVR.fit.__doc__
|
|
@@ -14,11 +14,14 @@
|
|
|
14
14
|
# limitations under the License.
|
|
15
15
|
# ==============================================================================
|
|
16
16
|
|
|
17
|
+
from functools import wraps
|
|
18
|
+
|
|
17
19
|
import numpy as np
|
|
18
20
|
from scipy import sparse as sp
|
|
19
21
|
from sklearn.exceptions import NotFittedError
|
|
20
22
|
from sklearn.metrics import accuracy_score
|
|
21
23
|
from sklearn.svm import SVC as _sklearn_SVC
|
|
24
|
+
from sklearn.utils.metaestimators import available_if
|
|
22
25
|
from sklearn.utils.validation import (
|
|
23
26
|
_deprecate_positional_args,
|
|
24
27
|
check_array,
|
|
@@ -27,27 +30,19 @@ from sklearn.utils.validation import (
|
|
|
27
30
|
|
|
28
31
|
from daal4py.sklearn._n_jobs_support import control_n_jobs
|
|
29
32
|
from daal4py.sklearn._utils import sklearn_check_version
|
|
33
|
+
from onedal.svm import SVC as onedal_SVC
|
|
30
34
|
|
|
31
35
|
from .._device_offload import dispatch, wrap_output_data
|
|
32
36
|
from .._utils import PatchingConditionsChain
|
|
33
37
|
from ..utils._array_api import get_namespace
|
|
38
|
+
from ..utils.validation import validate_data
|
|
34
39
|
from ._common import BaseSVC
|
|
35
40
|
|
|
36
|
-
if sklearn_check_version("1.0"):
|
|
37
|
-
from sklearn.utils.metaestimators import available_if
|
|
38
|
-
|
|
39
|
-
from onedal.svm import SVC as onedal_SVC
|
|
40
|
-
|
|
41
|
-
if sklearn_check_version("1.6"):
|
|
42
|
-
from sklearn.utils.validation import validate_data
|
|
43
|
-
else:
|
|
44
|
-
validate_data = BaseSVC._validate_data
|
|
45
|
-
|
|
46
41
|
|
|
47
42
|
@control_n_jobs(
|
|
48
43
|
decorated_methods=["fit", "predict", "_predict_proba", "decision_function", "score"]
|
|
49
44
|
)
|
|
50
|
-
class SVC(
|
|
45
|
+
class SVC(BaseSVC, _sklearn_SVC):
|
|
51
46
|
__doc__ = _sklearn_SVC.__doc__
|
|
52
47
|
|
|
53
48
|
if sklearn_check_version("1.2"):
|
|
@@ -147,99 +142,27 @@ class SVC(_sklearn_SVC, BaseSVC):
|
|
|
147
142
|
sample_weight=sample_weight,
|
|
148
143
|
)
|
|
149
144
|
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
Compute probabilities of possible outcomes for samples in X.
|
|
156
|
-
|
|
157
|
-
The model need to have probability information computed at training
|
|
158
|
-
time: fit with attribute `probability` set to True.
|
|
159
|
-
|
|
160
|
-
Parameters
|
|
161
|
-
----------
|
|
162
|
-
X : array-like of shape (n_samples, n_features)
|
|
163
|
-
For kernel="precomputed", the expected shape of X is
|
|
164
|
-
(n_samples_test, n_samples_train).
|
|
165
|
-
|
|
166
|
-
Returns
|
|
167
|
-
-------
|
|
168
|
-
T : ndarray of shape (n_samples, n_classes)
|
|
169
|
-
Returns the probability of the sample for each class in
|
|
170
|
-
the model. The columns correspond to the classes in sorted
|
|
171
|
-
order, as they appear in the attribute :term:`classes_`.
|
|
172
|
-
|
|
173
|
-
Notes
|
|
174
|
-
-----
|
|
175
|
-
The probability model is created using cross validation, so
|
|
176
|
-
the results can be slightly different than those obtained by
|
|
177
|
-
predict. Also, it will produce meaningless results on very small
|
|
178
|
-
datasets.
|
|
179
|
-
"""
|
|
180
|
-
check_is_fitted(self)
|
|
181
|
-
return self._predict_proba(X)
|
|
182
|
-
|
|
183
|
-
@available_if(_sklearn_SVC._check_proba)
|
|
184
|
-
def predict_log_proba(self, X):
|
|
185
|
-
"""Compute log probabilities of possible outcomes for samples in X.
|
|
186
|
-
|
|
187
|
-
The model need to have probability information computed at training
|
|
188
|
-
time: fit with attribute `probability` set to True.
|
|
189
|
-
|
|
190
|
-
Parameters
|
|
191
|
-
----------
|
|
192
|
-
X : array-like of shape (n_samples, n_features) or \
|
|
193
|
-
(n_samples_test, n_samples_train)
|
|
194
|
-
For kernel="precomputed", the expected shape of X is
|
|
195
|
-
(n_samples_test, n_samples_train).
|
|
196
|
-
|
|
197
|
-
Returns
|
|
198
|
-
-------
|
|
199
|
-
T : ndarray of shape (n_samples, n_classes)
|
|
200
|
-
Returns the log-probabilities of the sample for each class in
|
|
201
|
-
the model. The columns correspond to the classes in sorted
|
|
202
|
-
order, as they appear in the attribute :term:`classes_`.
|
|
203
|
-
|
|
204
|
-
Notes
|
|
205
|
-
-----
|
|
206
|
-
The probability model is created using cross validation, so
|
|
207
|
-
the results can be slightly different than those obtained by
|
|
208
|
-
predict. Also, it will produce meaningless results on very small
|
|
209
|
-
datasets.
|
|
210
|
-
"""
|
|
211
|
-
xp, _ = get_namespace(X)
|
|
212
|
-
|
|
213
|
-
return xp.log(self.predict_proba(X))
|
|
214
|
-
|
|
215
|
-
else:
|
|
216
|
-
|
|
217
|
-
@property
|
|
218
|
-
def predict_proba(self):
|
|
219
|
-
self._check_proba()
|
|
220
|
-
check_is_fitted(self)
|
|
221
|
-
return self._predict_proba
|
|
145
|
+
@available_if(_sklearn_SVC._check_proba)
|
|
146
|
+
@wraps(_sklearn_SVC.predict_proba, assigned=["__doc__"])
|
|
147
|
+
def predict_proba(self, X):
|
|
148
|
+
check_is_fitted(self)
|
|
149
|
+
return self._predict_proba(X)
|
|
222
150
|
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
151
|
+
@available_if(_sklearn_SVC._check_proba)
|
|
152
|
+
@wraps(_sklearn_SVC.predict_log_proba, assigned=["__doc__"])
|
|
153
|
+
def predict_log_proba(self, X):
|
|
154
|
+
xp, _ = get_namespace(X)
|
|
226
155
|
|
|
227
|
-
|
|
156
|
+
return xp.log(self.predict_proba(X))
|
|
228
157
|
|
|
229
158
|
@wrap_output_data
|
|
230
159
|
def _predict_proba(self, X):
|
|
231
|
-
sklearn_pred_proba = (
|
|
232
|
-
_sklearn_SVC.predict_proba
|
|
233
|
-
if sklearn_check_version("1.0")
|
|
234
|
-
else _sklearn_SVC._predict_proba
|
|
235
|
-
)
|
|
236
|
-
|
|
237
160
|
return dispatch(
|
|
238
161
|
self,
|
|
239
162
|
"predict_proba",
|
|
240
163
|
{
|
|
241
164
|
"onedal": self.__class__._onedal_predict_proba,
|
|
242
|
-
"sklearn":
|
|
165
|
+
"sklearn": _sklearn_SVC.predict_proba,
|
|
243
166
|
},
|
|
244
167
|
X,
|
|
245
168
|
)
|
|
@@ -336,23 +259,15 @@ class SVC(_sklearn_SVC, BaseSVC):
|
|
|
336
259
|
self._save_attributes()
|
|
337
260
|
|
|
338
261
|
def _onedal_predict(self, X, queue=None):
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
)
|
|
349
|
-
else:
|
|
350
|
-
X = check_array(
|
|
351
|
-
X,
|
|
352
|
-
dtype=[np.float64, np.float32],
|
|
353
|
-
force_all_finite=False,
|
|
354
|
-
accept_sparse="csr",
|
|
355
|
-
)
|
|
262
|
+
X = validate_data(
|
|
263
|
+
self,
|
|
264
|
+
X,
|
|
265
|
+
dtype=[np.float64, np.float32],
|
|
266
|
+
ensure_all_finite=False,
|
|
267
|
+
ensure_2d=False,
|
|
268
|
+
accept_sparse="csr",
|
|
269
|
+
reset=False,
|
|
270
|
+
)
|
|
356
271
|
return self._onedal_estimator.predict(X, queue=queue)
|
|
357
272
|
|
|
358
273
|
def _onedal_predict_proba(self, X, queue=None):
|
|
@@ -370,22 +285,14 @@ class SVC(_sklearn_SVC, BaseSVC):
|
|
|
370
285
|
return self.clf_prob.predict_proba(X)
|
|
371
286
|
|
|
372
287
|
def _onedal_decision_function(self, X, queue=None):
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
)
|
|
382
|
-
else:
|
|
383
|
-
X = check_array(
|
|
384
|
-
X,
|
|
385
|
-
dtype=[np.float64, np.float32],
|
|
386
|
-
force_all_finite=False,
|
|
387
|
-
accept_sparse="csr",
|
|
388
|
-
)
|
|
288
|
+
X = validate_data(
|
|
289
|
+
self,
|
|
290
|
+
X,
|
|
291
|
+
dtype=[np.float64, np.float32],
|
|
292
|
+
ensure_all_finite=False,
|
|
293
|
+
accept_sparse="csr",
|
|
294
|
+
reset=False,
|
|
295
|
+
)
|
|
389
296
|
return self._onedal_estimator.decision_function(X, queue=queue)
|
|
390
297
|
|
|
391
298
|
def _onedal_score(self, X, y, sample_weight=None, queue=None):
|
|
@@ -23,16 +23,12 @@ from daal4py.sklearn._utils import sklearn_check_version
|
|
|
23
23
|
from onedal.svm import SVR as onedal_SVR
|
|
24
24
|
|
|
25
25
|
from .._device_offload import dispatch, wrap_output_data
|
|
26
|
+
from ..utils.validation import validate_data
|
|
26
27
|
from ._common import BaseSVR
|
|
27
28
|
|
|
28
|
-
if sklearn_check_version("1.6"):
|
|
29
|
-
from sklearn.utils.validation import validate_data
|
|
30
|
-
else:
|
|
31
|
-
validate_data = BaseSVR._validate_data
|
|
32
|
-
|
|
33
29
|
|
|
34
30
|
@control_n_jobs(decorated_methods=["fit", "predict", "score"])
|
|
35
|
-
class SVR(
|
|
31
|
+
class SVR(BaseSVR, _sklearn_SVR):
|
|
36
32
|
__doc__ = _sklearn_SVR.__doc__
|
|
37
33
|
|
|
38
34
|
if sklearn_check_version("1.2"):
|
|
@@ -144,22 +140,14 @@ class SVR(_sklearn_SVR, BaseSVR):
|
|
|
144
140
|
self._save_attributes()
|
|
145
141
|
|
|
146
142
|
def _onedal_predict(self, X, queue=None):
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
)
|
|
156
|
-
else:
|
|
157
|
-
X = check_array(
|
|
158
|
-
X,
|
|
159
|
-
dtype=[np.float64, np.float32],
|
|
160
|
-
force_all_finite=False,
|
|
161
|
-
accept_sparse="csr",
|
|
162
|
-
)
|
|
143
|
+
X = validate_data(
|
|
144
|
+
self,
|
|
145
|
+
X,
|
|
146
|
+
dtype=[np.float64, np.float32],
|
|
147
|
+
ensure_all_finite=False,
|
|
148
|
+
accept_sparse="csr",
|
|
149
|
+
reset=False,
|
|
150
|
+
)
|
|
163
151
|
return self._onedal_estimator.predict(X, queue=queue)
|
|
164
152
|
|
|
165
153
|
fit.__doc__ = _sklearn_SVR.fit.__doc__
|
|
@@ -26,13 +26,16 @@ from contextlib import redirect_stdout
|
|
|
26
26
|
from multiprocessing import Pipe, Process, get_context
|
|
27
27
|
|
|
28
28
|
import pytest
|
|
29
|
+
from sklearn.base import BaseEstimator
|
|
29
30
|
from sklearn.utils import all_estimators
|
|
30
31
|
|
|
31
32
|
from daal4py.sklearn._utils import sklearn_check_version
|
|
32
33
|
from onedal.tests.test_common import _check_primitive_usage_ban
|
|
34
|
+
from sklearnex.base import oneDALEstimator
|
|
33
35
|
from sklearnex.tests.utils import (
|
|
34
36
|
PATCHED_MODELS,
|
|
35
37
|
SPECIAL_INSTANCES,
|
|
38
|
+
UNPATCHED_MODELS,
|
|
36
39
|
call_method,
|
|
37
40
|
gen_dataset,
|
|
38
41
|
gen_models_info,
|
|
@@ -176,6 +179,28 @@ def test_all_estimators_covered(monkeypatch):
|
|
|
176
179
|
), f"{uncovered_estimators} are currently not included"
|
|
177
180
|
|
|
178
181
|
|
|
182
|
+
def test_oneDALEstimator_inheritance(monkeypatch):
|
|
183
|
+
"""All sklearnex estimators should inherit the oneDALEstimator class, sklearnex-only
|
|
184
|
+
estimators should have it inherit oneDAL estimator one step before BaseEstimator in the
|
|
185
|
+
mro. This is only strictly set for non-preview estimators"""
|
|
186
|
+
monkeypatch.setattr(pkgutil, "walk_packages", _sklearnex_walk(pkgutil.walk_packages))
|
|
187
|
+
estimators = all_estimators() # list of tuples
|
|
188
|
+
for name, obj in estimators:
|
|
189
|
+
if "preview" not in obj.__module__ and "daal4py" not in obj.__module__:
|
|
190
|
+
assert issubclass(
|
|
191
|
+
obj, oneDALEstimator
|
|
192
|
+
), f"{name} does not inherit the oneDALEstimator"
|
|
193
|
+
# oneDAL estimator should be inherited from before BaseEstimator
|
|
194
|
+
mro = obj.__mro__
|
|
195
|
+
assert mro.index(oneDALEstimator) < mro.index(
|
|
196
|
+
BaseEstimator
|
|
197
|
+
), f"incorrect mro in {name}"
|
|
198
|
+
if not any([issubclass(obj, est) for est in UNPATCHED_MODELS.values()]):
|
|
199
|
+
assert (
|
|
200
|
+
mro[mro.index(oneDALEstimator) + 1] is BaseEstimator
|
|
201
|
+
), f"oneDALEstimator should be inherited just before BaseEstimator in {name}"
|
|
202
|
+
|
|
203
|
+
|
|
179
204
|
def _fullpath(path):
|
|
180
205
|
return os.path.realpath(os.path.expanduser(path))
|
|
181
206
|
|
|
@@ -406,22 +431,36 @@ def estimator_trace(estimator, method, cache, isolated_trace):
|
|
|
406
431
|
|
|
407
432
|
|
|
408
433
|
def call_validate_data(text, estimator, method):
|
|
409
|
-
"""test that
|
|
434
|
+
"""test that both sklearnex wrapper for validate_data and
|
|
435
|
+
original sklearn function/method validate_data are
|
|
410
436
|
called once before offloading to oneDAL in sklearnex"""
|
|
411
437
|
try:
|
|
412
438
|
# get last to_table call showing end of oneDAL input portion of code
|
|
413
439
|
idx = len(text["funcs"]) - 1 - text["funcs"][::-1].index("to_table")
|
|
414
|
-
|
|
440
|
+
valid_funcs = text["funcs"][:idx]
|
|
441
|
+
valid_modules = text["modules"][:idx]
|
|
415
442
|
except ValueError:
|
|
416
443
|
pytest.skip("onedal backend not used in this function")
|
|
417
444
|
|
|
418
|
-
|
|
445
|
+
validate_data_calls = []
|
|
446
|
+
for func, module in zip(valid_funcs, valid_modules):
|
|
447
|
+
if func.endswith("validate_data"):
|
|
448
|
+
validate_data_calls.append({module, func})
|
|
419
449
|
|
|
420
450
|
assert (
|
|
421
|
-
|
|
422
|
-
),
|
|
451
|
+
len(validate_data_calls) == 2
|
|
452
|
+
), "validate_data should be called two times: once for sklearn and once for sklearnex"
|
|
453
|
+
assert validate_data_calls[0] == {
|
|
454
|
+
"sklearnex.utils.validation",
|
|
455
|
+
"validate_data",
|
|
456
|
+
}, "sklearnex's validate_data should be called first"
|
|
457
|
+
assert (
|
|
458
|
+
(validate_data_calls[1] == {"sklearn.utils.validation", "validate_data"})
|
|
459
|
+
if sklearn_check_version("1.6")
|
|
460
|
+
else (validate_data_calls[1] == {"sklearn.base", "_validate_data"})
|
|
461
|
+
), "sklearn's validate_data should be called second"
|
|
423
462
|
assert (
|
|
424
|
-
|
|
463
|
+
valid_funcs.count("_check_feature_names") == 1
|
|
425
464
|
), "estimator should check feature names in validate_data"
|
|
426
465
|
|
|
427
466
|
|
|
@@ -467,11 +506,12 @@ def fit_check_before_support_check(text, estimator, method):
|
|
|
467
506
|
pytest.skip(f"fitting occurs in {estimator}.{method}")
|
|
468
507
|
|
|
469
508
|
|
|
470
|
-
DESIGN_RULES = [
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
509
|
+
DESIGN_RULES = [
|
|
510
|
+
n_jobs_check,
|
|
511
|
+
runtime_property_check,
|
|
512
|
+
fit_check_before_support_check,
|
|
513
|
+
call_validate_data,
|
|
514
|
+
]
|
|
475
515
|
|
|
476
516
|
|
|
477
517
|
@pytest.mark.parametrize("design_pattern", DESIGN_RULES)
|