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
@@ -15,7 +15,6 @@
15
15
  # ===============================================================================
16
16
 
17
17
  import logging
18
- from abc import ABC
19
18
 
20
19
  import numpy as np
21
20
  from sklearn.linear_model import LinearRegression as _sklearn_LinearRegression
@@ -33,8 +32,9 @@ from .._utils import (
33
32
  get_patch_message,
34
33
  register_hyperparameters,
35
34
  )
35
+ from ..utils.validation import validate_data
36
36
 
37
- if sklearn_check_version("1.0") and not sklearn_check_version("1.2"):
37
+ if not sklearn_check_version("1.2"):
38
38
  from sklearn.linear_model._base import _deprecate_normalize
39
39
 
40
40
  from scipy.sparse import issparse
@@ -42,12 +42,7 @@ from sklearn.utils.validation import check_is_fitted, check_X_y
42
42
 
43
43
  from onedal.common.hyperparameters import get_hyperparameters
44
44
  from onedal.linear_model import LinearRegression as onedal_LinearRegression
45
- from onedal.utils import _num_features, _num_samples
46
-
47
- if sklearn_check_version("1.6"):
48
- from sklearn.utils.validation import validate_data
49
- else:
50
- validate_data = _sklearn_LinearRegression._validate_data
45
+ from onedal.utils.validation import _num_features, _num_samples
51
46
 
52
47
 
53
48
  @register_hyperparameters({"fit": get_hyperparameters("linear_regression", "train")})
@@ -60,26 +55,46 @@ class LinearRegression(PatchableEstimator, _sklearn_LinearRegression):
60
55
  **_sklearn_LinearRegression._parameter_constraints
61
56
  }
62
57
 
63
- def __init__(
64
- self,
65
- fit_intercept=True,
66
- copy_X=True,
67
- n_jobs=None,
68
- positive=False,
69
- ):
70
- super().__init__(
71
- fit_intercept=fit_intercept,
72
- copy_X=copy_X,
73
- n_jobs=n_jobs,
74
- positive=positive,
75
- )
58
+ if sklearn_check_version("1.7"):
59
+
60
+ def __init__(
61
+ self,
62
+ fit_intercept=True,
63
+ copy_X=True,
64
+ tol=1e-06, # for sparse solver only, not used by oneDAL
65
+ n_jobs=None,
66
+ positive=False,
67
+ ):
68
+ super().__init__(
69
+ fit_intercept=fit_intercept,
70
+ copy_X=copy_X,
71
+ tol=tol,
72
+ n_jobs=n_jobs,
73
+ positive=positive,
74
+ )
75
+
76
+ else:
77
+
78
+ def __init__(
79
+ self,
80
+ fit_intercept=True,
81
+ copy_X=True,
82
+ n_jobs=None,
83
+ positive=False,
84
+ ):
85
+ super().__init__(
86
+ fit_intercept=fit_intercept,
87
+ copy_X=copy_X,
88
+ n_jobs=n_jobs,
89
+ positive=positive,
90
+ )
76
91
 
77
92
  else:
78
93
 
79
94
  def __init__(
80
95
  self,
81
96
  fit_intercept=True,
82
- normalize="deprecated" if sklearn_check_version("1.0") else False,
97
+ normalize="deprecated",
83
98
  copy_X=True,
84
99
  n_jobs=None,
85
100
  positive=False,
@@ -246,20 +261,17 @@ class LinearRegression(PatchableEstimator, _sklearn_LinearRegression):
246
261
  assert sample_weight is None
247
262
 
248
263
  supports_multi_output = daal_check_version((2025, "P", 1))
249
- check_params = {
250
- "X": X,
251
- "y": y,
252
- "dtype": [np.float64, np.float32],
253
- "accept_sparse": ["csr", "csc", "coo"],
254
- "y_numeric": True,
255
- "multi_output": supports_multi_output,
256
- }
257
- if sklearn_check_version("1.0"):
258
- X, y = validate_data(self, **check_params)
259
- else:
260
- X, y = check_X_y(**check_params)
264
+ X, y = validate_data(
265
+ self,
266
+ X=X,
267
+ y=y,
268
+ dtype=[np.float64, np.float32],
269
+ accept_sparse=["csr", "csc", "coo"],
270
+ y_numeric=True,
271
+ multi_output=supports_multi_output,
272
+ )
261
273
 
262
- if sklearn_check_version("1.0") and not sklearn_check_version("1.2"):
274
+ if not sklearn_check_version("1.2"):
263
275
  self._normalize = _deprecate_normalize(
264
276
  self.normalize,
265
277
  default=False,
@@ -287,10 +299,7 @@ class LinearRegression(PatchableEstimator, _sklearn_LinearRegression):
287
299
  self._save_attributes()
288
300
 
289
301
  def _onedal_predict(self, X, queue=None):
290
- if sklearn_check_version("1.0"):
291
- X = validate_data(self, X, accept_sparse=False, reset=False)
292
- else:
293
- X = check_array(X, accept_sparse=False)
302
+ X = validate_data(self, X, accept_sparse=False, reset=False)
294
303
 
295
304
  if not hasattr(self, "_onedal_estimator"):
296
305
  self._initialize_onedal_estimator()
@@ -34,16 +34,12 @@ if daal_check_version((2024, "P", 1)):
34
34
  from daal4py.sklearn._utils import sklearn_check_version
35
35
  from daal4py.sklearn.linear_model.logistic_path import daal4py_fit, daal4py_predict
36
36
  from onedal.linear_model import LogisticRegression as onedal_LogisticRegression
37
- from onedal.utils import _num_samples
37
+ from onedal.utils.validation import _num_samples
38
38
 
39
39
  from .._config import get_config
40
40
  from .._device_offload import dispatch, wrap_output_data
41
41
  from .._utils import PatchableEstimator, PatchingConditionsChain, get_patch_message
42
-
43
- if sklearn_check_version("1.6"):
44
- from sklearn.utils.validation import validate_data
45
- else:
46
- validate_data = _sklearn_LogisticRegression._validate_data
42
+ from ..utils.validation import validate_data
47
43
 
48
44
  _sparsity_enabled = daal_check_version((2024, "P", 700))
49
45
 
@@ -293,23 +289,14 @@ if daal_check_version((2024, "P", 1)):
293
289
 
294
290
  assert sample_weight is None
295
291
 
296
- if sklearn_check_version("1.0"):
297
- X, y = validate_data(
298
- self,
299
- X,
300
- y,
301
- accept_sparse=_sparsity_enabled,
302
- accept_large_sparse=_sparsity_enabled,
303
- dtype=[np.float64, np.float32],
304
- )
305
- else:
306
- X, y = check_X_y(
307
- X,
308
- y,
309
- accept_sparse=_sparsity_enabled,
310
- accept_large_sparse=_sparsity_enabled,
311
- dtype=[np.float64, np.float32],
312
- )
292
+ X, y = validate_data(
293
+ self,
294
+ X,
295
+ y,
296
+ accept_sparse=_sparsity_enabled,
297
+ accept_large_sparse=_sparsity_enabled,
298
+ dtype=[np.float64, np.float32],
299
+ )
313
300
 
314
301
  self._onedal_gpu_initialize_estimator()
315
302
  try:
@@ -332,22 +319,14 @@ if daal_check_version((2024, "P", 1)):
332
319
  if queue is None or queue.sycl_device.is_cpu:
333
320
  return daal4py_predict(self, X, "computeClassLabels")
334
321
 
335
- if sklearn_check_version("1.0"):
336
- X = validate_data(
337
- self,
338
- X,
339
- reset=False,
340
- accept_sparse=_sparsity_enabled,
341
- accept_large_sparse=_sparsity_enabled,
342
- dtype=[np.float64, np.float32],
343
- )
344
- else:
345
- X = check_array(
346
- X,
347
- accept_sparse=_sparsity_enabled,
348
- accept_large_sparse=_sparsity_enabled,
349
- dtype=[np.float64, np.float32],
350
- )
322
+ X = validate_data(
323
+ self,
324
+ X,
325
+ reset=False,
326
+ accept_sparse=_sparsity_enabled,
327
+ accept_large_sparse=_sparsity_enabled,
328
+ dtype=[np.float64, np.float32],
329
+ )
351
330
 
352
331
  assert hasattr(self, "_onedal_estimator")
353
332
  return self._onedal_estimator.predict(X, queue=queue)
@@ -356,22 +335,14 @@ if daal_check_version((2024, "P", 1)):
356
335
  if queue is None or queue.sycl_device.is_cpu:
357
336
  return daal4py_predict(self, X, "computeClassProbabilities")
358
337
 
359
- if sklearn_check_version("1.0"):
360
- X = validate_data(
361
- self,
362
- X,
363
- reset=False,
364
- accept_sparse=_sparsity_enabled,
365
- accept_large_sparse=_sparsity_enabled,
366
- dtype=[np.float64, np.float32],
367
- )
368
- else:
369
- X = check_array(
370
- X,
371
- accept_sparse=_sparsity_enabled,
372
- accept_large_sparse=_sparsity_enabled,
373
- dtype=[np.float64, np.float32],
374
- )
338
+ X = validate_data(
339
+ self,
340
+ X,
341
+ reset=False,
342
+ accept_sparse=_sparsity_enabled,
343
+ accept_large_sparse=_sparsity_enabled,
344
+ dtype=[np.float64, np.float32],
345
+ )
375
346
 
376
347
  assert hasattr(self, "_onedal_estimator")
377
348
  return self._onedal_estimator.predict_proba(X, queue=queue)
@@ -380,22 +351,14 @@ if daal_check_version((2024, "P", 1)):
380
351
  if queue is None or queue.sycl_device.is_cpu:
381
352
  return daal4py_predict(self, X, "computeClassLogProbabilities")
382
353
 
383
- if sklearn_check_version("1.0"):
384
- X = validate_data(
385
- self,
386
- X,
387
- reset=False,
388
- accept_sparse=_sparsity_enabled,
389
- accept_large_sparse=_sparsity_enabled,
390
- dtype=[np.float64, np.float32],
391
- )
392
- else:
393
- X = check_array(
394
- X,
395
- accept_sparse=_sparsity_enabled,
396
- accept_large_sparse=_sparsity_enabled,
397
- dtype=[np.float64, np.float32],
398
- )
354
+ X = validate_data(
355
+ self,
356
+ X,
357
+ reset=False,
358
+ accept_sparse=_sparsity_enabled,
359
+ accept_large_sparse=_sparsity_enabled,
360
+ dtype=[np.float64, np.float32],
361
+ )
399
362
 
400
363
  assert hasattr(self, "_onedal_estimator")
401
364
  return self._onedal_estimator.predict_log_proba(X, queue=queue)
@@ -35,15 +35,11 @@ if daal_check_version((2024, "P", 600)):
35
35
  from sklearn.utils import check_scalar
36
36
 
37
37
  from onedal.linear_model import Ridge as onedal_Ridge
38
- from onedal.utils import _num_features, _num_samples
38
+ from onedal.utils.validation import _num_features, _num_samples
39
39
 
40
40
  from .._device_offload import dispatch, wrap_output_data
41
41
  from .._utils import PatchableEstimator, PatchingConditionsChain
42
-
43
- if sklearn_check_version("1.6"):
44
- from sklearn.utils.validation import validate_data
45
- else:
46
- validate_data = _sklearn_Ridge._validate_data
42
+ from ..utils.validation import validate_data
47
43
 
48
44
  @control_n_jobs(decorated_methods=["fit", "predict", "score"])
49
45
  class Ridge(PatchableEstimator, _sklearn_Ridge):
@@ -307,15 +303,15 @@ if daal_check_version((2024, "P", 600)):
307
303
  include_boundaries="left",
308
304
  )
309
305
 
310
- check_params = {
311
- "X": X,
312
- "y": y,
313
- "dtype": [np.float64, np.float32],
314
- "accept_sparse": ["csr", "csc", "coo"],
315
- "y_numeric": True,
316
- "multi_output": True,
317
- }
318
- X, y = validate_data(self, **check_params)
306
+ X, y = validate_data(
307
+ self,
308
+ X=X,
309
+ y=y,
310
+ dtype=[np.float64, np.float32],
311
+ accept_sparse=["csr", "csc", "coo"],
312
+ y_numeric=True,
313
+ multi_output=True,
314
+ )
319
315
 
320
316
  if not sklearn_check_version("1.2"):
321
317
  self._normalize = _deprecate_normalize(
@@ -383,8 +379,8 @@ else:
383
379
  from daal4py.sklearn.linear_model import Ridge
384
380
  from onedal._device_offload import support_input_format
385
381
 
386
- Ridge.fit = support_input_format(queue_param=False)(Ridge.fit)
387
- Ridge.predict = support_input_format(queue_param=False)(Ridge.predict)
388
- Ridge.score = support_input_format(queue_param=False)(Ridge.score)
382
+ Ridge.fit = support_input_format(Ridge.fit)
383
+ Ridge.predict = support_input_format(Ridge.predict)
384
+ Ridge.score = support_input_format(Ridge.score)
389
385
 
390
386
  logging.warning("Ridge requires oneDAL version >= 2024.6 but it was not found")
@@ -29,13 +29,71 @@ from onedal.tests.utils._dataframes_support import (
29
29
  from sklearnex.tests.utils import _IS_INTEL
30
30
 
31
31
 
32
+ # Note: this is arranged as a fixture with a finalizer instead of as a parameter
33
+ # 'True' / 'False' in order to undo the changes later so that it doesn't affect
34
+ # other tests afterwards. It returns a function instead of making the change
35
+ # directly, in order to avoid importing the estimator class before the import test
36
+ # itself, but it still needs to import the class inside the the function that it
37
+ # returns due to serialization logic in pytest causing differences w.r.t. current
38
+ # closure where the function is called.
39
+ @pytest.fixture(params=[False, True])
40
+ def non_batched_route(request):
41
+ def change_parameters(queue, macro_block):
42
+ from sklearnex.linear_model import LinearRegression
43
+
44
+ if request.param and daal_check_version((2025, "P", 500)):
45
+ if queue and queue.sycl_device.is_gpu:
46
+ pytest.skip("Test for CPU-only functionality")
47
+ if macro_block is not None:
48
+ pytest.skip("Parameter combination with no effect")
49
+
50
+ non_batched_route.curr_cpu_max_cols_batched = (
51
+ LinearRegression.get_hyperparameters("fit").cpu_max_cols_batched
52
+ )
53
+ non_batched_route.curr_cpu_small_rows_threshold = (
54
+ LinearRegression.get_hyperparameters("fit").cpu_small_rows_threshold
55
+ )
56
+ non_batched_route.curr_cpu_small_rows_max_cols_batched = (
57
+ LinearRegression.get_hyperparameters(
58
+ "fit"
59
+ ).cpu_small_rows_max_cols_batched
60
+ )
61
+ LinearRegression.get_hyperparameters("fit").cpu_max_cols_batched = 1
62
+ LinearRegression.get_hyperparameters("fit").cpu_small_rows_threshold = 1
63
+ LinearRegression.get_hyperparameters(
64
+ "fit"
65
+ ).cpu_small_rows_max_cols_batched = 1
66
+
67
+ elif request.param and not daal_check_version((2025, "P", 500)):
68
+ pytest.skip("Functionality introduced in later versions")
69
+
70
+ def restore_params():
71
+ from sklearnex.linear_model import LinearRegression
72
+
73
+ if request.param and daal_check_version((2025, "P", 500)):
74
+ LinearRegression.get_hyperparameters("fit").cpu_max_cols_batched = (
75
+ non_batched_route.curr_cpu_max_cols_batched
76
+ )
77
+ LinearRegression.get_hyperparameters("fit").cpu_small_rows_threshold = (
78
+ non_batched_route.curr_cpu_small_rows_threshold
79
+ )
80
+ LinearRegression.get_hyperparameters(
81
+ "fit"
82
+ ).cpu_small_rows_max_cols_batched = (
83
+ non_batched_route.curr_cpu_small_rows_max_cols_batched
84
+ )
85
+
86
+ request.addfinalizer(restore_params)
87
+ return change_parameters
88
+
89
+
32
90
  @pytest.mark.parametrize("dataframe,queue", get_dataframes_and_queues())
33
91
  @pytest.mark.parametrize("dtype", [np.float32, np.float64])
34
92
  @pytest.mark.parametrize("macro_block", [None, 1024])
35
93
  @pytest.mark.parametrize("overdetermined", [False, True])
36
94
  @pytest.mark.parametrize("multi_output", [False, True])
37
95
  def test_sklearnex_import_linear(
38
- dataframe, queue, dtype, macro_block, overdetermined, multi_output
96
+ dataframe, queue, dtype, macro_block, non_batched_route, overdetermined, multi_output
39
97
  ):
40
98
  if (not overdetermined or multi_output) and not daal_check_version((2025, "P", 1)):
41
99
  pytest.skip("Functionality introduced in later versions")
@@ -65,6 +123,7 @@ def test_sklearnex_import_linear(
65
123
  hparams = LinearRegression.get_hyperparameters("fit")
66
124
  hparams.cpu_macro_block = macro_block
67
125
  hparams.gpu_macro_block = macro_block
126
+ non_batched_route(queue, macro_block)
68
127
 
69
128
  X = X.astype(dtype=dtype)
70
129
  y = y.astype(dtype=dtype)
@@ -49,7 +49,7 @@ def test_sklearnex_multiclass_classification(dataframe, queue):
49
49
  from sklearnex.linear_model import LogisticRegression
50
50
 
51
51
  X, y = load_iris(return_X_y=True)
52
- X_train, X_test, y_train, y_test = prepare_input(X, y, dataframe, queue)
52
+ X_train, X_test, y_train, y_test = prepare_input(X, y, dataframe, queue=queue)
53
53
 
54
54
  logreg = LogisticRegression(fit_intercept=True, solver="lbfgs", max_iter=200).fit(
55
55
  X_train, y_train
@@ -72,7 +72,7 @@ def test_sklearnex_binary_classification(dataframe, queue):
72
72
  from sklearnex.linear_model import LogisticRegression
73
73
 
74
74
  X, y = load_breast_cancer(return_X_y=True)
75
- X_train, X_test, y_train, y_test = prepare_input(X, y, dataframe, queue)
75
+ X_train, X_test, y_train, y_test = prepare_input(X, y, dataframe, queue=queue)
76
76
 
77
77
  logreg = LogisticRegression(fit_intercept=True, solver="newton-cg", max_iter=100).fit(
78
78
  X_train, y_train
@@ -14,13 +14,12 @@
14
14
  # limitations under the License.
15
15
  # ===============================================================================
16
16
 
17
- from daal4py.sklearn._n_jobs_support import control_n_jobs
18
17
  from daal4py.sklearn.manifold import TSNE
19
18
  from onedal._device_offload import support_input_format
20
19
 
21
20
  from .._utils import PatchableEstimator
22
21
 
23
- TSNE.fit = support_input_format(queue_param=False)(TSNE.fit)
24
- TSNE.fit_transform = support_input_format(queue_param=False)(TSNE.fit_transform)
22
+ TSNE.fit = support_input_format(TSNE.fit)
23
+ TSNE.fit_transform = support_input_format(TSNE.fit_transform)
25
24
  TSNE._doc_link_module = "daal4py"
26
25
  TSNE._doc_link_template = PatchableEstimator._doc_link_template
@@ -17,6 +17,4 @@
17
17
  from daal4py.sklearn.metrics import pairwise_distances
18
18
  from onedal._device_offload import support_input_format
19
19
 
20
- pairwise_distances = support_input_format(freefunc=True, queue_param=False)(
21
- pairwise_distances
22
- )
20
+ pairwise_distances = support_input_format(pairwise_distances)
@@ -17,4 +17,4 @@
17
17
  from daal4py.sklearn.metrics import roc_auc_score
18
18
  from onedal._device_offload import support_input_format
19
19
 
20
- roc_auc_score = support_input_format(freefunc=True, queue_param=False)(roc_auc_score)
20
+ roc_auc_score = support_input_format(roc_auc_score)
@@ -17,6 +17,4 @@
17
17
  from daal4py.sklearn.model_selection import train_test_split
18
18
  from onedal._device_offload import support_input_format
19
19
 
20
- train_test_split = support_input_format(freefunc=True, queue_param=False)(
21
- train_test_split
22
- )
20
+ train_test_split = support_input_format(train_test_split)
@@ -15,6 +15,7 @@
15
15
  # ===============================================================================
16
16
 
17
17
  import warnings
18
+ from functools import wraps
18
19
 
19
20
  import numpy as np
20
21
  from sklearn.neighbors import LocalOutlierFactor as _sklearn_LocalOutlierFactor
@@ -28,11 +29,7 @@ from sklearnex.neighbors.common import KNeighborsDispatchingBase
28
29
  from sklearnex.neighbors.knn_unsupervised import NearestNeighbors
29
30
 
30
31
  from ..utils._array_api import get_namespace
31
-
32
- if sklearn_check_version("1.6"):
33
- from sklearn.utils.validation import validate_data
34
- else:
35
- validate_data = _sklearn_LocalOutlierFactor._validate_data
32
+ from ..utils.validation import check_feature_names
36
33
 
37
34
 
38
35
  @control_n_jobs(decorated_methods=["fit", "kneighbors", "_kneighbors"])
@@ -59,7 +56,7 @@ class LocalOutlierFactor(KNeighborsDispatchingBase, _sklearn_LocalOutlierFactor)
59
56
  if sklearn_check_version("1.2"):
60
57
  self._validate_params()
61
58
 
62
- self._onedal_knn_fit(X, y, queue)
59
+ self._onedal_knn_fit(X, y, queue=queue)
63
60
 
64
61
  if self.contamination != "auto":
65
62
  if not (0.0 < self.contamination <= 0.5):
@@ -146,34 +143,15 @@ class LocalOutlierFactor(KNeighborsDispatchingBase, _sklearn_LocalOutlierFactor)
146
143
  # This would cause issues in fit_predict. Also, available_if
147
144
  # is hard to unwrap, and this is the most straighforward way.
148
145
  @available_if(_sklearn_LocalOutlierFactor._check_novelty_fit_predict)
146
+ @wraps(_sklearn_LocalOutlierFactor.fit_predict, assigned=["__doc__"])
149
147
  @wrap_output_data
150
148
  def fit_predict(self, X, y=None):
151
- """Fit the model to the training set X and return the labels.
152
-
153
- **Not available for novelty detection (when novelty is set to True).**
154
- Label is 1 for an inlier and -1 for an outlier according to the LOF
155
- score and the contamination parameter.
156
-
157
- Parameters
158
- ----------
159
- X : {array-like, sparse matrix} of shape (n_samples, n_features), default=None
160
- The query sample or samples to compute the Local Outlier Factor
161
- w.r.t. the training samples.
162
-
163
- y : Ignored
164
- Not used, present for API consistency by convention.
165
-
166
- Returns
167
- -------
168
- is_inlier : ndarray of shape (n_samples,)
169
- Returns -1 for anomalies/outliers and 1 for inliers.
170
- """
171
149
  return self.fit(X)._predict()
172
150
 
173
151
  def _kneighbors(self, X=None, n_neighbors=None, return_distance=True):
174
152
  check_is_fitted(self)
175
- if sklearn_check_version("1.0") and X is not None:
176
- self._check_feature_names(X, reset=False)
153
+ if X is not None:
154
+ check_feature_names(self, X, reset=False)
177
155
  return dispatch(
178
156
  self,
179
157
  "kneighbors",
@@ -189,34 +167,9 @@ class LocalOutlierFactor(KNeighborsDispatchingBase, _sklearn_LocalOutlierFactor)
189
167
  kneighbors = wrap_output_data(_kneighbors)
190
168
 
191
169
  @available_if(_sklearn_LocalOutlierFactor._check_novelty_score_samples)
170
+ @wraps(_sklearn_LocalOutlierFactor.score_samples, assigned=["__doc__"])
192
171
  @wrap_output_data
193
172
  def score_samples(self, X):
194
- """Opposite of the Local Outlier Factor of X.
195
-
196
- It is the opposite as bigger is better, i.e. large values correspond
197
- to inliers.
198
-
199
- **Only available for novelty detection (when novelty is set to True).**
200
- The argument X is supposed to contain *new data*: if X contains a
201
- point from training, it considers the later in its own neighborhood.
202
- Also, the samples in X are not considered in the neighborhood of any
203
- point. Because of this, the scores obtained via ``score_samples`` may
204
- differ from the standard LOF scores.
205
- The standard LOF scores for the training data is available via the
206
- ``negative_outlier_factor_`` attribute.
207
-
208
- Parameters
209
- ----------
210
- X : {array-like, sparse matrix} of shape (n_samples, n_features)
211
- The query sample or samples to compute the Local Outlier Factor
212
- w.r.t. the training samples.
213
-
214
- Returns
215
- -------
216
- opposite_lof_scores : ndarray of shape (n_samples,)
217
- The opposite of the Local Outlier Factor of each input samples.
218
- The lower, the more abnormal.
219
- """
220
173
  check_is_fitted(self)
221
174
 
222
175
  distances_X, neighbors_indices_X = self._kneighbors(
@@ -25,18 +25,18 @@ from sklearn.neighbors._kd_tree import KDTree
25
25
  from sklearn.utils.validation import check_is_fitted
26
26
 
27
27
  from daal4py.sklearn._utils import sklearn_check_version
28
- from onedal.utils import _check_array, _num_features, _num_samples
28
+ from onedal.utils.validation import _check_array, _num_features, _num_samples
29
29
 
30
30
  from .._utils import PatchableEstimator, PatchingConditionsChain
31
31
  from ..utils._array_api import get_namespace
32
+ from ..utils.validation import check_feature_names
32
33
 
33
34
 
34
35
  class KNeighborsDispatchingBase(PatchableEstimator):
35
36
  def _fit_validation(self, X, y=None):
36
37
  if sklearn_check_version("1.2"):
37
38
  self._validate_params()
38
- if sklearn_check_version("1.0"):
39
- self._check_feature_names(X, reset=True)
39
+ check_feature_names(self, X, reset=True)
40
40
  if self.metric_params is not None and "p" in self.metric_params:
41
41
  if self.p is not None:
42
42
  warnings.warn(