scikit-learn-intelex 2025.4.0__py313-none-win_amd64.whl → 2025.6.0__py313-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.cp313-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.cp313-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.cp313-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp313-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.cp313-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.cp313-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp313-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
|
@@ -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
|
|
@@ -27,14 +26,11 @@ from daal4py.sklearn._utils import daal_check_version, sklearn_check_version
|
|
|
27
26
|
|
|
28
27
|
from .._config import get_config
|
|
29
28
|
from .._device_offload import dispatch, wrap_output_data
|
|
30
|
-
from .._utils import
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
)
|
|
36
|
-
|
|
37
|
-
if sklearn_check_version("1.0") and not sklearn_check_version("1.2"):
|
|
29
|
+
from .._utils import PatchingConditionsChain, get_patch_message, register_hyperparameters
|
|
30
|
+
from ..base import oneDALEstimator
|
|
31
|
+
from ..utils.validation import validate_data
|
|
32
|
+
|
|
33
|
+
if not sklearn_check_version("1.2"):
|
|
38
34
|
from sklearn.linear_model._base import _deprecate_normalize
|
|
39
35
|
|
|
40
36
|
from scipy.sparse import issparse
|
|
@@ -42,17 +38,12 @@ from sklearn.utils.validation import check_is_fitted, check_X_y
|
|
|
42
38
|
|
|
43
39
|
from onedal.common.hyperparameters import get_hyperparameters
|
|
44
40
|
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
|
|
41
|
+
from onedal.utils.validation import _num_features, _num_samples
|
|
51
42
|
|
|
52
43
|
|
|
53
44
|
@register_hyperparameters({"fit": get_hyperparameters("linear_regression", "train")})
|
|
54
45
|
@control_n_jobs(decorated_methods=["fit", "predict", "score"])
|
|
55
|
-
class LinearRegression(
|
|
46
|
+
class LinearRegression(oneDALEstimator, _sklearn_LinearRegression):
|
|
56
47
|
__doc__ = _sklearn_LinearRegression.__doc__
|
|
57
48
|
|
|
58
49
|
if sklearn_check_version("1.2"):
|
|
@@ -60,26 +51,46 @@ class LinearRegression(PatchableEstimator, _sklearn_LinearRegression):
|
|
|
60
51
|
**_sklearn_LinearRegression._parameter_constraints
|
|
61
52
|
}
|
|
62
53
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
54
|
+
if sklearn_check_version("1.7"):
|
|
55
|
+
|
|
56
|
+
def __init__(
|
|
57
|
+
self,
|
|
58
|
+
fit_intercept=True,
|
|
59
|
+
copy_X=True,
|
|
60
|
+
tol=1e-06, # for sparse solver only, not used by oneDAL
|
|
61
|
+
n_jobs=None,
|
|
62
|
+
positive=False,
|
|
63
|
+
):
|
|
64
|
+
super().__init__(
|
|
65
|
+
fit_intercept=fit_intercept,
|
|
66
|
+
copy_X=copy_X,
|
|
67
|
+
tol=tol,
|
|
68
|
+
n_jobs=n_jobs,
|
|
69
|
+
positive=positive,
|
|
70
|
+
)
|
|
71
|
+
|
|
72
|
+
else:
|
|
73
|
+
|
|
74
|
+
def __init__(
|
|
75
|
+
self,
|
|
76
|
+
fit_intercept=True,
|
|
77
|
+
copy_X=True,
|
|
78
|
+
n_jobs=None,
|
|
79
|
+
positive=False,
|
|
80
|
+
):
|
|
81
|
+
super().__init__(
|
|
82
|
+
fit_intercept=fit_intercept,
|
|
83
|
+
copy_X=copy_X,
|
|
84
|
+
n_jobs=n_jobs,
|
|
85
|
+
positive=positive,
|
|
86
|
+
)
|
|
76
87
|
|
|
77
88
|
else:
|
|
78
89
|
|
|
79
90
|
def __init__(
|
|
80
91
|
self,
|
|
81
92
|
fit_intercept=True,
|
|
82
|
-
normalize="deprecated"
|
|
93
|
+
normalize="deprecated",
|
|
83
94
|
copy_X=True,
|
|
84
95
|
n_jobs=None,
|
|
85
96
|
positive=False,
|
|
@@ -246,20 +257,17 @@ class LinearRegression(PatchableEstimator, _sklearn_LinearRegression):
|
|
|
246
257
|
assert sample_weight is None
|
|
247
258
|
|
|
248
259
|
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)
|
|
260
|
+
X, y = validate_data(
|
|
261
|
+
self,
|
|
262
|
+
X=X,
|
|
263
|
+
y=y,
|
|
264
|
+
dtype=[np.float64, np.float32],
|
|
265
|
+
accept_sparse=["csr", "csc", "coo"],
|
|
266
|
+
y_numeric=True,
|
|
267
|
+
multi_output=supports_multi_output,
|
|
268
|
+
)
|
|
261
269
|
|
|
262
|
-
if
|
|
270
|
+
if not sklearn_check_version("1.2"):
|
|
263
271
|
self._normalize = _deprecate_normalize(
|
|
264
272
|
self.normalize,
|
|
265
273
|
default=False,
|
|
@@ -287,10 +295,7 @@ class LinearRegression(PatchableEstimator, _sklearn_LinearRegression):
|
|
|
287
295
|
self._save_attributes()
|
|
288
296
|
|
|
289
297
|
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)
|
|
298
|
+
X = validate_data(self, X, accept_sparse=False, reset=False)
|
|
294
299
|
|
|
295
300
|
if not hasattr(self, "_onedal_estimator"):
|
|
296
301
|
self._initialize_onedal_estimator()
|
|
@@ -34,28 +34,16 @@ 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
|
-
from .._utils import
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
from sklearn.utils.validation import validate_data
|
|
45
|
-
else:
|
|
46
|
-
validate_data = _sklearn_LogisticRegression._validate_data
|
|
41
|
+
from .._utils import PatchingConditionsChain, get_patch_message
|
|
42
|
+
from ..base import oneDALEstimator
|
|
43
|
+
from ..utils.validation import validate_data
|
|
47
44
|
|
|
48
45
|
_sparsity_enabled = daal_check_version((2024, "P", 700))
|
|
49
46
|
|
|
50
|
-
class BaseLogisticRegression(ABC):
|
|
51
|
-
def _onedal_gpu_save_attributes(self):
|
|
52
|
-
assert hasattr(self, "_onedal_estimator")
|
|
53
|
-
self.classes_ = self._onedal_estimator.classes_
|
|
54
|
-
self.coef_ = self._onedal_estimator.coef_
|
|
55
|
-
self.intercept_ = self._onedal_estimator.intercept_
|
|
56
|
-
self.n_features_in_ = self._onedal_estimator.n_features_in_
|
|
57
|
-
self.n_iter_ = self._onedal_estimator.n_iter_
|
|
58
|
-
|
|
59
47
|
@control_n_jobs(
|
|
60
48
|
decorated_methods=[
|
|
61
49
|
"fit",
|
|
@@ -65,9 +53,7 @@ if daal_check_version((2024, "P", 1)):
|
|
|
65
53
|
"score",
|
|
66
54
|
]
|
|
67
55
|
)
|
|
68
|
-
class LogisticRegression(
|
|
69
|
-
PatchableEstimator, _sklearn_LogisticRegression, BaseLogisticRegression
|
|
70
|
-
):
|
|
56
|
+
class LogisticRegression(oneDALEstimator, _sklearn_LogisticRegression):
|
|
71
57
|
__doc__ = _sklearn_LogisticRegression.__doc__
|
|
72
58
|
|
|
73
59
|
if sklearn_check_version("1.2"):
|
|
@@ -114,6 +100,14 @@ if daal_check_version((2024, "P", 1)):
|
|
|
114
100
|
|
|
115
101
|
_onedal_cpu_fit = daal4py_fit
|
|
116
102
|
|
|
103
|
+
def _onedal_gpu_save_attributes(self):
|
|
104
|
+
assert hasattr(self, "_onedal_estimator")
|
|
105
|
+
self.classes_ = self._onedal_estimator.classes_
|
|
106
|
+
self.coef_ = self._onedal_estimator.coef_
|
|
107
|
+
self.intercept_ = self._onedal_estimator.intercept_
|
|
108
|
+
self.n_features_in_ = self._onedal_estimator.n_features_in_
|
|
109
|
+
self.n_iter_ = self._onedal_estimator.n_iter_
|
|
110
|
+
|
|
117
111
|
def fit(self, X, y, sample_weight=None):
|
|
118
112
|
if sklearn_check_version("1.2"):
|
|
119
113
|
self._validate_params()
|
|
@@ -293,23 +287,14 @@ if daal_check_version((2024, "P", 1)):
|
|
|
293
287
|
|
|
294
288
|
assert sample_weight is None
|
|
295
289
|
|
|
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
|
-
)
|
|
290
|
+
X, y = validate_data(
|
|
291
|
+
self,
|
|
292
|
+
X,
|
|
293
|
+
y,
|
|
294
|
+
accept_sparse=_sparsity_enabled,
|
|
295
|
+
accept_large_sparse=_sparsity_enabled,
|
|
296
|
+
dtype=[np.float64, np.float32],
|
|
297
|
+
)
|
|
313
298
|
|
|
314
299
|
self._onedal_gpu_initialize_estimator()
|
|
315
300
|
try:
|
|
@@ -332,22 +317,14 @@ if daal_check_version((2024, "P", 1)):
|
|
|
332
317
|
if queue is None or queue.sycl_device.is_cpu:
|
|
333
318
|
return daal4py_predict(self, X, "computeClassLabels")
|
|
334
319
|
|
|
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
|
-
)
|
|
320
|
+
X = validate_data(
|
|
321
|
+
self,
|
|
322
|
+
X,
|
|
323
|
+
reset=False,
|
|
324
|
+
accept_sparse=_sparsity_enabled,
|
|
325
|
+
accept_large_sparse=_sparsity_enabled,
|
|
326
|
+
dtype=[np.float64, np.float32],
|
|
327
|
+
)
|
|
351
328
|
|
|
352
329
|
assert hasattr(self, "_onedal_estimator")
|
|
353
330
|
return self._onedal_estimator.predict(X, queue=queue)
|
|
@@ -356,22 +333,14 @@ if daal_check_version((2024, "P", 1)):
|
|
|
356
333
|
if queue is None or queue.sycl_device.is_cpu:
|
|
357
334
|
return daal4py_predict(self, X, "computeClassProbabilities")
|
|
358
335
|
|
|
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
|
-
)
|
|
336
|
+
X = validate_data(
|
|
337
|
+
self,
|
|
338
|
+
X,
|
|
339
|
+
reset=False,
|
|
340
|
+
accept_sparse=_sparsity_enabled,
|
|
341
|
+
accept_large_sparse=_sparsity_enabled,
|
|
342
|
+
dtype=[np.float64, np.float32],
|
|
343
|
+
)
|
|
375
344
|
|
|
376
345
|
assert hasattr(self, "_onedal_estimator")
|
|
377
346
|
return self._onedal_estimator.predict_proba(X, queue=queue)
|
|
@@ -380,22 +349,14 @@ if daal_check_version((2024, "P", 1)):
|
|
|
380
349
|
if queue is None or queue.sycl_device.is_cpu:
|
|
381
350
|
return daal4py_predict(self, X, "computeClassLogProbabilities")
|
|
382
351
|
|
|
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
|
-
)
|
|
352
|
+
X = validate_data(
|
|
353
|
+
self,
|
|
354
|
+
X,
|
|
355
|
+
reset=False,
|
|
356
|
+
accept_sparse=_sparsity_enabled,
|
|
357
|
+
accept_large_sparse=_sparsity_enabled,
|
|
358
|
+
dtype=[np.float64, np.float32],
|
|
359
|
+
)
|
|
399
360
|
|
|
400
361
|
assert hasattr(self, "_onedal_estimator")
|
|
401
362
|
return self._onedal_estimator.predict_log_proba(X, queue=queue)
|
|
@@ -35,18 +35,15 @@ 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
|
-
from .._utils import
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
from sklearn.utils.validation import validate_data
|
|
45
|
-
else:
|
|
46
|
-
validate_data = _sklearn_Ridge._validate_data
|
|
41
|
+
from .._utils import PatchingConditionsChain
|
|
42
|
+
from ..base import oneDALEstimator
|
|
43
|
+
from ..utils.validation import validate_data
|
|
47
44
|
|
|
48
45
|
@control_n_jobs(decorated_methods=["fit", "predict", "score"])
|
|
49
|
-
class Ridge(
|
|
46
|
+
class Ridge(oneDALEstimator, _sklearn_Ridge):
|
|
50
47
|
__doc__ = _sklearn_Ridge.__doc__
|
|
51
48
|
|
|
52
49
|
if sklearn_check_version("1.2"):
|
|
@@ -307,15 +304,15 @@ if daal_check_version((2024, "P", 600)):
|
|
|
307
304
|
include_boundaries="left",
|
|
308
305
|
)
|
|
309
306
|
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
"
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
307
|
+
X, y = validate_data(
|
|
308
|
+
self,
|
|
309
|
+
X=X,
|
|
310
|
+
y=y,
|
|
311
|
+
dtype=[np.float64, np.float32],
|
|
312
|
+
accept_sparse=["csr", "csc", "coo"],
|
|
313
|
+
y_numeric=True,
|
|
314
|
+
multi_output=True,
|
|
315
|
+
)
|
|
319
316
|
|
|
320
317
|
if not sklearn_check_version("1.2"):
|
|
321
318
|
self._normalize = _deprecate_normalize(
|
|
@@ -383,8 +380,8 @@ else:
|
|
|
383
380
|
from daal4py.sklearn.linear_model import Ridge
|
|
384
381
|
from onedal._device_offload import support_input_format
|
|
385
382
|
|
|
386
|
-
Ridge.fit = support_input_format(
|
|
387
|
-
Ridge.predict = support_input_format(
|
|
388
|
-
Ridge.score = support_input_format(
|
|
383
|
+
Ridge.fit = support_input_format(Ridge.fit)
|
|
384
|
+
Ridge.predict = support_input_format(Ridge.predict)
|
|
385
|
+
Ridge.score = support_input_format(Ridge.score)
|
|
389
386
|
|
|
390
387
|
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,15 @@
|
|
|
14
14
|
# limitations under the License.
|
|
15
15
|
# ===============================================================================
|
|
16
16
|
|
|
17
|
-
from daal4py.sklearn.
|
|
17
|
+
from daal4py.sklearn._utils import sklearn_check_version
|
|
18
18
|
from daal4py.sklearn.manifold import TSNE
|
|
19
19
|
from onedal._device_offload import support_input_format
|
|
20
20
|
|
|
21
|
-
from ..
|
|
21
|
+
from ..base import oneDALEstimator
|
|
22
22
|
|
|
23
|
-
TSNE.fit = support_input_format(
|
|
24
|
-
TSNE.fit_transform = support_input_format(
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
TSNE.fit = support_input_format(TSNE.fit)
|
|
24
|
+
TSNE.fit_transform = support_input_format(TSNE.fit_transform)
|
|
25
|
+
|
|
26
|
+
if sklearn_check_version("1.4"):
|
|
27
|
+
TSNE._doc_link_module = "daal4py"
|
|
28
|
+
TSNE._doc_link_url_param_generator = oneDALEstimator._doc_link_url_param_generator
|
|
@@ -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(
|