scikit-learn-intelex 2025.1.0__py312-none-win_amd64.whl → 2025.4.0__py312-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/data/Lib/site-packages/daal4py/_daal4py.cp312-win_amd64.pyd +0 -0
  2. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/mpi_transceiver.cp312-win_amd64.pyd +0 -0
  3. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +6 -3
  4. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/_device_offload.py +10 -28
  5. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp312-win_amd64.pyd +0 -0
  6. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp312-win_amd64.pyd +0 -0
  7. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/basic_statistics/basic_statistics.py +5 -5
  8. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/basic_statistics/incremental_basic_statistics.py +34 -19
  9. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_basic_statistics.py +16 -72
  10. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_incremental_basic_statistics.py +100 -17
  11. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/basic_statistics/tests/utils.py +50 -0
  12. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/cluster/dbscan.py +5 -10
  13. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/cluster/kmeans.py +9 -16
  14. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/cluster/kmeans_init.py +7 -10
  15. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/common/_policy.py +0 -4
  16. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/tests/test_sycl.py +128 -0
  17. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/covariance/covariance.py +6 -9
  18. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +41 -26
  19. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_incremental_covariance.py +69 -1
  20. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/datatypes/__init__.py +19 -0
  21. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +10 -43
  22. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +83 -22
  23. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +42 -32
  24. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/decomposition/pca.py +7 -7
  25. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/decomposition/tests/test_incremental_pca.py +87 -0
  26. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/ensemble/forest.py +20 -11
  27. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/linear_model/incremental_linear_model.py +86 -52
  28. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/linear_model/linear_model.py +19 -23
  29. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/linear_model/logistic_regression.py +9 -11
  30. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_linear_regression.py +70 -25
  31. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_ridge_regression.py +64 -0
  32. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_linear_regression.py +13 -4
  33. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/neighbors/neighbors.py +21 -25
  34. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/primitives/kernel_functions.py +3 -4
  35. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/svm/svm.py +9 -9
  36. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/utils/tests/test_validation.py +142 -0
  37. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/utils/validation.py +38 -14
  38. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/_utils.py +58 -13
  39. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +39 -8
  40. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +7 -0
  41. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_basic_statistics.py +171 -36
  42. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_incremental_basic_statistics.py +79 -28
  43. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/cluster/dbscan.py +2 -2
  44. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/cluster/k_means.py +4 -2
  45. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +0 -2
  46. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +7 -0
  47. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/covariance/tests/test_incremental_covariance.py +50 -0
  48. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/decomposition/pca.py +3 -1
  49. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/dispatcher.py +1 -10
  50. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/ensemble/_forest.py +2 -2
  51. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/ensemble/tests/test_forest.py +23 -18
  52. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_linear.py +25 -12
  53. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +15 -8
  54. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/linear_model/linear.py +8 -3
  55. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/linear_model/logistic_regression.py +15 -13
  56. {scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview → scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex}/linear_model/ridge.py +390 -424
  57. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_linear.py +65 -5
  58. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_ridge.py +61 -0
  59. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +11 -36
  60. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_ridge.py +256 -0
  61. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/manifold/t_sne.py +5 -0
  62. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +250 -0
  63. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/neighbors/common.py +2 -2
  64. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/preview/__init__.py +1 -1
  65. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +6 -2
  66. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +1 -1
  67. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +14 -3
  68. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_incremental_pca.py +70 -0
  69. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_basic_statistics_spmd.py +3 -3
  70. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_incremental_basic_statistics_spmd.py +6 -7
  71. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_kmeans_spmd.py +3 -2
  72. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_incremental_linear_spmd.py +16 -14
  73. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/svm/_common.py +2 -2
  74. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/tests/test_common.py +130 -29
  75. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +43 -0
  76. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +7 -39
  77. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +4 -11
  78. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/tests/test_patching.py +0 -8
  79. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +7 -2
  80. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +4 -0
  81. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/tests/utils/base.py +65 -0
  82. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/utils/validation.py → scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/utils/__init__.py +3 -1
  83. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/utils/tests/test_validation.py +238 -0
  84. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/utils/validation.py +208 -0
  85. {scikit_learn_intelex-2025.1.0.dist-info → scikit_learn_intelex-2025.4.0.dist-info}/METADATA +38 -77
  86. scikit_learn_intelex-2025.4.0.dist-info/RECORD +259 -0
  87. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/_daal4py.cp312-win_amd64.pyd +0 -0
  88. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp312-win_amd64.pyd +0 -0
  89. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp312-win_amd64.pyd +0 -0
  90. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/datatypes/__init__.py +0 -19
  91. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/ridge.py +0 -24
  92. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +0 -26
  93. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/linear_model/__init__.py +0 -19
  94. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/linear_model/tests/test_ridge.py +0 -102
  95. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/utils/__init__.py +0 -19
  96. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/utils/tests/test_finite.py +0 -89
  97. scikit_learn_intelex-2025.1.0.dist-info/RECORD +0 -257
  98. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/__init__.py +0 -0
  99. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/__main__.py +0 -0
  100. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/doc/third-party-programs.txt +0 -0
  101. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/mb/__init__.py +0 -0
  102. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/mb/model_builders.py +0 -0
  103. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/__init__.py +0 -0
  104. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/_n_jobs_support.py +0 -0
  105. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/_utils.py +0 -0
  106. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +0 -0
  107. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +0 -0
  108. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/k_means.py +0 -0
  109. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/tests/test_dbscan.py +0 -0
  110. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/__init__.py +0 -0
  111. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +0 -0
  112. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +0 -0
  113. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +0 -0
  114. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +0 -0
  115. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +0 -0
  116. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/tests/test_decision_forest.py +0 -0
  117. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/__init__.py +0 -0
  118. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_coordinate_descent.py +0 -0
  119. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_linear.py +0 -0
  120. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_ridge.py +0 -0
  121. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/coordinate_descent.py +0 -0
  122. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/linear.py +0 -0
  123. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_loss.py +0 -0
  124. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +0 -0
  125. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/ridge.py +0 -0
  126. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_linear.py +0 -0
  127. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_ridge.py +0 -0
  128. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/__init__.py +0 -0
  129. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/_t_sne.py +0 -0
  130. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +0 -0
  131. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +0 -0
  132. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +0 -0
  133. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/__init__.py +0 -0
  134. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/_split.py +0 -0
  135. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/tests/test_split.py +0 -0
  136. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
  137. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +0 -0
  138. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/_models_info.py +0 -0
  139. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_monkeypatch.py +0 -0
  140. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_patching.py +0 -0
  141. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/utils/_launch_algorithms.py +0 -0
  142. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +0 -0
  143. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +0 -0
  144. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +0 -0
  145. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +0 -0
  146. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +0 -0
  147. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/tests/test_kneighbors.py +0 -0
  148. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +0 -0
  149. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +0 -0
  150. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +0 -0
  151. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/base.py +0 -0
  152. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/tests/test_utils.py +0 -0
  153. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/__init__.py +0 -0
  154. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/_config.py +0 -0
  155. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/basic_statistics/__init__.py +0 -0
  156. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/cluster/__init__.py +0 -0
  157. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_dbscan.py +0 -0
  158. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans.py +0 -0
  159. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans_init.py +0 -0
  160. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/common/_base.py +0 -0
  161. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/common/_estimator_checks.py +0 -0
  162. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/common/_mixin.py +0 -0
  163. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/common/_spmd_policy.py +0 -0
  164. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/common/hyperparameters.py +0 -0
  165. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/common/tests/test_policy.py +0 -0
  166. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/covariance/__init__.py +0 -0
  167. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_covariance.py +0 -0
  168. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/datatypes/tests/common.py +0 -0
  169. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/decomposition/__init__.py +0 -0
  170. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/ensemble/__init__.py +0 -0
  171. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/ensemble/tests/test_random_forest.py +0 -0
  172. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/linear_model/__init__.py +0 -0
  173. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_logistic_regression.py +0 -0
  174. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_ridge.py +0 -0
  175. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/neighbors/__init__.py +0 -0
  176. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/neighbors/tests/test_knn_classification.py +0 -0
  177. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/primitives/__init__.py +0 -0
  178. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/primitives/get_tree.py +0 -0
  179. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/primitives/tests/test_kernel_functions.py +0 -0
  180. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/svm/__init__.py +0 -0
  181. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/svm/tests/test_csr_svm.py +0 -0
  182. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvc.py +0 -0
  183. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvr.py +0 -0
  184. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svc.py +0 -0
  185. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svr.py +0 -0
  186. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/tests/test_common.py +0 -0
  187. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/tests/utils/_dataframes_support.py +0 -0
  188. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +0 -0
  189. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/utils/__init__.py +0 -0
  190. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/utils/_array_api.py +0 -0
  191. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/onedal/utils/_dpep_helpers.py +0 -0
  192. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/__init__.py +0 -0
  193. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/__main__.py +0 -0
  194. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/_config.py +0 -0
  195. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/_device_offload.py +0 -0
  196. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +0 -0
  197. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/cluster/__init__.py +0 -0
  198. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_dbscan.py +0 -0
  199. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/conftest.py +0 -0
  200. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/covariance/__init__.py +0 -0
  201. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/decomposition/__init__.py +0 -0
  202. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +0 -0
  203. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/doc/third-party-programs.txt +0 -0
  204. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/ensemble/__init__.py +0 -0
  205. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/glob/__main__.py +0 -0
  206. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/glob/dispatcher.py +0 -0
  207. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/linear_model/__init__.py +0 -0
  208. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +0 -0
  209. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +0 -0
  210. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/manifold/__init__.py +0 -0
  211. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/metrics/__init__.py +0 -0
  212. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/metrics/pairwise.py +0 -0
  213. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/metrics/ranking.py +0 -0
  214. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/metrics/tests/test_metrics.py +0 -0
  215. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/model_selection/__init__.py +0 -0
  216. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/model_selection/split.py +0 -0
  217. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/model_selection/tests/test_model_selection.py +0 -0
  218. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/neighbors/__init__.py +0 -0
  219. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/neighbors/_lof.py +0 -0
  220. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_classification.py +0 -0
  221. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_regression.py +0 -0
  222. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_unsupervised.py +0 -0
  223. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/neighbors/tests/test_neighbors.py +0 -0
  224. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +0 -0
  225. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +0 -0
  226. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/__init__.py +0 -0
  227. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/__init__.py +0 -0
  228. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/basic_statistics.py +0 -0
  229. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/incremental_basic_statistics.py +0 -0
  230. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +0 -0
  231. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +0 -0
  232. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +0 -0
  233. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_dbscan_spmd.py +0 -0
  234. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +0 -0
  235. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +0 -0
  236. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/incremental_covariance.py +0 -0
  237. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_covariance_spmd.py +0 -0
  238. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_incremental_covariance_spmd.py +0 -0
  239. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/__init__.py +0 -0
  240. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/incremental_pca.py +0 -0
  241. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +0 -0
  242. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_incremental_pca_spmd.py +0 -0
  243. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_pca_spmd.py +0 -0
  244. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +0 -0
  245. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +0 -0
  246. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/tests/test_forest_spmd.py +0 -0
  247. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/__init__.py +0 -0
  248. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/incremental_linear_model.py +0 -0
  249. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/linear_model.py +0 -0
  250. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/logistic_regression.py +0 -0
  251. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_linear_regression_spmd.py +0 -0
  252. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_logistic_regression_spmd.py +0 -0
  253. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +0 -0
  254. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/neighbors.py +0 -0
  255. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/tests/test_neighbors_spmd.py +0 -0
  256. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/svm/__init__.py +0 -0
  257. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/svm/nusvc.py +0 -0
  258. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/svm/nusvr.py +0 -0
  259. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/svm/svc.py +0 -0
  260. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/svm/svr.py +0 -0
  261. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/svm/tests/test_svm.py +0 -0
  262. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/tests/test_config.py +0 -0
  263. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +0 -0
  264. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/tests/test_parallel.py +0 -0
  265. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +0 -0
  266. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/utils/_array_api.py +0 -0
  267. {scikit_learn_intelex-2025.1.0.data → scikit_learn_intelex-2025.4.0.data}/data/Lib/site-packages/sklearnex/utils/parallel.py +0 -0
  268. {scikit_learn_intelex-2025.1.0.dist-info → scikit_learn_intelex-2025.4.0.dist-info}/LICENSE.txt +0 -0
  269. {scikit_learn_intelex-2025.1.0.dist-info → scikit_learn_intelex-2025.4.0.dist-info}/WHEEL +0 -0
  270. {scikit_learn_intelex-2025.1.0.dist-info → scikit_learn_intelex-2025.4.0.dist-info}/top_level.txt +0 -0
@@ -15,12 +15,15 @@
15
15
  # ==============================================================================
16
16
 
17
17
  import importlib.util
18
+ import io
18
19
  import os
19
20
  import pathlib
20
21
  import pkgutil
21
22
  import re
22
23
  import sys
23
24
  import trace
25
+ from contextlib import redirect_stdout
26
+ from multiprocessing import Pipe, Process, get_context
24
27
 
25
28
  import pytest
26
29
  from sklearn.utils import all_estimators
@@ -225,23 +228,137 @@ def _whitelist_to_blacklist():
225
228
  _TRACE_BLOCK_LIST = _whitelist_to_blacklist()
226
229
 
227
230
 
231
+ def sklearnex_trace(estimator_name, method_name):
232
+ """Generate a trace of all function calls in calling estimator.method.
233
+
234
+ Parameters
235
+ ----------
236
+ estimator_name : str
237
+ name of estimator which is a key from PATCHED_MODELS or SPECIAL_INSTANCES
238
+
239
+ method_name : str
240
+ name of estimator method which is to be traced and stored
241
+
242
+ Returns
243
+ -------
244
+ text: str
245
+ Returns a string output (captured stdout of a python Trace call). It is a
246
+ modified version to be more informative, completed by a monkeypatching
247
+ of trace._modname.
248
+ """
249
+ # get estimator
250
+ est = (
251
+ PATCHED_MODELS[estimator_name]()
252
+ if estimator_name in PATCHED_MODELS
253
+ else SPECIAL_INSTANCES[estimator_name]
254
+ )
255
+
256
+ # get dataset
257
+ X, y = gen_dataset(est)[0]
258
+ # fit dataset if method does not contain 'fit'
259
+ if "fit" not in method_name:
260
+ est.fit(X, y)
261
+
262
+ # monkeypatch new modname for clearer info
263
+ orig_modname = trace._modname
264
+ try:
265
+ # initialize tracer to have a more verbose module naming
266
+ # this impacts ignoremods, but it is not used.
267
+ trace._modname = _fullpath
268
+ tracer = trace.Trace(
269
+ count=0,
270
+ trace=1,
271
+ ignoredirs=_TRACE_BLOCK_LIST,
272
+ )
273
+ # call trace on method with dataset
274
+ f = io.StringIO()
275
+ with redirect_stdout(f):
276
+ tracer.runfunc(call_method, est, method_name, X, y)
277
+ return f.getvalue()
278
+ finally:
279
+ trace._modname = orig_modname
280
+
281
+
282
+ def _trace_daemon(pipe):
283
+ """function interface for the other process. Information
284
+ exchanged using a multiprocess.Pipe"""
285
+ # a sent value with inherent conversion to False will break
286
+ # the while loop and complete the function
287
+ while key := pipe.recv():
288
+ try:
289
+ text = sklearnex_trace(*key)
290
+ except:
291
+ # catch all exceptions and pass back,
292
+ # this way the process still runs
293
+ text = ""
294
+ finally:
295
+ pipe.send(text)
296
+
297
+
298
+ class _FakePipe:
299
+ """Minimalistic representation of a multiprocessing.Pipe for test development.
300
+ This allows for running sklearnex_trace in the parent process"""
301
+
302
+ _text = ""
303
+
304
+ def send(self, key):
305
+ self._text = sklearnex_trace(*key)
306
+
307
+ def recv(self):
308
+ return self._text
309
+
310
+
311
+ @pytest.fixture(scope="module")
312
+ def isolated_trace():
313
+ """Generates a separate python process for isolated sklearnex traces.
314
+
315
+ It is a module scope fixture due to the overhead of importing all the
316
+ various dependencies and is done once before all the various tests.
317
+ Each test will first check a cached value, if not existent it will have
318
+ the waiting child process generate the trace and return the text for
319
+ caching on its behalf. The isolated process is stopped at test teardown.
320
+
321
+ Yields
322
+ -------
323
+ pipe_parent: multiprocessing.Connection
324
+ one end of a duplex pipe to be used by other pytest fixtures for
325
+ communicating with the special isolated tracing python instance
326
+ for sklearnex estimators.
327
+ """
328
+ # yield _FakePipe()
329
+ try:
330
+ # force use of 'spawn' to guarantee a clean python environment
331
+ # from possible coverage arc tracing
332
+ ctx = get_context("spawn")
333
+ pipe_parent, pipe_child = ctx.Pipe()
334
+ p = ctx.Process(target=_trace_daemon, args=(pipe_child,), daemon=True)
335
+ p.start()
336
+ yield pipe_parent
337
+ finally:
338
+ # guarantee closing of the process via a try-catch-finally
339
+ # passing False terminates _trace_daemon's loop
340
+ pipe_parent.send(False)
341
+ pipe_parent.close()
342
+ pipe_child.close()
343
+ p.join()
344
+ p.close()
345
+
346
+
228
347
  @pytest.fixture
229
- def estimator_trace(estimator, method, cache, capsys, monkeypatch):
230
- """Generate a trace of all function calls in calling estimator.method with cache.
348
+ def estimator_trace(estimator, method, cache, isolated_trace):
349
+ """Create cache of all function calls in calling estimator.method.
231
350
 
232
351
  Parameters
233
352
  ----------
234
353
  estimator : str
235
- name of estimator which is a key from PATCHED_MODELS or
354
+ name of estimator which is a key from PATCHED_MODELS or SPECIAL_INSTANCES
236
355
 
237
356
  method : str
238
357
  name of estimator method which is to be traced and stored
239
358
 
240
359
  cache: pytest.fixture (standard)
241
360
 
242
- capsys: pytest.fixture (standard)
243
-
244
- monkeypatch: pytest.fixture (standard)
361
+ isolated_trace: pytest.fixture (test_common.py)
245
362
 
246
363
  Returns
247
364
  -------
@@ -256,31 +373,15 @@ def estimator_trace(estimator, method, cache, capsys, monkeypatch):
256
373
  key = "-".join((str(estimator), method))
257
374
  flag = cache.get("key", "") != key
258
375
  if flag:
259
- # get estimator
260
- try:
261
- est = PATCHED_MODELS[estimator]()
262
- except KeyError:
263
- est = SPECIAL_INSTANCES[estimator]
264
-
265
- # get dataset
266
- X, y = gen_dataset(est)[0]
267
- # fit dataset if method does not contain 'fit'
268
- if "fit" not in method:
269
- est.fit(X, y)
270
376
 
271
- # initialize tracer to have a more verbose module naming
272
- # this impacts ignoremods, but it is not used.
273
- monkeypatch.setattr(trace, "_modname", _fullpath)
274
- tracer = trace.Trace(
275
- count=0,
276
- trace=1,
277
- ignoredirs=_TRACE_BLOCK_LIST,
278
- )
279
- # call trace on method with dataset
280
- tracer.runfunc(call_method, est, method, X, y)
377
+ isolated_trace.send((estimator, method))
378
+ text = isolated_trace.recv()
379
+ # if tracing does not function in isolated_trace, run it in parent process and error
380
+ if text == "":
381
+ sklearnex_trace(estimator, method)
382
+ # guarantee failure if intermittent
383
+ assert text, f"sklearnex_trace failure for {estimator}.{method}"
281
384
 
282
- # collect trace for analysis
283
- text = capsys.readouterr().out
284
385
  for modulename, file in _TRACE_ALLOW_DICT.items():
285
386
  text = text.replace(file, modulename)
286
387
  regex_func = (
@@ -0,0 +1,43 @@
1
+ # ==============================================================================
2
+ # Copyright 2024 Intel Corporation
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+ # ==============================================================================
16
+
17
+
18
+ import pytest
19
+
20
+ from sklearnex._utils import register_hyperparameters
21
+
22
+
23
+ def test_register_hyperparameters():
24
+ hyperparameters_map = {"op": "hyperparameters"}
25
+
26
+ @register_hyperparameters(hyperparameters_map)
27
+ class Test:
28
+ pass
29
+
30
+ # assert the correct value is returned
31
+ assert Test.get_hyperparameters("op") == "hyperparameters"
32
+
33
+
34
+ def test_register_hyperparameters_issues_warning():
35
+ hyperparameters_map = {"op": "hyperparameters"}
36
+
37
+ @register_hyperparameters(hyperparameters_map)
38
+ class Test:
39
+ pass
40
+
41
+ # assert a warning is issued when trying to modify the hyperparameters per instance
42
+ with pytest.warns(Warning):
43
+ Test().get_hyperparameters("op")
@@ -35,10 +35,14 @@ from onedal.tests.utils._dataframes_support import (
35
35
  get_dataframes_and_queues,
36
36
  )
37
37
  from onedal.tests.utils._device_selection import get_queues, is_dpctl_device_available
38
- from onedal.utils._array_api import _get_sycl_namespace
39
38
  from onedal.utils._dpep_helpers import dpctl_available, dpnp_available
40
39
  from sklearnex import config_context
41
- from sklearnex.tests.utils import PATCHED_FUNCTIONS, PATCHED_MODELS, SPECIAL_INSTANCES
40
+ from sklearnex.tests.utils import (
41
+ PATCHED_FUNCTIONS,
42
+ PATCHED_MODELS,
43
+ SPECIAL_INSTANCES,
44
+ DummyEstimator,
45
+ )
42
46
  from sklearnex.utils._array_api import get_namespace
43
47
 
44
48
  if dpctl_available:
@@ -72,7 +76,6 @@ GPU_SKIP_LIST = (
72
76
  "config_context", # does not malloc
73
77
  "get_config", # does not malloc
74
78
  "set_config", # does not malloc
75
- "Ridge", # does not support GPU offloading (fails silently)
76
79
  "ElasticNet", # does not support GPU offloading (fails silently)
77
80
  "Lasso", # does not support GPU offloading (fails silently)
78
81
  "SVR", # does not support GPU offloading (fails silently)
@@ -132,41 +135,6 @@ N_SPLITS = 10
132
135
  ORDER_DICT = {"F": np.asfortranarray, "C": np.ascontiguousarray}
133
136
 
134
137
 
135
- if _is_dpc_backend:
136
-
137
- from sklearn.utils.validation import check_is_fitted
138
-
139
- from onedal.datatypes import from_table, to_table
140
-
141
- class DummyEstimatorWithTableConversions(BaseEstimator):
142
-
143
- def fit(self, X, y=None):
144
- sua_iface, xp, _ = _get_sycl_namespace(X)
145
- X_table = to_table(X)
146
- y_table = to_table(y)
147
- # The presence of the fitted attributes (ending with a trailing
148
- # underscore) is required for the correct check. The cleanup of
149
- # the memory will occur at the estimator instance deletion.
150
- self.x_attr_ = from_table(
151
- X_table, sua_iface=sua_iface, sycl_queue=X.sycl_queue, xp=xp
152
- )
153
- self.y_attr_ = from_table(
154
- y_table, sua_iface=sua_iface, sycl_queue=X.sycl_queue, xp=xp
155
- )
156
- return self
157
-
158
- def predict(self, X):
159
- # Checks if the estimator is fitted by verifying the presence of
160
- # fitted attributes (ending with a trailing underscore).
161
- check_is_fitted(self)
162
- sua_iface, xp, _ = _get_sycl_namespace(X)
163
- X_table = to_table(X)
164
- returned_X = from_table(
165
- X_table, sua_iface=sua_iface, sycl_queue=X.sycl_queue, xp=xp
166
- )
167
- return returned_X
168
-
169
-
170
138
  def gen_clsf_data(n_samples, n_features, dtype=None):
171
139
  data, label = make_classification(
172
140
  n_classes=2, n_samples=n_samples, n_features=n_features, random_state=777
@@ -370,7 +338,7 @@ def test_table_conversions_memory_leaks(dataframe, queue, order, data_shape, dty
370
338
  pytest.skip("SYCL device memory leak check requires the level zero sysman")
371
339
 
372
340
  _kfold_function_template(
373
- DummyEstimatorWithTableConversions,
341
+ DummyEstimator,
374
342
  dataframe,
375
343
  data_shape,
376
344
  queue,
@@ -208,11 +208,10 @@ def test_preview_namespace():
208
208
  from sklearn.cluster import DBSCAN
209
209
  from sklearn.decomposition import PCA
210
210
  from sklearn.ensemble import RandomForestClassifier
211
- from sklearn.linear_model import LinearRegression, Ridge
211
+ from sklearn.linear_model import LinearRegression
212
212
  from sklearn.svm import SVC
213
213
 
214
214
  return (
215
- Ridge(),
216
215
  LinearRegression(),
217
216
  PCA(),
218
217
  DBSCAN(),
@@ -227,12 +226,9 @@ def test_preview_namespace():
227
226
 
228
227
  assert _is_preview_enabled()
229
228
 
230
- ridge, lr, pca, dbscan, svc, rfc = get_estimators()
229
+ lr, pca, dbscan, svc, rfc = get_estimators()
231
230
  assert "sklearnex" in rfc.__module__
232
231
 
233
- if daal_check_version((2024, "P", 600)):
234
- assert "sklearnex.preview" in ridge.__module__
235
-
236
232
  if daal_check_version((2023, "P", 100)):
237
233
  assert "sklearnex" in lr.__module__
238
234
  else:
@@ -246,8 +242,7 @@ def test_preview_namespace():
246
242
  sklearnex.unpatch_sklearn()
247
243
 
248
244
  # no patching behavior
249
- ridge, lr, pca, dbscan, svc, rfc = get_estimators()
250
- assert "sklearn." in ridge.__module__ and "daal4py" not in ridge.__module__
245
+ lr, pca, dbscan, svc, rfc = get_estimators()
251
246
  assert "sklearn." in lr.__module__ and "daal4py" not in lr.__module__
252
247
  assert "sklearn." in pca.__module__ and "daal4py" not in pca.__module__
253
248
  assert "sklearn." in dbscan.__module__ and "daal4py" not in dbscan.__module__
@@ -259,9 +254,7 @@ def test_preview_namespace():
259
254
  sklearnex.patch_sklearn()
260
255
  assert not _is_preview_enabled()
261
256
 
262
- ridge, lr, pca, dbscan, svc, rfc = get_estimators()
263
-
264
- assert "daal4py" in ridge.__module__
257
+ lr, pca, dbscan, svc, rfc = get_estimators()
265
258
 
266
259
  if daal_check_version((2023, "P", 100)):
267
260
  assert "sklearnex" in lr.__module__
@@ -135,7 +135,6 @@ def test_standard_estimator_patching(caplog, dataframe, queue, dtype, estimator,
135
135
  elif queue.sycl_device.is_gpu and estimator in [
136
136
  "ElasticNet",
137
137
  "Lasso",
138
- "Ridge",
139
138
  ]:
140
139
  pytest.skip(f"{estimator} does not support GPU queues")
141
140
 
@@ -144,13 +143,6 @@ def test_standard_estimator_patching(caplog, dataframe, queue, dtype, estimator,
144
143
 
145
144
  if estimator == "TSNE" and method == "fit_transform":
146
145
  pytest.skip("TSNE.fit_transform is too slow for common testing")
147
- elif (
148
- estimator == "Ridge"
149
- and method in ["predict", "score"]
150
- and sys.platform == "win32"
151
- and dtype in [np.uint32, np.uint64]
152
- ):
153
- pytest.skip("Windows segmentation fault for Ridge.predict for unsigned ints")
154
146
  elif estimator == "IncrementalLinearRegression" and np.issubdtype(
155
147
  dtype, np.integer
156
148
  ):
@@ -34,6 +34,7 @@ from sklearn.datasets import (
34
34
  import daal4py as d4p
35
35
  from daal4py.sklearn._utils import daal_check_version
36
36
  from onedal.tests.utils._dataframes_support import _as_numpy, get_dataframes_and_queues
37
+ from sklearnex.basic_statistics import BasicStatistics
37
38
  from sklearnex.cluster import DBSCAN, KMeans
38
39
  from sklearnex.decomposition import PCA
39
40
  from sklearnex.metrics import pairwise_distances, roc_auc_score
@@ -117,6 +118,12 @@ def _run_test(estimator, method, datasets):
117
118
 
118
119
 
119
120
  _sparse_instances = [SVC()]
121
+ if daal_check_version((2025, "P", 200)): # Test for >= 2025.2.0
122
+ _sparse_instances.extend(
123
+ [
124
+ BasicStatistics(result_options=["sum", "min"]),
125
+ ]
126
+ )
120
127
  if daal_check_version((2024, "P", 700)): # Test for > 2024.7.0
121
128
  _sparse_instances.extend(
122
129
  [
@@ -153,8 +160,6 @@ def _skip_neighbors(estimator, method):
153
160
  and method
154
161
  in ["score", "predict", "kneighbors", "kneighbors_graph", "predict_proba"]
155
162
  ):
156
- if daal_check_version((2025, "P", 200)):
157
- pytest.fail("Re-verify failure of algorithms in oneDAL 2025.2")
158
163
  pytest.skip(f"{estimator} shows instability on non-Intel(R) hardware")
159
164
 
160
165
 
@@ -21,10 +21,12 @@ from .base import (
21
21
  SPECIAL_INSTANCES,
22
22
  UNPATCHED_FUNCTIONS,
23
23
  UNPATCHED_MODELS,
24
+ DummyEstimator,
24
25
  _get_processor_info,
25
26
  call_method,
26
27
  gen_dataset,
27
28
  gen_models_info,
29
+ gen_sparse_dataset,
28
30
  sklearn_clone_dict,
29
31
  )
30
32
 
@@ -38,7 +40,9 @@ __all__ = [
38
40
  "call_method",
39
41
  "gen_models_info",
40
42
  "gen_dataset",
43
+ "gen_sparse_dataset",
41
44
  "sklearn_clone_dict",
45
+ "DummyEstimator",
42
46
  ]
43
47
 
44
48
  _IS_INTEL = "GenuineIntel" in _get_processor_info()
@@ -32,8 +32,11 @@ from sklearn.base import (
32
32
  )
33
33
  from sklearn.datasets import load_diabetes, load_iris
34
34
  from sklearn.neighbors._base import KNeighborsMixin
35
+ from sklearn.utils.validation import check_is_fitted
35
36
 
37
+ from onedal.datatypes import from_table, to_table
36
38
  from onedal.tests.utils._dataframes_support import _convert_to_dataframe
39
+ from onedal.utils._array_api import _get_sycl_namespace
37
40
  from sklearnex import get_patch_map, patch_sklearn, sklearn_is_patched, unpatch_sklearn
38
41
  from sklearnex.basic_statistics import BasicStatistics, IncrementalBasicStatistics
39
42
  from sklearnex.linear_model import LogisticRegression
@@ -336,6 +339,27 @@ def gen_dataset(
336
339
  return output
337
340
 
338
341
 
342
+ def gen_sparse_dataset(row_count, column_count, **kwargs):
343
+ """Generate sparse dataset for pytest testing.
344
+
345
+ Parameters
346
+ ----------
347
+ row_count : number of rows in dataset
348
+
349
+ column_count: number of columns in dataset
350
+
351
+ kwargs: keyword arguments for scipy.sparse.random_array or scipy.sparse.random
352
+
353
+ Returns
354
+ -------
355
+ scipy.sparse random matrix or array depending on scipy version
356
+ """
357
+ if hasattr(sp, "random_array"):
358
+ return sp.random_array((row_count, column_count), **kwargs)
359
+ else:
360
+ return sp.random(row_count, column_count, **kwargs)
361
+
362
+
339
363
  DTYPES = [
340
364
  np.int8,
341
365
  np.int16,
@@ -369,3 +393,44 @@ def _get_processor_info():
369
393
  )
370
394
 
371
395
  return proc
396
+
397
+
398
+ class DummyEstimator(BaseEstimator):
399
+
400
+ def fit(self, X, y=None):
401
+ sua_iface, xp, _ = _get_sycl_namespace(X)
402
+ X_table = to_table(X)
403
+ y_table = to_table(y)
404
+ # The presence of the fitted attributes (ending with a trailing
405
+ # underscore) is required for the correct check. The cleanup of
406
+ # the memory will occur at the estimator instance deletion.
407
+ if sua_iface:
408
+ self.x_attr_ = from_table(
409
+ X_table, sua_iface=sua_iface, sycl_queue=X.sycl_queue, xp=xp
410
+ )
411
+ self.y_attr_ = from_table(
412
+ y_table,
413
+ sua_iface=sua_iface,
414
+ sycl_queue=X.sycl_queue if y is None else y.sycl_queue,
415
+ xp=xp,
416
+ )
417
+ else:
418
+ self.x_attr = from_table(X_table)
419
+ self.y_attr = from_table(y_table)
420
+
421
+ return self
422
+
423
+ def predict(self, X):
424
+ # Checks if the estimator is fitted by verifying the presence of
425
+ # fitted attributes (ending with a trailing underscore).
426
+ check_is_fitted(self)
427
+ sua_iface, xp, _ = _get_sycl_namespace(X)
428
+ X_table = to_table(X)
429
+ if sua_iface:
430
+ returned_X = from_table(
431
+ X_table, sua_iface=sua_iface, sycl_queue=X.sycl_queue, xp=xp
432
+ )
433
+ else:
434
+ returned_X = from_table(X_table)
435
+
436
+ return returned_X
@@ -14,4 +14,6 @@
14
14
  # limitations under the License.
15
15
  # ===============================================================================
16
16
 
17
- from daal4py.sklearn.utils.validation import _assert_all_finite
17
+ from .validation import assert_all_finite
18
+
19
+ __all__ = ["assert_all_finite"]