scikit-learn-intelex 2025.4.0__py310-none-win_amd64.whl → 2025.6.0__py310-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 (270) hide show
  1. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/__main__.py +1 -1
  2. scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/daal4py/_daal4py.cp310-win_amd64.pyd +0 -0
  3. scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/daal4py/mb/__init__.py +83 -0
  4. scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/daal4py/mb/gbt_convertors.py +922 -0
  5. scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/daal4py/mb/logistic_regression_builders.py +217 -0
  6. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/mb/model_builders.py → scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/daal4py/mb/tree_based_builders.py +129 -106
  7. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/mpi_transceiver.cp310-win_amd64.pyd +0 -0
  8. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/_n_jobs_support.py +6 -2
  9. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/_utils.py +1 -1
  10. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +2 -2
  11. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/k_means.py +6 -38
  12. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +12 -8
  13. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +2 -6
  14. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +3 -7
  15. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +41 -153
  16. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_coordinate_descent.py +13 -15
  17. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_linear.py +7 -10
  18. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_ridge.py +22 -57
  19. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +3 -4
  20. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/_t_sne.py +8 -3
  21. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +30 -7
  22. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +3 -3
  23. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +6 -16
  24. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +4 -7
  25. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +3 -5
  26. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +4 -2
  27. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/base.py +8 -3
  28. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +82 -5
  29. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/__init__.py +125 -83
  30. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/_config.py +27 -2
  31. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/_device_offload.py +86 -82
  32. scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp310-win_amd64.pyd +0 -0
  33. scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp310-win_amd64.pyd +0 -0
  34. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/basic_statistics/basic_statistics.py +21 -17
  35. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/basic_statistics/incremental_basic_statistics.py +44 -39
  36. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/cluster/dbscan.py +35 -42
  37. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/cluster/kmeans.py +83 -74
  38. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/cluster/kmeans_init.py +57 -24
  39. scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/onedal/common/_backend.py +233 -0
  40. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/common/hyperparameters.py +4 -4
  41. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/common/tests/test_sycl.py +27 -12
  42. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/covariance/covariance.py +27 -19
  43. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +35 -32
  44. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +6 -10
  45. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +179 -78
  46. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +39 -25
  47. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/decomposition/pca.py +28 -16
  48. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/decomposition/tests/test_incremental_pca.py +2 -2
  49. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/ensemble/forest.py +130 -93
  50. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/linear_model/incremental_linear_model.py +76 -57
  51. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/linear_model/linear_model.py +63 -37
  52. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/linear_model/logistic_regression.py +96 -68
  53. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/neighbors/neighbors.py +156 -119
  54. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/primitives/get_tree.py +5 -3
  55. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/primitives/kernel_functions.py +21 -18
  56. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/primitives/tests/test_kernel_functions.py +4 -4
  57. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/svm/svm.py +80 -32
  58. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/svm/tests/test_csr_svm.py +10 -9
  59. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvc.py +10 -10
  60. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvr.py +8 -8
  61. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svc.py +5 -5
  62. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svr.py +10 -10
  63. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +3 -13
  64. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/utils/_array_api.py +14 -2
  65. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/utils/_dpep_helpers.py +16 -1
  66. scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/onedal/utils/_sycl_queue_manager.py +161 -0
  67. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/utils/tests/test_validation.py +3 -3
  68. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/utils/validation.py +47 -16
  69. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/__init__.py +3 -2
  70. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/__main__.py +2 -2
  71. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/_config.py +48 -6
  72. scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/sklearnex/_device_offload.py +194 -0
  73. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/_utils.py +36 -43
  74. scikit_learn_intelex-2025.6.0.data/data/Lib/site-packages/sklearnex/base.py +109 -0
  75. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +14 -20
  76. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +31 -40
  77. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/cluster/dbscan.py +10 -11
  78. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/cluster/k_means.py +20 -19
  79. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +49 -62
  80. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/decomposition/pca.py +9 -20
  81. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/dispatcher.py +4 -4
  82. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/ensemble/_forest.py +111 -366
  84. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/glob/__main__.py +1 -1
  85. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/glob/dispatcher.py +1 -1
  86. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +18 -6
  87. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +37 -85
  89. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/linear.py +52 -47
  90. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/logistic_regression.py +45 -84
  91. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/ridge.py +17 -20
  92. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.0.data}/data/Lib/site-packages/sklearnex/manifold/t_sne.py +8 -6
  95. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/metrics/pairwise.py +1 -3
  96. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/metrics/ranking.py +1 -1
  97. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.0.data}/data/Lib/site-packages/sklearnex/neighbors/_lof.py +7 -54
  99. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/neighbors/common.py +6 -5
  100. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +6 -19
  104. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +45 -62
  105. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.6.0.data}/data/Lib/site-packages/sklearnex/svm/_common.py +15 -28
  120. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/svm/nusvc.py +36 -129
  121. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/svm/nusvr.py +10 -22
  122. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/svm/svc.py +34 -127
  123. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/svm/svr.py +10 -22
  124. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_common.py +51 -11
  125. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_config.py +62 -0
  126. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +18 -24
  127. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +4 -4
  128. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_patching.py +89 -60
  129. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +7 -0
  130. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/utils/base.py +2 -2
  131. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/utils/validation.py +8 -22
  132. {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.6.0.dist-info}/METADATA +2 -3
  133. scikit_learn_intelex-2025.6.0.dist-info/RECORD +257 -0
  134. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/_daal4py.cp310-win_amd64.pyd +0 -0
  135. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/doc/third-party-programs.txt +0 -424
  136. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp310-win_amd64.pyd +0 -0
  137. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp310-win_amd64.pyd +0 -0
  138. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_base.py +0 -38
  139. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_policy.py +0 -55
  140. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_spmd_policy.py +0 -30
  141. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/tests/test_policy.py +0 -76
  142. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/utils/__init__.py +0 -49
  143. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/_device_offload.py +0 -126
  144. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +0 -19
  145. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/neighbors.py +0 -25
  146. scikit_learn_intelex-2025.4.0.dist-info/RECORD +0 -259
  147. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/__init__.py +0 -0
  148. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/__init__.py +0 -0
  149. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +0 -0
  150. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/tests/test_dbscan.py +0 -0
  151. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/__init__.py +0 -0
  152. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +0 -0
  153. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/tests/test_decision_forest.py +0 -0
  154. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/__init__.py +0 -0
  155. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/coordinate_descent.py +0 -0
  156. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/linear.py +0 -0
  157. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_loss.py +0 -0
  158. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/ridge.py +0 -0
  159. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_linear.py +0 -0
  160. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_ridge.py +0 -0
  161. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/__init__.py +0 -0
  162. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +0 -0
  163. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +0 -0
  164. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/__init__.py +0 -0
  165. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/_split.py +0 -0
  166. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/tests/test_split.py +0 -0
  167. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
  168. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/_models_info.py +0 -0
  169. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_monkeypatch.py +0 -0
  170. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_patching.py +0 -0
  171. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/utils/_launch_algorithms.py +0 -0
  172. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +0 -0
  173. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +0 -0
  174. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/tests/test_kneighbors.py +0 -0
  175. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +0 -0
  176. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +0 -0
  177. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/tests/test_utils.py +0 -0
  178. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/basic_statistics/__init__.py +0 -0
  179. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_basic_statistics.py +0 -0
  180. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_incremental_basic_statistics.py +0 -0
  181. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/utils.py +0 -0
  182. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/cluster/__init__.py +0 -0
  183. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_dbscan.py +0 -0
  184. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans.py +0 -0
  185. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans_init.py +0 -0
  186. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/common/_estimator_checks.py +0 -0
  187. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/common/_mixin.py +0 -0
  188. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/covariance/__init__.py +0 -0
  189. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_covariance.py +0 -0
  190. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_incremental_covariance.py +0 -0
  191. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/datatypes/__init__.py +0 -0
  192. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/datatypes/tests/common.py +0 -0
  193. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/decomposition/__init__.py +0 -0
  194. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/ensemble/__init__.py +0 -0
  195. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/ensemble/tests/test_random_forest.py +0 -0
  196. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/linear_model/__init__.py +0 -0
  197. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_linear_regression.py +0 -0
  198. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_ridge_regression.py +0 -0
  199. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_linear_regression.py +0 -0
  200. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_logistic_regression.py +0 -0
  201. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_ridge.py +0 -0
  202. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/neighbors/__init__.py +0 -0
  203. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/neighbors/tests/test_knn_classification.py +0 -0
  204. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/primitives/__init__.py +0 -0
  205. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/svm/__init__.py +0 -0
  206. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/tests/test_common.py +0 -0
  207. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/onedal/tests/utils/_dataframes_support.py +0 -0
  208. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +0 -0
  209. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_basic_statistics.py +0 -0
  210. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_incremental_basic_statistics.py +0 -0
  211. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/cluster/__init__.py +0 -0
  212. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_dbscan.py +0 -0
  213. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +0 -0
  214. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/conftest.py +0 -0
  215. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/covariance/__init__.py +0 -0
  216. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/covariance/tests/test_incremental_covariance.py +0 -0
  217. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/decomposition/__init__.py +0 -0
  218. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +0 -0
  219. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/ensemble/__init__.py +0 -0
  220. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/ensemble/tests/test_forest.py +0 -0
  221. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/__init__.py +0 -0
  222. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_linear.py +0 -0
  223. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_ridge.py +0 -0
  224. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_ridge.py +0 -0
  225. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/manifold/__init__.py +0 -0
  226. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +0 -0
  227. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/metrics/__init__.py +0 -0
  228. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/metrics/tests/test_metrics.py +0 -0
  229. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/model_selection/__init__.py +0 -0
  230. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/model_selection/tests/test_model_selection.py +0 -0
  231. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/neighbors/__init__.py +0 -0
  232. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/neighbors/tests/test_neighbors.py +0 -0
  233. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/preview/__init__.py +0 -0
  234. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +0 -0
  235. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +0 -0
  236. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +0 -0
  237. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_incremental_pca.py +0 -0
  238. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/__init__.py +0 -0
  239. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/__init__.py +0 -0
  240. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/basic_statistics.py +0 -0
  241. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/incremental_basic_statistics.py +0 -0
  242. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +0 -0
  243. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +0 -0
  244. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +0 -0
  245. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +0 -0
  246. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +0 -0
  247. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/incremental_covariance.py +0 -0
  248. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/__init__.py +0 -0
  249. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/incremental_pca.py +0 -0
  250. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +0 -0
  251. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +0 -0
  252. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +0 -0
  253. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/__init__.py +0 -0
  254. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/incremental_linear_model.py +0 -0
  255. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/linear_model.py +0 -0
  256. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/logistic_regression.py +0 -0
  257. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/svm/__init__.py +0 -0
  258. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/svm/tests/test_svm.py +0 -0
  259. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +0 -0
  260. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +0 -0
  261. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/test_parallel.py +0 -0
  262. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +0 -0
  263. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +0 -0
  264. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/utils/__init__.py +0 -0
  265. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/utils/_array_api.py +0 -0
  266. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/utils/parallel.py +0 -0
  267. {scikit_learn_intelex-2025.4.0.data → scikit_learn_intelex-2025.6.0.data}/data/Lib/site-packages/sklearnex/utils/tests/test_validation.py +0 -0
  268. {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.6.0.dist-info}/LICENSE.txt +0 -0
  269. {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.6.0.dist-info}/WHEEL +0 -0
  270. {scikit_learn_intelex-2025.4.0.dist-info → scikit_learn_intelex-2025.6.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,194 @@
1
+ # ==============================================================================
2
+ # Copyright 2021 Intel Corporation
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+ # ==============================================================================
16
+
17
+ from collections.abc import Callable
18
+ from functools import wraps
19
+ from typing import Any, Union
20
+
21
+ from onedal._device_offload import _copy_to_usm, _transfer_to_host
22
+ from onedal.utils import _sycl_queue_manager as QM
23
+ from onedal.utils._array_api import _asarray, _is_numpy_namespace
24
+ from onedal.utils._dpep_helpers import dpnp_available
25
+
26
+ if dpnp_available:
27
+ import dpnp
28
+ from onedal.utils._array_api import _convert_to_dpnp
29
+
30
+ from ._config import config_context, get_config, set_config
31
+ from ._utils import PatchingConditionsChain, get_tags
32
+ from .base import oneDALEstimator
33
+
34
+
35
+ def _get_backend(
36
+ obj: type[oneDALEstimator], method_name: str, *data
37
+ ) -> tuple[Union[bool, None], PatchingConditionsChain]:
38
+ """This function verifies the hardware conditions, data characteristics, and
39
+ estimator parameters necessary for offloading computation to oneDAL. The status
40
+ of this patching is returned as a PatchingConditionsChain object along with a
41
+ boolean flag signaling whether the computation can be offloaded to oneDAL or not.
42
+ It is assumed that the queue (which determined what hardware to possibly use for
43
+ oneDAL) has been previously and extensively collected (i.e. the data has already
44
+ been checked using onedal's SyclQueueManager for queues)."""
45
+ queue = QM.get_global_queue()
46
+ cpu_device = queue is None or getattr(queue.sycl_device, "is_cpu", True)
47
+ gpu_device = queue is not None and getattr(queue.sycl_device, "is_gpu", False)
48
+
49
+ if cpu_device:
50
+ patching_status = obj._onedal_cpu_supported(method_name, *data)
51
+ return patching_status.get_status(), patching_status
52
+
53
+ if gpu_device:
54
+ patching_status = obj._onedal_gpu_supported(method_name, *data)
55
+ if (
56
+ not patching_status.get_status()
57
+ and (config := get_config())["allow_fallback_to_host"]
58
+ ):
59
+ QM.fallback_to_host()
60
+ return None, patching_status
61
+ return patching_status.get_status(), patching_status
62
+
63
+ raise RuntimeError("Device support is not implemented for the supplied data type.")
64
+
65
+
66
+ if "array_api_dispatch" in get_config():
67
+ _array_api_offload = lambda: get_config()["array_api_dispatch"]
68
+ else:
69
+ _array_api_offload = lambda: False
70
+
71
+
72
+ def dispatch(
73
+ obj: type[oneDALEstimator],
74
+ method_name: str,
75
+ branches: dict[Callable, Callable],
76
+ *args,
77
+ **kwargs,
78
+ ) -> Any:
79
+ """Dispatch object method call to oneDAL if conditionally possible.
80
+ Depending on support conditions, oneDAL will be called, otherwise it will
81
+ fall back to calling scikit-learn. Dispatching to oneDAL can be influenced
82
+ by the 'use_raw_input' or 'allow_fallback_to_host' config parameters.
83
+
84
+ Parameters
85
+ ----------
86
+ obj : object
87
+ sklearnex object which inherits from oneDALEstimator and contains
88
+ ``onedal_cpu_supported`` and ``onedal_gpu_supported`` methods which
89
+ evaluate oneDAL support.
90
+
91
+ method_name : string
92
+ name of method to be evaluated for oneDAL support
93
+
94
+ branches : dict
95
+ dictionary containing functions to be called. Only keys 'sklearn' and
96
+ 'onedal' are used which should contain the relevant scikit-learn and
97
+ onedal object methods respectively. All functions should accept the
98
+ inputs from *args and **kwargs. Additionally, the onedal object method
99
+ must accept a 'queue' keyword.
100
+
101
+ *args : tuple
102
+ arguments to be supplied to the dispatched method
103
+
104
+ **kwargs : dict
105
+ keyword arguments to be supplied to the dispatched method
106
+
107
+ Returns
108
+ -------
109
+ unknown : object
110
+ Returned object dependent on the supplied branches. Implicitly the returned
111
+ object types should match for the sklearn and onedal object methods.
112
+ """
113
+
114
+ if get_config()["use_raw_input"]:
115
+ return branches["onedal"](obj, *args, **kwargs)
116
+
117
+ # Determine if array_api dispatching is enabled, and if estimator is capable
118
+ onedal_array_api = _array_api_offload() and get_tags(obj).onedal_array_api
119
+ sklearn_array_api = _array_api_offload() and get_tags(obj).array_api_support
120
+
121
+ # backend can only be a boolean or None, None signifies an unverified backend
122
+ backend: "bool | None" = None
123
+
124
+ # config context needs to be saved, as the sycl_queue_manager interacts with
125
+ # target_offload, which can regenerate a GPU queue later on. Therefore if a
126
+ # fallback occurs, then the state of target_offload must be set to default
127
+ # so that later use of get_global_queue only sends to host. We must modify
128
+ # the target offload settings, but we must also set the original value at the
129
+ # end, hence the need of a contextmanager.
130
+ with QM.manage_global_queue(None, *args):
131
+ if onedal_array_api:
132
+ backend, patching_status = _get_backend(obj, method_name, *args)
133
+ if backend:
134
+ queue = QM.get_global_queue()
135
+ patching_status.write_log(queue=queue, transferred_to_host=False)
136
+ return branches["onedal"](obj, *args, **kwargs, queue=queue)
137
+ elif sklearn_array_api and backend is False:
138
+ patching_status.write_log(transferred_to_host=False)
139
+ return branches["sklearn"](obj, *args, **kwargs)
140
+
141
+ # move data to host because of multiple reasons: array_api fallback to host,
142
+ # non array_api supporing oneDAL code, issues with usm support in sklearn.
143
+ has_usm_data_for_args, hostargs = _transfer_to_host(*args)
144
+ has_usm_data_for_kwargs, hostvalues = _transfer_to_host(*kwargs.values())
145
+
146
+ hostkwargs = dict(zip(kwargs.keys(), hostvalues))
147
+ has_usm_data = has_usm_data_for_args or has_usm_data_for_kwargs
148
+
149
+ while backend is None:
150
+ backend, patching_status = _get_backend(obj, method_name, *hostargs)
151
+
152
+ if backend:
153
+ queue = QM.get_global_queue()
154
+ patching_status.write_log(queue=queue, transferred_to_host=False)
155
+ return branches["onedal"](obj, *hostargs, **hostkwargs, queue=queue)
156
+ else:
157
+ if sklearn_array_api and not has_usm_data:
158
+ # dpnp fallback is not handled properly yet.
159
+ patching_status.write_log(transferred_to_host=False)
160
+ return branches["sklearn"](obj, *args, **kwargs)
161
+ else:
162
+ patching_status.write_log()
163
+ return branches["sklearn"](obj, *hostargs, **hostkwargs)
164
+
165
+
166
+ def wrap_output_data(func: Callable) -> Callable:
167
+ """
168
+ Converts and moves the output arrays of the decorated function
169
+ to match the input array type and device.
170
+ """
171
+
172
+ @wraps(func)
173
+ def wrapper(self, *args, **kwargs) -> Any:
174
+ result = func(self, *args, **kwargs)
175
+ if not (len(args) == 0 and len(kwargs) == 0):
176
+ data = (*args, *kwargs.values())
177
+
178
+ usm_iface = getattr(data[0], "__sycl_usm_array_interface__", None)
179
+ if usm_iface is not None:
180
+ result = _copy_to_usm(usm_iface["syclobj"], result)
181
+ if dpnp_available and isinstance(data[0], dpnp.ndarray):
182
+ result = _convert_to_dpnp(result)
183
+ return result
184
+
185
+ if get_config().get("transform_output") in ("default", None):
186
+ input_array_api = getattr(data[0], "__array_namespace__", lambda: None)()
187
+ if input_array_api and not _is_numpy_namespace(input_array_api):
188
+ input_array_api_device = data[0].device
189
+ result = _asarray(
190
+ result, input_array_api, device=input_array_api_device
191
+ )
192
+ return result
193
+
194
+ return wrapper
@@ -17,6 +17,7 @@
17
17
  import logging
18
18
  import os
19
19
  import re
20
+ import sys
20
21
  import warnings
21
22
  from abc import ABC
22
23
 
@@ -27,16 +28,19 @@ from daal4py.sklearn._utils import (
27
28
  )
28
29
  from daal4py.sklearn._utils import daal_check_version, sklearn_check_version
29
30
 
30
- # Note: if inheriting from '_HTMLDocumentationLinkMixin' here, it then doesn't matter
31
- # the order of inheritance of classes for estimators when this is later subclassed,
32
- # whereas if inheriting from something else, the subclass that inherits from this needs
33
- # to be the first inherited class in estimators in order for it to take effect.
34
- if sklearn_check_version("1.4"):
35
- from sklearn.utils._estimator_html_repr import _HTMLDocumentationLinkMixin
31
+ # Not an ideal solution, but this allows for access to the outputs of older
32
+ # sklearnex tag dictionaries in a way similar to the sklearn >=1.6 tag
33
+ # dataclasses via duck-typing. At some point this must be removed for direct
34
+ # use of get_tags in all circumstances, dictated by sklearn support. This is
35
+ # implemented in a way to minimally impact performance.
36
36
 
37
- BaseForHTMLDocLink = _HTMLDocumentationLinkMixin
37
+
38
+ if sklearn_check_version("1.6"):
39
+ from sklearn.utils import get_tags
38
40
  else:
39
- BaseForHTMLDocLink = ABC
41
+ from sklearn.base import BaseEstimator
42
+
43
+ get_tags = lambda obj: type("Tags", (), BaseEstimator._get_tags(obj))
40
44
 
41
45
 
42
46
  class PatchingConditionsChain(daal4py_PatchingConditionsChain):
@@ -51,7 +55,7 @@ class PatchingConditionsChain(daal4py_PatchingConditionsChain):
51
55
  else:
52
56
  self.logger.debug(
53
57
  f"{self.scope_name}: debugging for the patch is enabled to track"
54
- " the usage of Intel® oneAPI Data Analytics Library (oneDAL)"
58
+ " the usage of oneAPI Data Analytics Library (oneDAL)"
55
59
  )
56
60
  for message in self.messages:
57
61
  self.logger.debug(
@@ -141,37 +145,26 @@ def register_hyperparameters(hyperparameters_map):
141
145
  return decorator
142
146
 
143
147
 
144
- # This abstract class is meant to generate a clickable doc link for classses
145
- # in sklearnex that are not part of base scikit-learn.
146
- class IntelEstimator(BaseForHTMLDocLink):
147
- @property
148
- def _doc_link_module(self) -> str:
149
- return "sklearnex"
150
-
151
- @property
152
- def _doc_link_template(self) -> str:
153
- module_path, _ = self.__class__.__module__.rsplit(".", 1)
154
- class_name = self.__class__.__name__
155
- return f"https://uxlfoundation.github.io/scikit-learn-intelex/latest/non-scikit-algorithms.html#{module_path}.{class_name}"
156
-
157
-
158
- # This abstract class is meant to generate a clickable doc link for classses
159
- # in sklearnex that have counterparts in scikit-learn.
160
- class PatchableEstimator(BaseForHTMLDocLink):
161
- @property
162
- def _doc_link_module(self) -> str:
163
- return "sklearnex"
164
-
165
- @property
166
- def _doc_link_template(self) -> str:
167
- if re.search(r"^\d\.\d\.\d$", sklearn.__version__):
168
- sklearn_version_parts = sklearn.__version__.split(".")
169
- doc_version_url = sklearn_version_parts[0] + "." + sklearn_version_parts[1]
170
- else:
171
- doc_version_url = "stable"
172
- module_path, _ = self.__class__.__module__.rsplit(".", 1)
173
- module_path = re.sub("sklearnex", "sklearn", module_path)
174
- class_name = self.__class__.__name__
175
- # for TSNE, which re-uses daal4py
176
- module_path = re.sub(r"daal4py\.", "", module_path)
177
- return f"https://scikit-learn.org/{doc_version_url}/modules/generated/{module_path}.{class_name}.html"
148
+ def _add_inc_serialization_note(class_docstrings: str) -> str:
149
+ """Adds a small note note about serialization for extension estimators that are incremental.
150
+ The class docstrings should leave a placeholder '%incremental_serialization_note%' inside
151
+ their docstrings, which will be replaced by this note.
152
+ """
153
+ # In python versions >=3.13, leading whitespace in docstrings defined through
154
+ # static strings (but **not through other ways**) is automatically removed
155
+ # from the final docstrings, while in earlier versions is kept.
156
+ inc_serialization_note = """Note
157
+ ----
158
+ Serializing instances of this class will trigger a forced finalization of calculations
159
+ when the inputs are in a sycl queue or when using GPUs. Since (internal method)
160
+ finalize_fit can't be dispatched without directly provided queue and the dispatching
161
+ policy can't be serialized, the computation is finalized during serialization call and
162
+ the policy is not saved in serialized data."""
163
+ if sys.version_info.major == 3 and sys.version_info.minor <= 12:
164
+ inc_serialization_note = re.sub(
165
+ r"^", " " * 4, inc_serialization_note, flags=re.MULTILINE
166
+ )
167
+ inc_serialization_note = inc_serialization_note.strip()
168
+ return class_docstrings.replace(
169
+ r"%incremental_serialization_note%", inc_serialization_note
170
+ )
@@ -0,0 +1,109 @@
1
+ # ===============================================================================
2
+ # Copyright contributors to the oneDAL project
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+ # ===============================================================================
16
+
17
+ from sklearn.base import BaseEstimator
18
+
19
+ from daal4py.sklearn._utils import sklearn_check_version
20
+
21
+ if sklearn_check_version("1.6"):
22
+ from dataclasses import dataclass, fields
23
+
24
+ from sklearn.utils import Tags as _sklearn_Tags
25
+
26
+ @dataclass
27
+ class Tags(_sklearn_Tags):
28
+ onedal_array_api: bool = False
29
+
30
+
31
+ class oneDALEstimator:
32
+ """Inherited class for all oneDAL-based estimators.
33
+
34
+ This class must be inherited before any scikit-learn estimator
35
+ classes (i.e. those which inherit from scikit-learn's BaseEstimator).
36
+
37
+ It enables:
38
+
39
+ - dispatching to oneDAL
40
+ - html documentation
41
+
42
+ Notes
43
+ -----
44
+ Sklearnex-only estimators must inherit this class directly before
45
+ BaseEstimator in order to properly render documentation. Other
46
+ sklearn classes like Mixins can be before this class in the MRO
47
+ without any impact on functionality.
48
+ """
49
+
50
+ if sklearn_check_version("1.6"):
51
+ # Starting in sklearn 1.6, _more_tags is deprecated. An oneDALEstimator
52
+ # is defined to handle the various versioning issues with the tags and
53
+ # with the ongoing rollout of sklearn's array_api support. This will make
54
+ # maintenance easier, and centralize tag changes to a single location.
55
+
56
+ def __sklearn_tags__(self) -> Tags:
57
+ # This convention is unnecessarily restrictive with more performant
58
+ # alternatives but it best follows sklearn. Subclasses will now only need
59
+ # to set `onedal_array_api` to True to signify gpu zero-copy support
60
+ # and maintenance is smaller because of underlying sklearn infrastructure
61
+ sktags = super().__sklearn_tags__()
62
+ tag_dict = {
63
+ field.name: getattr(sktags, field.name) for field in fields(sktags)
64
+ }
65
+ return Tags(**tag_dict)
66
+
67
+ elif sklearn_check_version("1.3"):
68
+
69
+ def _more_tags(self) -> dict[bool]:
70
+ return {"onedal_array_api": False}
71
+
72
+ else:
73
+ # array_api_support tag was added in sklearn 1.3 via scikit-learn/scikit-learn#26372
74
+ def _more_tags(self) -> dict[bool, bool]:
75
+ return {"array_api_support": False, "onedal_array_api": False}
76
+
77
+ if sklearn_check_version("1.4"):
78
+
79
+ @property
80
+ def _doc_link_module(self) -> str:
81
+ return "sklearnex"
82
+
83
+ def _doc_link_url_param_generator(self, *_) -> dict[str, str]:
84
+ return {
85
+ "estimator_module": "sklearn."
86
+ + self.__class__.__module__.rsplit(".", 2)[-2],
87
+ "estimator_name": self.__class__.__name__,
88
+ }
89
+
90
+ def _get_doc_link(self) -> str:
91
+ # This method is meant to generate a clickable doc link for classses
92
+ # in sklearnex including those that are not part of base scikit-learn.
93
+ # It should be inherited before inheriting from a scikit-learn estimator.
94
+
95
+ mro = self.__class__.__mro__
96
+ # The next object in the Estimators MRO after oneDALEstimator should be
97
+ # the equivalent sklearn estimator, if it is BaseEstimator, it is a
98
+ # sklearnex-only estimator.
99
+ url = BaseEstimator._get_doc_link(self)
100
+ if (
101
+ url
102
+ and oneDALEstimator in mro
103
+ and mro[mro.index(oneDALEstimator) + 1] is BaseEstimator
104
+ ):
105
+ module_path, _ = self.__class__.__module__.rsplit(".", 1)
106
+ class_name = self.__class__.__name__
107
+ url = f"https://uxlfoundation.github.io/scikit-learn-intelex/latest/non-scikit-algorithms.html#{module_path}.{class_name}"
108
+
109
+ return url
@@ -25,22 +25,19 @@ from sklearn.utils.validation import _check_sample_weight
25
25
  from daal4py.sklearn._n_jobs_support import control_n_jobs
26
26
  from daal4py.sklearn._utils import daal_check_version, sklearn_check_version
27
27
  from onedal.basic_statistics import BasicStatistics as onedal_BasicStatistics
28
- from onedal.utils import _is_csr
28
+ from onedal.utils.validation import _is_csr
29
29
 
30
30
  from .._device_offload import dispatch
31
- from .._utils import IntelEstimator, PatchingConditionsChain
32
-
33
- if sklearn_check_version("1.6"):
34
- from sklearn.utils.validation import validate_data
35
- else:
36
- validate_data = BaseEstimator._validate_data
31
+ from .._utils import PatchingConditionsChain
32
+ from ..base import oneDALEstimator
33
+ from ..utils.validation import validate_data
37
34
 
38
35
  if sklearn_check_version("1.2"):
39
36
  from sklearn.utils._param_validation import StrOptions
40
37
 
41
38
 
42
39
  @control_n_jobs(decorated_methods=["fit"])
43
- class BasicStatistics(IntelEstimator, BaseEstimator):
40
+ class BasicStatistics(oneDALEstimator, BaseEstimator):
44
41
  """
45
42
  Estimator for basic statistics.
46
43
  Allows to compute basic statistics for provided data.
@@ -204,16 +201,13 @@ class BasicStatistics(IntelEstimator, BaseEstimator):
204
201
  if sklearn_check_version("1.2"):
205
202
  self._validate_params()
206
203
 
207
- if sklearn_check_version("1.0"):
208
- X = validate_data(
209
- self,
210
- X,
211
- dtype=[np.float64, np.float32],
212
- ensure_2d=False,
213
- accept_sparse="csr",
214
- )
215
- else:
216
- X = check_array(X, dtype=[np.float64, np.float32])
204
+ X = validate_data(
205
+ self,
206
+ X,
207
+ dtype=[np.float64, np.float32],
208
+ ensure_2d=False,
209
+ accept_sparse="csr",
210
+ )
217
211
 
218
212
  if sample_weight is not None:
219
213
  sample_weight = _check_sample_weight(sample_weight, X)
@@ -224,11 +218,11 @@ class BasicStatistics(IntelEstimator, BaseEstimator):
224
218
 
225
219
  if not hasattr(self, "_onedal_estimator"):
226
220
  self._onedal_estimator = self._onedal_basic_statistics(**onedal_params)
227
- self._onedal_estimator.fit(X, sample_weight, queue)
221
+ self._onedal_estimator.fit(X, sample_weight, queue=queue)
228
222
  self._save_attributes()
229
223
  self.n_features_in_ = X.shape[1] if len(X.shape) > 1 else 1
230
224
 
231
- def fit(self, X, y=None, *, sample_weight=None):
225
+ def fit(self, X, y=None, sample_weight=None):
232
226
  """Calculate statistics of X.
233
227
 
234
228
  Parameters
@@ -25,8 +25,11 @@ from onedal.basic_statistics import (
25
25
  IncrementalBasicStatistics as onedal_IncrementalBasicStatistics,
26
26
  )
27
27
 
28
+ from .._config import get_config
28
29
  from .._device_offload import dispatch
29
- from .._utils import IntelEstimator, PatchingConditionsChain
30
+ from .._utils import PatchingConditionsChain, _add_inc_serialization_note
31
+ from ..base import oneDALEstimator
32
+ from ..utils.validation import validate_data
30
33
 
31
34
  if sklearn_check_version("1.2"):
32
35
  from sklearn.utils._param_validation import Interval, StrOptions
@@ -34,14 +37,9 @@ if sklearn_check_version("1.2"):
34
37
  import numbers
35
38
  import warnings
36
39
 
37
- if sklearn_check_version("1.6"):
38
- from sklearn.utils.validation import validate_data
39
- else:
40
- validate_data = BaseEstimator._validate_data
41
-
42
40
 
43
41
  @control_n_jobs(decorated_methods=["partial_fit", "_onedal_finalize_fit"])
44
- class IncrementalBasicStatistics(IntelEstimator, BaseEstimator):
42
+ class IncrementalBasicStatistics(oneDALEstimator, BaseEstimator):
45
43
  """
46
44
  Calculates basic statistics on the given data, allows for computation when the data are split into
47
45
  batches. The user can use ``partial_fit`` method to provide a single batch of data or use the ``fit`` method to provide
@@ -103,18 +101,13 @@ class IncrementalBasicStatistics(IntelEstimator, BaseEstimator):
103
101
  ----
104
102
  Attribute exists only if corresponding result option has been provided.
105
103
 
106
- Note
107
- ----
108
- Serializing instances of this class will trigger a forced finalization of calculations.
109
- Since finalize_fit can't be dispatched without directly provided queue
110
- and the dispatching policy can't be serialized, the computation is finalized
111
- during serialization call and the policy is not saved in serialized data.
112
-
113
104
  Note
114
105
  ----
115
106
  Names of attributes without the trailing underscore are
116
107
  supported currently but deprecated in 2025.1 and will be removed in 2026.0
117
108
 
109
+ %incremental_serialization_note%
110
+
118
111
  Examples
119
112
  --------
120
113
  >>> import numpy as np
@@ -134,6 +127,8 @@ class IncrementalBasicStatistics(IntelEstimator, BaseEstimator):
134
127
  np.array([3., 4.])
135
128
  """
136
129
 
130
+ __doc__ = _add_inc_serialization_note(__doc__)
131
+
137
132
  _onedal_incremental_basic_statistics = staticmethod(onedal_IncrementalBasicStatistics)
138
133
 
139
134
  if sklearn_check_version("1.2"):
@@ -186,29 +181,26 @@ class IncrementalBasicStatistics(IntelEstimator, BaseEstimator):
186
181
  assert isinstance(onedal_options, str)
187
182
  return options
188
183
 
189
- def _onedal_finalize_fit(self, queue=None):
184
+ def _onedal_finalize_fit(self):
190
185
  assert hasattr(self, "_onedal_estimator")
191
- self._onedal_estimator.finalize_fit(queue=queue)
186
+ self._onedal_estimator.finalize_fit()
192
187
  self._need_to_finalize = False
193
188
 
194
189
  def _onedal_partial_fit(self, X, sample_weight=None, queue=None, check_input=True):
195
190
  first_pass = not hasattr(self, "n_samples_seen_") or self.n_samples_seen_ == 0
196
191
 
192
+ use_raw_input = get_config().get("use_raw_input", False) is True
193
+ # never check input when using raw input
194
+ check_input &= use_raw_input is False
197
195
  if check_input:
198
- if sklearn_check_version("1.0"):
199
- X = validate_data(
200
- self,
201
- X,
202
- dtype=[np.float64, np.float32],
203
- reset=first_pass,
204
- )
205
- else:
206
- X = check_array(
207
- X,
208
- dtype=[np.float64, np.float32],
209
- )
196
+ X = validate_data(
197
+ self,
198
+ X,
199
+ dtype=[np.float64, np.float32],
200
+ reset=first_pass,
201
+ )
210
202
 
211
- if sample_weight is not None:
203
+ if not use_raw_input and sample_weight is not None:
212
204
  sample_weight = _check_sample_weight(sample_weight, X)
213
205
 
214
206
  if first_pass:
@@ -228,16 +220,15 @@ class IncrementalBasicStatistics(IntelEstimator, BaseEstimator):
228
220
  self._need_to_finalize = True
229
221
 
230
222
  def _onedal_fit(self, X, sample_weight=None, queue=None):
231
- if sklearn_check_version("1.2"):
232
- self._validate_params()
223
+ use_raw_input = get_config().get("use_raw_input", False) is True
224
+ if not use_raw_input:
225
+ if sklearn_check_version("1.2"):
226
+ self._validate_params()
233
227
 
234
- if sklearn_check_version("1.0"):
235
228
  X = validate_data(self, X, dtype=[np.float64, np.float32])
236
- else:
237
- X = check_array(X, dtype=[np.float64, np.float32])
238
229
 
239
- if sample_weight is not None:
240
- sample_weight = _check_sample_weight(sample_weight, X)
230
+ if sample_weight is not None:
231
+ sample_weight = _check_sample_weight(sample_weight, X)
241
232
 
242
233
  n_samples, n_features = X.shape
243
234
  if self.batch_size is None:
@@ -258,7 +249,7 @@ class IncrementalBasicStatistics(IntelEstimator, BaseEstimator):
258
249
 
259
250
  self.n_features_in_ = X.shape[1]
260
251
 
261
- self._onedal_finalize_fit(queue=queue)
252
+ self._onedal_finalize_fit()
262
253
 
263
254
  return self
264
255
 
@@ -303,7 +294,7 @@ class IncrementalBasicStatistics(IntelEstimator, BaseEstimator):
303
294
 
304
295
  Returns
305
296
  -------
306
- self : object
297
+ self : IncrementalBasicStatistics
307
298
  Returns the instance itself.
308
299
  """
309
300
  dispatch(
@@ -320,7 +311,7 @@ class IncrementalBasicStatistics(IntelEstimator, BaseEstimator):
320
311
  return self
321
312
 
322
313
  def fit(self, X, y=None, sample_weight=None):
323
- """Calculate statistics of X using minibatches of size batch_size.
314
+ """Calculate statistics of X using minibatches of size ``batch_size``.
324
315
 
325
316
  Parameters
326
317
  ----------
@@ -336,7 +327,7 @@ class IncrementalBasicStatistics(IntelEstimator, BaseEstimator):
336
327
 
337
328
  Returns
338
329
  -------
339
- self : object
330
+ self : IncrementalBasicStatistics
340
331
  Returns the instance itself.
341
332
  """
342
333
  dispatch(