scikit-learn-intelex 2025.4.0__py39-none-win_amd64.whl → 2025.5.0__py39-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.

Files changed (269) hide show
  1. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/__main__.py +1 -1
  2. scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/daal4py/_daal4py.cp39-win_amd64.pyd +0 -0
  3. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/doc/third-party-programs.txt +1 -1
  4. scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/daal4py/mb/__init__.py +83 -0
  5. scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/daal4py/mb/gbt_convertors.py +855 -0
  6. scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/daal4py/mb/logistic_regression_builders.py +217 -0
  7. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/mb/model_builders.py → scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/daal4py/mb/tree_based_builders.py +99 -91
  8. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/mpi_transceiver.cp39-win_amd64.pyd +0 -0
  9. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/_n_jobs_support.py +6 -2
  10. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/_utils.py +1 -1
  11. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +2 -2
  12. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/k_means.py +6 -38
  13. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +12 -8
  14. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +2 -6
  15. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +3 -7
  16. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +41 -153
  17. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_coordinate_descent.py +13 -15
  18. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_linear.py +7 -10
  19. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_ridge.py +22 -57
  20. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +3 -4
  21. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/_t_sne.py +8 -3
  22. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +30 -7
  23. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +2 -2
  24. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +6 -16
  25. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +4 -7
  26. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +3 -5
  27. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +4 -2
  28. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/base.py +8 -3
  29. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +82 -5
  30. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/__init__.py +125 -83
  31. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/_config.py +27 -2
  32. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/_device_offload.py +79 -83
  33. scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp39-win_amd64.pyd +0 -0
  34. scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp39-win_amd64.pyd +0 -0
  35. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/basic_statistics/basic_statistics.py +21 -17
  36. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/basic_statistics/incremental_basic_statistics.py +44 -39
  37. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/dbscan.py +35 -42
  38. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/kmeans.py +83 -74
  39. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/kmeans_init.py +57 -24
  40. scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/onedal/common/_backend.py +233 -0
  41. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/common/hyperparameters.py +4 -4
  42. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/common/tests/test_sycl.py +27 -12
  43. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/covariance/covariance.py +27 -19
  44. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +35 -32
  45. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +6 -10
  46. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +179 -78
  47. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +39 -25
  48. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/decomposition/pca.py +28 -16
  49. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/decomposition/tests/test_incremental_pca.py +2 -2
  50. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/ensemble/forest.py +130 -93
  51. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/incremental_linear_model.py +76 -57
  52. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/linear_model.py +63 -37
  53. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/logistic_regression.py +96 -68
  54. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/neighbors/neighbors.py +156 -119
  55. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/primitives/get_tree.py +5 -3
  56. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/primitives/kernel_functions.py +21 -18
  57. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/primitives/tests/test_kernel_functions.py +4 -4
  58. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/svm.py +80 -32
  59. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/tests/test_csr_svm.py +10 -9
  60. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvc.py +10 -10
  61. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvr.py +8 -8
  62. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svc.py +5 -5
  63. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svr.py +10 -10
  64. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +1 -13
  65. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/utils/_array_api.py +3 -1
  66. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/utils/_dpep_helpers.py +16 -1
  67. scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/onedal/utils/_sycl_queue_manager.py +147 -0
  68. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/utils/tests/test_validation.py +3 -3
  69. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/utils/validation.py +47 -16
  70. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/__init__.py +3 -2
  71. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/__main__.py +2 -2
  72. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/_config.py +48 -6
  73. scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/sklearnex/_device_offload.py +143 -0
  74. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/_utils.py +28 -2
  75. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +13 -20
  76. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +34 -40
  77. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/cluster/dbscan.py +6 -8
  78. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/cluster/k_means.py +2 -6
  79. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +42 -60
  80. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/decomposition/pca.py +7 -17
  81. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/dispatcher.py +4 -4
  82. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/doc/third-party-programs.txt +207 -2
  83. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/ensemble/_forest.py +106 -362
  84. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/glob/__main__.py +1 -1
  85. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/glob/dispatcher.py +1 -1
  86. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +6 -6
  87. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_linear.py +41 -126
  88. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +42 -85
  89. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/linear.py +48 -39
  90. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/logistic_regression.py +34 -71
  91. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/ridge.py +14 -18
  92. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +60 -1
  93. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +2 -2
  94. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/manifold/t_sne.py +2 -3
  95. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/metrics/pairwise.py +1 -3
  96. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/metrics/ranking.py +1 -1
  97. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/model_selection/split.py +1 -3
  98. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/_lof.py +7 -54
  99. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/common.py +3 -3
  100. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_classification.py +31 -73
  101. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_regression.py +30 -70
  102. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_unsupervised.py +5 -13
  103. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +3 -13
  104. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +48 -62
  105. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_basic_statistics_spmd.py +10 -3
  106. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_incremental_basic_statistics_spmd.py +8 -4
  107. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_dbscan_spmd.py +13 -2
  108. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_kmeans_spmd.py +10 -3
  109. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_covariance_spmd.py +7 -4
  110. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_incremental_covariance_spmd.py +13 -2
  111. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_incremental_pca_spmd.py +9 -2
  112. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_pca_spmd.py +7 -2
  113. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/tests/test_forest_spmd.py +25 -8
  114. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_incremental_linear_spmd.py +6 -2
  115. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_linear_regression_spmd.py +12 -3
  116. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_logistic_regression_spmd.py +12 -5
  117. {scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/mb → scikit_learn_intelex-2025.5.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors}/__init__.py +2 -2
  118. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/tests/test_neighbors_spmd.py +27 -5
  119. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/_common.py +12 -25
  120. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/nusvc.py +35 -128
  121. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/nusvr.py +9 -21
  122. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/svc.py +33 -126
  123. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/svr.py +9 -21
  124. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_common.py +26 -11
  125. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +16 -23
  126. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +4 -4
  127. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/utils/base.py +2 -2
  128. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/utils/validation.py +8 -22
  129. {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.5.0.dist-info}/METADATA +2 -2
  130. scikit_learn_intelex-2025.5.0.dist-info/RECORD +257 -0
  131. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/_daal4py.cp39-win_amd64.pyd +0 -0
  132. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp39-win_amd64.pyd +0 -0
  133. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp39-win_amd64.pyd +0 -0
  134. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_base.py +0 -38
  135. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_policy.py +0 -55
  136. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_spmd_policy.py +0 -30
  137. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/tests/test_policy.py +0 -76
  138. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/utils/__init__.py +0 -49
  139. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/_device_offload.py +0 -126
  140. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +0 -19
  141. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/neighbors.py +0 -25
  142. scikit_learn_intelex-2025.4.0.dist-info/RECORD +0 -259
  143. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/__init__.py +0 -0
  144. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/__init__.py +0 -0
  145. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +0 -0
  146. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/tests/test_dbscan.py +0 -0
  147. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/__init__.py +0 -0
  148. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +0 -0
  149. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/tests/test_decision_forest.py +0 -0
  150. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/__init__.py +0 -0
  151. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/coordinate_descent.py +0 -0
  152. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/linear.py +0 -0
  153. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_loss.py +0 -0
  154. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/ridge.py +0 -0
  155. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_linear.py +0 -0
  156. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_ridge.py +0 -0
  157. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/__init__.py +0 -0
  158. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +0 -0
  159. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +0 -0
  160. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/__init__.py +0 -0
  161. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/_split.py +0 -0
  162. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/tests/test_split.py +0 -0
  163. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
  164. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/_models_info.py +0 -0
  165. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_monkeypatch.py +0 -0
  166. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_patching.py +0 -0
  167. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/utils/_launch_algorithms.py +0 -0
  168. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +0 -0
  169. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +0 -0
  170. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/tests/test_kneighbors.py +0 -0
  171. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +0 -0
  172. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +0 -0
  173. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/tests/test_utils.py +0 -0
  174. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/basic_statistics/__init__.py +0 -0
  175. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_basic_statistics.py +0 -0
  176. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_incremental_basic_statistics.py +0 -0
  177. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/utils.py +0 -0
  178. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/__init__.py +0 -0
  179. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_dbscan.py +0 -0
  180. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans.py +0 -0
  181. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans_init.py +0 -0
  182. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/common/_estimator_checks.py +0 -0
  183. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/common/_mixin.py +0 -0
  184. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/covariance/__init__.py +0 -0
  185. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_covariance.py +0 -0
  186. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_incremental_covariance.py +0 -0
  187. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/datatypes/__init__.py +0 -0
  188. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/datatypes/tests/common.py +0 -0
  189. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/decomposition/__init__.py +0 -0
  190. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/ensemble/__init__.py +0 -0
  191. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/ensemble/tests/test_random_forest.py +0 -0
  192. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/__init__.py +0 -0
  193. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_linear_regression.py +0 -0
  194. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_ridge_regression.py +0 -0
  195. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_linear_regression.py +0 -0
  196. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_logistic_regression.py +0 -0
  197. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_ridge.py +0 -0
  198. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/neighbors/__init__.py +0 -0
  199. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/neighbors/tests/test_knn_classification.py +0 -0
  200. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/primitives/__init__.py +0 -0
  201. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/svm/__init__.py +0 -0
  202. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/tests/test_common.py +0 -0
  203. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/onedal/tests/utils/_dataframes_support.py +0 -0
  204. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +0 -0
  205. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_basic_statistics.py +0 -0
  206. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_incremental_basic_statistics.py +0 -0
  207. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/cluster/__init__.py +0 -0
  208. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_dbscan.py +0 -0
  209. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +0 -0
  210. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/conftest.py +0 -0
  211. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/covariance/__init__.py +0 -0
  212. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/covariance/tests/test_incremental_covariance.py +0 -0
  213. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/decomposition/__init__.py +0 -0
  214. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +0 -0
  215. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/ensemble/__init__.py +0 -0
  216. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/ensemble/tests/test_forest.py +0 -0
  217. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/__init__.py +0 -0
  218. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_linear.py +0 -0
  219. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_ridge.py +0 -0
  220. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_ridge.py +0 -0
  221. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/manifold/__init__.py +0 -0
  222. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +0 -0
  223. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/metrics/__init__.py +0 -0
  224. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/metrics/tests/test_metrics.py +0 -0
  225. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/model_selection/__init__.py +0 -0
  226. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/model_selection/tests/test_model_selection.py +0 -0
  227. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/__init__.py +0 -0
  228. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/neighbors/tests/test_neighbors.py +0 -0
  229. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/__init__.py +0 -0
  230. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +0 -0
  231. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +0 -0
  232. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +0 -0
  233. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_incremental_pca.py +0 -0
  234. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/__init__.py +0 -0
  235. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/__init__.py +0 -0
  236. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/basic_statistics.py +0 -0
  237. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/incremental_basic_statistics.py +0 -0
  238. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +0 -0
  239. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +0 -0
  240. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +0 -0
  241. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +0 -0
  242. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +0 -0
  243. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/incremental_covariance.py +0 -0
  244. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/__init__.py +0 -0
  245. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/incremental_pca.py +0 -0
  246. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +0 -0
  247. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +0 -0
  248. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +0 -0
  249. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/__init__.py +0 -0
  250. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/incremental_linear_model.py +0 -0
  251. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/linear_model.py +0 -0
  252. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/logistic_regression.py +0 -0
  253. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/__init__.py +0 -0
  254. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/svm/tests/test_svm.py +0 -0
  255. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_config.py +0 -0
  256. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +0 -0
  257. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +0 -0
  258. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_parallel.py +0 -0
  259. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_patching.py +0 -0
  260. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +0 -0
  261. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +0 -0
  262. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +0 -0
  263. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/utils/__init__.py +0 -0
  264. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/utils/_array_api.py +0 -0
  265. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/utils/parallel.py +0 -0
  266. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.5.0.data}/data/Lib/site-packages/sklearnex/utils/tests/test_validation.py +0 -0
  267. {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.5.0.dist-info}/LICENSE.txt +0 -0
  268. {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.5.0.dist-info}/WHEEL +0 -0
  269. {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.5.0.dist-info}/top_level.txt +0 -0
@@ -20,13 +20,14 @@ from enum import Enum
20
20
  import numpy as np
21
21
  from scipy import sparse as sp
22
22
 
23
- from onedal import _backend
23
+ from onedal._device_offload import supports_queue
24
+ from onedal.common._backend import bind_default_backend
25
+ from onedal.utils import _sycl_queue_manager as QM
24
26
 
25
27
  from ..common._estimator_checks import _check_is_fitted
26
28
  from ..common._mixin import ClassifierMixin, RegressorMixin
27
- from ..common._policy import _get_policy
28
29
  from ..datatypes import from_table, to_table
29
- from ..utils import (
30
+ from ..utils.validation import (
30
31
  _check_array,
31
32
  _check_n_features,
32
33
  _check_X_y,
@@ -84,6 +85,12 @@ class BaseSVM(metaclass=ABCMeta):
84
85
  self.algorithm = algorithm
85
86
  self.svm_type = svm_type
86
87
 
88
+ @abstractmethod
89
+ def train(self, *args, **kwargs): ...
90
+
91
+ @abstractmethod
92
+ def infer(self, *args, **kwargs): ...
93
+
87
94
  def _validate_targets(self, y, dtype):
88
95
  self.class_weight_ = None
89
96
  self.classes_ = None
@@ -114,7 +121,7 @@ class BaseSVM(metaclass=ABCMeta):
114
121
  "cache_size": self.cache_size,
115
122
  }
116
123
 
117
- def _fit(self, X, y, sample_weight, module, queue):
124
+ def _fit(self, X, y, sample_weight):
118
125
  if hasattr(self, "decision_function_shape"):
119
126
  if self.decision_function_shape not in ("ovr", "ovo", None):
120
127
  raise ValueError(
@@ -166,17 +173,15 @@ class BaseSVM(metaclass=ABCMeta):
166
173
  _gamma = 1.0 / X.shape[1]
167
174
  else:
168
175
  raise ValueError(
169
- "When 'gamma' is a string, it should be either 'scale' or "
170
- "'auto'. Got '{}' instead.".format(self.gamma)
176
+ f"When 'gamma' is a string, it should be either 'scale' or 'auto'. Got '{self.gamma}' instead."
171
177
  )
172
178
  else:
173
179
  _gamma = self.gamma
174
180
  self._scale_, self._sigma_ = _gamma, np.sqrt(0.5 / _gamma)
175
181
 
176
- policy = _get_policy(queue, *data)
177
- data = to_table(*data, queue=queue)
182
+ data = to_table(*data, queue=QM.get_global_queue())
178
183
  params = self._get_onedal_params(data[0])
179
- result = module.train(policy, params, *data)
184
+ result = self.train(params, *data)
180
185
 
181
186
  if self._sparse:
182
187
  self.dual_coef_ = sp.csr_matrix(from_table(result.coeffs).T)
@@ -200,8 +205,8 @@ class BaseSVM(metaclass=ABCMeta):
200
205
  self._onedal_model = result.model
201
206
  return self
202
207
 
203
- def _create_model(self, module):
204
- m = module.model()
208
+ def _create_model(self):
209
+ m = self.model()
205
210
 
206
211
  m.support_vectors = to_table(self.support_vectors_)
207
212
  m.coeffs = to_table(self.dual_coef_.T)
@@ -211,14 +216,14 @@ class BaseSVM(metaclass=ABCMeta):
211
216
  m.first_class_response, m.second_class_response = 0, 1
212
217
  return m
213
218
 
214
- def _predict(self, X, module, queue):
219
+ def _predict(self, X):
215
220
  _check_is_fitted(self)
216
221
  if self.break_ties and self.decision_function_shape == "ovo":
217
222
  raise ValueError(
218
223
  "break_ties must be False when " "decision_function_shape is 'ovo'"
219
224
  )
220
225
 
221
- if module in [_backend.svm.classification, _backend.svm.nu_classification]:
226
+ if isinstance(self, ClassifierMixin):
222
227
  sv = self.support_vectors_
223
228
  if not self._sparse and sv.size > 0 and self._n_support.sum() != sv.shape[0]:
224
229
  raise ValueError(
@@ -252,15 +257,14 @@ class BaseSVM(metaclass=ABCMeta):
252
257
  % type(self).__name__
253
258
  )
254
259
 
255
- policy = _get_policy(queue, X)
256
- X = to_table(X, queue=queue)
260
+ X = to_table(X, queue=QM.get_global_queue())
257
261
  params = self._get_onedal_params(X)
258
262
 
259
263
  if hasattr(self, "_onedal_model"):
260
264
  model = self._onedal_model
261
265
  else:
262
266
  model = self._create_model(module)
263
- result = module.infer(policy, params, model, X)
267
+ result = self.infer(params, model, X)
264
268
  y = from_table(result.responses)
265
269
  return y
266
270
 
@@ -283,7 +287,7 @@ class BaseSVM(metaclass=ABCMeta):
283
287
  )
284
288
  return votes + transformed_confidences
285
289
 
286
- def _decision_function(self, X, module, queue):
290
+ def _decision_function(self, X):
287
291
  _check_is_fitted(self)
288
292
  X = _check_array(
289
293
  X, dtype=[np.float64, np.float32], force_all_finite=True, accept_sparse="csr"
@@ -301,7 +305,7 @@ class BaseSVM(metaclass=ABCMeta):
301
305
  % type(self).__name__
302
306
  )
303
307
 
304
- if module in [_backend.svm.classification, _backend.svm.nu_classification]:
308
+ if isinstance(self, ClassifierMixin):
305
309
  sv = self.support_vectors_
306
310
  if not self._sparse and sv.size > 0 and self._n_support.sum() != sv.shape[0]:
307
311
  raise ValueError(
@@ -309,15 +313,14 @@ class BaseSVM(metaclass=ABCMeta):
309
313
  f"of {self.__class__.__name__} was altered"
310
314
  )
311
315
 
312
- policy = _get_policy(queue, X)
313
- X = to_table(X, queue=queue)
316
+ X = to_table(X, queue=QM.get_global_queue())
314
317
  params = self._get_onedal_params(X)
315
318
 
316
319
  if hasattr(self, "_onedal_model"):
317
320
  model = self._onedal_model
318
321
  else:
319
322
  model = self._create_model(module)
320
- result = module.infer(policy, params, model, X)
323
+ result = self.infer(params, model, X)
321
324
  decision_function = from_table(result.decision_function)
322
325
 
323
326
  if len(self.classes_) == 2:
@@ -372,11 +375,22 @@ class SVR(RegressorMixin, BaseSVM):
372
375
  )
373
376
  self.svm_type = SVMtype.epsilon_svr
374
377
 
378
+ @bind_default_backend("svm.regression")
379
+ def train(self, *args, **kwargs): ...
380
+
381
+ @bind_default_backend("svm.regression")
382
+ def infer(self, *args, **kwargs): ...
383
+
384
+ @bind_default_backend("svm.regression")
385
+ def model(self): ...
386
+
387
+ @supports_queue
375
388
  def fit(self, X, y, sample_weight=None, queue=None):
376
- return super()._fit(X, y, sample_weight, _backend.svm.regression, queue)
389
+ return self._fit(X, y, sample_weight)
377
390
 
391
+ @supports_queue
378
392
  def predict(self, X, queue=None):
379
- y = super()._predict(X, _backend.svm.regression, queue)
393
+ y = self._predict(X)
380
394
  return y.ravel()
381
395
 
382
396
 
@@ -424,23 +438,35 @@ class SVC(ClassifierMixin, BaseSVM):
424
438
  )
425
439
  self.svm_type = SVMtype.c_svc
426
440
 
441
+ @bind_default_backend("svm.classification")
442
+ def train(self, *args, **kwargs): ...
443
+
444
+ @bind_default_backend("svm.classification")
445
+ def infer(self, *args, **kwargs): ...
446
+
447
+ @bind_default_backend("svm.classification")
448
+ def model(self): ...
449
+
427
450
  def _validate_targets(self, y, dtype):
428
451
  y, self.class_weight_, self.classes_ = _validate_targets(
429
452
  y, self.class_weight, dtype
430
453
  )
431
454
  return y
432
455
 
456
+ @supports_queue
433
457
  def fit(self, X, y, sample_weight=None, queue=None):
434
- return super()._fit(X, y, sample_weight, _backend.svm.classification, queue)
458
+ return self._fit(X, y, sample_weight)
435
459
 
460
+ @supports_queue
436
461
  def predict(self, X, queue=None):
437
- y = super()._predict(X, _backend.svm.classification, queue)
462
+ y = self._predict(X)
438
463
  if len(self.classes_) == 2:
439
464
  y = y.ravel()
440
465
  return self.classes_.take(np.asarray(y, dtype=np.intp)).ravel()
441
466
 
467
+ @supports_queue
442
468
  def decision_function(self, X, queue=None):
443
- return super()._decision_function(X, _backend.svm.classification, queue)
469
+ return self._decision_function(X)
444
470
 
445
471
 
446
472
  class NuSVR(RegressorMixin, BaseSVM):
@@ -485,12 +511,22 @@ class NuSVR(RegressorMixin, BaseSVM):
485
511
  )
486
512
  self.svm_type = SVMtype.nu_svr
487
513
 
514
+ @bind_default_backend("svm.nu_regression")
515
+ def train(self, *args, **kwargs): ...
516
+
517
+ @bind_default_backend("svm.nu_regression")
518
+ def infer(self, *args, **kwargs): ...
519
+
520
+ @bind_default_backend("svm.nu_regression")
521
+ def model(self): ...
522
+
523
+ @supports_queue
488
524
  def fit(self, X, y, sample_weight=None, queue=None):
489
- return super()._fit(X, y, sample_weight, _backend.svm.nu_regression, queue)
525
+ return self._fit(X, y, sample_weight)
490
526
 
527
+ @supports_queue
491
528
  def predict(self, X, queue=None):
492
- y = super()._predict(X, _backend.svm.nu_regression, queue)
493
- return y.ravel()
529
+ return self._predict(X).ravel()
494
530
 
495
531
 
496
532
  class NuSVC(ClassifierMixin, BaseSVM):
@@ -537,20 +573,32 @@ class NuSVC(ClassifierMixin, BaseSVM):
537
573
  )
538
574
  self.svm_type = SVMtype.nu_svc
539
575
 
576
+ @bind_default_backend("svm.nu_classification")
577
+ def train(self, *args, **kwargs): ...
578
+
579
+ @bind_default_backend("svm.nu_classification")
580
+ def infer(self, *args, **kwargs): ...
581
+
582
+ @bind_default_backend("svm.nu_classification")
583
+ def model(self): ...
584
+
540
585
  def _validate_targets(self, y, dtype):
541
586
  y, self.class_weight_, self.classes_ = _validate_targets(
542
587
  y, self.class_weight, dtype
543
588
  )
544
589
  return y
545
590
 
591
+ @supports_queue
546
592
  def fit(self, X, y, sample_weight=None, queue=None):
547
- return super()._fit(X, y, sample_weight, _backend.svm.nu_classification, queue)
593
+ return self._fit(X, y, sample_weight)
548
594
 
595
+ @supports_queue
549
596
  def predict(self, X, queue=None):
550
- y = super()._predict(X, _backend.svm.nu_classification, queue)
597
+ y = self._predict(X)
551
598
  if len(self.classes_) == 2:
552
599
  y = y.ravel()
553
600
  return self.classes_.take(np.asarray(y, dtype=np.intp)).ravel()
554
601
 
602
+ @supports_queue
555
603
  def decision_function(self, X, queue=None):
556
- return super()._decision_function(X, _backend.svm.nu_classification, queue)
604
+ return self._decision_function(X)
@@ -74,7 +74,7 @@ def _test_simple_dataset(queue, kernel):
74
74
  check_svm_model_equal(queue, clf0, clf1, *dataset)
75
75
 
76
76
 
77
- @pass_if_not_implemented_for_gpu(reason="csr svm is not implemented")
77
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
78
78
  @pytest.mark.parametrize(
79
79
  "queue",
80
80
  get_queues("cpu")
@@ -82,8 +82,7 @@ def _test_simple_dataset(queue, kernel):
82
82
  pytest.param(
83
83
  get_queues("gpu"),
84
84
  marks=pytest.mark.xfail(
85
- reason="raises UnknownError instead of RuntimeError "
86
- "with unimplemented message"
85
+ reason="raises UnknownError instead of RuntimeError with unimplemented message"
87
86
  ),
88
87
  )
89
88
  ],
@@ -103,7 +102,7 @@ def _test_binary_dataset(queue, kernel):
103
102
  check_svm_model_equal(queue, clf0, clf1, *dataset)
104
103
 
105
104
 
106
- @pass_if_not_implemented_for_gpu(reason="csr svm is not implemented")
105
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
107
106
  @pytest.mark.parametrize(
108
107
  "queue",
109
108
  get_queues("cpu")
@@ -111,9 +110,11 @@ def _test_binary_dataset(queue, kernel):
111
110
  pytest.param(
112
111
  get_queues("gpu"),
113
112
  marks=pytest.mark.xfail(
114
- reason="raises UnknownError for linear and rbf, "
115
- "Unimplemented error with inconsistent error message "
116
- "for poly and sigmoid"
113
+ reason=(
114
+ "raises UnknownError for linear and rbf, "
115
+ "Unimplemented error with inconsistent error message "
116
+ "for poly and sigmoid"
117
+ )
117
118
  ),
118
119
  )
119
120
  ],
@@ -138,7 +139,7 @@ def _test_iris(queue, kernel):
138
139
  check_svm_model_equal(queue, clf0, clf1, *dataset, decimal=2)
139
140
 
140
141
 
141
- @pass_if_not_implemented_for_gpu(reason="csr svm is not implemented")
142
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
142
143
  @pytest.mark.parametrize("queue", get_queues())
143
144
  @pytest.mark.parametrize("kernel", ["linear", "rbf", "poly", "sigmoid"])
144
145
  def test_iris(queue, kernel):
@@ -158,7 +159,7 @@ def _test_diabetes(queue, kernel):
158
159
  check_svm_model_equal(queue, clf0, clf1, *dataset)
159
160
 
160
161
 
161
- @pass_if_not_implemented_for_gpu(reason="csr svm is not implemented")
162
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
162
163
  @pytest.mark.parametrize("queue", get_queues())
163
164
  @pytest.mark.parametrize("kernel", ["linear", "rbf", "poly", "sigmoid"])
164
165
  def test_diabetes(queue, kernel):
@@ -44,7 +44,7 @@ def _test_libsvm_parameters(queue, array_constr, dtype):
44
44
  assert_array_equal(clf.predict(X, queue=queue), y)
45
45
 
46
46
 
47
- @pass_if_not_implemented_for_gpu(reason="nusvc is not implemented")
47
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
48
48
  @pytest.mark.parametrize("queue", get_queues())
49
49
  @pytest.mark.parametrize("array_constr", [np.array])
50
50
  @pytest.mark.parametrize("dtype", [np.float32, np.float64])
@@ -52,7 +52,7 @@ def test_libsvm_parameters(queue, array_constr, dtype):
52
52
  _test_libsvm_parameters(queue, array_constr, dtype)
53
53
 
54
54
 
55
- @pass_if_not_implemented_for_gpu(reason="nusvc is not implemented")
55
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
56
56
  @pytest.mark.parametrize("queue", get_queues())
57
57
  def test_class_weight(queue):
58
58
  X = np.array([[-2, -1], [-1, -1], [-1, -2], [1, 1], [1, 2], [2, 1]])
@@ -63,7 +63,7 @@ def test_class_weight(queue):
63
63
  assert_array_almost_equal(clf.predict(X, queue=queue), [2] * 6)
64
64
 
65
65
 
66
- @pass_if_not_implemented_for_gpu(reason="nusvc is not implemented")
66
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
67
67
  @pytest.mark.parametrize("queue", get_queues())
68
68
  def test_sample_weight(queue):
69
69
  X = np.array([[-2, 0], [-1, -1], [0, -2], [0, 2], [1, 1], [2, 2]])
@@ -74,7 +74,7 @@ def test_sample_weight(queue):
74
74
  assert_array_almost_equal(clf.intercept_, [0.0])
75
75
 
76
76
 
77
- @pass_if_not_implemented_for_gpu(reason="nusvc is not implemented")
77
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
78
78
  @pytest.mark.parametrize("queue", get_queues())
79
79
  def test_decision_function(queue):
80
80
  X = [[-2, -1], [-1, -1], [-1, -2], [1, 1], [1, 2], [2, 1]]
@@ -88,7 +88,7 @@ def test_decision_function(queue):
88
88
  assert_array_almost_equal(dec.ravel(), clf.decision_function(X, queue=queue))
89
89
 
90
90
 
91
- @pass_if_not_implemented_for_gpu(reason="nusvc is not implemented")
91
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
92
92
  @pytest.mark.parametrize("queue", get_queues())
93
93
  def test_iris(queue):
94
94
  iris = datasets.load_iris()
@@ -97,7 +97,7 @@ def test_iris(queue):
97
97
  assert_array_equal(clf.classes_, np.sort(clf.classes_))
98
98
 
99
99
 
100
- @pass_if_not_implemented_for_gpu(reason="nusvc is not implemented")
100
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
101
101
  @pytest.mark.parametrize("queue", get_queues())
102
102
  def test_decision_function_shape(queue):
103
103
  X, y = make_blobs(n_samples=80, centers=5, random_state=0)
@@ -114,7 +114,7 @@ def test_decision_function_shape(queue):
114
114
  # SVC(decision_function_shape='bad').fit(X_train, y_train)
115
115
 
116
116
 
117
- @pass_if_not_implemented_for_gpu(reason="nusvc is not implemented")
117
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
118
118
  @pytest.mark.parametrize("queue", get_queues())
119
119
  def test_pickle(queue):
120
120
  iris = datasets.load_iris()
@@ -146,7 +146,7 @@ def _test_cancer_rbf_compare_with_sklearn(queue, nu, gamma):
146
146
  assert abs(result - expected) < 1e-4
147
147
 
148
148
 
149
- @pass_if_not_implemented_for_gpu(reason="nusvc is not implemented")
149
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
150
150
  @pytest.mark.parametrize("queue", get_queues())
151
151
  @pytest.mark.parametrize("gamma", ["scale", "auto"])
152
152
  @pytest.mark.parametrize("nu", [0.25, 0.5])
@@ -169,7 +169,7 @@ def _test_cancer_linear_compare_with_sklearn(queue, nu):
169
169
  assert abs(result - expected) < 1e-3
170
170
 
171
171
 
172
- @pass_if_not_implemented_for_gpu(reason="nusvc is not implemented")
172
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
173
173
  @pytest.mark.parametrize("queue", get_queues())
174
174
  @pytest.mark.parametrize("nu", [0.25, 0.5])
175
175
  def test_cancer_linear_compare_with_sklearn(queue, nu):
@@ -191,7 +191,7 @@ def _test_cancer_poly_compare_with_sklearn(queue, params):
191
191
  assert abs(result - expected) < 1e-4
192
192
 
193
193
 
194
- @pass_if_not_implemented_for_gpu(reason="nusvc is not implemented")
194
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
195
195
  @pytest.mark.parametrize("queue", get_queues())
196
196
  @pytest.mark.parametrize(
197
197
  "params",
@@ -30,7 +30,7 @@ from onedal.tests.utils._device_selection import (
30
30
  synth_params = {"n_samples": 500, "n_features": 100, "random_state": 42}
31
31
 
32
32
 
33
- @pass_if_not_implemented_for_gpu(reason="nusvr is not implemented")
33
+ @pass_if_not_implemented_for_gpu(reason="not implemented for GPU")
34
34
  @pytest.mark.parametrize("queue", get_queues())
35
35
  def test_diabetes_simple(queue):
36
36
  diabetes = datasets.load_diabetes()
@@ -39,7 +39,7 @@ def test_diabetes_simple(queue):
39
39
  assert clf.score(diabetes.data, diabetes.target, queue=queue) > 0.02
40
40
 
41
41
 
42
- @pass_if_not_implemented_for_gpu(reason="nusvr is not implemented")
42
+ @pass_if_not_implemented_for_gpu(reason="not implemented for GPU")
43
43
  @pytest.mark.parametrize("queue", get_queues())
44
44
  def test_input_format_for_diabetes(queue):
45
45
  diabetes = datasets.load_diabetes()
@@ -67,7 +67,7 @@ def test_input_format_for_diabetes(queue):
67
67
  assert_allclose(res_c_contiguous_numpy, res_f_contiguous_numpy)
68
68
 
69
69
 
70
- @pass_if_not_implemented_for_gpu(reason="nusvr is not implemented")
70
+ @pass_if_not_implemented_for_gpu(reason="not implemented for GPU")
71
71
  @pytest.mark.parametrize("queue", get_queues())
72
72
  def test_predict(queue):
73
73
  iris = datasets.load_iris()
@@ -105,7 +105,7 @@ def _test_diabetes_compare_with_sklearn(queue, kernel):
105
105
  assert_allclose(clf_sklearn.dual_coef_, clf_onedal.dual_coef_, atol=1e-2)
106
106
 
107
107
 
108
- @pass_if_not_implemented_for_gpu(reason="nusvr is not implemented")
108
+ @pass_if_not_implemented_for_gpu(reason="not implemented for GPU")
109
109
  @pytest.mark.parametrize("queue", get_queues())
110
110
  @pytest.mark.parametrize("kernel", ["linear", "rbf", "poly", "sigmoid"])
111
111
  def test_diabetes_compare_with_sklearn(queue, kernel):
@@ -129,7 +129,7 @@ def _test_synth_rbf_compare_with_sklearn(queue, C, nu, gamma):
129
129
  assert abs(result - expected) < 1e-3
130
130
 
131
131
 
132
- @pass_if_not_implemented_for_gpu(reason="nusvr is not implemented")
132
+ @pass_if_not_implemented_for_gpu(reason="not implemented for GPU")
133
133
  @pytest.mark.parametrize("queue", get_queues())
134
134
  @pytest.mark.parametrize("gamma", ["scale", "auto"])
135
135
  @pytest.mark.parametrize("C", [100.0, 1000.0])
@@ -155,7 +155,7 @@ def _test_synth_linear_compare_with_sklearn(queue, C, nu):
155
155
  assert abs(result - expected) < 1e-3
156
156
 
157
157
 
158
- @pass_if_not_implemented_for_gpu(reason="nusvr is not implemented")
158
+ @pass_if_not_implemented_for_gpu(reason="not implemented for GPU")
159
159
  @pytest.mark.parametrize("queue", get_queues())
160
160
  @pytest.mark.parametrize("C", [0.001, 0.1])
161
161
  @pytest.mark.parametrize("nu", [0.25, 0.75])
@@ -178,7 +178,7 @@ def _test_synth_poly_compare_with_sklearn(queue, params):
178
178
  assert abs(result - expected) < 1e-3
179
179
 
180
180
 
181
- @pass_if_not_implemented_for_gpu(reason="nusvr is not implemented")
181
+ @pass_if_not_implemented_for_gpu(reason="not implemented for GPU")
182
182
  @pytest.mark.parametrize("queue", get_queues())
183
183
  @pytest.mark.parametrize(
184
184
  "params",
@@ -191,7 +191,7 @@ def test_synth_poly_compare_with_sklearn(queue, params):
191
191
  _test_synth_poly_compare_with_sklearn(queue, params)
192
192
 
193
193
 
194
- @pass_if_not_implemented_for_gpu(reason="nusvr is not implemented")
194
+ @pass_if_not_implemented_for_gpu(reason="not implemented for GPU")
195
195
  @pytest.mark.parametrize("queue", get_queues())
196
196
  def test_pickle(queue):
197
197
  diabetes = datasets.load_diabetes()
@@ -67,7 +67,7 @@ def test_libsvm_parameters(queue, array_constr, dtype):
67
67
  pytest.param(
68
68
  get_queues("gpu"),
69
69
  marks=pytest.mark.xfail(
70
- reason="class weights are not implemented " "but the error is not raised"
70
+ reason="class weights are not implemented but the error is not raised"
71
71
  ),
72
72
  )
73
73
  ],
@@ -106,7 +106,7 @@ def test_decision_function(queue):
106
106
  assert_array_almost_equal(dec.ravel(), clf.decision_function(X, queue=queue))
107
107
 
108
108
 
109
- @pass_if_not_implemented_for_gpu(reason="multiclass svm is not implemented")
109
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
110
110
  @pytest.mark.parametrize("queue", get_queues())
111
111
  def test_iris(queue):
112
112
  iris = datasets.load_iris()
@@ -115,7 +115,7 @@ def test_iris(queue):
115
115
  assert_array_equal(clf.classes_, np.sort(clf.classes_))
116
116
 
117
117
 
118
- @pass_if_not_implemented_for_gpu(reason="multiclass svm is not implemented")
118
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
119
119
  @pytest.mark.parametrize("queue", get_queues())
120
120
  def test_decision_function_shape(queue):
121
121
  X, y = make_blobs(n_samples=80, centers=5, random_state=0)
@@ -132,7 +132,7 @@ def test_decision_function_shape(queue):
132
132
  SVC(decision_function_shape="bad").fit(X_train, y_train, queue=queue)
133
133
 
134
134
 
135
- @pass_if_not_implemented_for_gpu(reason="multiclass svm is not implemented")
135
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
136
136
  @pytest.mark.parametrize("queue", get_queues())
137
137
  def test_pickle(queue):
138
138
  iris = datasets.load_iris()
@@ -149,7 +149,7 @@ def test_pickle(queue):
149
149
  assert_array_equal(expected, result)
150
150
 
151
151
 
152
- @pass_if_not_implemented_for_gpu(reason="sigmoid kernel is not implemented")
152
+ @pass_if_not_implemented_for_gpu(reason="not implemented")
153
153
  @pytest.mark.parametrize(
154
154
  "queue",
155
155
  get_queues("cpu")
@@ -30,7 +30,7 @@ from onedal.tests.utils._device_selection import (
30
30
  synth_params = {"n_samples": 500, "n_features": 100, "random_state": 42}
31
31
 
32
32
 
33
- @pass_if_not_implemented_for_gpu(reason="svr is not implemented")
33
+ @pass_if_not_implemented_for_gpu(reason="Regression SVM is not implemented for GPU")
34
34
  @pytest.mark.parametrize("queue", get_queues())
35
35
  def test_run_to_run_fit(queue):
36
36
  diabetes = datasets.load_diabetes()
@@ -45,7 +45,7 @@ def test_run_to_run_fit(queue):
45
45
  assert_allclose(clf_first.dual_coef_, clf.dual_coef_)
46
46
 
47
47
 
48
- @pass_if_not_implemented_for_gpu(reason="svr is not implemented")
48
+ @pass_if_not_implemented_for_gpu(reason="Regression SVM is not implemented for GPU")
49
49
  @pytest.mark.parametrize("queue", get_queues())
50
50
  def test_diabetes_simple(queue):
51
51
  diabetes = datasets.load_diabetes()
@@ -54,7 +54,7 @@ def test_diabetes_simple(queue):
54
54
  assert clf.score(diabetes.data, diabetes.target, queue=queue) > 0.02
55
55
 
56
56
 
57
- @pass_if_not_implemented_for_gpu(reason="svr is not implemented")
57
+ @pass_if_not_implemented_for_gpu(reason="Regression SVM is not implemented for GPU")
58
58
  @pytest.mark.parametrize("queue", get_queues())
59
59
  def test_input_format_for_diabetes(queue):
60
60
  diabetes = datasets.load_diabetes()
@@ -82,7 +82,7 @@ def test_input_format_for_diabetes(queue):
82
82
  assert_allclose(res_c_contiguous_numpy, res_f_contiguous_numpy)
83
83
 
84
84
 
85
- @pass_if_not_implemented_for_gpu(reason="svr is not implemented")
85
+ @pass_if_not_implemented_for_gpu(reason="Regression SVM is not implemented for GPU")
86
86
  @pytest.mark.parametrize("queue", get_queues())
87
87
  def test_predict(queue):
88
88
  iris = datasets.load_iris()
@@ -120,7 +120,7 @@ def _test_diabetes_compare_with_sklearn(queue, kernel):
120
120
  assert_allclose(clf_sklearn.dual_coef_, clf_onedal.dual_coef_, atol=1e-1)
121
121
 
122
122
 
123
- @pass_if_not_implemented_for_gpu(reason="svr is not implemented")
123
+ @pass_if_not_implemented_for_gpu(reason="Regression SVM is not implemented for GPU")
124
124
  @pytest.mark.parametrize("queue", get_queues())
125
125
  @pytest.mark.parametrize("kernel", ["linear", "rbf", "poly", "sigmoid"])
126
126
  def test_diabetes_compare_with_sklearn(queue, kernel):
@@ -143,7 +143,7 @@ def _test_synth_rbf_compare_with_sklearn(queue, C, gamma):
143
143
  assert result > expected - 1e-5
144
144
 
145
145
 
146
- @pass_if_not_implemented_for_gpu(reason="svr is not implemented")
146
+ @pass_if_not_implemented_for_gpu(reason="Regression SVM is not implemented for GPU")
147
147
  @pytest.mark.parametrize("queue", get_queues())
148
148
  @pytest.mark.parametrize("gamma", ["scale", "auto"])
149
149
  @pytest.mark.parametrize("C", [100.0, 1000.0])
@@ -167,7 +167,7 @@ def _test_synth_linear_compare_with_sklearn(queue, C):
167
167
  assert result > expected - 1e-3
168
168
 
169
169
 
170
- @pass_if_not_implemented_for_gpu(reason="svr is not implemented")
170
+ @pass_if_not_implemented_for_gpu(reason="Regression SVM is not implemented for GPU")
171
171
  @pytest.mark.parametrize("queue", get_queues())
172
172
  @pytest.mark.parametrize("C", [0.001, 0.1])
173
173
  def test_synth_linear_compare_with_sklearn(queue, C):
@@ -188,7 +188,7 @@ def _test_synth_poly_compare_with_sklearn(queue, params):
188
188
  assert result > expected - 1e-5
189
189
 
190
190
 
191
- @pass_if_not_implemented_for_gpu(reason="svr is not implemented")
191
+ @pass_if_not_implemented_for_gpu(reason="Regression SVM is not implemented for GPU")
192
192
  @pytest.mark.parametrize("queue", get_queues())
193
193
  @pytest.mark.parametrize(
194
194
  "params",
@@ -201,7 +201,7 @@ def test_synth_poly_compare_with_sklearn(queue, params):
201
201
  _test_synth_poly_compare_with_sklearn(queue, params)
202
202
 
203
203
 
204
- @pass_if_not_implemented_for_gpu(reason="svr is not implemented")
204
+ @pass_if_not_implemented_for_gpu(reason="Regression SVM is not implemented for GPU")
205
205
  @pytest.mark.parametrize("queue", get_queues())
206
206
  def test_sided_sample_weight(queue):
207
207
  clf = SVR(C=1e-2, kernel="linear")
@@ -225,7 +225,7 @@ def test_sided_sample_weight(queue):
225
225
  assert y_pred == pytest.approx(1.5)
226
226
 
227
227
 
228
- @pass_if_not_implemented_for_gpu(reason="svr is not implemented")
228
+ @pass_if_not_implemented_for_gpu(reason="Regression SVM is not implemented for GPU")
229
229
  @pytest.mark.parametrize("queue", get_queues())
230
230
  def test_pickle(queue):
231
231
  diabetes = datasets.load_diabetes()
@@ -73,18 +73,6 @@ def is_dpctl_device_available(targets):
73
73
  return False
74
74
 
75
75
 
76
- def device_type_to_str(queue):
77
- if queue is None:
78
- return "cpu"
79
-
80
- if dpctl_available:
81
- if queue.sycl_device.is_cpu:
82
- return "cpu"
83
- if queue.sycl_device.is_gpu:
84
- return "gpu"
85
- return "unknown"
86
-
87
-
88
76
  def pass_if_not_implemented_for_gpu(reason=""):
89
77
  assert reason
90
78
 
@@ -92,7 +80,7 @@ def pass_if_not_implemented_for_gpu(reason=""):
92
80
  @functools.wraps(test)
93
81
  def wrapper(queue, *args, **kwargs):
94
82
  if queue is not None and queue.sycl_device.is_gpu:
95
- with pytest.raises(RuntimeError, match="is not implemented for GPU"):
83
+ with pytest.raises(RuntimeError, match=reason):
96
84
  test(queue, *args, **kwargs)
97
85
  else:
98
86
  test(queue, *args, **kwargs)
@@ -18,6 +18,8 @@
18
18
 
19
19
  from collections.abc import Iterable
20
20
 
21
+ import numpy as np
22
+
21
23
  from ._dpep_helpers import dpctl_available, dpnp_available
22
24
 
23
25
  if dpctl_available:
@@ -78,4 +80,4 @@ def _get_sycl_namespace(*arrays):
78
80
  else:
79
81
  raise ValueError(f"SYCL type not recognized: {sua_iface}")
80
82
 
81
- return sua_iface, None, False
83
+ return sua_iface, np, False