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
|
@@ -14,10 +14,8 @@
|
|
|
14
14
|
# limitations under the License.
|
|
15
15
|
# ==============================================================================
|
|
16
16
|
|
|
17
|
-
import numpy as np
|
|
18
17
|
from sklearn.base import BaseEstimator
|
|
19
|
-
from sklearn.utils import
|
|
20
|
-
from sklearn.utils.validation import _check_sample_weight
|
|
18
|
+
from sklearn.utils import gen_batches
|
|
21
19
|
|
|
22
20
|
from daal4py.sklearn._n_jobs_support import control_n_jobs
|
|
23
21
|
from daal4py.sklearn._utils import sklearn_check_version
|
|
@@ -29,7 +27,8 @@ from .._config import get_config
|
|
|
29
27
|
from .._device_offload import dispatch
|
|
30
28
|
from .._utils import PatchingConditionsChain, _add_inc_serialization_note
|
|
31
29
|
from ..base import oneDALEstimator
|
|
32
|
-
from ..utils.
|
|
30
|
+
from ..utils._array_api import enable_array_api, get_namespace
|
|
31
|
+
from ..utils.validation import _check_sample_weight, validate_data
|
|
33
32
|
|
|
34
33
|
if sklearn_check_version("1.2"):
|
|
35
34
|
from sklearn.utils._param_validation import Interval, StrOptions
|
|
@@ -38,6 +37,7 @@ import numbers
|
|
|
38
37
|
import warnings
|
|
39
38
|
|
|
40
39
|
|
|
40
|
+
@enable_array_api
|
|
41
41
|
@control_n_jobs(decorated_methods=["partial_fit", "_onedal_finalize_fit"])
|
|
42
42
|
class IncrementalBasicStatistics(oneDALEstimator, BaseEstimator):
|
|
43
43
|
"""
|
|
@@ -159,12 +159,7 @@ class IncrementalBasicStatistics(oneDALEstimator, BaseEstimator):
|
|
|
159
159
|
}
|
|
160
160
|
|
|
161
161
|
def __init__(self, result_options="all", batch_size=None):
|
|
162
|
-
|
|
163
|
-
self.result_options = (
|
|
164
|
-
self._onedal_incremental_basic_statistics.get_all_result_options()
|
|
165
|
-
)
|
|
166
|
-
else:
|
|
167
|
-
self.result_options = result_options
|
|
162
|
+
self.result_options = result_options
|
|
168
163
|
self._need_to_finalize = False
|
|
169
164
|
self.batch_size = batch_size
|
|
170
165
|
|
|
@@ -177,15 +172,7 @@ class IncrementalBasicStatistics(oneDALEstimator, BaseEstimator):
|
|
|
177
172
|
_onedal_cpu_supported = _onedal_supported
|
|
178
173
|
_onedal_gpu_supported = _onedal_supported
|
|
179
174
|
|
|
180
|
-
def
|
|
181
|
-
if isinstance(options, list):
|
|
182
|
-
onedal_options = "|".join(self.result_options)
|
|
183
|
-
else:
|
|
184
|
-
onedal_options = options
|
|
185
|
-
assert isinstance(onedal_options, str)
|
|
186
|
-
return options
|
|
187
|
-
|
|
188
|
-
def _onedal_finalize_fit(self):
|
|
175
|
+
def _onedal_finalize_fit(self, queue=None):
|
|
189
176
|
assert hasattr(self, "_onedal_estimator")
|
|
190
177
|
self._onedal_estimator.finalize_fit()
|
|
191
178
|
self._need_to_finalize = False
|
|
@@ -193,19 +180,20 @@ class IncrementalBasicStatistics(oneDALEstimator, BaseEstimator):
|
|
|
193
180
|
def _onedal_partial_fit(self, X, sample_weight=None, queue=None, check_input=True):
|
|
194
181
|
first_pass = not hasattr(self, "n_samples_seen_") or self.n_samples_seen_ == 0
|
|
195
182
|
|
|
196
|
-
use_raw_input = get_config().get("use_raw_input", False) is True
|
|
197
183
|
# never check input when using raw input
|
|
198
|
-
check_input
|
|
199
|
-
|
|
184
|
+
if check_input and not get_config()["use_raw_input"]:
|
|
185
|
+
xp, _ = get_namespace(X)
|
|
200
186
|
X = validate_data(
|
|
201
187
|
self,
|
|
202
188
|
X,
|
|
203
|
-
dtype=[
|
|
189
|
+
dtype=[xp.float64, xp.float32],
|
|
204
190
|
reset=first_pass,
|
|
205
191
|
)
|
|
206
192
|
|
|
207
|
-
|
|
208
|
-
|
|
193
|
+
if sample_weight is not None:
|
|
194
|
+
sample_weight = _check_sample_weight(
|
|
195
|
+
sample_weight, X, dtype=[xp.float64, xp.float32]
|
|
196
|
+
)
|
|
209
197
|
|
|
210
198
|
if first_pass:
|
|
211
199
|
self.n_samples_seen_ = X.shape[0]
|
|
@@ -213,28 +201,25 @@ class IncrementalBasicStatistics(oneDALEstimator, BaseEstimator):
|
|
|
213
201
|
else:
|
|
214
202
|
self.n_samples_seen_ += X.shape[0]
|
|
215
203
|
|
|
216
|
-
onedal_params = {
|
|
217
|
-
"result_options": self._get_onedal_result_options(self.result_options)
|
|
218
|
-
}
|
|
219
204
|
if not hasattr(self, "_onedal_estimator"):
|
|
220
205
|
self._onedal_estimator = self._onedal_incremental_basic_statistics(
|
|
221
|
-
|
|
206
|
+
result_options=self.result_options
|
|
222
207
|
)
|
|
223
|
-
|
|
208
|
+
|
|
209
|
+
self._onedal_estimator.partial_fit(X, sample_weight=sample_weight, queue=queue)
|
|
224
210
|
self._need_to_finalize = True
|
|
225
211
|
|
|
226
212
|
def _onedal_fit(self, X, sample_weight=None, queue=None):
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
self._validate_params()
|
|
231
|
-
|
|
232
|
-
X = validate_data(self, X, dtype=[np.float64, np.float32])
|
|
213
|
+
if not get_config()["use_raw_input"]:
|
|
214
|
+
xp, _ = get_namespace(X, sample_weight)
|
|
215
|
+
X = validate_data(self, X, dtype=[xp.float64, xp.float32])
|
|
233
216
|
|
|
234
217
|
if sample_weight is not None:
|
|
235
|
-
sample_weight = _check_sample_weight(
|
|
218
|
+
sample_weight = _check_sample_weight(
|
|
219
|
+
sample_weight, X, dtype=[xp.float64, xp.float32]
|
|
220
|
+
)
|
|
236
221
|
|
|
237
|
-
|
|
222
|
+
_, n_features = X.shape
|
|
238
223
|
if self.batch_size is None:
|
|
239
224
|
self.batch_size_ = 5 * n_features
|
|
240
225
|
else:
|
|
@@ -258,11 +243,12 @@ class IncrementalBasicStatistics(oneDALEstimator, BaseEstimator):
|
|
|
258
243
|
return self
|
|
259
244
|
|
|
260
245
|
def __getattr__(self, attr):
|
|
261
|
-
result_options = self.__dict__["result_options"]
|
|
262
246
|
sattr = attr.removesuffix("_")
|
|
263
247
|
is_statistic_attr = (
|
|
264
|
-
|
|
265
|
-
|
|
248
|
+
sattr in self._onedal_estimator.options
|
|
249
|
+
if "_onedal_estimator" in self.__dict__
|
|
250
|
+
else False
|
|
251
|
+
)
|
|
266
252
|
if is_statistic_attr:
|
|
267
253
|
if self._need_to_finalize:
|
|
268
254
|
self._onedal_finalize_fit()
|
|
@@ -270,7 +256,8 @@ class IncrementalBasicStatistics(oneDALEstimator, BaseEstimator):
|
|
|
270
256
|
warnings.warn(
|
|
271
257
|
"Result attributes without a trailing underscore were deprecated in version 2025.1 and will be removed in 2026.0"
|
|
272
258
|
)
|
|
273
|
-
|
|
259
|
+
attr += "_"
|
|
260
|
+
return getattr(self._onedal_estimator, attr)
|
|
274
261
|
if attr in self.__dict__:
|
|
275
262
|
return self.__dict__[attr]
|
|
276
263
|
|
|
@@ -301,6 +288,8 @@ class IncrementalBasicStatistics(oneDALEstimator, BaseEstimator):
|
|
|
301
288
|
self : IncrementalBasicStatistics
|
|
302
289
|
Returns the instance itself.
|
|
303
290
|
"""
|
|
291
|
+
if sklearn_check_version("1.2") and check_input:
|
|
292
|
+
self._validate_params()
|
|
304
293
|
dispatch(
|
|
305
294
|
self,
|
|
306
295
|
"partial_fit",
|
|
@@ -334,6 +323,8 @@ class IncrementalBasicStatistics(oneDALEstimator, BaseEstimator):
|
|
|
334
323
|
self : IncrementalBasicStatistics
|
|
335
324
|
Returns the instance itself.
|
|
336
325
|
"""
|
|
326
|
+
if sklearn_check_version("1.2"):
|
|
327
|
+
self._validate_params()
|
|
337
328
|
dispatch(
|
|
338
329
|
self,
|
|
339
330
|
"fit",
|
|
@@ -14,42 +14,30 @@
|
|
|
14
14
|
# limitations under the License.
|
|
15
15
|
# ===============================================================================
|
|
16
16
|
|
|
17
|
-
import numbers
|
|
18
|
-
from abc import ABC
|
|
19
|
-
|
|
20
17
|
from scipy import sparse as sp
|
|
21
18
|
from sklearn.cluster import DBSCAN as _sklearn_DBSCAN
|
|
22
|
-
from sklearn.utils.validation import _check_sample_weight
|
|
23
19
|
|
|
24
20
|
from daal4py.sklearn._n_jobs_support import control_n_jobs
|
|
25
21
|
from daal4py.sklearn._utils import sklearn_check_version
|
|
26
22
|
from onedal.cluster import DBSCAN as onedal_DBSCAN
|
|
23
|
+
from onedal.utils._array_api import _is_numpy_namespace
|
|
27
24
|
|
|
28
25
|
from .._config import get_config
|
|
29
26
|
from .._device_offload import dispatch
|
|
30
27
|
from .._utils import PatchingConditionsChain
|
|
31
28
|
from ..base import oneDALEstimator
|
|
32
|
-
from ..utils.
|
|
29
|
+
from ..utils._array_api import enable_array_api, get_namespace
|
|
30
|
+
from ..utils.validation import _check_sample_weight, validate_data
|
|
33
31
|
|
|
34
32
|
if sklearn_check_version("1.1") and not sklearn_check_version("1.2"):
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
class BaseDBSCAN(oneDALEstimator):
|
|
39
|
-
def _onedal_dbscan(self, **onedal_params):
|
|
40
|
-
return onedal_DBSCAN(**onedal_params)
|
|
33
|
+
import numbers
|
|
41
34
|
|
|
42
|
-
|
|
43
|
-
assert hasattr(self, "_onedal_estimator")
|
|
44
|
-
|
|
45
|
-
self.labels_ = self._onedal_estimator.labels_
|
|
46
|
-
self.core_sample_indices_ = self._onedal_estimator.core_sample_indices_
|
|
47
|
-
self.components_ = self._onedal_estimator.components_
|
|
48
|
-
self.n_features_in_ = self._onedal_estimator.n_features_in_
|
|
35
|
+
from sklearn.utils import check_scalar
|
|
49
36
|
|
|
50
37
|
|
|
38
|
+
@enable_array_api
|
|
51
39
|
@control_n_jobs(decorated_methods=["fit"])
|
|
52
|
-
class DBSCAN(
|
|
40
|
+
class DBSCAN(oneDALEstimator, _sklearn_DBSCAN):
|
|
53
41
|
__doc__ = _sklearn_DBSCAN.__doc__
|
|
54
42
|
|
|
55
43
|
if sklearn_check_version("1.2"):
|
|
@@ -86,9 +74,18 @@ class DBSCAN(BaseDBSCAN, _sklearn_DBSCAN):
|
|
|
86
74
|
self.p = p
|
|
87
75
|
self.n_jobs = n_jobs
|
|
88
76
|
|
|
77
|
+
_onedal_dbscan = staticmethod(onedal_DBSCAN)
|
|
78
|
+
|
|
89
79
|
def _onedal_fit(self, X, y, sample_weight=None, queue=None):
|
|
90
|
-
|
|
91
|
-
|
|
80
|
+
xp, _ = get_namespace(X, y, sample_weight)
|
|
81
|
+
if not get_config()["use_raw_input"]:
|
|
82
|
+
X = validate_data(
|
|
83
|
+
self, X, accept_sparse="csr", dtype=[xp.float64, xp.float32]
|
|
84
|
+
)
|
|
85
|
+
if sample_weight is not None:
|
|
86
|
+
sample_weight = _check_sample_weight(
|
|
87
|
+
sample_weight, X, dtype=[xp.float64, xp.float32]
|
|
88
|
+
)
|
|
92
89
|
|
|
93
90
|
onedal_params = {
|
|
94
91
|
"eps": self.eps,
|
|
@@ -103,7 +100,17 @@ class DBSCAN(BaseDBSCAN, _sklearn_DBSCAN):
|
|
|
103
100
|
self._onedal_estimator = self._onedal_dbscan(**onedal_params)
|
|
104
101
|
|
|
105
102
|
self._onedal_estimator.fit(X, y=y, sample_weight=sample_weight, queue=queue)
|
|
106
|
-
self.
|
|
103
|
+
if self._onedal_estimator.core_sample_indices_ is None:
|
|
104
|
+
kwargs = {"dtype": xp.int32} # always the same
|
|
105
|
+
if not _is_numpy_namespace(xp):
|
|
106
|
+
kwargs["device"] = X.device
|
|
107
|
+
self.core_sample_indices_ = xp.empty((0,), **kwargs)
|
|
108
|
+
else:
|
|
109
|
+
self.core_sample_indices_ = self._onedal_estimator.core_sample_indices_
|
|
110
|
+
|
|
111
|
+
self.components_ = xp.take(X, self.core_sample_indices_, axis=0)
|
|
112
|
+
self.labels_ = self._onedal_estimator.labels_
|
|
113
|
+
self.n_features_in_ = X.shape[1]
|
|
107
114
|
|
|
108
115
|
def _onedal_supported(self, method_name, *data):
|
|
109
116
|
class_name = self.__class__.__name__
|
|
@@ -111,7 +118,7 @@ class DBSCAN(BaseDBSCAN, _sklearn_DBSCAN):
|
|
|
111
118
|
f"sklearn.cluster.{class_name}.{method_name}"
|
|
112
119
|
)
|
|
113
120
|
if method_name == "fit":
|
|
114
|
-
X
|
|
121
|
+
X = data[0]
|
|
115
122
|
patching_status.and_conditions(
|
|
116
123
|
[
|
|
117
124
|
(
|
|
@@ -175,10 +182,6 @@ class DBSCAN(BaseDBSCAN, _sklearn_DBSCAN):
|
|
|
175
182
|
else:
|
|
176
183
|
if self.eps <= 0.0:
|
|
177
184
|
raise ValueError(f"eps == {self.eps}, must be > 0.0.")
|
|
178
|
-
|
|
179
|
-
use_raw_input = get_config().get("use_raw_input", False) is True
|
|
180
|
-
if not use_raw_input and sample_weight is not None:
|
|
181
|
-
sample_weight = _check_sample_weight(sample_weight, X)
|
|
182
185
|
dispatch(
|
|
183
186
|
self,
|
|
184
187
|
"fit",
|
|
@@ -334,6 +334,7 @@ if daal_check_version((2023, "P", 200)):
|
|
|
334
334
|
return X
|
|
335
335
|
|
|
336
336
|
_transform = support_input_format(_sklearn_KMeans._transform)
|
|
337
|
+
transform = support_input_format(_sklearn_KMeans.transform)
|
|
337
338
|
|
|
338
339
|
@wrap_output_data
|
|
339
340
|
def score(self, X, y=None, sample_weight=None):
|
|
@@ -27,6 +27,7 @@ from sklearn.utils.validation import _num_features, check_is_fitted
|
|
|
27
27
|
|
|
28
28
|
from daal4py.sklearn._n_jobs_support import control_n_jobs
|
|
29
29
|
from daal4py.sklearn._utils import daal_check_version, sklearn_check_version
|
|
30
|
+
from onedal._device_offload import support_sycl_format
|
|
30
31
|
from onedal.covariance import (
|
|
31
32
|
IncrementalEmpiricalCovariance as onedal_IncrementalEmpiricalCovariance,
|
|
32
33
|
)
|
|
@@ -231,6 +232,7 @@ class IncrementalEmpiricalCovariance(oneDALEstimator, BaseEstimator):
|
|
|
231
232
|
return self
|
|
232
233
|
|
|
233
234
|
@wrap_output_data
|
|
235
|
+
@support_sycl_format
|
|
234
236
|
def score(self, X_test, y=None):
|
|
235
237
|
xp, _ = get_namespace(X_test)
|
|
236
238
|
|
|
@@ -44,11 +44,11 @@ if daal_check_version((2024, "P", 100)):
|
|
|
44
44
|
|
|
45
45
|
from sklearn.decomposition import PCA as _sklearn_PCA
|
|
46
46
|
|
|
47
|
-
from onedal.
|
|
47
|
+
from onedal._device_offload import support_sycl_format
|
|
48
48
|
from onedal.decomposition import PCA as onedal_PCA
|
|
49
49
|
from onedal.utils._array_api import _is_numpy_namespace
|
|
50
50
|
|
|
51
|
-
@register_hyperparameters({"fit":
|
|
51
|
+
@register_hyperparameters({"fit": ("pca", "train")})
|
|
52
52
|
@control_n_jobs(decorated_methods=["fit", "transform", "fit_transform"])
|
|
53
53
|
class PCA(oneDALEstimator, _sklearn_PCA):
|
|
54
54
|
__doc__ = _sklearn_PCA.__doc__
|
|
@@ -111,6 +111,10 @@ if daal_check_version((2024, "P", 100)):
|
|
|
111
111
|
self.iterated_power = iterated_power
|
|
112
112
|
self.random_state = random_state
|
|
113
113
|
|
|
114
|
+
# guarantee operability with dpnp/dpctl, runs on CPU unless
|
|
115
|
+
# array_api_dispatch is enabled.
|
|
116
|
+
score_samples = support_sycl_format(_sklearn_PCA.score_samples)
|
|
117
|
+
|
|
114
118
|
def fit(self, X, y=None):
|
|
115
119
|
self._fit(X)
|
|
116
120
|
return self
|
|
@@ -414,6 +418,7 @@ if daal_check_version((2024, "P", 100)):
|
|
|
414
418
|
transform.__doc__ = _sklearn_PCA.transform.__doc__
|
|
415
419
|
fit_transform.__doc__ = _sklearn_PCA.fit_transform.__doc__
|
|
416
420
|
inverse_transform.__doc__ = _sklearn_PCA.inverse_transform.__doc__
|
|
421
|
+
score_samples.__doc__ = _sklearn_PCA.score_samples.__doc__
|
|
417
422
|
|
|
418
423
|
else:
|
|
419
424
|
from daal4py.sklearn.decomposition import PCA
|
scikit_learn_intelex-2025.8.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py
ADDED
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# ===============================================================================
|
|
2
|
+
# Copyright 2023 Intel Corporation
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
# ===============================================================================
|
|
16
|
+
|
|
17
|
+
import numpy as np
|
|
18
|
+
import pytest
|
|
19
|
+
from numpy.testing import assert_allclose
|
|
20
|
+
|
|
21
|
+
from daal4py.sklearn._utils import daal_check_version
|
|
22
|
+
from onedal.tests.utils._dataframes_support import (
|
|
23
|
+
_as_numpy,
|
|
24
|
+
_convert_to_dataframe,
|
|
25
|
+
get_dataframes_and_queues,
|
|
26
|
+
)
|
|
27
|
+
from sklearnex.decomposition import PCA
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
@pytest.fixture
|
|
31
|
+
def hyperparameters(request):
|
|
32
|
+
hparams = PCA.get_hyperparameters("fit")
|
|
33
|
+
|
|
34
|
+
def restore_hyperparameters():
|
|
35
|
+
if daal_check_version((2025, "P", 700)):
|
|
36
|
+
PCA.reset_hyperparameters("fit")
|
|
37
|
+
|
|
38
|
+
request.addfinalizer(restore_hyperparameters)
|
|
39
|
+
return hparams
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
@pytest.mark.parametrize("dataframe,queue", get_dataframes_and_queues())
|
|
43
|
+
@pytest.mark.parametrize("macro_block", [None, 2])
|
|
44
|
+
@pytest.mark.parametrize("grain_size", [None, 2])
|
|
45
|
+
def test_sklearnex_import(hyperparameters, dataframe, queue, macro_block, grain_size):
|
|
46
|
+
|
|
47
|
+
X = [[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]]
|
|
48
|
+
X = _convert_to_dataframe(X, sycl_queue=queue, target_df=dataframe)
|
|
49
|
+
X_transformed_expected = [
|
|
50
|
+
[-1.38340578, -0.2935787],
|
|
51
|
+
[-2.22189802, 0.25133484],
|
|
52
|
+
[-3.6053038, -0.04224385],
|
|
53
|
+
[1.38340578, 0.2935787],
|
|
54
|
+
[2.22189802, -0.25133484],
|
|
55
|
+
[3.6053038, 0.04224385],
|
|
56
|
+
]
|
|
57
|
+
|
|
58
|
+
if daal_check_version((2025, "P", 700)):
|
|
59
|
+
if macro_block is not None:
|
|
60
|
+
if queue and queue.sycl_device.is_gpu:
|
|
61
|
+
pytest.skip("Test for CPU-only functionality")
|
|
62
|
+
hyperparameters.cpu_macro_block = macro_block
|
|
63
|
+
if grain_size is not None:
|
|
64
|
+
if queue and queue.sycl_device.is_gpu:
|
|
65
|
+
pytest.skip("Test for CPU-only functionality")
|
|
66
|
+
hyperparameters.cpu_grain_size = grain_size
|
|
67
|
+
|
|
68
|
+
pca = PCA(n_components=2, svd_solver="covariance_eigh")
|
|
69
|
+
|
|
70
|
+
pca.fit(X)
|
|
71
|
+
X_transformed = pca.transform(X)
|
|
72
|
+
X_fit_transformed = PCA(n_components=2, svd_solver="covariance_eigh").fit_transform(X)
|
|
73
|
+
|
|
74
|
+
if daal_check_version((2024, "P", 100)):
|
|
75
|
+
assert "sklearnex" in pca.__module__
|
|
76
|
+
assert hasattr(pca, "_onedal_estimator")
|
|
77
|
+
else:
|
|
78
|
+
assert "daal4py" in pca.__module__
|
|
79
|
+
|
|
80
|
+
tol = 1e-5 if _as_numpy(X_transformed).dtype == np.float32 else 1e-7
|
|
81
|
+
assert_allclose([6.30061232, 0.54980396], _as_numpy(pca.singular_values_))
|
|
82
|
+
assert_allclose(X_transformed_expected, _as_numpy(X_transformed), rtol=tol)
|
|
83
|
+
assert_allclose(X_transformed_expected, _as_numpy(X_fit_transformed), rtol=tol)
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
@pytest.mark.skipif(
|
|
87
|
+
not daal_check_version((2025, "P", 700)),
|
|
88
|
+
reason="Functionality introduced in a later version",
|
|
89
|
+
)
|
|
90
|
+
@pytest.mark.parametrize("dataframe,queue", get_dataframes_and_queues())
|
|
91
|
+
def test_non_batched_covariance(hyperparameters, dataframe, queue):
|
|
92
|
+
if queue and queue.sycl_device.is_gpu:
|
|
93
|
+
pytest.skip("Test for CPU-only functionality")
|
|
94
|
+
|
|
95
|
+
from sklearnex.decomposition import PCA
|
|
96
|
+
|
|
97
|
+
# This generates a random matrix with non-independent columns
|
|
98
|
+
rng = np.random.default_rng(seed=123)
|
|
99
|
+
S = rng.standard_normal(size=(6, 5))
|
|
100
|
+
S = S.T @ S
|
|
101
|
+
mu = rng.standard_normal(size=5)
|
|
102
|
+
X = rng.multivariate_normal(mu, S, size=20)
|
|
103
|
+
|
|
104
|
+
hyperparameters.cpu_max_cols_batched = np.iinfo(np.int32).max
|
|
105
|
+
res_batched = PCA().fit(X).components_
|
|
106
|
+
|
|
107
|
+
hyperparameters.cpu_max_cols_batched = 1
|
|
108
|
+
res_non_batched = PCA().fit(X).components_
|
|
109
|
+
|
|
110
|
+
np.testing.assert_allclose(res_non_batched, res_batched)
|
|
@@ -118,12 +118,6 @@ def get_patch_map_core(preview=False):
|
|
|
118
118
|
from ._config import config_context as config_context_sklearnex
|
|
119
119
|
from ._config import get_config as get_config_sklearnex
|
|
120
120
|
from ._config import set_config as set_config_sklearnex
|
|
121
|
-
|
|
122
|
-
if sklearn_check_version("1.2.1"):
|
|
123
|
-
from .utils.parallel import _FuncWrapper as _FuncWrapper_sklearnex
|
|
124
|
-
else:
|
|
125
|
-
from .utils.parallel import _FuncWrapperOld as _FuncWrapper_sklearnex
|
|
126
|
-
|
|
127
121
|
from .cluster import DBSCAN as DBSCAN_sklearnex
|
|
128
122
|
from .cluster import KMeans as KMeans_sklearnex
|
|
129
123
|
from .covariance import (
|
|
@@ -155,6 +149,7 @@ def get_patch_map_core(preview=False):
|
|
|
155
149
|
from .svm import SVR as SVR_sklearnex
|
|
156
150
|
from .svm import NuSVC as NuSVC_sklearnex
|
|
157
151
|
from .svm import NuSVR as NuSVR_sklearnex
|
|
152
|
+
from .utils.parallel import _FuncWrapper as _FuncWrapper_sklearnex
|
|
158
153
|
|
|
159
154
|
# DBSCAN
|
|
160
155
|
mapping.pop("dbscan")
|
|
@@ -52,13 +52,13 @@ from daal4py.sklearn._utils import (
|
|
|
52
52
|
daal_check_version,
|
|
53
53
|
sklearn_check_version,
|
|
54
54
|
)
|
|
55
|
+
from onedal._device_offload import support_input_format
|
|
55
56
|
from onedal.ensemble import ExtraTreesClassifier as onedal_ExtraTreesClassifier
|
|
56
57
|
from onedal.ensemble import ExtraTreesRegressor as onedal_ExtraTreesRegressor
|
|
57
58
|
from onedal.ensemble import RandomForestClassifier as onedal_RandomForestClassifier
|
|
58
59
|
from onedal.ensemble import RandomForestRegressor as onedal_RandomForestRegressor
|
|
59
60
|
from onedal.primitives import get_tree_state_cls, get_tree_state_reg
|
|
60
61
|
from onedal.utils.validation import _num_features, _num_samples
|
|
61
|
-
from sklearnex import get_hyperparameters
|
|
62
62
|
from sklearnex._utils import register_hyperparameters
|
|
63
63
|
|
|
64
64
|
from .._config import get_config
|
|
@@ -458,6 +458,9 @@ class ForestClassifier(BaseForest, _sklearn_ForestClassifier):
|
|
|
458
458
|
if self._onedal_factory is None:
|
|
459
459
|
raise TypeError(f" oneDAL estimator has not been set.")
|
|
460
460
|
|
|
461
|
+
decision_path = support_input_format(_sklearn_ForestClassifier.decision_path)
|
|
462
|
+
apply = support_input_format(_sklearn_ForestClassifier.apply)
|
|
463
|
+
|
|
461
464
|
def _estimators_(self):
|
|
462
465
|
super()._estimators_()
|
|
463
466
|
for est in self._cached_estimators_:
|
|
@@ -902,6 +905,9 @@ class ForestRegressor(BaseForest, _sklearn_ForestRegressor):
|
|
|
902
905
|
if self._onedal_factory is None:
|
|
903
906
|
raise TypeError(f" oneDAL estimator has not been set.")
|
|
904
907
|
|
|
908
|
+
decision_path = support_input_format(_sklearn_ForestRegressor.decision_path)
|
|
909
|
+
apply = support_input_format(_sklearn_ForestRegressor.apply)
|
|
910
|
+
|
|
905
911
|
def _onedal_fit_ready(self, patching_status, X, y, sample_weight):
|
|
906
912
|
if sp.issparse(y):
|
|
907
913
|
raise ValueError("sparse multilabel-indicator for y is not supported.")
|
|
@@ -1212,7 +1218,7 @@ class ForestRegressor(BaseForest, _sklearn_ForestRegressor):
|
|
|
1212
1218
|
score.__doc__ = _sklearn_ForestRegressor.score.__doc__
|
|
1213
1219
|
|
|
1214
1220
|
|
|
1215
|
-
@register_hyperparameters({"
|
|
1221
|
+
@register_hyperparameters({"predict": ("decision_forest", "infer")})
|
|
1216
1222
|
@control_n_jobs(decorated_methods=["fit", "predict", "predict_proba", "score"])
|
|
1217
1223
|
class RandomForestClassifier(ForestClassifier):
|
|
1218
1224
|
__doc__ = _sklearn_RandomForestClassifier.__doc__
|
|
@@ -35,9 +35,24 @@ hparam_values = [
|
|
|
35
35
|
]
|
|
36
36
|
|
|
37
37
|
|
|
38
|
+
@pytest.fixture
|
|
39
|
+
def hyperparameters(request):
|
|
40
|
+
from sklearnex.ensemble import RandomForestClassifier
|
|
41
|
+
|
|
42
|
+
hparams = RandomForestClassifier.get_hyperparameters("predict")
|
|
43
|
+
|
|
44
|
+
def restore_hyperparameters():
|
|
45
|
+
RandomForestClassifier.reset_hyperparameters("predict")
|
|
46
|
+
|
|
47
|
+
request.addfinalizer(restore_hyperparameters)
|
|
48
|
+
return hparams
|
|
49
|
+
|
|
50
|
+
|
|
38
51
|
@pytest.mark.parametrize("dataframe, queue", get_dataframes_and_queues())
|
|
39
52
|
@pytest.mark.parametrize("block, trees, rows, scale", hparam_values)
|
|
40
|
-
def test_sklearnex_import_rf_classifier(
|
|
53
|
+
def test_sklearnex_import_rf_classifier(
|
|
54
|
+
hyperparameters, dataframe, queue, block, trees, rows, scale
|
|
55
|
+
):
|
|
41
56
|
from sklearnex.ensemble import RandomForestClassifier
|
|
42
57
|
|
|
43
58
|
X, y = make_classification(
|
|
@@ -51,12 +66,12 @@ def test_sklearnex_import_rf_classifier(dataframe, queue, block, trees, rows, sc
|
|
|
51
66
|
X = _convert_to_dataframe(X, sycl_queue=queue, target_df=dataframe)
|
|
52
67
|
y = _convert_to_dataframe(y, sycl_queue=queue, target_df=dataframe)
|
|
53
68
|
rf = RandomForestClassifier(max_depth=2, random_state=0).fit(X, y)
|
|
54
|
-
|
|
55
|
-
if
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
69
|
+
|
|
70
|
+
if hyperparameters and block is not None:
|
|
71
|
+
hyperparameters.block_size = block
|
|
72
|
+
hyperparameters.min_trees_for_threading = trees
|
|
73
|
+
hyperparameters.min_number_of_rows_for_vect_seq_compute = rows
|
|
74
|
+
hyperparameters.scale_factor_for_vect_parallel_compute = scale
|
|
60
75
|
assert "sklearnex" in rf.__module__
|
|
61
76
|
assert_allclose([1], _as_numpy(rf.predict([[0, 0, 0, 0]])))
|
|
62
77
|
|
|
@@ -24,6 +24,7 @@ from ..base import oneDALEstimator
|
|
|
24
24
|
# sycl GPU support. No GPU device will be offloaded.
|
|
25
25
|
ElasticNet.fit = support_input_format(ElasticNet.fit)
|
|
26
26
|
ElasticNet.predict = support_input_format(ElasticNet.predict)
|
|
27
|
+
ElasticNet.path = staticmethod(support_input_format(ElasticNet.path))
|
|
27
28
|
ElasticNet.score = support_input_format(ElasticNet.score)
|
|
28
29
|
if sklearn_check_version("1.4"):
|
|
29
30
|
ElasticNet._doc_link_module = "daal4py"
|
|
@@ -36,6 +37,7 @@ if sklearn_check_version("1.4"):
|
|
|
36
37
|
# sycl GPU support. No GPU device will be offloaded.
|
|
37
38
|
Lasso.fit = support_input_format(Lasso.fit)
|
|
38
39
|
Lasso.predict = support_input_format(Lasso.predict)
|
|
40
|
+
Lasso.path = staticmethod(support_input_format(Lasso.path))
|
|
39
41
|
Lasso.score = support_input_format(Lasso.score)
|
|
40
42
|
if sklearn_check_version("1.4"):
|
|
41
43
|
Lasso._doc_link_module = "daal4py"
|