scikit-learn-intelex 2024.1.0__py311-none-win_amd64.whl → 2025.1.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.1.0.data/data/Lib/site-packages/daal4py/__init__.py +73 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/__main__.py +58 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/_daal4py.cp311-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/doc/third-party-programs.txt +424 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/mb/__init__.py +19 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/mb/model_builders.py +377 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/mpi_transceiver.cp311-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/__init__.py +40 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/_n_jobs_support.py +248 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/_utils.py +245 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +20 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +165 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/k_means.py +597 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/tests/test_dbscan.py +109 -0
- {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/cluster → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/decomposition}/__init__.py +3 -3
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +524 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +196 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +337 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +27 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +1397 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/tests/test_decision_forest.py +206 -0
- {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn}/linear_model/__init__.py +29 -29
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/_coordinate_descent.py +848 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/_linear.py +272 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/_ridge.py +325 -0
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/coordinate_descent.py +2 -2
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/linear.py +17 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_loss.py +195 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +1026 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/ridge.py +17 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_linear.py +208 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_ridge.py +69 -0
- {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/manifold}/__init__.py +4 -2
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/manifold/_t_sne.py +405 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +20 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +236 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +210 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/model_selection/__init__.py +19 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/model_selection/_split.py +309 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/model_selection/tests/test_split.py +56 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +232 -0
- {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch}/tests/_models_info.py +13 -22
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_monkeypatch.py +71 -0
- {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch}/tests/test_patching.py +10 -42
- {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch}/tests/utils/_launch_algorithms.py +4 -5
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +21 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +503 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +139 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +74 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +55 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/tests/test_kneighbors.py +113 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +19 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +734 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +21 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/utils/base.py +75 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/utils/tests/test_utils.py +51 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +693 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/__init__.py +83 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/_config.py +54 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/_device_offload.py +222 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp311-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp311-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/basic_statistics/__init__.py +20 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/basic_statistics/basic_statistics.py +107 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/basic_statistics/incremental_basic_statistics.py +160 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/basic_statistics/tests/test_basic_statistics.py +298 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/basic_statistics/tests/test_incremental_basic_statistics.py +196 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/__init__.py +27 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/dbscan.py +110 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/kmeans.py +564 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/kmeans_init.py +115 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/tests/test_dbscan.py +125 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/tests/test_kmeans.py +88 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/tests/test_kmeans_init.py +93 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/_base.py +38 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/_estimator_checks.py +47 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/_mixin.py +62 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/_policy.py +59 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/_spmd_policy.py +30 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/hyperparameters.py +125 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/tests/test_policy.py +76 -0
- {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/linear_model → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/covariance}/__init__.py +3 -2
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/covariance/covariance.py +125 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +146 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/covariance/tests/test_covariance.py +50 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/covariance/tests/test_incremental_covariance.py +122 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/datatypes/__init__.py +19 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +154 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/datatypes/tests/common.py +126 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +414 -0
- {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/decomposition}/__init__.py +3 -2
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +204 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/decomposition/pca.py +186 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/decomposition/tests/test_incremental_pca.py +198 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/ensemble/__init__.py +29 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/ensemble/forest.py +727 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/ensemble/tests/test_random_forest.py +97 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/__init__.py +27 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/incremental_linear_model.py +258 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/linear_model.py +329 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/logistic_regression.py +249 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_linear_regression.py +168 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_ridge_regression.py +107 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_linear_regression.py +250 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_logistic_regression.py +95 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_ridge.py +95 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/neighbors/__init__.py +19 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/neighbors/neighbors.py +767 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/neighbors/tests/test_knn_classification.py +49 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/primitives/__init__.py +27 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/primitives/get_tree.py +25 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/primitives/kernel_functions.py +153 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/primitives/tests/test_kernel_functions.py +159 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/__init__.py +19 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/svm.py +556 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/tests/test_csr_svm.py +351 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/tests/test_nusvc.py +204 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/tests/test_nusvr.py +210 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/tests/test_svc.py +176 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/tests/test_svr.py +243 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/tests/test_common.py +57 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/tests/utils/_dataframes_support.py +162 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +102 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/utils/__init__.py +49 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/utils/_array_api.py +81 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/utils/_dpep_helpers.py +56 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/utils/validation.py +440 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/__init__.py +10 -7
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/_config.py +22 -16
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/_device_offload.py +126 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/_utils.py +27 -4
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +20 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +230 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +345 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_basic_statistics.py +270 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_incremental_basic_statistics.py +404 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/cluster/__init__.py +1 -1
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/cluster/dbscan.py +19 -10
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/cluster/k_means.py +395 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_dbscan.py +8 -6
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +159 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/conftest.py +82 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/covariance/__init__.py +19 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +398 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/covariance/tests/test_incremental_covariance.py +237 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/decomposition/pca.py +425 -0
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_preview_pca.py → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +25 -9
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/dispatcher.py +241 -60
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/ensemble/_forest.py +250 -188
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/ensemble/tests/test_forest.py +39 -21
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/glob/dispatcher.py +16 -2
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/__init__.py +32 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +13 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/incremental_linear.py +482 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +425 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/linear.py +341 -0
- {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex}/linear_model/logistic_regression.py +194 -133
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/linear_model/ridge.py +7 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_linear.py +207 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_ridge.py +153 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +167 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +134 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/manifold/t_sne.py +4 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/metrics/pairwise.py +5 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/metrics/ranking.py +3 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/model_selection/split.py +5 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/neighbors/__init__.py +1 -1
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/neighbors/_lof.py +236 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/neighbors/common.py +53 -6
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_classification.py +51 -155
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_regression.py +46 -149
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_unsupervised.py +55 -100
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/neighbors/tests/test_neighbors.py +16 -18
- {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview}/__init__.py +1 -3
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +138 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +18 -5
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +19 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +233 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_incremental_pca.py +266 -0
- {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/decomposition → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/linear_model}/__init__.py +19 -19
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/linear_model/ridge.py +424 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/linear_model/tests/test_ridge.py +102 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/__init__.py +1 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/__init__.py +20 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/incremental_basic_statistics.py +30 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_basic_statistics_spmd.py +107 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_incremental_basic_statistics_spmd.py +307 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_dbscan_spmd.py +97 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_kmeans_spmd.py +172 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +20 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +21 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/incremental_covariance.py +37 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_covariance_spmd.py +107 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_incremental_covariance_spmd.py +184 -0
- {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition}/__init__.py +3 -2
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/incremental_pca.py +11 -12
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_incremental_pca_spmd.py +269 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_pca_spmd.py +128 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +4 -12
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/ensemble/tests/test_forest_spmd.py +265 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/__init__.py +3 -1
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/tests/test_config.py → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/incremental_linear_model.py +14 -18
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/logistic_regression.py +21 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_incremental_linear_spmd.py +329 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_linear_regression_spmd.py +145 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_logistic_regression_spmd.py +162 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/tests/test_neighbors_spmd.py +288 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/svm/_common.py +339 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/svm/nusvc.py +172 -78
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/svm/nusvr.py +74 -70
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/svm/svc.py +170 -77
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/svm/svr.py +66 -66
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/svm/tests/test_svm.py +12 -20
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_common.py +390 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_config.py +123 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +379 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +276 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +108 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/tests/test_parallel.py +6 -8
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_patching.py +385 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +321 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +44 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/utils/base.py +371 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +198 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/utils/_array_api.py +82 -0
- scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/utils/tests/test_finite.py +89 -0
- {scikit_learn_intelex-2024.1.0.dist-info → scikit_learn_intelex-2025.1.0.dist-info}/METADATA +231 -230
- scikit_learn_intelex-2025.1.0.dist-info/RECORD +257 -0
- {scikit_learn_intelex-2024.1.0.dist-info → scikit_learn_intelex-2025.1.0.dist-info}/WHEEL +1 -1
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/_device_offload.py +0 -223
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/cluster/k_means.py +0 -17
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +0 -30
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/decomposition/pca.py +0 -17
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +0 -27
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/linear_model/linear.py +0 -388
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/linear_model/logistic_path.py +0 -17
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +0 -82
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +0 -28
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/neighbors/lof.py +0 -436
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/cluster/_common.py +0 -84
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/cluster/k_means.py +0 -376
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +0 -98
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/pca.py +0 -376
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/linear_model/tests/test_preview_logistic_regression.py +0 -59
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/svm/_common.py +0 -188
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +0 -225
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +0 -227
- scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability_tests.py +0 -428
- scikit_learn_intelex-2024.1.0.dist-info/RECORD +0 -97
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/__main__.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/doc/third-party-programs.txt +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/glob/__main__.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/manifold/__init__.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/metrics/__init__.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/metrics/tests/test_metrics.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/model_selection/__init__.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/model_selection/tests/test_model_selection.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/basic_statistics.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/linear_model.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/neighbors.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/svm/__init__.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/utils/__init__.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/utils/parallel.py +0 -0
- {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/utils/validation.py +0 -0
- {scikit_learn_intelex-2024.1.0.dist-info → scikit_learn_intelex-2025.1.0.dist-info}/LICENSE.txt +0 -0
- {scikit_learn_intelex-2024.1.0.dist-info → scikit_learn_intelex-2025.1.0.dist-info}/top_level.txt +0 -0
|
@@ -17,13 +17,20 @@
|
|
|
17
17
|
import numpy as np
|
|
18
18
|
from scipy import sparse as sp
|
|
19
19
|
from sklearn.exceptions import NotFittedError
|
|
20
|
-
from sklearn.
|
|
21
|
-
from sklearn.
|
|
20
|
+
from sklearn.metrics import accuracy_score
|
|
21
|
+
from sklearn.svm import SVC as _sklearn_SVC
|
|
22
|
+
from sklearn.utils.validation import (
|
|
23
|
+
_deprecate_positional_args,
|
|
24
|
+
check_array,
|
|
25
|
+
check_is_fitted,
|
|
26
|
+
)
|
|
22
27
|
|
|
23
|
-
from daal4py.sklearn.
|
|
28
|
+
from daal4py.sklearn._n_jobs_support import control_n_jobs
|
|
29
|
+
from daal4py.sklearn._utils import sklearn_check_version
|
|
24
30
|
|
|
25
31
|
from .._device_offload import dispatch, wrap_output_data
|
|
26
32
|
from .._utils import PatchingConditionsChain
|
|
33
|
+
from ..utils._array_api import get_namespace
|
|
27
34
|
from ._common import BaseSVC
|
|
28
35
|
|
|
29
36
|
if sklearn_check_version("1.0"):
|
|
@@ -31,13 +38,20 @@ if sklearn_check_version("1.0"):
|
|
|
31
38
|
|
|
32
39
|
from onedal.svm import SVC as onedal_SVC
|
|
33
40
|
|
|
41
|
+
if sklearn_check_version("1.6"):
|
|
42
|
+
from sklearn.utils.validation import validate_data
|
|
43
|
+
else:
|
|
44
|
+
validate_data = BaseSVC._validate_data
|
|
34
45
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
46
|
+
|
|
47
|
+
@control_n_jobs(
|
|
48
|
+
decorated_methods=["fit", "predict", "_predict_proba", "decision_function", "score"]
|
|
49
|
+
)
|
|
50
|
+
class SVC(_sklearn_SVC, BaseSVC):
|
|
51
|
+
__doc__ = _sklearn_SVC.__doc__
|
|
38
52
|
|
|
39
53
|
if sklearn_check_version("1.2"):
|
|
40
|
-
_parameter_constraints: dict = {**
|
|
54
|
+
_parameter_constraints: dict = {**_sklearn_SVC._parameter_constraints}
|
|
41
55
|
|
|
42
56
|
@_deprecate_positional_args
|
|
43
57
|
def __init__(
|
|
@@ -78,89 +92,64 @@ class SVC(sklearn_SVC, BaseSVC):
|
|
|
78
92
|
)
|
|
79
93
|
|
|
80
94
|
def fit(self, X, y, sample_weight=None):
|
|
81
|
-
"""
|
|
82
|
-
Fit the SVM model according to the given training data.
|
|
83
|
-
|
|
84
|
-
Parameters
|
|
85
|
-
----------
|
|
86
|
-
X : {array-like, sparse matrix} of shape (n_samples, n_features) \
|
|
87
|
-
or (n_samples, n_samples)
|
|
88
|
-
Training vectors, where `n_samples` is the number of samples
|
|
89
|
-
and `n_features` is the number of features.
|
|
90
|
-
For kernel="precomputed", the expected shape of X is
|
|
91
|
-
(n_samples, n_samples).
|
|
92
|
-
|
|
93
|
-
y : array-like of shape (n_samples,)
|
|
94
|
-
Target values (class labels in classification, real numbers in
|
|
95
|
-
regression).
|
|
96
|
-
|
|
97
|
-
sample_weight : array-like of shape (n_samples,), default=None
|
|
98
|
-
Per-sample weights. Rescale C per sample. Higher weights
|
|
99
|
-
force the classifier to put more emphasis on these points.
|
|
100
|
-
|
|
101
|
-
Returns
|
|
102
|
-
-------
|
|
103
|
-
self : object
|
|
104
|
-
Fitted estimator.
|
|
105
|
-
|
|
106
|
-
Notes
|
|
107
|
-
-----
|
|
108
|
-
If X and y are not C-ordered and contiguous arrays of np.float64 and
|
|
109
|
-
X is not a scipy.sparse.csr_matrix, X and/or y may be copied.
|
|
110
|
-
|
|
111
|
-
If X is a dense array, then the other methods will not support sparse
|
|
112
|
-
matrices as input.
|
|
113
|
-
"""
|
|
114
95
|
if sklearn_check_version("1.2"):
|
|
115
96
|
self._validate_params()
|
|
116
|
-
|
|
117
|
-
|
|
97
|
+
elif self.C <= 0:
|
|
98
|
+
# else if added to correct issues with
|
|
99
|
+
# sklearn tests:
|
|
100
|
+
# svm/tests/test_sparse.py::test_error
|
|
101
|
+
# svm/tests/test_svm.py::test_bad_input
|
|
102
|
+
# for sklearn versions < 1.2 (i.e. without
|
|
103
|
+
# validate_params parameter checking)
|
|
104
|
+
# Without this, a segmentation fault with
|
|
105
|
+
# Windows fatal exception: access violation
|
|
106
|
+
# occurs
|
|
107
|
+
raise ValueError("C <= 0")
|
|
118
108
|
dispatch(
|
|
119
109
|
self,
|
|
120
110
|
"fit",
|
|
121
111
|
{
|
|
122
112
|
"onedal": self.__class__._onedal_fit,
|
|
123
|
-
"sklearn":
|
|
113
|
+
"sklearn": _sklearn_SVC.fit,
|
|
124
114
|
},
|
|
125
115
|
X,
|
|
126
116
|
y,
|
|
127
|
-
sample_weight,
|
|
117
|
+
sample_weight=sample_weight,
|
|
128
118
|
)
|
|
119
|
+
|
|
129
120
|
return self
|
|
130
121
|
|
|
131
122
|
@wrap_output_data
|
|
132
123
|
def predict(self, X):
|
|
133
|
-
|
|
134
|
-
Perform regression on samples in X.
|
|
135
|
-
|
|
136
|
-
For an one-class model, +1 (inlier) or -1 (outlier) is returned.
|
|
137
|
-
|
|
138
|
-
Parameters
|
|
139
|
-
----------
|
|
140
|
-
X : {array-like, sparse matrix} of shape (n_samples, n_features)
|
|
141
|
-
For kernel="precomputed", the expected shape of X is
|
|
142
|
-
(n_samples_test, n_samples_train).
|
|
143
|
-
|
|
144
|
-
Returns
|
|
145
|
-
-------
|
|
146
|
-
y_pred : ndarray of shape (n_samples,)
|
|
147
|
-
The predicted values.
|
|
148
|
-
"""
|
|
149
|
-
if sklearn_check_version("1.0"):
|
|
150
|
-
self._check_feature_names(X, reset=False)
|
|
124
|
+
check_is_fitted(self)
|
|
151
125
|
return dispatch(
|
|
152
126
|
self,
|
|
153
127
|
"predict",
|
|
154
128
|
{
|
|
155
129
|
"onedal": self.__class__._onedal_predict,
|
|
156
|
-
"sklearn":
|
|
130
|
+
"sklearn": _sklearn_SVC.predict,
|
|
131
|
+
},
|
|
132
|
+
X,
|
|
133
|
+
)
|
|
134
|
+
|
|
135
|
+
@wrap_output_data
|
|
136
|
+
def score(self, X, y, sample_weight=None):
|
|
137
|
+
check_is_fitted(self)
|
|
138
|
+
return dispatch(
|
|
139
|
+
self,
|
|
140
|
+
"score",
|
|
141
|
+
{
|
|
142
|
+
"onedal": self.__class__._onedal_score,
|
|
143
|
+
"sklearn": _sklearn_SVC.score,
|
|
157
144
|
},
|
|
158
145
|
X,
|
|
146
|
+
y,
|
|
147
|
+
sample_weight=sample_weight,
|
|
159
148
|
)
|
|
160
149
|
|
|
161
150
|
if sklearn_check_version("1.0"):
|
|
162
151
|
|
|
163
|
-
@available_if(
|
|
152
|
+
@available_if(_sklearn_SVC._check_proba)
|
|
164
153
|
def predict_proba(self, X):
|
|
165
154
|
"""
|
|
166
155
|
Compute probabilities of possible outcomes for samples in X.
|
|
@@ -188,21 +177,61 @@ class SVC(sklearn_SVC, BaseSVC):
|
|
|
188
177
|
predict. Also, it will produce meaningless results on very small
|
|
189
178
|
datasets.
|
|
190
179
|
"""
|
|
180
|
+
check_is_fitted(self)
|
|
191
181
|
return self._predict_proba(X)
|
|
192
182
|
|
|
183
|
+
@available_if(_sklearn_SVC._check_proba)
|
|
184
|
+
def predict_log_proba(self, X):
|
|
185
|
+
"""Compute log probabilities of possible outcomes for samples in X.
|
|
186
|
+
|
|
187
|
+
The model need to have probability information computed at training
|
|
188
|
+
time: fit with attribute `probability` set to True.
|
|
189
|
+
|
|
190
|
+
Parameters
|
|
191
|
+
----------
|
|
192
|
+
X : array-like of shape (n_samples, n_features) or \
|
|
193
|
+
(n_samples_test, n_samples_train)
|
|
194
|
+
For kernel="precomputed", the expected shape of X is
|
|
195
|
+
(n_samples_test, n_samples_train).
|
|
196
|
+
|
|
197
|
+
Returns
|
|
198
|
+
-------
|
|
199
|
+
T : ndarray of shape (n_samples, n_classes)
|
|
200
|
+
Returns the log-probabilities of the sample for each class in
|
|
201
|
+
the model. The columns correspond to the classes in sorted
|
|
202
|
+
order, as they appear in the attribute :term:`classes_`.
|
|
203
|
+
|
|
204
|
+
Notes
|
|
205
|
+
-----
|
|
206
|
+
The probability model is created using cross validation, so
|
|
207
|
+
the results can be slightly different than those obtained by
|
|
208
|
+
predict. Also, it will produce meaningless results on very small
|
|
209
|
+
datasets.
|
|
210
|
+
"""
|
|
211
|
+
xp, _ = get_namespace(X)
|
|
212
|
+
|
|
213
|
+
return xp.log(self.predict_proba(X))
|
|
214
|
+
|
|
193
215
|
else:
|
|
194
216
|
|
|
195
217
|
@property
|
|
196
218
|
def predict_proba(self):
|
|
197
219
|
self._check_proba()
|
|
220
|
+
check_is_fitted(self)
|
|
198
221
|
return self._predict_proba
|
|
199
222
|
|
|
223
|
+
def _predict_log_proba(self, X):
|
|
224
|
+
xp, _ = get_namespace(X)
|
|
225
|
+
return xp.log(self.predict_proba(X))
|
|
226
|
+
|
|
227
|
+
predict_proba.__doc__ = _sklearn_SVC.predict_proba.__doc__
|
|
228
|
+
|
|
200
229
|
@wrap_output_data
|
|
201
230
|
def _predict_proba(self, X):
|
|
202
231
|
sklearn_pred_proba = (
|
|
203
|
-
|
|
232
|
+
_sklearn_SVC.predict_proba
|
|
204
233
|
if sklearn_check_version("1.0")
|
|
205
|
-
else
|
|
234
|
+
else _sklearn_SVC._predict_proba
|
|
206
235
|
)
|
|
207
236
|
|
|
208
237
|
return dispatch(
|
|
@@ -217,18 +246,19 @@ class SVC(sklearn_SVC, BaseSVC):
|
|
|
217
246
|
|
|
218
247
|
@wrap_output_data
|
|
219
248
|
def decision_function(self, X):
|
|
220
|
-
|
|
221
|
-
self._check_feature_names(X, reset=False)
|
|
249
|
+
check_is_fitted(self)
|
|
222
250
|
return dispatch(
|
|
223
251
|
self,
|
|
224
252
|
"decision_function",
|
|
225
253
|
{
|
|
226
254
|
"onedal": self.__class__._onedal_decision_function,
|
|
227
|
-
"sklearn":
|
|
255
|
+
"sklearn": _sklearn_SVC.decision_function,
|
|
228
256
|
},
|
|
229
257
|
X,
|
|
230
258
|
)
|
|
231
259
|
|
|
260
|
+
decision_function.__doc__ = _sklearn_SVC.decision_function.__doc__
|
|
261
|
+
|
|
232
262
|
def _onedal_gpu_supported(self, method_name, *data):
|
|
233
263
|
class_name = self.__class__.__name__
|
|
234
264
|
patching_status = PatchingConditionsChain(
|
|
@@ -250,7 +280,7 @@ class SVC(sklearn_SVC, BaseSVC):
|
|
|
250
280
|
if method_name == "fit":
|
|
251
281
|
patching_status.and_conditions(conditions)
|
|
252
282
|
return patching_status
|
|
253
|
-
if method_name in ["predict", "predict_proba", "decision_function"]:
|
|
283
|
+
if method_name in ["predict", "predict_proba", "decision_function", "score"]:
|
|
254
284
|
conditions.append(
|
|
255
285
|
(hasattr(self, "_onedal_estimator"), "oneDAL model was not trained")
|
|
256
286
|
)
|
|
@@ -258,13 +288,30 @@ class SVC(sklearn_SVC, BaseSVC):
|
|
|
258
288
|
return patching_status
|
|
259
289
|
raise RuntimeError(f"Unknown method {method_name} in {class_name}")
|
|
260
290
|
|
|
261
|
-
|
|
291
|
+
def _get_sample_weight(self, X, y, sample_weight=None):
|
|
292
|
+
sample_weight = super()._get_sample_weight(X, y, sample_weight)
|
|
293
|
+
if sample_weight is None:
|
|
294
|
+
return sample_weight
|
|
295
|
+
|
|
296
|
+
if np.any(sample_weight <= 0) and len(np.unique(y[sample_weight > 0])) != len(
|
|
297
|
+
self.classes_
|
|
298
|
+
):
|
|
299
|
+
raise ValueError(
|
|
300
|
+
"Invalid input - all samples with positive weights "
|
|
301
|
+
"belong to the same class"
|
|
302
|
+
if sklearn_check_version("1.2")
|
|
303
|
+
else "Invalid input - all samples with positive weights "
|
|
304
|
+
"have the same label."
|
|
305
|
+
)
|
|
306
|
+
return sample_weight
|
|
307
|
+
|
|
262
308
|
def _onedal_fit(self, X, y, sample_weight=None, queue=None):
|
|
309
|
+
X, _, weights = self._onedal_fit_checks(X, y, sample_weight)
|
|
263
310
|
onedal_params = {
|
|
264
311
|
"C": self.C,
|
|
265
312
|
"kernel": self.kernel,
|
|
266
313
|
"degree": self.degree,
|
|
267
|
-
"gamma": self.
|
|
314
|
+
"gamma": self._compute_gamma_sigma(X),
|
|
268
315
|
"coef0": self.coef0,
|
|
269
316
|
"tol": self.tol,
|
|
270
317
|
"shrinking": self.shrinking,
|
|
@@ -276,17 +323,38 @@ class SVC(sklearn_SVC, BaseSVC):
|
|
|
276
323
|
}
|
|
277
324
|
|
|
278
325
|
self._onedal_estimator = onedal_SVC(**onedal_params)
|
|
279
|
-
self._onedal_estimator.fit(X, y,
|
|
326
|
+
self._onedal_estimator.fit(X, y, weights, queue=queue)
|
|
280
327
|
|
|
281
328
|
if self.probability:
|
|
282
|
-
self._fit_proba(
|
|
329
|
+
self._fit_proba(
|
|
330
|
+
X,
|
|
331
|
+
y,
|
|
332
|
+
sample_weight=sample_weight,
|
|
333
|
+
queue=queue,
|
|
334
|
+
)
|
|
335
|
+
|
|
283
336
|
self._save_attributes()
|
|
284
337
|
|
|
285
|
-
@run_with_n_jobs
|
|
286
338
|
def _onedal_predict(self, X, queue=None):
|
|
339
|
+
if sklearn_check_version("1.0"):
|
|
340
|
+
X = validate_data(
|
|
341
|
+
self,
|
|
342
|
+
X,
|
|
343
|
+
dtype=[np.float64, np.float32],
|
|
344
|
+
force_all_finite=False,
|
|
345
|
+
ensure_2d=False,
|
|
346
|
+
accept_sparse="csr",
|
|
347
|
+
reset=False,
|
|
348
|
+
)
|
|
349
|
+
else:
|
|
350
|
+
X = check_array(
|
|
351
|
+
X,
|
|
352
|
+
dtype=[np.float64, np.float32],
|
|
353
|
+
force_all_finite=False,
|
|
354
|
+
accept_sparse="csr",
|
|
355
|
+
)
|
|
287
356
|
return self._onedal_estimator.predict(X, queue=queue)
|
|
288
357
|
|
|
289
|
-
@run_with_n_jobs
|
|
290
358
|
def _onedal_predict_proba(self, X, queue=None):
|
|
291
359
|
if getattr(self, "clf_prob", None) is None:
|
|
292
360
|
raise NotFittedError(
|
|
@@ -301,6 +369,31 @@ class SVC(sklearn_SVC, BaseSVC):
|
|
|
301
369
|
with config_context(**cfg):
|
|
302
370
|
return self.clf_prob.predict_proba(X)
|
|
303
371
|
|
|
304
|
-
@run_with_n_jobs
|
|
305
372
|
def _onedal_decision_function(self, X, queue=None):
|
|
373
|
+
if sklearn_check_version("1.0"):
|
|
374
|
+
X = validate_data(
|
|
375
|
+
self,
|
|
376
|
+
X,
|
|
377
|
+
dtype=[np.float64, np.float32],
|
|
378
|
+
force_all_finite=False,
|
|
379
|
+
accept_sparse="csr",
|
|
380
|
+
reset=False,
|
|
381
|
+
)
|
|
382
|
+
else:
|
|
383
|
+
X = check_array(
|
|
384
|
+
X,
|
|
385
|
+
dtype=[np.float64, np.float32],
|
|
386
|
+
force_all_finite=False,
|
|
387
|
+
accept_sparse="csr",
|
|
388
|
+
)
|
|
306
389
|
return self._onedal_estimator.decision_function(X, queue=queue)
|
|
390
|
+
|
|
391
|
+
def _onedal_score(self, X, y, sample_weight=None, queue=None):
|
|
392
|
+
return accuracy_score(
|
|
393
|
+
y, self._onedal_predict(X, queue=queue), sample_weight=sample_weight
|
|
394
|
+
)
|
|
395
|
+
|
|
396
|
+
fit.__doc__ = _sklearn_SVC.fit.__doc__
|
|
397
|
+
predict.__doc__ = _sklearn_SVC.predict.__doc__
|
|
398
|
+
decision_function.__doc__ = _sklearn_SVC.decision_function.__doc__
|
|
399
|
+
score.__doc__ = _sklearn_SVC.score.__doc__
|
|
@@ -14,22 +14,29 @@
|
|
|
14
14
|
# limitations under the License.
|
|
15
15
|
# ==============================================================================
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
from sklearn.
|
|
17
|
+
import numpy as np
|
|
18
|
+
from sklearn.svm import SVR as _sklearn_SVR
|
|
19
|
+
from sklearn.utils.validation import _deprecate_positional_args, check_is_fitted
|
|
19
20
|
|
|
20
|
-
from daal4py.sklearn.
|
|
21
|
+
from daal4py.sklearn._n_jobs_support import control_n_jobs
|
|
22
|
+
from daal4py.sklearn._utils import sklearn_check_version
|
|
21
23
|
from onedal.svm import SVR as onedal_SVR
|
|
22
24
|
|
|
23
25
|
from .._device_offload import dispatch, wrap_output_data
|
|
24
26
|
from ._common import BaseSVR
|
|
25
27
|
|
|
28
|
+
if sklearn_check_version("1.6"):
|
|
29
|
+
from sklearn.utils.validation import validate_data
|
|
30
|
+
else:
|
|
31
|
+
validate_data = BaseSVR._validate_data
|
|
26
32
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
33
|
+
|
|
34
|
+
@control_n_jobs(decorated_methods=["fit", "predict", "score"])
|
|
35
|
+
class SVR(_sklearn_SVR, BaseSVR):
|
|
36
|
+
__doc__ = _sklearn_SVR.__doc__
|
|
30
37
|
|
|
31
38
|
if sklearn_check_version("1.2"):
|
|
32
|
-
_parameter_constraints: dict = {**
|
|
39
|
+
_parameter_constraints: dict = {**_sklearn_SVR._parameter_constraints}
|
|
33
40
|
|
|
34
41
|
@_deprecate_positional_args
|
|
35
42
|
def __init__(
|
|
@@ -62,95 +69,69 @@ class SVR(sklearn_SVR, BaseSVR):
|
|
|
62
69
|
)
|
|
63
70
|
|
|
64
71
|
def fit(self, X, y, sample_weight=None):
|
|
65
|
-
"""
|
|
66
|
-
Fit the SVM model according to the given training data.
|
|
67
|
-
|
|
68
|
-
Parameters
|
|
69
|
-
----------
|
|
70
|
-
X : {array-like, sparse matrix} of shape (n_samples, n_features) \
|
|
71
|
-
or (n_samples, n_samples)
|
|
72
|
-
Training vectors, where `n_samples` is the number of samples
|
|
73
|
-
and `n_features` is the number of features.
|
|
74
|
-
For kernel="precomputed", the expected shape of X is
|
|
75
|
-
(n_samples, n_samples).
|
|
76
|
-
|
|
77
|
-
y : array-like of shape (n_samples,)
|
|
78
|
-
Target values (class labels in classification, real numbers in
|
|
79
|
-
regression).
|
|
80
|
-
|
|
81
|
-
sample_weight : array-like of shape (n_samples,), default=None
|
|
82
|
-
Per-sample weights. Rescale C per sample. Higher weights
|
|
83
|
-
force the classifier to put more emphasis on these points.
|
|
84
|
-
|
|
85
|
-
Returns
|
|
86
|
-
-------
|
|
87
|
-
self : object
|
|
88
|
-
Fitted estimator.
|
|
89
|
-
|
|
90
|
-
Notes
|
|
91
|
-
-----
|
|
92
|
-
If X and y are not C-ordered and contiguous arrays of np.float64 and
|
|
93
|
-
X is not a scipy.sparse.csr_matrix, X and/or y may be copied.
|
|
94
|
-
|
|
95
|
-
If X is a dense array, then the other methods will not support sparse
|
|
96
|
-
matrices as input.
|
|
97
|
-
"""
|
|
98
72
|
if sklearn_check_version("1.2"):
|
|
99
73
|
self._validate_params()
|
|
100
|
-
|
|
101
|
-
|
|
74
|
+
elif self.C <= 0:
|
|
75
|
+
# else if added to correct issues with
|
|
76
|
+
# sklearn tests:
|
|
77
|
+
# svm/tests/test_sparse.py::test_error
|
|
78
|
+
# svm/tests/test_svm.py::test_bad_input
|
|
79
|
+
# for sklearn versions < 1.2 (i.e. without
|
|
80
|
+
# validate_params parameter checking)
|
|
81
|
+
# Without this, a segmentation fault with
|
|
82
|
+
# Windows fatal exception: access violation
|
|
83
|
+
# occurs
|
|
84
|
+
raise ValueError("C <= 0")
|
|
102
85
|
dispatch(
|
|
103
86
|
self,
|
|
104
87
|
"fit",
|
|
105
88
|
{
|
|
106
89
|
"onedal": self.__class__._onedal_fit,
|
|
107
|
-
"sklearn":
|
|
90
|
+
"sklearn": _sklearn_SVR.fit,
|
|
108
91
|
},
|
|
109
92
|
X,
|
|
110
93
|
y,
|
|
111
|
-
sample_weight,
|
|
94
|
+
sample_weight=sample_weight,
|
|
112
95
|
)
|
|
113
96
|
|
|
114
97
|
return self
|
|
115
98
|
|
|
116
99
|
@wrap_output_data
|
|
117
100
|
def predict(self, X):
|
|
118
|
-
|
|
119
|
-
Perform regression on samples in X.
|
|
120
|
-
|
|
121
|
-
For an one-class model, +1 (inlier) or -1 (outlier) is returned.
|
|
122
|
-
|
|
123
|
-
Parameters
|
|
124
|
-
----------
|
|
125
|
-
X : {array-like, sparse matrix} of shape (n_samples, n_features)
|
|
126
|
-
For kernel="precomputed", the expected shape of X is
|
|
127
|
-
(n_samples_test, n_samples_train).
|
|
128
|
-
|
|
129
|
-
Returns
|
|
130
|
-
-------
|
|
131
|
-
y_pred : ndarray of shape (n_samples,)
|
|
132
|
-
The predicted values.
|
|
133
|
-
"""
|
|
134
|
-
if sklearn_check_version("1.0"):
|
|
135
|
-
self._check_feature_names(X, reset=False)
|
|
101
|
+
check_is_fitted(self)
|
|
136
102
|
return dispatch(
|
|
137
103
|
self,
|
|
138
104
|
"predict",
|
|
139
105
|
{
|
|
140
106
|
"onedal": self.__class__._onedal_predict,
|
|
141
|
-
"sklearn":
|
|
107
|
+
"sklearn": _sklearn_SVR.predict,
|
|
108
|
+
},
|
|
109
|
+
X,
|
|
110
|
+
)
|
|
111
|
+
|
|
112
|
+
@wrap_output_data
|
|
113
|
+
def score(self, X, y, sample_weight=None):
|
|
114
|
+
check_is_fitted(self)
|
|
115
|
+
return dispatch(
|
|
116
|
+
self,
|
|
117
|
+
"score",
|
|
118
|
+
{
|
|
119
|
+
"onedal": self.__class__._onedal_score,
|
|
120
|
+
"sklearn": _sklearn_SVR.score,
|
|
142
121
|
},
|
|
143
122
|
X,
|
|
123
|
+
y,
|
|
124
|
+
sample_weight=sample_weight,
|
|
144
125
|
)
|
|
145
126
|
|
|
146
|
-
@run_with_n_jobs
|
|
147
127
|
def _onedal_fit(self, X, y, sample_weight=None, queue=None):
|
|
128
|
+
X, _, sample_weight = self._onedal_fit_checks(X, y, sample_weight)
|
|
148
129
|
onedal_params = {
|
|
149
130
|
"C": self.C,
|
|
150
131
|
"epsilon": self.epsilon,
|
|
151
132
|
"kernel": self.kernel,
|
|
152
133
|
"degree": self.degree,
|
|
153
|
-
"gamma": self.
|
|
134
|
+
"gamma": self._compute_gamma_sigma(X),
|
|
154
135
|
"coef0": self.coef0,
|
|
155
136
|
"tol": self.tol,
|
|
156
137
|
"shrinking": self.shrinking,
|
|
@@ -162,6 +143,25 @@ class SVR(sklearn_SVR, BaseSVR):
|
|
|
162
143
|
self._onedal_estimator.fit(X, y, sample_weight, queue=queue)
|
|
163
144
|
self._save_attributes()
|
|
164
145
|
|
|
165
|
-
@run_with_n_jobs
|
|
166
146
|
def _onedal_predict(self, X, queue=None):
|
|
147
|
+
if sklearn_check_version("1.0"):
|
|
148
|
+
X = validate_data(
|
|
149
|
+
self,
|
|
150
|
+
X,
|
|
151
|
+
dtype=[np.float64, np.float32],
|
|
152
|
+
force_all_finite=False,
|
|
153
|
+
accept_sparse="csr",
|
|
154
|
+
reset=False,
|
|
155
|
+
)
|
|
156
|
+
else:
|
|
157
|
+
X = check_array(
|
|
158
|
+
X,
|
|
159
|
+
dtype=[np.float64, np.float32],
|
|
160
|
+
force_all_finite=False,
|
|
161
|
+
accept_sparse="csr",
|
|
162
|
+
)
|
|
167
163
|
return self._onedal_estimator.predict(X, queue=queue)
|
|
164
|
+
|
|
165
|
+
fit.__doc__ = _sklearn_SVR.fit.__doc__
|
|
166
|
+
predict.__doc__ = _sklearn_SVR.predict.__doc__
|
|
167
|
+
score.__doc__ = _sklearn_SVR.score.__doc__
|
|
@@ -25,12 +25,10 @@ from onedal.tests.utils._dataframes_support import (
|
|
|
25
25
|
)
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
|
|
29
|
-
# investigate failure for `dpnp.ndarrays` and `dpctl.tensors` on `GPU`
|
|
30
|
-
@pytest.mark.parametrize(
|
|
31
|
-
"dataframe,queue", get_dataframes_and_queues(device_filter_="cpu")
|
|
32
|
-
)
|
|
28
|
+
@pytest.mark.parametrize("dataframe,queue", get_dataframes_and_queues())
|
|
33
29
|
def test_sklearnex_import_svc(dataframe, queue):
|
|
30
|
+
if queue and queue.sycl_device.is_gpu:
|
|
31
|
+
pytest.skip("SVC fit for the GPU sycl_queue is buggy.")
|
|
34
32
|
from sklearnex.svm import SVC
|
|
35
33
|
|
|
36
34
|
X = np.array([[-2, -1], [-1, -1], [-1, -2], [+1, +1], [+1, +2], [+2, +1]])
|
|
@@ -43,12 +41,10 @@ def test_sklearnex_import_svc(dataframe, queue):
|
|
|
43
41
|
assert_allclose(_as_numpy(svc.support_), [1, 3])
|
|
44
42
|
|
|
45
43
|
|
|
46
|
-
|
|
47
|
-
# investigate failure for `dpnp.ndarrays` and `dpctl.tensors` on `GPU`
|
|
48
|
-
@pytest.mark.parametrize(
|
|
49
|
-
"dataframe,queue", get_dataframes_and_queues(device_filter_="cpu")
|
|
50
|
-
)
|
|
44
|
+
@pytest.mark.parametrize("dataframe,queue", get_dataframes_and_queues())
|
|
51
45
|
def test_sklearnex_import_nusvc(dataframe, queue):
|
|
46
|
+
if queue and queue.sycl_device.is_gpu:
|
|
47
|
+
pytest.skip("NuSVC fit for the GPU sycl_queue is buggy.")
|
|
52
48
|
from sklearnex.svm import NuSVC
|
|
53
49
|
|
|
54
50
|
X = np.array([[-2, -1], [-1, -1], [-1, -2], [+1, +1], [+1, +2], [+2, +1]])
|
|
@@ -63,12 +59,10 @@ def test_sklearnex_import_nusvc(dataframe, queue):
|
|
|
63
59
|
assert_allclose(_as_numpy(svc.support_), [0, 1, 3, 4])
|
|
64
60
|
|
|
65
61
|
|
|
66
|
-
|
|
67
|
-
# investigate failure for `dpnp.ndarrays` and `dpctl.tensors` on `GPU`
|
|
68
|
-
@pytest.mark.parametrize(
|
|
69
|
-
"dataframe,queue", get_dataframes_and_queues(device_filter_="cpu")
|
|
70
|
-
)
|
|
62
|
+
@pytest.mark.parametrize("dataframe,queue", get_dataframes_and_queues())
|
|
71
63
|
def test_sklearnex_import_svr(dataframe, queue):
|
|
64
|
+
if queue and queue.sycl_device.is_gpu:
|
|
65
|
+
pytest.skip("SVR fit for the GPU sycl_queue is buggy.")
|
|
72
66
|
from sklearnex.svm import SVR
|
|
73
67
|
|
|
74
68
|
X = np.array([[-2, -1], [-1, -1], [-1, -2], [+1, +1], [+1, +2], [+2, +1]])
|
|
@@ -81,12 +75,10 @@ def test_sklearnex_import_svr(dataframe, queue):
|
|
|
81
75
|
assert_allclose(_as_numpy(svc.support_), [1, 3])
|
|
82
76
|
|
|
83
77
|
|
|
84
|
-
|
|
85
|
-
# investigate failure for `dpnp.ndarrays` and `dpctl.tensors` on `GPU`
|
|
86
|
-
@pytest.mark.parametrize(
|
|
87
|
-
"dataframe,queue", get_dataframes_and_queues(device_filter_="cpu")
|
|
88
|
-
)
|
|
78
|
+
@pytest.mark.parametrize("dataframe,queue", get_dataframes_and_queues())
|
|
89
79
|
def test_sklearnex_import_nusvr(dataframe, queue):
|
|
80
|
+
if queue and queue.sycl_device.is_gpu:
|
|
81
|
+
pytest.skip("NuSVR fit for the GPU sycl_queue is buggy.")
|
|
90
82
|
from sklearnex.svm import NuSVR
|
|
91
83
|
|
|
92
84
|
X = np.array([[-2, -1], [-1, -1], [-1, -2], [+1, +1], [+1, +2], [+2, +1]])
|