scikit-learn-intelex 2025.6.0__py311-none-win_amd64.whl → 2025.7.0__py311-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/data/Lib/site-packages/daal4py/_daal4py.cp311-win_amd64.pyd +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/mb/__init__.py +2 -2
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/mb/gbt_convertors.py +258 -2
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/mb/tree_based_builders.py +30 -5
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/mpi_transceiver.cp311-win_amd64.pyd +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +2 -2
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +2 -2
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +21 -7
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/_t_sne.py +8 -2
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +1 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +1 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +15 -16
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/__init__.py +26 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/_config.py +5 -4
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/_device_offload.py +72 -83
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp311-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp311-win_amd64.pyd +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/basic_statistics/basic_statistics.py +69 -5
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/basic_statistics/incremental_basic_statistics.py +19 -19
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/kmeans.py +17 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/common/_backend.py +62 -37
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/common/hyperparameters.py +3 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/common/tests/test_sycl.py +1 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/covariance/covariance.py +2 -2
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +8 -16
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/datatypes/__init__.py +8 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +25 -32
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/datatypes/_sycl_usm.py +78 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/datatypes/tests/common.py +8 -3
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +45 -2
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +8 -17
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/decomposition/pca.py +6 -4
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/ensemble/forest.py +13 -5
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/incremental_linear_model.py +34 -32
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/linear_model.py +22 -30
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/logistic_regression.py +9 -5
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/primitives/kernel_functions.py +64 -17
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/svm.py +0 -12
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/tests/test_common.py +1 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/tests/utils/_dataframes_support.py +23 -6
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +1 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/utils/_array_api.py +28 -26
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/utils/_sycl_queue_manager.py +57 -31
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/utils/_third_party.py +170 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/utils/validation.py +11 -3
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/_config.py +17 -8
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/_device_offload.py +33 -23
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/_utils.py +23 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/base.py +1 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +5 -8
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +17 -13
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +12 -5
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/decomposition/pca.py +16 -9
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +115 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/dispatcher.py +12 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/ensemble/_forest.py +9 -3
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_linear.py +14 -5
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +14 -7
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/logistic_regression.py +3 -4
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/ridge.py +9 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +1 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/_lof.py +1 -1
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +119 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/incremental_covariance.py +0 -8
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/incremental_pca.py +0 -7
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/incremental_linear_model.py +0 -7
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/_common.py +1 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_common.py +41 -2
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_config.py +22 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +0 -8
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +1 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/utils/base.py +1 -1
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/utils/validation.py +10 -10
- {scikit_learn_intelex-2025.6.0.dist-info → scikit_learn_intelex-2025.7.0.dist-info}/METADATA +2 -2
- scikit_learn_intelex-2025.7.0.dist-info/RECORD +258 -0
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/daal4py/_daal4py.cp311-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp311-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp311-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/onedal/utils/_dpep_helpers.py +0 -71
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +0 -58
- scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +0 -66
- scikit_learn_intelex-2025.6.0.dist-info/RECORD +0 -257
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/__main__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/mb/logistic_regression_builders.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/_n_jobs_support.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/_utils.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/k_means.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/tests/test_dbscan.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/tests/test_decision_forest.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_coordinate_descent.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_linear.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_ridge.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/coordinate_descent.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/linear.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_loss.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/ridge.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_linear.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_ridge.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/_split.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/tests/test_split.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/_models_info.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_monkeypatch.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_patching.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/utils/_launch_algorithms.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/tests/test_kneighbors.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/base.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/tests/test_utils.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_incremental_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/utils.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/dbscan.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/kmeans_init.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_dbscan.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans_init.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/common/_estimator_checks.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/common/_mixin.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_covariance.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_incremental_covariance.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/decomposition/tests/test_incremental_pca.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/ensemble/tests/test_random_forest.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_linear_regression.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_ridge_regression.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_linear_regression.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_logistic_regression.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_ridge.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/neighbors/neighbors.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/neighbors/tests/test_knn_classification.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/primitives/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/primitives/get_tree.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/primitives/tests/test_kernel_functions.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/tests/test_csr_svm.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvc.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvr.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svc.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svr.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/utils/tests/test_validation.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/__main__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_incremental_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/cluster/dbscan.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/cluster/k_means.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_dbscan.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/conftest.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/covariance/tests/test_incremental_covariance.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/doc/third-party-programs.txt +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/ensemble/tests/test_forest.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/glob/__main__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/glob/dispatcher.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/linear.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_linear.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_ridge.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_ridge.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/manifold/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/manifold/t_sne.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/metrics/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/metrics/pairwise.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/metrics/ranking.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/metrics/tests/test_metrics.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/model_selection/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/model_selection/split.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/model_selection/tests/test_model_selection.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/common.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_classification.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_regression.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_unsupervised.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/tests/test_neighbors.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/preview/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_incremental_pca.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/incremental_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_basic_statistics_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_incremental_basic_statistics_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_dbscan_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_kmeans_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_covariance_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_incremental_covariance_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_incremental_pca_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_pca_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/tests/test_forest_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/linear_model.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/logistic_regression.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_incremental_linear_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_linear_regression_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_logistic_regression_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/tests/test_neighbors_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/nusvc.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/nusvr.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/svc.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/svr.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/tests/test_svm.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_parallel.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_patching.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/utils/_array_api.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/utils/parallel.py +0 -0
- {scikit_learn_intelex-2025.6.0.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/utils/tests/test_validation.py +0 -0
- {scikit_learn_intelex-2025.6.0.dist-info → scikit_learn_intelex-2025.7.0.dist-info}/LICENSE.txt +0 -0
- {scikit_learn_intelex-2025.6.0.dist-info → scikit_learn_intelex-2025.7.0.dist-info}/WHEEL +0 -0
- {scikit_learn_intelex-2025.6.0.dist-info → scikit_learn_intelex-2025.7.0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
# ==============================================================================
|
|
2
|
+
# Copyright 2024 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
|
+
"""Utilities for accessing third party packages such as DPNP, DPCtl.
|
|
18
|
+
|
|
19
|
+
Notes
|
|
20
|
+
-----
|
|
21
|
+
See `Data Parallel Extensions for Python <https://github.com/IntelPython/DPEP>`__
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
import functools
|
|
25
|
+
import importlib
|
|
26
|
+
import sys
|
|
27
|
+
from typing import Callable
|
|
28
|
+
|
|
29
|
+
from daal4py.sklearn._utils import _package_check_version
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
@functools.lru_cache(maxsize=256, typed=False)
|
|
33
|
+
def is_dpctl_available(version=None):
|
|
34
|
+
"""Check availability of DPCtl package.
|
|
35
|
+
|
|
36
|
+
Parameters
|
|
37
|
+
----------
|
|
38
|
+
version : str or None, default=None
|
|
39
|
+
Minimum supported dpctl version if installed.
|
|
40
|
+
Secondary version check skipped if set to None.
|
|
41
|
+
|
|
42
|
+
Returns
|
|
43
|
+
-------
|
|
44
|
+
dpctl_available : bool
|
|
45
|
+
Flag describing import success.
|
|
46
|
+
"""
|
|
47
|
+
try:
|
|
48
|
+
import dpctl
|
|
49
|
+
|
|
50
|
+
dpctl_available = True
|
|
51
|
+
except ImportError:
|
|
52
|
+
dpctl_available = False
|
|
53
|
+
if dpctl_available and version is not None:
|
|
54
|
+
dpctl_available = _package_check_version(version, dpctl.__version__)
|
|
55
|
+
return dpctl_available
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
# Note: The dpctl package contains both SYCL infrastructure as well as a
|
|
59
|
+
# data framework (dpctl.tensor). dpctl.tensor is not imported when dpctl is
|
|
60
|
+
# imported. All data frameworks are to be lazy-loaded, but aspects of dpctl
|
|
61
|
+
# (e.g. SyclQueue) are loaded as normal as it is preferred over included
|
|
62
|
+
# backend replacements in the core onedal python module.
|
|
63
|
+
dpctl_available = is_dpctl_available()
|
|
64
|
+
|
|
65
|
+
if dpctl_available:
|
|
66
|
+
from dpctl import SyclQueue
|
|
67
|
+
else:
|
|
68
|
+
from onedal import _default_backend as backend
|
|
69
|
+
|
|
70
|
+
SyclQueue = backend.SyclQueue
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
def lazy_import(*module_names: str) -> Callable:
|
|
74
|
+
"""Lazy load python modules for use in a function.
|
|
75
|
+
|
|
76
|
+
Decorator which uses dependency injection with monkeypatching to import
|
|
77
|
+
python modules when called. This is done only once on first usage of
|
|
78
|
+
the wrapped function to minimize overhead and reduce branching.
|
|
79
|
+
|
|
80
|
+
Parameters
|
|
81
|
+
----------
|
|
82
|
+
*module_names : strings
|
|
83
|
+
Arguments are names of modules to be imported via importlib.
|
|
84
|
+
|
|
85
|
+
Returns
|
|
86
|
+
-------
|
|
87
|
+
decorator : callable
|
|
88
|
+
Flag describing import success.
|
|
89
|
+
|
|
90
|
+
Notes
|
|
91
|
+
-----
|
|
92
|
+
The wrapped original function should have the modules as the first
|
|
93
|
+
arguments. This will be hidden to the user. Lazy imports cannot be
|
|
94
|
+
stacked, instead pass multiple arguments to the decorator.
|
|
95
|
+
"""
|
|
96
|
+
|
|
97
|
+
# func should have leading arguments which are following a dependency
|
|
98
|
+
# injection paradigm
|
|
99
|
+
def decorator(func: Callable):
|
|
100
|
+
@functools.wraps(func)
|
|
101
|
+
def wrapper(*first_args, **first_kwargs):
|
|
102
|
+
modules = tuple(importlib.import_module(i) for i in module_names)
|
|
103
|
+
|
|
104
|
+
# hide dependency injection of the original function
|
|
105
|
+
# onedal/sklearnex will call the underlying function
|
|
106
|
+
# via ``public_func``
|
|
107
|
+
def public_func(*args, **kwargs):
|
|
108
|
+
return func(*modules, *args, **kwargs)
|
|
109
|
+
|
|
110
|
+
# Monkeypatch the original in a general fashion (cannot use
|
|
111
|
+
# globals())
|
|
112
|
+
modname = func.__module__
|
|
113
|
+
funcname = func.__name__
|
|
114
|
+
setattr(sys.modules[modname], funcname, public_func)
|
|
115
|
+
|
|
116
|
+
return public_func(*first_args, **first_kwargs)
|
|
117
|
+
|
|
118
|
+
return wrapper
|
|
119
|
+
|
|
120
|
+
return decorator
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
@functools.lru_cache(100)
|
|
124
|
+
def _is_subclass_fast(cls: type, modname: str, clsname: str) -> bool:
|
|
125
|
+
# Taken directly from array_api_compat.common._helpers to use for
|
|
126
|
+
# general use (not just array_api)
|
|
127
|
+
try:
|
|
128
|
+
mod = sys.modules[modname]
|
|
129
|
+
except KeyError:
|
|
130
|
+
return False
|
|
131
|
+
parent_cls = getattr(mod, clsname)
|
|
132
|
+
return issubclass(cls, parent_cls)
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
def is_dpnp_ndarray(x: object) -> bool:
|
|
136
|
+
"""Return True if 'x' is a dpnp ndarray.
|
|
137
|
+
|
|
138
|
+
This function does not import dpnp if it has not already been imported
|
|
139
|
+
and is therefore cheap to use.
|
|
140
|
+
|
|
141
|
+
Parameters
|
|
142
|
+
----------
|
|
143
|
+
x : object
|
|
144
|
+
Any python object.
|
|
145
|
+
|
|
146
|
+
Returns
|
|
147
|
+
-------
|
|
148
|
+
is_dpnp : bool
|
|
149
|
+
Flag if subclass of dpnp.ndarray.
|
|
150
|
+
"""
|
|
151
|
+
return _is_subclass_fast(type(x), "dpnp", "ndarray")
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
def is_dpctl_tensor(x: object) -> bool:
|
|
155
|
+
"""Return True if 'x' is a dpctl usm_ndarray.
|
|
156
|
+
|
|
157
|
+
This function does not import dpnp if it has not already been imported
|
|
158
|
+
and is therefore cheap to use.
|
|
159
|
+
|
|
160
|
+
Parameters
|
|
161
|
+
----------
|
|
162
|
+
x : object
|
|
163
|
+
Any python object.
|
|
164
|
+
|
|
165
|
+
Returns
|
|
166
|
+
-------
|
|
167
|
+
is_dpctl : bool
|
|
168
|
+
Flag if subclass of dpctl.tensor.usm_ndarray.
|
|
169
|
+
"""
|
|
170
|
+
return _is_subclass_fast(type(x), "dpctl.tensor", "usm_ndarray")
|
|
@@ -93,7 +93,7 @@ def _compute_class_weight(class_weight, classes, y):
|
|
|
93
93
|
|
|
94
94
|
le = LabelEncoder()
|
|
95
95
|
y_ind = le.fit_transform(y_)
|
|
96
|
-
if not
|
|
96
|
+
if not np.isin(classes, le.classes_).all():
|
|
97
97
|
raise ValueError("classes should have valid labels that are in y")
|
|
98
98
|
|
|
99
99
|
y_bin = np.bincount(y_ind).astype(np.float64)
|
|
@@ -131,10 +131,18 @@ def _validate_targets(y, class_weight, dtype):
|
|
|
131
131
|
|
|
132
132
|
|
|
133
133
|
def get_finite_keyword():
|
|
134
|
-
"""
|
|
134
|
+
"""Return scikit-learn-matching finite check enabling keyword.
|
|
135
|
+
|
|
136
|
+
Gets the argument name for scikit-learn's validation functions compatible with
|
|
135
137
|
the current version of scikit-learn and using function inspection instead of
|
|
136
138
|
version check due to `onedal` design rule: sklearn versioning should occur
|
|
137
|
-
in
|
|
139
|
+
in ``sklearnex`` module.
|
|
140
|
+
|
|
141
|
+
Returns
|
|
142
|
+
-------
|
|
143
|
+
finite_keyword : str
|
|
144
|
+
Keyword string used to enable finiteness checking.
|
|
145
|
+
"""
|
|
138
146
|
if "ensure_all_finite" in inspect.signature(check_array).parameters:
|
|
139
147
|
return "ensure_all_finite"
|
|
140
148
|
return "force_all_finite"
|
|
@@ -25,7 +25,7 @@ from onedal._config import _get_config as onedal_get_config
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
def get_config():
|
|
28
|
-
"""Retrieve current values for configuration set by :func:`set_config
|
|
28
|
+
"""Retrieve current values for configuration set by :func:`set_config`.
|
|
29
29
|
|
|
30
30
|
Returns
|
|
31
31
|
-------
|
|
@@ -49,11 +49,11 @@ def set_config(
|
|
|
49
49
|
use_raw_input=None,
|
|
50
50
|
**sklearn_configs,
|
|
51
51
|
):
|
|
52
|
-
"""Set global configuration
|
|
52
|
+
"""Set global configuration.
|
|
53
53
|
|
|
54
54
|
Parameters
|
|
55
55
|
----------
|
|
56
|
-
target_offload :
|
|
56
|
+
target_offload : str or SyclQueue or None, default=None
|
|
57
57
|
The device primarily used to perform computations.
|
|
58
58
|
If string, expected to be "auto" (the execution context
|
|
59
59
|
is deduced from input data location),
|
|
@@ -70,12 +70,17 @@ def set_config(
|
|
|
70
70
|
Global default: True.
|
|
71
71
|
|
|
72
72
|
use_raw_input : bool or None, default=None
|
|
73
|
-
.. deprecated:: 2026.0
|
|
74
73
|
If True, uses the raw input data in some SPMD onedal backend computations
|
|
75
74
|
without any checks on data consistency or validity.
|
|
76
75
|
Not recommended for general use.
|
|
77
76
|
Global default: False.
|
|
78
77
|
|
|
78
|
+
.. deprecated:: 2026.0
|
|
79
|
+
|
|
80
|
+
**sklearn_configs : kwargs
|
|
81
|
+
Scikit-learn configuration settings dependent on the installed version
|
|
82
|
+
of scikit-learn.
|
|
83
|
+
|
|
79
84
|
See Also
|
|
80
85
|
--------
|
|
81
86
|
config_context : Context manager for global configuration.
|
|
@@ -85,6 +90,10 @@ def set_config(
|
|
|
85
90
|
--------
|
|
86
91
|
Using ``use_raw_input=True`` is not recommended for general use as it
|
|
87
92
|
bypasses data consistency checks, which may lead to unexpected behavior.
|
|
93
|
+
|
|
94
|
+
Use of ``target_offload`` requires the DPC++ backend. Setting a
|
|
95
|
+
non-default value (e.g ``cpu`` or ``gpu``) without this backend active
|
|
96
|
+
will raise an error.
|
|
88
97
|
"""
|
|
89
98
|
|
|
90
99
|
array_api_dispatch = sklearn_configs.get("array_api_dispatch", False)
|
|
@@ -106,12 +115,12 @@ def set_config(
|
|
|
106
115
|
|
|
107
116
|
|
|
108
117
|
@contextmanager
|
|
109
|
-
def config_context(**new_config):
|
|
110
|
-
"""Context manager for global scikit-learn configuration
|
|
118
|
+
def config_context(**new_config): # numpydoc ignore=PR01,PR07
|
|
119
|
+
"""Context manager for global scikit-learn configuration.
|
|
111
120
|
|
|
112
121
|
Parameters
|
|
113
122
|
----------
|
|
114
|
-
target_offload :
|
|
123
|
+
target_offload : str or SyclQueue or None, default=None
|
|
115
124
|
The device primarily used to perform computations.
|
|
116
125
|
If string, expected to be "auto" (the execution context
|
|
117
126
|
is deduced from input data location),
|
|
@@ -134,7 +143,7 @@ def config_context(**new_config):
|
|
|
134
143
|
Not recommended for general use.
|
|
135
144
|
Global default: False.
|
|
136
145
|
|
|
137
|
-
|
|
146
|
+
Notes
|
|
138
147
|
-----
|
|
139
148
|
All settings, not just those presently modified, will be returned to
|
|
140
149
|
their previous values when the context manager is exited.
|
|
@@ -18,14 +18,11 @@ from collections.abc import Callable
|
|
|
18
18
|
from functools import wraps
|
|
19
19
|
from typing import Any, Union
|
|
20
20
|
|
|
21
|
-
from onedal._device_offload import
|
|
21
|
+
from onedal._device_offload import _transfer_to_host
|
|
22
|
+
from onedal.datatypes import copy_to_dpnp, copy_to_usm
|
|
22
23
|
from onedal.utils import _sycl_queue_manager as QM
|
|
23
24
|
from onedal.utils._array_api import _asarray, _is_numpy_namespace
|
|
24
|
-
from onedal.utils.
|
|
25
|
-
|
|
26
|
-
if dpnp_available:
|
|
27
|
-
import dpnp
|
|
28
|
-
from onedal.utils._array_api import _convert_to_dpnp
|
|
25
|
+
from onedal.utils._third_party import is_dpnp_ndarray
|
|
29
26
|
|
|
30
27
|
from ._config import config_context, get_config, set_config
|
|
31
28
|
from ._utils import PatchingConditionsChain, get_tags
|
|
@@ -77,6 +74,7 @@ def dispatch(
|
|
|
77
74
|
**kwargs,
|
|
78
75
|
) -> Any:
|
|
79
76
|
"""Dispatch object method call to oneDAL if conditionally possible.
|
|
77
|
+
|
|
80
78
|
Depending on support conditions, oneDAL will be called, otherwise it will
|
|
81
79
|
fall back to calling scikit-learn. Dispatching to oneDAL can be influenced
|
|
82
80
|
by the 'use_raw_input' or 'allow_fallback_to_host' config parameters.
|
|
@@ -84,25 +82,25 @@ def dispatch(
|
|
|
84
82
|
Parameters
|
|
85
83
|
----------
|
|
86
84
|
obj : object
|
|
87
|
-
|
|
85
|
+
Sklearnex object which inherits from oneDALEstimator and contains
|
|
88
86
|
``onedal_cpu_supported`` and ``onedal_gpu_supported`` methods which
|
|
89
87
|
evaluate oneDAL support.
|
|
90
88
|
|
|
91
|
-
method_name :
|
|
92
|
-
|
|
89
|
+
method_name : str
|
|
90
|
+
Name of method to be evaluated for oneDAL support.
|
|
93
91
|
|
|
94
92
|
branches : dict
|
|
95
|
-
|
|
93
|
+
Dictionary containing functions to be called. Only keys 'sklearn' and
|
|
96
94
|
'onedal' are used which should contain the relevant scikit-learn and
|
|
97
95
|
onedal object methods respectively. All functions should accept the
|
|
98
96
|
inputs from *args and **kwargs. Additionally, the onedal object method
|
|
99
97
|
must accept a 'queue' keyword.
|
|
100
98
|
|
|
101
99
|
*args : tuple
|
|
102
|
-
|
|
100
|
+
Arguments to be supplied to the dispatched method.
|
|
103
101
|
|
|
104
102
|
**kwargs : dict
|
|
105
|
-
|
|
103
|
+
Keyword arguments to be supplied to the dispatched method.
|
|
106
104
|
|
|
107
105
|
Returns
|
|
108
106
|
-------
|
|
@@ -139,7 +137,7 @@ def dispatch(
|
|
|
139
137
|
return branches["sklearn"](obj, *args, **kwargs)
|
|
140
138
|
|
|
141
139
|
# move data to host because of multiple reasons: array_api fallback to host,
|
|
142
|
-
# non array_api
|
|
140
|
+
# non array_api supporting oneDAL code, issues with usm support in sklearn.
|
|
143
141
|
has_usm_data_for_args, hostargs = _transfer_to_host(*args)
|
|
144
142
|
has_usm_data_for_kwargs, hostvalues = _transfer_to_host(*kwargs.values())
|
|
145
143
|
|
|
@@ -164,28 +162,40 @@ def dispatch(
|
|
|
164
162
|
|
|
165
163
|
|
|
166
164
|
def wrap_output_data(func: Callable) -> Callable:
|
|
167
|
-
"""
|
|
165
|
+
"""Transform function output to match input format.
|
|
166
|
+
|
|
168
167
|
Converts and moves the output arrays of the decorated function
|
|
169
168
|
to match the input array type and device.
|
|
169
|
+
|
|
170
|
+
Parameters
|
|
171
|
+
----------
|
|
172
|
+
func : callable
|
|
173
|
+
Function or method which has array data as input.
|
|
174
|
+
|
|
175
|
+
Returns
|
|
176
|
+
-------
|
|
177
|
+
wrapper : callable
|
|
178
|
+
Wrapped function or method which will return matching format.
|
|
170
179
|
"""
|
|
171
180
|
|
|
172
181
|
@wraps(func)
|
|
173
182
|
def wrapper(self, *args, **kwargs) -> Any:
|
|
174
183
|
result = func(self, *args, **kwargs)
|
|
175
184
|
if not (len(args) == 0 and len(kwargs) == 0):
|
|
176
|
-
data = (*args, *kwargs.values())
|
|
185
|
+
data = (*args, *kwargs.values())[0]
|
|
177
186
|
|
|
178
|
-
usm_iface
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
187
|
+
if usm_iface := getattr(data, "__sycl_usm_array_interface__", None):
|
|
188
|
+
queue = usm_iface["syclobj"]
|
|
189
|
+
return (
|
|
190
|
+
copy_to_dpnp(queue, result)
|
|
191
|
+
if is_dpnp_ndarray(data)
|
|
192
|
+
else copy_to_usm(queue, result)
|
|
193
|
+
)
|
|
184
194
|
|
|
185
195
|
if get_config().get("transform_output") in ("default", None):
|
|
186
|
-
input_array_api = getattr(data
|
|
196
|
+
input_array_api = getattr(data, "__array_namespace__", lambda: None)()
|
|
187
197
|
if input_array_api and not _is_numpy_namespace(input_array_api):
|
|
188
|
-
input_array_api_device = data
|
|
198
|
+
input_array_api_device = data.device
|
|
189
199
|
result = _asarray(
|
|
190
200
|
result, input_array_api, device=input_array_api_device
|
|
191
201
|
)
|
|
@@ -120,11 +120,33 @@ def get_sklearnex_version(rule):
|
|
|
120
120
|
|
|
121
121
|
def register_hyperparameters(hyperparameters_map):
|
|
122
122
|
"""Decorator for hyperparameters support in estimator class.
|
|
123
|
+
|
|
123
124
|
Adds `get_hyperparameters` method to class.
|
|
125
|
+
|
|
126
|
+
Parameters
|
|
127
|
+
----------
|
|
128
|
+
hyperparameters_map : dict
|
|
129
|
+
Dictionary containing the operator-hyperparameter mapping.
|
|
130
|
+
|
|
131
|
+
Returns
|
|
132
|
+
-------
|
|
133
|
+
decorator : function
|
|
134
|
+
Function which adds `get_hyperparameters` method to classes.
|
|
124
135
|
"""
|
|
125
136
|
|
|
126
137
|
def decorator(cls):
|
|
127
|
-
"""Add
|
|
138
|
+
"""Add ``get_hyperparameters()` static method to a class.
|
|
139
|
+
|
|
140
|
+
Parameters
|
|
141
|
+
----------
|
|
142
|
+
cls : class
|
|
143
|
+
Class to be modified.
|
|
144
|
+
|
|
145
|
+
Returns
|
|
146
|
+
-------
|
|
147
|
+
cls : class
|
|
148
|
+
Class with added `get_hyperparameters` method.
|
|
149
|
+
"""
|
|
128
150
|
|
|
129
151
|
class StaticHyperparametersAccessor:
|
|
130
152
|
"""Like a @staticmethod, but additionally raises a Warning when called on an instance."""
|
|
@@ -88,7 +88,7 @@ class oneDALEstimator:
|
|
|
88
88
|
}
|
|
89
89
|
|
|
90
90
|
def _get_doc_link(self) -> str:
|
|
91
|
-
# This method is meant to generate a clickable doc link for
|
|
91
|
+
# This method is meant to generate a clickable doc link for classes
|
|
92
92
|
# in sklearnex including those that are not part of base scikit-learn.
|
|
93
93
|
# It should be inherited before inheriting from a scikit-learn estimator.
|
|
94
94
|
|
|
@@ -40,11 +40,12 @@ if sklearn_check_version("1.2"):
|
|
|
40
40
|
class BasicStatistics(oneDALEstimator, BaseEstimator):
|
|
41
41
|
"""
|
|
42
42
|
Estimator for basic statistics.
|
|
43
|
-
|
|
43
|
+
|
|
44
|
+
Compute low order moments and related statistics for given data.
|
|
44
45
|
|
|
45
46
|
Parameters
|
|
46
47
|
----------
|
|
47
|
-
result_options:
|
|
48
|
+
result_options : str or list, default=str('all')
|
|
48
49
|
Used to set statistics to calculate. Possible values are ``'min'``, ``'max'``, ``'sum'``, ``'mean'``, ``'variance'``,
|
|
49
50
|
``'variation'``, ``sum_squares'``, ``sum_squares_centered'``, ``'standard_deviation'``, ``'second_order_raw_moment'``
|
|
50
51
|
or a list containing any of these values. If set to ``'all'`` then all possible statistics will be
|
|
@@ -73,17 +74,13 @@ class BasicStatistics(oneDALEstimator, BaseEstimator):
|
|
|
73
74
|
second_order_raw_moment_ : ndarray of shape (n_features,)
|
|
74
75
|
Second order moment of each feature over all samples.
|
|
75
76
|
|
|
76
|
-
|
|
77
|
-
|
|
77
|
+
Notes
|
|
78
|
+
-----
|
|
78
79
|
Attribute exists only if corresponding result option has been provided.
|
|
79
80
|
|
|
80
|
-
Note
|
|
81
|
-
----
|
|
82
81
|
Names of attributes without the trailing underscore are
|
|
83
82
|
supported currently but deprecated in 2025.1 and will be removed in 2026.0
|
|
84
83
|
|
|
85
|
-
Note
|
|
86
|
-
----
|
|
87
84
|
Some results can exhibit small variations due to
|
|
88
85
|
floating point error accumulation and multithreading.
|
|
89
86
|
|
|
@@ -41,14 +41,17 @@ import warnings
|
|
|
41
41
|
@control_n_jobs(decorated_methods=["partial_fit", "_onedal_finalize_fit"])
|
|
42
42
|
class IncrementalBasicStatistics(oneDALEstimator, BaseEstimator):
|
|
43
43
|
"""
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
the
|
|
44
|
+
Incremental estimator for basic statistics.
|
|
45
|
+
|
|
46
|
+
Calculates basic statistics on the given data, allows for computation
|
|
47
|
+
when the data are split into batches. The user can use ``partial_fit``
|
|
48
|
+
method to provide a single batch of data or use the ``fit`` method to
|
|
49
|
+
provide the entire dataset.
|
|
47
50
|
|
|
48
51
|
Parameters
|
|
49
52
|
----------
|
|
50
|
-
result_options:
|
|
51
|
-
List of statistics to compute
|
|
53
|
+
result_options : str or list, default=str('all')
|
|
54
|
+
List of statistics to compute.
|
|
52
55
|
|
|
53
56
|
batch_size : int, default=None
|
|
54
57
|
The number of samples to use for each batch. Only used when calling
|
|
@@ -88,8 +91,9 @@ class IncrementalBasicStatistics(oneDALEstimator, BaseEstimator):
|
|
|
88
91
|
Second order moment of each feature over all samples.
|
|
89
92
|
|
|
90
93
|
n_samples_seen_ : int
|
|
91
|
-
The number of samples processed by the estimator. Will be reset
|
|
92
|
-
new calls to ``fit``, but increments across ``partial_fit``
|
|
94
|
+
The number of samples processed by the estimator. Will be reset
|
|
95
|
+
on new calls to ``fit``, but increments across ``partial_fit``
|
|
96
|
+
calls.
|
|
93
97
|
|
|
94
98
|
batch_size_ : int
|
|
95
99
|
Inferred batch size from ``batch_size``.
|
|
@@ -97,14 +101,14 @@ class IncrementalBasicStatistics(oneDALEstimator, BaseEstimator):
|
|
|
97
101
|
n_features_in_ : int
|
|
98
102
|
Number of features seen during ``fit`` or ``partial_fit``.
|
|
99
103
|
|
|
100
|
-
|
|
101
|
-
|
|
104
|
+
Notes
|
|
105
|
+
-----
|
|
102
106
|
Attribute exists only if corresponding result option has been provided.
|
|
103
107
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
+
Names of attributes without the trailing underscore are supported
|
|
109
|
+
currently but deprecated in 2025.1 and will be removed in 2026.0.
|
|
110
|
+
|
|
111
|
+
Sparse data formats are not supported. Input dtype must be ``float32`` or ``float64``.
|
|
108
112
|
|
|
109
113
|
%incremental_serialization_note%
|
|
110
114
|
|
|
@@ -52,9 +52,12 @@ if sklearn_check_version("1.2"):
|
|
|
52
52
|
@control_n_jobs(decorated_methods=["partial_fit", "fit", "_onedal_finalize_fit"])
|
|
53
53
|
class IncrementalEmpiricalCovariance(oneDALEstimator, BaseEstimator):
|
|
54
54
|
"""
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
the
|
|
55
|
+
Incremental maximum likelihood covariance estimator.
|
|
56
|
+
|
|
57
|
+
Estimator that allows for the estimation when the data are split into
|
|
58
|
+
batches. The user can use the ``partial_fit`` method to provide a
|
|
59
|
+
single batch of data or use the ``fit`` method to provide the entire
|
|
60
|
+
dataset.
|
|
58
61
|
|
|
59
62
|
Parameters
|
|
60
63
|
----------
|
|
@@ -70,8 +73,8 @@ class IncrementalEmpiricalCovariance(oneDALEstimator, BaseEstimator):
|
|
|
70
73
|
batch_size : int, default=None
|
|
71
74
|
The number of samples to use for each batch. Only used when calling
|
|
72
75
|
``fit``. If ``batch_size`` is ``None``, then ``batch_size``
|
|
73
|
-
is inferred from the data and set to ``5 * n_features``, to provide
|
|
74
|
-
balance between approximation accuracy and memory consumption.
|
|
76
|
+
is inferred from the data and set to ``5 * n_features``, to provide
|
|
77
|
+
a balance between approximation accuracy and memory consumption.
|
|
75
78
|
|
|
76
79
|
copy : bool, default=True
|
|
77
80
|
If False, X will be overwritten. ``copy=False`` can be used to
|
|
@@ -95,6 +98,10 @@ class IncrementalEmpiricalCovariance(oneDALEstimator, BaseEstimator):
|
|
|
95
98
|
n_features_in_ : int
|
|
96
99
|
Number of features seen during ``fit`` or ``partial_fit``.
|
|
97
100
|
|
|
101
|
+
Notes
|
|
102
|
+
-----
|
|
103
|
+
Sparse data formats are not supported. Input dtype must be ``float32`` or ``float64``.
|
|
104
|
+
|
|
98
105
|
%incremental_serialization_note%
|
|
99
106
|
|
|
100
107
|
Examples
|
|
@@ -31,7 +31,7 @@ if daal_check_version((2024, "P", 100)):
|
|
|
31
31
|
from daal4py.sklearn._utils import sklearn_check_version
|
|
32
32
|
|
|
33
33
|
from .._device_offload import dispatch, wrap_output_data
|
|
34
|
-
from .._utils import PatchingConditionsChain
|
|
34
|
+
from .._utils import PatchingConditionsChain, register_hyperparameters
|
|
35
35
|
from ..base import oneDALEstimator
|
|
36
36
|
from ..utils._array_api import get_namespace
|
|
37
37
|
from ..utils.validation import validate_data
|
|
@@ -44,8 +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.common.hyperparameters import get_hyperparameters
|
|
47
48
|
from onedal.decomposition import PCA as onedal_PCA
|
|
49
|
+
from onedal.utils._array_api import _is_numpy_namespace
|
|
48
50
|
|
|
51
|
+
@register_hyperparameters({"fit": get_hyperparameters("pca", "train")})
|
|
49
52
|
@control_n_jobs(decorated_methods=["fit", "transform", "fit_transform"])
|
|
50
53
|
class PCA(oneDALEstimator, _sklearn_PCA):
|
|
51
54
|
__doc__ = _sklearn_PCA.__doc__
|
|
@@ -212,9 +215,17 @@ if daal_check_version((2024, "P", 100)):
|
|
|
212
215
|
# Scikit-learn PCA["covariance_eigh"] was fit
|
|
213
216
|
return self._transform(X_fit, xp, x_is_centered=x_is_centered)
|
|
214
217
|
|
|
215
|
-
@wrap_output_data
|
|
216
218
|
def inverse_transform(self, X):
|
|
217
|
-
|
|
219
|
+
# sklearn does not properly input check inverse_transform using
|
|
220
|
+
# ``validate_data`` (as of sklearn 1.7). Yielding the namespace
|
|
221
|
+
# in this way will conform to sklearn and various inputs without
|
|
222
|
+
# causing issues with dimensionality checks, array api support,
|
|
223
|
+
# etc. evaluated in ``validate_data``. This is a special solution.
|
|
224
|
+
xp = (
|
|
225
|
+
func()
|
|
226
|
+
if (func := getattr(X, "__array_namespace__", None))
|
|
227
|
+
else get_namespace(X)[0]
|
|
228
|
+
)
|
|
218
229
|
|
|
219
230
|
mean = self.mean_
|
|
220
231
|
if self.whiten:
|
|
@@ -224,12 +235,8 @@ if daal_check_version((2024, "P", 100)):
|
|
|
224
235
|
else:
|
|
225
236
|
components = self.components_
|
|
226
237
|
|
|
227
|
-
if
|
|
228
|
-
#
|
|
229
|
-
# matrix multiplication and division. The type and location
|
|
230
|
-
# of the components and mean are dependent on the sklearn
|
|
231
|
-
# version, this makes sure it is of the same type and on the
|
|
232
|
-
# same device as the data (compute follows data).
|
|
238
|
+
if not _is_numpy_namespace(xp):
|
|
239
|
+
# Force matching type to input data if possible
|
|
233
240
|
components = xp.asarray(components, device=X.device)
|
|
234
241
|
mean = xp.asarray(mean, device=X.device)
|
|
235
242
|
|