scikit-learn-intelex 2025.7.0__py313-none-win_amd64.whl → 2025.8.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.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/_daal4py.cp313-win_amd64.pyd +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/mpi_transceiver.cp313-win_amd64.pyd +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_loss.py +4 -4
- scikit_learn_intelex-2025.8.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +616 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/_device_offload.py +41 -40
- scikit_learn_intelex-2025.8.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp313-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.8.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp313-win_amd64.pyd +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/basic_statistics/basic_statistics.py +52 -76
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/basic_statistics/incremental_basic_statistics.py +26 -41
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_basic_statistics.py +6 -7
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_incremental_basic_statistics.py +11 -11
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/cluster/dbscan.py +7 -25
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/cluster/kmeans.py +1 -1
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/common/hyperparameters.py +31 -11
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/common/tests/test_sycl.py +5 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/covariance/covariance.py +8 -10
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/datatypes/__init__.py +6 -3
- scikit_learn_intelex-2025.8.0.data/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +156 -0
- scikit_learn_intelex-2025.8.0.data/data/Lib/site-packages/onedal/datatypes/_dlpack.py +61 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/datatypes/_sycl_usm.py +9 -24
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +16 -17
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/ensemble/forest.py +5 -5
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/linear_model/incremental_linear_model.py +48 -160
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/linear_model/linear_model.py +75 -188
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/linear_model/logistic_regression.py +5 -10
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_linear_regression.py +10 -17
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/tests/test_common.py +14 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/utils/_array_api.py +3 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/utils/_sycl_queue_manager.py +51 -25
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/utils/_third_party.py +52 -2
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/__init__.py +2 -1
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/_device_offload.py +13 -12
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/_utils.py +31 -4
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +26 -37
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +33 -42
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/cluster/dbscan.py +30 -27
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/cluster/k_means.py +1 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +2 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/decomposition/pca.py +7 -2
- scikit_learn_intelex-2025.8.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +110 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/dispatcher.py +1 -6
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/ensemble/_forest.py +8 -2
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/ensemble/tests/test_forest.py +22 -7
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +2 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_linear.py +76 -68
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +69 -53
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/linear_model/linear.py +53 -41
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/linear_model/logistic_regression.py +8 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/linear_model/ridge.py +42 -31
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +27 -61
- scikit_learn_intelex-2025.8.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +577 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/neighbors/common.py +8 -6
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +3 -4
- scikit_learn_intelex-2025.8.0.data/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +112 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/basic_statistics.py +7 -4
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_basic_statistics_spmd.py +6 -3
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_incremental_basic_statistics_spmd.py +12 -8
- scikit_learn_intelex-2025.8.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +26 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_covariance_spmd.py +11 -4
- scikit_learn_intelex-2025.8.0.data/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +299 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/tests/test_forest_spmd.py +21 -4
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/linear_model.py +7 -4
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_incremental_linear_spmd.py +16 -8
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_linear_regression_spmd.py +12 -4
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/svm/tests/test_svm.py +31 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/tests/test_config.py +55 -6
- scikit_learn_intelex-2025.8.0.data/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +111 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/tests/test_patching.py +13 -13
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/tests/utils/base.py +3 -21
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/utils/_array_api.py +71 -0
- scikit_learn_intelex-2025.8.0.data/data/Lib/site-packages/sklearnex/utils/parallel.py +97 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/utils/validation.py +19 -1
- {scikit_learn_intelex-2025.7.0.dist-info → scikit_learn_intelex-2025.8.0.dist-info}/METADATA +2 -2
- scikit_learn_intelex-2025.8.0.dist-info/RECORD +259 -0
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +0 -1039
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp313-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp313-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +0 -110
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +0 -115
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +0 -134
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +0 -119
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +0 -50
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +0 -71
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +0 -43
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/utils/parallel.py +0 -59
- scikit_learn_intelex-2025.7.0.dist-info/RECORD +0 -258
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/__main__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/mb/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/mb/gbt_convertors.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/mb/logistic_regression_builders.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/mb/tree_based_builders.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/_n_jobs_support.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/_utils.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/k_means.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/tests/test_dbscan.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/tests/test_decision_forest.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_coordinate_descent.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_linear.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_ridge.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/coordinate_descent.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/linear.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/ridge.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_linear.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_ridge.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/_t_sne.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/_split.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/tests/test_split.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/_models_info.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_monkeypatch.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_patching.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/utils/_launch_algorithms.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/tests/test_kneighbors.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/base.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/tests/test_utils.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/_config.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/utils.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/cluster/kmeans_init.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_dbscan.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans_init.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/common/_backend.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/common/_estimator_checks.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/common/_mixin.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_covariance.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_incremental_covariance.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/datatypes/tests/common.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/decomposition/pca.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/decomposition/tests/test_incremental_pca.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/ensemble/tests/test_random_forest.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_linear_regression.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_ridge_regression.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_logistic_regression.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_ridge.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/neighbors/neighbors.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/neighbors/tests/test_knn_classification.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/primitives/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/primitives/get_tree.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/primitives/kernel_functions.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/primitives/tests/test_kernel_functions.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/svm/svm.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/svm/tests/test_csr_svm.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvc.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvr.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svc.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svr.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/tests/utils/_dataframes_support.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/utils/tests/test_validation.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/onedal/utils/validation.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/__main__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/_config.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/base.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_incremental_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_dbscan.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/conftest.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/covariance/tests/test_incremental_covariance.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/doc/third-party-programs.txt +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/glob/__main__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/glob/dispatcher.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_linear.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_ridge.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_ridge.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/manifold/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/manifold/t_sne.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/metrics/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/metrics/pairwise.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/metrics/ranking.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/metrics/tests/test_metrics.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/model_selection/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/model_selection/split.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/model_selection/tests/test_model_selection.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/neighbors/_lof.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_classification.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_regression.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_unsupervised.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/neighbors/tests/test_neighbors.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/preview/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_incremental_pca.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/incremental_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_dbscan_spmd.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_kmeans_spmd.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/incremental_covariance.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_incremental_covariance_spmd.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/incremental_pca.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_incremental_pca_spmd.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_pca_spmd.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/incremental_linear_model.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/logistic_regression.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_logistic_regression_spmd.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/tests/test_neighbors_spmd.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/svm/_common.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/svm/nusvc.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/svm/nusvr.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/svm/svc.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/svm/svr.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/tests/test_common.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/tests/test_parallel.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.8.0.data}/data/Lib/site-packages/sklearnex/utils/tests/test_validation.py +0 -0
- {scikit_learn_intelex-2025.7.0.dist-info → scikit_learn_intelex-2025.8.0.dist-info}/LICENSE.txt +0 -0
- {scikit_learn_intelex-2025.7.0.dist-info → scikit_learn_intelex-2025.8.0.dist-info}/WHEEL +0 -0
- {scikit_learn_intelex-2025.7.0.dist-info → scikit_learn_intelex-2025.8.0.dist-info}/top_level.txt +0 -0
|
@@ -17,11 +17,10 @@
|
|
|
17
17
|
import numbers
|
|
18
18
|
import warnings
|
|
19
19
|
|
|
20
|
-
import numpy as np
|
|
21
20
|
from sklearn.base import BaseEstimator, MultiOutputMixin, RegressorMixin
|
|
22
21
|
from sklearn.linear_model import LinearRegression as _sklearn_LinearRegression
|
|
23
22
|
from sklearn.metrics import r2_score
|
|
24
|
-
from sklearn.utils import
|
|
23
|
+
from sklearn.utils import gen_batches
|
|
25
24
|
from sklearn.utils.validation import check_is_fitted
|
|
26
25
|
|
|
27
26
|
from daal4py.sklearn._n_jobs_support import control_n_jobs
|
|
@@ -31,13 +30,6 @@ from onedal.linear_model import (
|
|
|
31
30
|
)
|
|
32
31
|
from sklearnex._config import get_config
|
|
33
32
|
|
|
34
|
-
from ..utils.validation import validate_data
|
|
35
|
-
|
|
36
|
-
if sklearn_check_version("1.2"):
|
|
37
|
-
from sklearn.utils._param_validation import Interval
|
|
38
|
-
|
|
39
|
-
from onedal.common.hyperparameters import get_hyperparameters
|
|
40
|
-
|
|
41
33
|
from .._device_offload import dispatch, wrap_output_data
|
|
42
34
|
from .._utils import (
|
|
43
35
|
PatchingConditionsChain,
|
|
@@ -45,12 +37,18 @@ from .._utils import (
|
|
|
45
37
|
register_hyperparameters,
|
|
46
38
|
)
|
|
47
39
|
from ..base import oneDALEstimator
|
|
40
|
+
from ..utils._array_api import enable_array_api, get_namespace
|
|
41
|
+
from ..utils.validation import validate_data
|
|
42
|
+
|
|
43
|
+
if sklearn_check_version("1.2"):
|
|
44
|
+
from sklearn.utils._param_validation import Interval
|
|
48
45
|
|
|
49
46
|
|
|
47
|
+
@enable_array_api("1.5") # validate_data y_numeric requires sklearn >=1.5
|
|
50
48
|
@register_hyperparameters(
|
|
51
49
|
{
|
|
52
|
-
"fit":
|
|
53
|
-
"partial_fit":
|
|
50
|
+
"fit": ("linear_regression", "train"),
|
|
51
|
+
"partial_fit": ("linear_regression", "train"),
|
|
54
52
|
}
|
|
55
53
|
)
|
|
56
54
|
@control_n_jobs(
|
|
@@ -144,7 +142,7 @@ class IncrementalLinearRegression(
|
|
|
144
142
|
_parameter_constraints: dict = {
|
|
145
143
|
"fit_intercept": ["boolean"],
|
|
146
144
|
"copy_X": ["boolean"],
|
|
147
|
-
"n_jobs": [
|
|
145
|
+
"n_jobs": [numbers.Integral, None],
|
|
148
146
|
"batch_size": [Interval(numbers.Integral, 1, None, closed="left"), None],
|
|
149
147
|
}
|
|
150
148
|
|
|
@@ -164,14 +162,16 @@ class IncrementalLinearRegression(
|
|
|
164
162
|
_onedal_gpu_supported = _onedal_supported
|
|
165
163
|
|
|
166
164
|
def _onedal_predict(self, X, queue=None):
|
|
167
|
-
if get_config()["use_raw_input"]
|
|
165
|
+
if not get_config()["use_raw_input"]:
|
|
168
166
|
if sklearn_check_version("1.2"):
|
|
169
167
|
self._validate_params()
|
|
170
168
|
|
|
169
|
+
xp, _ = get_namespace(X)
|
|
170
|
+
|
|
171
171
|
X = validate_data(
|
|
172
172
|
self,
|
|
173
173
|
X,
|
|
174
|
-
dtype=[
|
|
174
|
+
dtype=[xp.float64, xp.float32],
|
|
175
175
|
copy=self.copy_X,
|
|
176
176
|
reset=False,
|
|
177
177
|
)
|
|
@@ -179,7 +179,11 @@ class IncrementalLinearRegression(
|
|
|
179
179
|
assert hasattr(self, "_onedal_estimator")
|
|
180
180
|
if self._need_to_finalize:
|
|
181
181
|
self._onedal_finalize_fit()
|
|
182
|
-
|
|
182
|
+
res = self._onedal_estimator.predict(X, queue=queue)
|
|
183
|
+
|
|
184
|
+
if res.shape[1] == 1 and self.coef_.ndim == 1:
|
|
185
|
+
res = xp.reshape(res, (-1,))
|
|
186
|
+
return res
|
|
183
187
|
|
|
184
188
|
def _onedal_score(self, X, y, sample_weight=None, queue=None):
|
|
185
189
|
return r2_score(
|
|
@@ -189,22 +193,17 @@ class IncrementalLinearRegression(
|
|
|
189
193
|
def _onedal_partial_fit(self, X, y, check_input=True, queue=None):
|
|
190
194
|
first_pass = not hasattr(self, "n_samples_seen_") or self.n_samples_seen_ == 0
|
|
191
195
|
|
|
192
|
-
if
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
use_raw_input = get_config().get("use_raw_input", False) is True
|
|
196
|
-
# never check input when using raw input
|
|
197
|
-
check_input &= use_raw_input is False
|
|
198
|
-
if check_input:
|
|
196
|
+
if check_input and not get_config()["use_raw_input"]:
|
|
197
|
+
xp, _ = get_namespace(X, y)
|
|
199
198
|
X, y = validate_data(
|
|
200
199
|
self,
|
|
201
200
|
X,
|
|
202
201
|
y,
|
|
203
|
-
dtype=[
|
|
202
|
+
dtype=[xp.float64, xp.float32],
|
|
204
203
|
reset=first_pass,
|
|
205
204
|
copy=self.copy_X,
|
|
206
205
|
multi_output=True,
|
|
207
|
-
|
|
206
|
+
y_numeric=True,
|
|
208
207
|
)
|
|
209
208
|
|
|
210
209
|
if first_pass:
|
|
@@ -234,20 +233,29 @@ class IncrementalLinearRegression(
|
|
|
234
233
|
assert hasattr(self, "_onedal_estimator")
|
|
235
234
|
self._onedal_validate_underdetermined(self.n_samples_seen_, self.n_features_in_)
|
|
236
235
|
self._onedal_estimator.finalize_fit()
|
|
236
|
+
|
|
237
|
+
self.n_features_in_ = self._onedal_estimator.n_features_in_
|
|
238
|
+
self._coef_ = self._onedal_estimator.coef_
|
|
239
|
+
self._intercept_ = self._onedal_estimator.intercept_
|
|
240
|
+
|
|
241
|
+
if self._coef_.shape[0] == 1:
|
|
242
|
+
self._coef_ = self._coef_[0, ...] # set to 1d
|
|
243
|
+
self._intercept_ = self._intercept_[0] # set 1d to scalar
|
|
244
|
+
|
|
237
245
|
self._need_to_finalize = False
|
|
238
246
|
|
|
239
247
|
def _onedal_fit(self, X, y, queue=None):
|
|
240
|
-
if get_config()["use_raw_input"]
|
|
241
|
-
|
|
242
|
-
|
|
248
|
+
if not get_config()["use_raw_input"]:
|
|
249
|
+
xp, _ = get_namespace(X, y)
|
|
250
|
+
|
|
243
251
|
X, y = validate_data(
|
|
244
252
|
self,
|
|
245
253
|
X,
|
|
246
254
|
y,
|
|
247
|
-
dtype=[
|
|
255
|
+
dtype=[xp.float64, xp.float32],
|
|
248
256
|
copy=self.copy_X,
|
|
249
257
|
multi_output=True,
|
|
250
|
-
|
|
258
|
+
y_numeric=True,
|
|
251
259
|
)
|
|
252
260
|
|
|
253
261
|
n_samples, n_features = X.shape
|
|
@@ -264,7 +272,7 @@ class IncrementalLinearRegression(
|
|
|
264
272
|
self._onedal_estimator._reset()
|
|
265
273
|
|
|
266
274
|
for batch in gen_batches(n_samples, self.batch_size_):
|
|
267
|
-
X_batch, y_batch = X[batch], y[batch]
|
|
275
|
+
X_batch, y_batch = X[batch, ...], y[batch, ...]
|
|
268
276
|
self._onedal_partial_fit(X_batch, y_batch, check_input=False, queue=queue)
|
|
269
277
|
|
|
270
278
|
# finite check occurs on onedal side
|
|
@@ -278,44 +286,6 @@ class IncrementalLinearRegression(
|
|
|
278
286
|
self._onedal_finalize_fit()
|
|
279
287
|
return self
|
|
280
288
|
|
|
281
|
-
@property
|
|
282
|
-
def intercept_(self):
|
|
283
|
-
if hasattr(self, "_onedal_estimator"):
|
|
284
|
-
if self._need_to_finalize:
|
|
285
|
-
self._onedal_finalize_fit()
|
|
286
|
-
|
|
287
|
-
return self._onedal_estimator.intercept_
|
|
288
|
-
else:
|
|
289
|
-
raise AttributeError(
|
|
290
|
-
f"'{self.__class__.__name__}' object has no attribute 'intercept_'"
|
|
291
|
-
)
|
|
292
|
-
|
|
293
|
-
@intercept_.setter
|
|
294
|
-
def intercept_(self, value):
|
|
295
|
-
self.__dict__["intercept_"] = value
|
|
296
|
-
if hasattr(self, "_onedal_estimator"):
|
|
297
|
-
self._onedal_estimator.intercept_ = value
|
|
298
|
-
del self._onedal_estimator._onedal_model
|
|
299
|
-
|
|
300
|
-
@property
|
|
301
|
-
def coef_(self):
|
|
302
|
-
if hasattr(self, "_onedal_estimator"):
|
|
303
|
-
if self._need_to_finalize:
|
|
304
|
-
self._onedal_finalize_fit()
|
|
305
|
-
|
|
306
|
-
return self._onedal_estimator.coef_
|
|
307
|
-
else:
|
|
308
|
-
raise AttributeError(
|
|
309
|
-
f"'{self.__class__.__name__}' object has no attribute 'coef_'"
|
|
310
|
-
)
|
|
311
|
-
|
|
312
|
-
@coef_.setter
|
|
313
|
-
def coef_(self, value):
|
|
314
|
-
self.__dict__["coef_"] = value
|
|
315
|
-
if hasattr(self, "_onedal_estimator"):
|
|
316
|
-
self._onedal_estimator.coef_ = value
|
|
317
|
-
del self._onedal_estimator._onedal_model
|
|
318
|
-
|
|
319
289
|
def partial_fit(self, X, y, check_input=True):
|
|
320
290
|
"""
|
|
321
291
|
Incremental fit with X and y. X and y are processed as a single batch.
|
|
@@ -338,6 +308,8 @@ class IncrementalLinearRegression(
|
|
|
338
308
|
self : IncrementalLinearRegression
|
|
339
309
|
Returns the instance itself.
|
|
340
310
|
"""
|
|
311
|
+
if sklearn_check_version("1.2") and check_input:
|
|
312
|
+
self._validate_params()
|
|
341
313
|
|
|
342
314
|
dispatch(
|
|
343
315
|
self,
|
|
@@ -374,6 +346,8 @@ class IncrementalLinearRegression(
|
|
|
374
346
|
self : IncrementalLinearRegression
|
|
375
347
|
Returns the instance itself.
|
|
376
348
|
"""
|
|
349
|
+
if sklearn_check_version("1.2"):
|
|
350
|
+
self._validate_params()
|
|
377
351
|
|
|
378
352
|
dispatch(
|
|
379
353
|
self,
|
|
@@ -415,5 +389,39 @@ class IncrementalLinearRegression(
|
|
|
415
389
|
sample_weight=sample_weight,
|
|
416
390
|
)
|
|
417
391
|
|
|
392
|
+
@property
|
|
393
|
+
def coef_(self):
|
|
394
|
+
if hasattr(self, "_onedal_estimator") and self._need_to_finalize:
|
|
395
|
+
self._onedal_finalize_fit()
|
|
396
|
+
return self._coef_
|
|
397
|
+
|
|
398
|
+
@coef_.setter
|
|
399
|
+
def coef_(self, value):
|
|
400
|
+
if hasattr(self, "_onedal_estimator"):
|
|
401
|
+
self._onedal_estimator.coef_ = value
|
|
402
|
+
self._onedal_estimator._onedal_model = None
|
|
403
|
+
self._coef_ = value
|
|
404
|
+
|
|
405
|
+
@coef_.deleter
|
|
406
|
+
def coef_(self):
|
|
407
|
+
del self._coef_
|
|
408
|
+
|
|
409
|
+
@property
|
|
410
|
+
def intercept_(self):
|
|
411
|
+
if hasattr(self, "_onedal_estimator") and self._need_to_finalize:
|
|
412
|
+
self._onedal_finalize_fit()
|
|
413
|
+
return self._intercept_
|
|
414
|
+
|
|
415
|
+
@intercept_.setter
|
|
416
|
+
def intercept_(self, value):
|
|
417
|
+
if hasattr(self, "_onedal_estimator"):
|
|
418
|
+
self._onedal_estimator.intercept_ = value
|
|
419
|
+
self._onedal_estimator._onedal_model = None
|
|
420
|
+
self._intercept_ = value
|
|
421
|
+
|
|
422
|
+
@intercept_.deleter
|
|
423
|
+
def intercept_(self):
|
|
424
|
+
del self._intercept_
|
|
425
|
+
|
|
418
426
|
score.__doc__ = _sklearn_LinearRegression.score.__doc__
|
|
419
427
|
predict.__doc__ = _sklearn_LinearRegression.predict.__doc__
|
|
@@ -17,28 +17,27 @@
|
|
|
17
17
|
import numbers
|
|
18
18
|
import warnings
|
|
19
19
|
|
|
20
|
-
import numpy as np
|
|
21
20
|
from sklearn.base import BaseEstimator, MultiOutputMixin, RegressorMixin
|
|
22
21
|
from sklearn.linear_model import Ridge as _sklearn_Ridge
|
|
23
22
|
from sklearn.metrics import r2_score
|
|
24
23
|
from sklearn.utils import gen_batches
|
|
25
|
-
from sklearn.utils.validation import check_is_fitted
|
|
24
|
+
from sklearn.utils.validation import check_is_fitted
|
|
26
25
|
|
|
27
26
|
from daal4py.sklearn._n_jobs_support import control_n_jobs
|
|
28
|
-
from daal4py.sklearn.
|
|
29
|
-
|
|
30
|
-
from ..utils.validation import validate_data
|
|
31
|
-
|
|
32
|
-
if sklearn_check_version("1.2"):
|
|
33
|
-
from sklearn.utils._param_validation import Interval
|
|
34
|
-
|
|
27
|
+
from daal4py.sklearn._utils import daal_check_version, sklearn_check_version
|
|
35
28
|
from onedal.linear_model import IncrementalRidge as onedal_IncrementalRidge
|
|
36
29
|
|
|
37
30
|
from .._device_offload import dispatch, wrap_output_data
|
|
38
31
|
from .._utils import PatchingConditionsChain, _add_inc_serialization_note
|
|
39
32
|
from ..base import oneDALEstimator
|
|
33
|
+
from ..utils._array_api import enable_array_api, get_namespace
|
|
34
|
+
from ..utils.validation import validate_data
|
|
35
|
+
|
|
36
|
+
if sklearn_check_version("1.2"):
|
|
37
|
+
from sklearn.utils._param_validation import Interval
|
|
40
38
|
|
|
41
39
|
|
|
40
|
+
@enable_array_api("1.5") # validate_data y_numeric requires sklearn >=1.5
|
|
42
41
|
@control_n_jobs(
|
|
43
42
|
decorated_methods=["fit", "partial_fit", "predict", "score", "_onedal_finalize_fit"]
|
|
44
43
|
)
|
|
@@ -113,7 +112,7 @@ class IncrementalRidge(MultiOutputMixin, RegressorMixin, oneDALEstimator, BaseEs
|
|
|
113
112
|
"fit_intercept": ["boolean"],
|
|
114
113
|
"alpha": [Interval(numbers.Real, 0, None, closed="left")],
|
|
115
114
|
"copy_X": ["boolean"],
|
|
116
|
-
"n_jobs": [
|
|
115
|
+
"n_jobs": [numbers.Integral, None],
|
|
117
116
|
"batch_size": [Interval(numbers.Integral, 1, None, closed="left"), None],
|
|
118
117
|
}
|
|
119
118
|
|
|
@@ -139,12 +138,20 @@ class IncrementalRidge(MultiOutputMixin, RegressorMixin, oneDALEstimator, BaseEs
|
|
|
139
138
|
if sklearn_check_version("1.2"):
|
|
140
139
|
self._validate_params()
|
|
141
140
|
|
|
142
|
-
|
|
141
|
+
xp, _ = get_namespace(X)
|
|
142
|
+
|
|
143
|
+
X = validate_data(
|
|
144
|
+
self, X, accept_sparse=False, dtype=[xp.float64, xp.float32], reset=False
|
|
145
|
+
)
|
|
143
146
|
|
|
144
147
|
assert hasattr(self, "_onedal_estimator")
|
|
145
148
|
if self._need_to_finalize:
|
|
146
149
|
self._onedal_finalize_fit()
|
|
147
|
-
|
|
150
|
+
res = self._onedal_estimator.predict(X, queue=queue)
|
|
151
|
+
|
|
152
|
+
if res.shape[1] == 1 and self.coef_.ndim == 1:
|
|
153
|
+
res = xp.reshape(res, (-1,))
|
|
154
|
+
return res
|
|
148
155
|
|
|
149
156
|
def _onedal_score(self, X, y, sample_weight=None, queue=None):
|
|
150
157
|
return r2_score(
|
|
@@ -154,19 +161,17 @@ class IncrementalRidge(MultiOutputMixin, RegressorMixin, oneDALEstimator, BaseEs
|
|
|
154
161
|
def _onedal_partial_fit(self, X, y, check_input=True, queue=None):
|
|
155
162
|
first_pass = not hasattr(self, "n_samples_seen_") or self.n_samples_seen_ == 0
|
|
156
163
|
|
|
157
|
-
if sklearn_check_version("1.2"):
|
|
158
|
-
self._validate_params()
|
|
159
|
-
|
|
160
164
|
if check_input:
|
|
165
|
+
xp, _ = get_namespace(X, y)
|
|
161
166
|
X, y = validate_data(
|
|
162
167
|
self,
|
|
163
168
|
X,
|
|
164
169
|
y,
|
|
165
|
-
dtype=[
|
|
170
|
+
dtype=[xp.float64, xp.float32],
|
|
166
171
|
reset=first_pass,
|
|
167
172
|
copy=self.copy_X,
|
|
168
173
|
multi_output=True,
|
|
169
|
-
|
|
174
|
+
y_numeric=True,
|
|
170
175
|
)
|
|
171
176
|
|
|
172
177
|
if first_pass:
|
|
@@ -184,36 +189,49 @@ class IncrementalRidge(MultiOutputMixin, RegressorMixin, oneDALEstimator, BaseEs
|
|
|
184
189
|
self._onedal_estimator.partial_fit(X, y, queue=queue)
|
|
185
190
|
self._need_to_finalize = True
|
|
186
191
|
|
|
192
|
+
if daal_check_version((2025, "P", 200)):
|
|
193
|
+
|
|
194
|
+
def _onedal_validate_underdetermined(self, n_samples, n_features):
|
|
195
|
+
pass
|
|
196
|
+
|
|
197
|
+
else:
|
|
198
|
+
|
|
199
|
+
def _onedal_validate_underdetermined(self, n_samples, n_features):
|
|
200
|
+
is_underdetermined = n_samples < n_features + int(self.fit_intercept)
|
|
201
|
+
if is_underdetermined:
|
|
202
|
+
raise ValueError("Not enough samples for oneDAL")
|
|
203
|
+
|
|
187
204
|
def _onedal_finalize_fit(self):
|
|
188
205
|
assert hasattr(self, "_onedal_estimator")
|
|
189
|
-
|
|
190
|
-
self.fit_intercept
|
|
191
|
-
)
|
|
192
|
-
if is_underdetermined:
|
|
193
|
-
raise ValueError("Not enough samples to finalize")
|
|
206
|
+
self._onedal_validate_underdetermined(self.n_samples_seen_, self.n_features_in_)
|
|
194
207
|
self._onedal_estimator.finalize_fit()
|
|
195
|
-
|
|
208
|
+
|
|
209
|
+
self.n_features_in_ = self._onedal_estimator.n_features_in_
|
|
210
|
+
self._coef_ = self._onedal_estimator.coef_
|
|
211
|
+
self._intercept_ = self._onedal_estimator.intercept_
|
|
212
|
+
|
|
213
|
+
if self._coef_.shape[0] == 1:
|
|
214
|
+
self._coef_ = self._coef_[0, ...] # set to 1d
|
|
215
|
+
self._intercept_ = self._intercept_[0] # set 1d to scalar
|
|
216
|
+
|
|
196
217
|
self._need_to_finalize = False
|
|
197
218
|
|
|
198
219
|
def _onedal_fit(self, X, y, queue=None):
|
|
199
|
-
|
|
200
|
-
self._validate_params()
|
|
220
|
+
xp, _ = get_namespace(X, y)
|
|
201
221
|
|
|
202
222
|
X, y = validate_data(
|
|
203
223
|
self,
|
|
204
224
|
X,
|
|
205
225
|
y,
|
|
206
|
-
dtype=[
|
|
226
|
+
dtype=[xp.float64, xp.float32],
|
|
207
227
|
copy=self.copy_X,
|
|
208
228
|
multi_output=True,
|
|
209
|
-
|
|
229
|
+
y_numeric=True,
|
|
210
230
|
)
|
|
211
231
|
|
|
212
232
|
n_samples, n_features = X.shape
|
|
213
233
|
|
|
214
|
-
|
|
215
|
-
if is_underdetermined:
|
|
216
|
-
raise ValueError("Not enough samples to run oneDAL backend")
|
|
234
|
+
self._onedal_validate_underdetermined(n_samples, n_features)
|
|
217
235
|
|
|
218
236
|
if self.batch_size is None:
|
|
219
237
|
self.batch_size_ = 5 * n_features
|
|
@@ -225,12 +243,9 @@ class IncrementalRidge(MultiOutputMixin, RegressorMixin, oneDALEstimator, BaseEs
|
|
|
225
243
|
self._onedal_estimator._reset()
|
|
226
244
|
|
|
227
245
|
for batch in gen_batches(n_samples, self.batch_size_):
|
|
228
|
-
X_batch, y_batch = X[batch], y[batch]
|
|
246
|
+
X_batch, y_batch = X[batch, ...], y[batch, ...]
|
|
229
247
|
self._onedal_partial_fit(X_batch, y_batch, check_input=False, queue=queue)
|
|
230
248
|
|
|
231
|
-
if sklearn_check_version("1.2"):
|
|
232
|
-
self._validate_params()
|
|
233
|
-
|
|
234
249
|
# finite check occurs on onedal side
|
|
235
250
|
self.n_features_in_ = n_features
|
|
236
251
|
|
|
@@ -265,6 +280,8 @@ class IncrementalRidge(MultiOutputMixin, RegressorMixin, oneDALEstimator, BaseEs
|
|
|
265
280
|
self : IncrementalRidge
|
|
266
281
|
Returns the instance itself.
|
|
267
282
|
"""
|
|
283
|
+
if sklearn_check_version("1.2") and check_input:
|
|
284
|
+
self._validate_params()
|
|
268
285
|
|
|
269
286
|
dispatch(
|
|
270
287
|
self,
|
|
@@ -301,6 +318,8 @@ class IncrementalRidge(MultiOutputMixin, RegressorMixin, oneDALEstimator, BaseEs
|
|
|
301
318
|
self : IncrementalRidge
|
|
302
319
|
Returns the instance itself.
|
|
303
320
|
"""
|
|
321
|
+
if sklearn_check_version("1.2"):
|
|
322
|
+
self._validate_params()
|
|
304
323
|
|
|
305
324
|
dispatch(
|
|
306
325
|
self,
|
|
@@ -350,42 +369,39 @@ class IncrementalRidge(MultiOutputMixin, RegressorMixin, oneDALEstimator, BaseEs
|
|
|
350
369
|
sample_weight=sample_weight,
|
|
351
370
|
)
|
|
352
371
|
|
|
353
|
-
score.__doc__ = _sklearn_Ridge.score.__doc__
|
|
354
|
-
predict.__doc__ = _sklearn_Ridge.predict.__doc__
|
|
355
|
-
|
|
356
372
|
@property
|
|
357
373
|
def coef_(self):
|
|
358
374
|
if hasattr(self, "_onedal_estimator") and self._need_to_finalize:
|
|
359
375
|
self._onedal_finalize_fit()
|
|
360
|
-
|
|
361
|
-
return self._coef
|
|
376
|
+
return self._coef_
|
|
362
377
|
|
|
363
378
|
@coef_.setter
|
|
364
379
|
def coef_(self, value):
|
|
365
380
|
if hasattr(self, "_onedal_estimator"):
|
|
366
381
|
self._onedal_estimator.coef_ = value
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
382
|
+
self._onedal_estimator._onedal_model = None
|
|
383
|
+
self._coef_ = value
|
|
384
|
+
|
|
385
|
+
@coef_.deleter
|
|
386
|
+
def coef_(self):
|
|
387
|
+
del self._coef_
|
|
371
388
|
|
|
372
389
|
@property
|
|
373
390
|
def intercept_(self):
|
|
374
391
|
if hasattr(self, "_onedal_estimator") and self._need_to_finalize:
|
|
375
392
|
self._onedal_finalize_fit()
|
|
376
|
-
|
|
377
|
-
return self._intercept
|
|
393
|
+
return self._intercept_
|
|
378
394
|
|
|
379
395
|
@intercept_.setter
|
|
380
396
|
def intercept_(self, value):
|
|
381
397
|
if hasattr(self, "_onedal_estimator"):
|
|
382
398
|
self._onedal_estimator.intercept_ = value
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
del self._onedal_estimator._onedal_model
|
|
386
|
-
self._intercept = value
|
|
399
|
+
self._onedal_estimator._onedal_model = None
|
|
400
|
+
self._intercept_ = value
|
|
387
401
|
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
402
|
+
@intercept_.deleter
|
|
403
|
+
def intercept_(self):
|
|
404
|
+
del self._intercept_
|
|
405
|
+
|
|
406
|
+
score.__doc__ = _sklearn_Ridge.score.__doc__
|
|
407
|
+
predict.__doc__ = _sklearn_Ridge.predict.__doc__
|
|
@@ -16,32 +16,30 @@
|
|
|
16
16
|
|
|
17
17
|
import logging
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
from scipy.sparse import issparse
|
|
20
20
|
from sklearn.linear_model import LinearRegression as _sklearn_LinearRegression
|
|
21
21
|
from sklearn.metrics import r2_score
|
|
22
|
-
from sklearn.utils.validation import
|
|
22
|
+
from sklearn.utils.validation import check_is_fitted
|
|
23
23
|
|
|
24
24
|
from daal4py.sklearn._n_jobs_support import control_n_jobs
|
|
25
25
|
from daal4py.sklearn._utils import daal_check_version, sklearn_check_version
|
|
26
|
+
from onedal.common.hyperparameters import get_hyperparameters
|
|
27
|
+
from onedal.linear_model import LinearRegression as onedal_LinearRegression
|
|
28
|
+
from onedal.utils.validation import _num_features, _num_samples
|
|
26
29
|
|
|
27
30
|
from .._config import get_config
|
|
28
31
|
from .._device_offload import dispatch, wrap_output_data
|
|
29
32
|
from .._utils import PatchingConditionsChain, get_patch_message, register_hyperparameters
|
|
30
33
|
from ..base import oneDALEstimator
|
|
34
|
+
from ..utils._array_api import enable_array_api, get_namespace
|
|
31
35
|
from ..utils.validation import validate_data
|
|
32
36
|
|
|
33
37
|
if not sklearn_check_version("1.2"):
|
|
34
38
|
from sklearn.linear_model._base import _deprecate_normalize
|
|
35
39
|
|
|
36
|
-
from scipy.sparse import issparse
|
|
37
|
-
from sklearn.utils.validation import check_is_fitted, check_X_y
|
|
38
|
-
|
|
39
|
-
from onedal.common.hyperparameters import get_hyperparameters
|
|
40
|
-
from onedal.linear_model import LinearRegression as onedal_LinearRegression
|
|
41
|
-
from onedal.utils.validation import _num_features, _num_samples
|
|
42
|
-
|
|
43
40
|
|
|
44
|
-
@
|
|
41
|
+
@enable_array_api("1.5") # validate_data y_numeric requires sklearn >=1.5
|
|
42
|
+
@register_hyperparameters({"fit": ("linear_regression", "train")})
|
|
45
43
|
@control_n_jobs(decorated_methods=["fit", "predict", "score"])
|
|
46
44
|
class LinearRegression(oneDALEstimator, _sklearn_LinearRegression):
|
|
47
45
|
__doc__ = _sklearn_LinearRegression.__doc__
|
|
@@ -103,6 +101,8 @@ class LinearRegression(oneDALEstimator, _sklearn_LinearRegression):
|
|
|
103
101
|
positive=positive,
|
|
104
102
|
)
|
|
105
103
|
|
|
104
|
+
_onedal_LinearRegression = staticmethod(onedal_LinearRegression)
|
|
105
|
+
|
|
106
106
|
def fit(self, X, y, sample_weight=None):
|
|
107
107
|
if sklearn_check_version("1.2"):
|
|
108
108
|
self._validate_params()
|
|
@@ -251,21 +251,24 @@ class LinearRegression(oneDALEstimator, _sklearn_LinearRegression):
|
|
|
251
251
|
|
|
252
252
|
def _initialize_onedal_estimator(self):
|
|
253
253
|
onedal_params = {"fit_intercept": self.fit_intercept, "copy_X": self.copy_X}
|
|
254
|
-
self._onedal_estimator =
|
|
254
|
+
self._onedal_estimator = self._onedal_LinearRegression(**onedal_params)
|
|
255
255
|
|
|
256
256
|
def _onedal_fit(self, X, y, sample_weight, queue=None):
|
|
257
257
|
assert sample_weight is None
|
|
258
258
|
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
y=
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
259
|
+
xp, _ = get_namespace(X, y)
|
|
260
|
+
|
|
261
|
+
if not get_config()["use_raw_input"]:
|
|
262
|
+
supports_multi_output = daal_check_version((2025, "P", 1))
|
|
263
|
+
X, y = validate_data(
|
|
264
|
+
self,
|
|
265
|
+
X=X,
|
|
266
|
+
y=y,
|
|
267
|
+
dtype=[xp.float64, xp.float32],
|
|
268
|
+
accept_sparse=["csr", "csc", "coo"],
|
|
269
|
+
y_numeric=True,
|
|
270
|
+
multi_output=supports_multi_output,
|
|
271
|
+
)
|
|
269
272
|
|
|
270
273
|
if not sklearn_check_version("1.2"):
|
|
271
274
|
self._normalize = _deprecate_normalize(
|
|
@@ -275,14 +278,22 @@ class LinearRegression(oneDALEstimator, _sklearn_LinearRegression):
|
|
|
275
278
|
)
|
|
276
279
|
|
|
277
280
|
self._initialize_onedal_estimator()
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
281
|
+
|
|
282
|
+
try:
|
|
283
|
+
self._onedal_estimator.fit(X, y, queue=queue)
|
|
284
|
+
|
|
285
|
+
self.n_features_in_ = self._onedal_estimator.n_features_in_
|
|
286
|
+
self._sparse = False
|
|
287
|
+
self._coef_ = self._onedal_estimator.coef_
|
|
288
|
+
self._intercept_ = self._onedal_estimator.intercept_
|
|
289
|
+
|
|
290
|
+
if self._coef_.shape[0] == 1 and y.ndim == 1:
|
|
291
|
+
self._coef_ = self._coef_[0, ...] # set to 1d
|
|
292
|
+
self._intercept_ = self._intercept_[0] # set 1d to scalar
|
|
293
|
+
|
|
294
|
+
except RuntimeError as e:
|
|
295
|
+
if get_config()["allow_sklearn_after_onedal"]:
|
|
296
|
+
|
|
286
297
|
logging.getLogger("sklearnex").info(
|
|
287
298
|
f"{self.__class__.__name__}.fit "
|
|
288
299
|
+ get_patch_message("sklearn_after_onedal")
|
|
@@ -290,12 +301,16 @@ class LinearRegression(oneDALEstimator, _sklearn_LinearRegression):
|
|
|
290
301
|
|
|
291
302
|
del self._onedal_estimator
|
|
292
303
|
super().fit(X, y)
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
self._save_attributes()
|
|
304
|
+
else:
|
|
305
|
+
raise e
|
|
296
306
|
|
|
297
307
|
def _onedal_predict(self, X, queue=None):
|
|
298
|
-
|
|
308
|
+
xp, _ = get_namespace(X)
|
|
309
|
+
|
|
310
|
+
if not get_config()["use_raw_input"]:
|
|
311
|
+
X = validate_data(
|
|
312
|
+
self, X, accept_sparse=False, dtype=[xp.float64, xp.float32], reset=False
|
|
313
|
+
)
|
|
299
314
|
|
|
300
315
|
if not hasattr(self, "_onedal_estimator"):
|
|
301
316
|
self._initialize_onedal_estimator()
|
|
@@ -303,6 +318,9 @@ class LinearRegression(oneDALEstimator, _sklearn_LinearRegression):
|
|
|
303
318
|
self._onedal_estimator.intercept_ = self.intercept_
|
|
304
319
|
|
|
305
320
|
res = self._onedal_estimator.predict(X, queue=queue)
|
|
321
|
+
if res.shape[1] == 1 and self.coef_.ndim == 1:
|
|
322
|
+
res = xp.reshape(res, (-1,))
|
|
323
|
+
|
|
306
324
|
return res
|
|
307
325
|
|
|
308
326
|
def _onedal_score(self, X, y, sample_weight=None, queue=None):
|
|
@@ -319,7 +337,7 @@ class LinearRegression(oneDALEstimator, _sklearn_LinearRegression):
|
|
|
319
337
|
self._coef_ = value
|
|
320
338
|
if hasattr(self, "_onedal_estimator"):
|
|
321
339
|
self._onedal_estimator.coef_ = value
|
|
322
|
-
|
|
340
|
+
self._onedal_estimator._onedal_model = None
|
|
323
341
|
|
|
324
342
|
@coef_.deleter
|
|
325
343
|
def coef_(self):
|
|
@@ -334,18 +352,12 @@ class LinearRegression(oneDALEstimator, _sklearn_LinearRegression):
|
|
|
334
352
|
self._intercept_ = value
|
|
335
353
|
if hasattr(self, "_onedal_estimator"):
|
|
336
354
|
self._onedal_estimator.intercept_ = value
|
|
337
|
-
|
|
355
|
+
self._onedal_estimator._onedal_model = None
|
|
338
356
|
|
|
339
357
|
@intercept_.deleter
|
|
340
358
|
def intercept_(self):
|
|
341
359
|
del self._intercept_
|
|
342
360
|
|
|
343
|
-
def _save_attributes(self):
|
|
344
|
-
self.n_features_in_ = self._onedal_estimator.n_features_in_
|
|
345
|
-
self._sparse = False
|
|
346
|
-
self._coef_ = self._onedal_estimator.coef_
|
|
347
|
-
self._intercept_ = self._onedal_estimator.intercept_
|
|
348
|
-
|
|
349
361
|
fit.__doc__ = _sklearn_LinearRegression.fit.__doc__
|
|
350
362
|
predict.__doc__ = _sklearn_LinearRegression.predict.__doc__
|
|
351
363
|
score.__doc__ = _sklearn_LinearRegression.score.__doc__
|