scikit-learn-intelex 2024.1.0__py310-none-win_amd64.whl → 2025.1.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 (277) hide show
  1. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/__init__.py +73 -0
  2. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/__main__.py +58 -0
  3. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/_daal4py.cp310-win_amd64.pyd +0 -0
  4. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/doc/third-party-programs.txt +424 -0
  5. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/mb/__init__.py +19 -0
  6. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/mb/model_builders.py +377 -0
  7. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/mpi_transceiver.cp310-win_amd64.pyd +0 -0
  8. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/__init__.py +40 -0
  9. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/_n_jobs_support.py +248 -0
  10. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/_utils.py +245 -0
  11. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +20 -0
  12. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +165 -0
  13. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/k_means.py +597 -0
  14. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/tests/test_dbscan.py +109 -0
  15. {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/cluster → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/decomposition}/__init__.py +3 -3
  16. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +524 -0
  17. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +196 -0
  18. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +337 -0
  19. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +27 -0
  20. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +1397 -0
  21. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/tests/test_decision_forest.py +206 -0
  22. {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn}/linear_model/__init__.py +29 -29
  23. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/_coordinate_descent.py +848 -0
  24. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/_linear.py +272 -0
  25. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/_ridge.py +325 -0
  26. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/coordinate_descent.py +2 -2
  27. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/linear.py +17 -0
  28. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_loss.py +195 -0
  29. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +1026 -0
  30. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/ridge.py +17 -0
  31. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_linear.py +208 -0
  32. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_ridge.py +69 -0
  33. {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/manifold}/__init__.py +4 -2
  34. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/manifold/_t_sne.py +405 -0
  35. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +20 -0
  36. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +236 -0
  37. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +210 -0
  38. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/model_selection/__init__.py +19 -0
  39. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/model_selection/_split.py +309 -0
  40. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/model_selection/tests/test_split.py +56 -0
  41. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
  42. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +232 -0
  43. {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch}/tests/_models_info.py +13 -22
  44. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_monkeypatch.py +71 -0
  45. {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch}/tests/test_patching.py +10 -42
  46. {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch}/tests/utils/_launch_algorithms.py +4 -5
  47. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +21 -0
  48. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +503 -0
  49. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +139 -0
  50. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +74 -0
  51. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +55 -0
  52. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/tests/test_kneighbors.py +113 -0
  53. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +19 -0
  54. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +734 -0
  55. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +21 -0
  56. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/utils/base.py +75 -0
  57. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/utils/tests/test_utils.py +51 -0
  58. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +693 -0
  59. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/__init__.py +83 -0
  60. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/_config.py +54 -0
  61. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/_device_offload.py +222 -0
  62. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp310-win_amd64.pyd +0 -0
  63. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp310-win_amd64.pyd +0 -0
  64. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/basic_statistics/__init__.py +20 -0
  65. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/basic_statistics/basic_statistics.py +107 -0
  66. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/basic_statistics/incremental_basic_statistics.py +160 -0
  67. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/basic_statistics/tests/test_basic_statistics.py +298 -0
  68. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/basic_statistics/tests/test_incremental_basic_statistics.py +196 -0
  69. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/__init__.py +27 -0
  70. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/dbscan.py +110 -0
  71. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/kmeans.py +564 -0
  72. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/kmeans_init.py +115 -0
  73. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/tests/test_dbscan.py +125 -0
  74. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/tests/test_kmeans.py +88 -0
  75. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/cluster/tests/test_kmeans_init.py +93 -0
  76. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/_base.py +38 -0
  77. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/_estimator_checks.py +47 -0
  78. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/_mixin.py +62 -0
  79. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/_policy.py +59 -0
  80. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/_spmd_policy.py +30 -0
  81. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/hyperparameters.py +125 -0
  82. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/common/tests/test_policy.py +76 -0
  83. {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/linear_model → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/covariance}/__init__.py +3 -2
  84. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/covariance/covariance.py +125 -0
  85. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +146 -0
  86. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/covariance/tests/test_covariance.py +50 -0
  87. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/covariance/tests/test_incremental_covariance.py +122 -0
  88. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/datatypes/__init__.py +19 -0
  89. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +154 -0
  90. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/datatypes/tests/common.py +126 -0
  91. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +414 -0
  92. {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/decomposition}/__init__.py +3 -2
  93. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +204 -0
  94. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/decomposition/pca.py +186 -0
  95. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/decomposition/tests/test_incremental_pca.py +198 -0
  96. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/ensemble/__init__.py +29 -0
  97. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/ensemble/forest.py +727 -0
  98. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/ensemble/tests/test_random_forest.py +97 -0
  99. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/__init__.py +27 -0
  100. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/incremental_linear_model.py +258 -0
  101. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/linear_model.py +329 -0
  102. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/logistic_regression.py +249 -0
  103. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_linear_regression.py +168 -0
  104. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_ridge_regression.py +107 -0
  105. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_linear_regression.py +250 -0
  106. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_logistic_regression.py +95 -0
  107. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_ridge.py +95 -0
  108. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/neighbors/__init__.py +19 -0
  109. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/neighbors/neighbors.py +767 -0
  110. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/neighbors/tests/test_knn_classification.py +49 -0
  111. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/primitives/__init__.py +27 -0
  112. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/primitives/get_tree.py +25 -0
  113. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/primitives/kernel_functions.py +153 -0
  114. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/primitives/tests/test_kernel_functions.py +159 -0
  115. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/__init__.py +19 -0
  116. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/svm.py +556 -0
  117. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/tests/test_csr_svm.py +351 -0
  118. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/tests/test_nusvc.py +204 -0
  119. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/tests/test_nusvr.py +210 -0
  120. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/tests/test_svc.py +176 -0
  121. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/svm/tests/test_svr.py +243 -0
  122. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/tests/test_common.py +57 -0
  123. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/tests/utils/_dataframes_support.py +162 -0
  124. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +102 -0
  125. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/utils/__init__.py +49 -0
  126. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/utils/_array_api.py +81 -0
  127. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/utils/_dpep_helpers.py +56 -0
  128. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/onedal/utils/validation.py +440 -0
  129. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/__init__.py +10 -7
  130. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/_config.py +22 -16
  131. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/_device_offload.py +126 -0
  132. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/_utils.py +27 -4
  133. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +20 -0
  134. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +230 -0
  135. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +345 -0
  136. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_basic_statistics.py +270 -0
  137. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_incremental_basic_statistics.py +404 -0
  138. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/cluster/__init__.py +1 -1
  139. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/cluster/dbscan.py +19 -10
  140. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/cluster/k_means.py +395 -0
  141. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_dbscan.py +8 -6
  142. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +159 -0
  143. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/conftest.py +82 -0
  144. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/covariance/__init__.py +19 -0
  145. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +398 -0
  146. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/covariance/tests/test_incremental_covariance.py +237 -0
  147. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/decomposition/pca.py +425 -0
  148. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_preview_pca.py → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +25 -9
  149. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/dispatcher.py +241 -60
  150. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/ensemble/_forest.py +250 -188
  151. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/ensemble/tests/test_forest.py +39 -21
  152. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/glob/dispatcher.py +16 -2
  153. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/__init__.py +32 -0
  154. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +13 -0
  155. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/incremental_linear.py +482 -0
  156. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +425 -0
  157. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/linear.py +341 -0
  158. {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex}/linear_model/logistic_regression.py +194 -133
  159. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/linear_model/ridge.py +7 -0
  160. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_linear.py +207 -0
  161. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_ridge.py +153 -0
  162. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +167 -0
  163. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +134 -0
  164. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/manifold/t_sne.py +4 -0
  165. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/metrics/pairwise.py +5 -0
  166. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/metrics/ranking.py +3 -0
  167. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/model_selection/split.py +5 -0
  168. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/neighbors/__init__.py +1 -1
  169. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/neighbors/_lof.py +236 -0
  170. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/neighbors/common.py +53 -6
  171. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_classification.py +51 -155
  172. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_regression.py +46 -149
  173. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_unsupervised.py +55 -100
  174. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/neighbors/tests/test_neighbors.py +16 -18
  175. {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview}/__init__.py +1 -3
  176. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +138 -0
  177. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +18 -5
  178. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +19 -0
  179. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +233 -0
  180. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_incremental_pca.py +266 -0
  181. {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/decomposition → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/linear_model}/__init__.py +19 -19
  182. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/linear_model/ridge.py +424 -0
  183. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/preview/linear_model/tests/test_ridge.py +102 -0
  184. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/__init__.py +1 -0
  185. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/__init__.py +20 -0
  186. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/incremental_basic_statistics.py +30 -0
  187. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_basic_statistics_spmd.py +107 -0
  188. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_incremental_basic_statistics_spmd.py +307 -0
  189. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_dbscan_spmd.py +97 -0
  190. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_kmeans_spmd.py +172 -0
  191. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +20 -0
  192. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +21 -0
  193. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/incremental_covariance.py +37 -0
  194. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_covariance_spmd.py +107 -0
  195. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_incremental_covariance_spmd.py +184 -0
  196. {scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition}/__init__.py +3 -2
  197. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/incremental_pca.py +11 -12
  198. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_incremental_pca_spmd.py +269 -0
  199. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_pca_spmd.py +128 -0
  200. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +4 -12
  201. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/ensemble/tests/test_forest_spmd.py +265 -0
  202. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/__init__.py +3 -1
  203. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/tests/test_config.py → scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/incremental_linear_model.py +14 -18
  204. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/logistic_regression.py +21 -0
  205. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_incremental_linear_spmd.py +329 -0
  206. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_linear_regression_spmd.py +145 -0
  207. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_logistic_regression_spmd.py +162 -0
  208. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/tests/test_neighbors_spmd.py +288 -0
  209. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/svm/_common.py +339 -0
  210. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/svm/nusvc.py +172 -78
  211. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/svm/nusvr.py +74 -70
  212. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/svm/svc.py +170 -77
  213. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/svm/svr.py +66 -66
  214. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/svm/tests/test_svm.py +12 -20
  215. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_common.py +390 -0
  216. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_config.py +123 -0
  217. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +379 -0
  218. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +276 -0
  219. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +108 -0
  220. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/tests/test_parallel.py +6 -8
  221. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_patching.py +385 -0
  222. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +321 -0
  223. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +44 -0
  224. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/utils/base.py +371 -0
  225. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +198 -0
  226. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/utils/_array_api.py +82 -0
  227. scikit_learn_intelex-2025.1.0.data/data/Lib/site-packages/sklearnex/utils/tests/test_finite.py +89 -0
  228. {scikit_learn_intelex-2024.1.0.dist-info → scikit_learn_intelex-2025.1.0.dist-info}/METADATA +231 -230
  229. scikit_learn_intelex-2025.1.0.dist-info/RECORD +257 -0
  230. {scikit_learn_intelex-2024.1.0.dist-info → scikit_learn_intelex-2025.1.0.dist-info}/WHEEL +1 -1
  231. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/_device_offload.py +0 -223
  232. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/cluster/k_means.py +0 -17
  233. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +0 -30
  234. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/decomposition/pca.py +0 -17
  235. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +0 -27
  236. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/linear_model/linear.py +0 -388
  237. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/linear_model/logistic_path.py +0 -17
  238. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +0 -82
  239. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +0 -28
  240. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/neighbors/lof.py +0 -436
  241. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/cluster/_common.py +0 -84
  242. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/cluster/k_means.py +0 -376
  243. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +0 -98
  244. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/pca.py +0 -376
  245. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/preview/linear_model/tests/test_preview_logistic_regression.py +0 -59
  246. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/svm/_common.py +0 -188
  247. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +0 -225
  248. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +0 -227
  249. scikit_learn_intelex-2024.1.0.data/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability_tests.py +0 -428
  250. scikit_learn_intelex-2024.1.0.dist-info/RECORD +0 -97
  251. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/__main__.py +0 -0
  252. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/decomposition/__init__.py +0 -0
  253. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/doc/third-party-programs.txt +0 -0
  254. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/ensemble/__init__.py +0 -0
  255. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/glob/__main__.py +0 -0
  256. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/manifold/__init__.py +0 -0
  257. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +0 -0
  258. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/metrics/__init__.py +0 -0
  259. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/metrics/tests/test_metrics.py +0 -0
  260. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/model_selection/__init__.py +0 -0
  261. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/model_selection/tests/test_model_selection.py +0 -0
  262. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +0 -0
  263. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/basic_statistics.py +0 -0
  264. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +0 -0
  265. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +0 -0
  266. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +0 -0
  267. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +0 -0
  268. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +0 -0
  269. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/linear_model.py +0 -0
  270. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +0 -0
  271. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/neighbors.py +0 -0
  272. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/svm/__init__.py +0 -0
  273. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/utils/__init__.py +0 -0
  274. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/utils/parallel.py +0 -0
  275. {scikit_learn_intelex-2024.1.0.data → scikit_learn_intelex-2025.1.0.data}/data/Lib/site-packages/sklearnex/utils/validation.py +0 -0
  276. {scikit_learn_intelex-2024.1.0.dist-info → scikit_learn_intelex-2025.1.0.dist-info}/LICENSE.txt +0 -0
  277. {scikit_learn_intelex-2024.1.0.dist-info → scikit_learn_intelex-2025.1.0.dist-info}/top_level.txt +0 -0
@@ -14,132 +14,32 @@
14
14
  # limitations under the License.
15
15
  # ==============================================================================
16
16
 
17
- import warnings
18
-
19
- from sklearn.neighbors._ball_tree import BallTree
20
- from sklearn.neighbors._base import NeighborsBase as sklearn_NeighborsBase
21
- from sklearn.neighbors._kd_tree import KDTree
22
-
23
- from daal4py.sklearn._utils import control_n_jobs, run_with_n_jobs, sklearn_check_version
24
-
25
- if not sklearn_check_version("1.2"):
26
- from sklearn.neighbors._base import _check_weights
27
-
28
- import numpy as np
29
- from sklearn.neighbors._base import VALID_METRICS
17
+ from sklearn.metrics import r2_score
30
18
  from sklearn.neighbors._regression import (
31
- KNeighborsRegressor as sklearn_KNeighborsRegressor,
19
+ KNeighborsRegressor as _sklearn_KNeighborsRegressor,
32
20
  )
33
- from sklearn.neighbors._unsupervised import NearestNeighbors as sklearn_NearestNeighbors
34
21
  from sklearn.utils.validation import _deprecate_positional_args, check_is_fitted
35
22
 
23
+ from daal4py.sklearn._n_jobs_support import control_n_jobs
24
+ from daal4py.sklearn._utils import sklearn_check_version
36
25
  from onedal.neighbors import KNeighborsRegressor as onedal_KNeighborsRegressor
37
- from onedal.utils import _check_array, _num_features, _num_samples
38
26
 
39
27
  from .._device_offload import dispatch, wrap_output_data
40
28
  from .common import KNeighborsDispatchingBase
41
29
 
42
- if sklearn_check_version("0.24"):
43
-
44
- class KNeighborsRegressor_(sklearn_KNeighborsRegressor):
45
- if sklearn_check_version("1.2"):
46
- _parameter_constraints: dict = {
47
- **sklearn_KNeighborsRegressor._parameter_constraints
48
- }
49
-
50
- @_deprecate_positional_args
51
- def __init__(
52
- self,
53
- n_neighbors=5,
54
- *,
55
- weights="uniform",
56
- algorithm="auto",
57
- leaf_size=30,
58
- p=2,
59
- metric="minkowski",
60
- metric_params=None,
61
- n_jobs=None,
62
- **kwargs,
63
- ):
64
- super().__init__(
65
- n_neighbors=n_neighbors,
66
- algorithm=algorithm,
67
- leaf_size=leaf_size,
68
- metric=metric,
69
- p=p,
70
- metric_params=metric_params,
71
- n_jobs=n_jobs,
72
- **kwargs,
73
- )
74
- self.weights = (
75
- weights if sklearn_check_version("1.0") else _check_weights(weights)
76
- )
77
-
78
- elif sklearn_check_version("0.22"):
79
- from sklearn.neighbors._base import SupervisedFloatMixin as BaseSupervisedFloatMixin
80
-
81
- class KNeighborsRegressor_(sklearn_KNeighborsRegressor, BaseSupervisedFloatMixin):
82
- @_deprecate_positional_args
83
- def __init__(
84
- self,
85
- n_neighbors=5,
86
- *,
87
- weights="uniform",
88
- algorithm="auto",
89
- leaf_size=30,
90
- p=2,
91
- metric="minkowski",
92
- metric_params=None,
93
- n_jobs=None,
94
- **kwargs,
95
- ):
96
- super().__init__(
97
- n_neighbors=n_neighbors,
98
- algorithm=algorithm,
99
- leaf_size=leaf_size,
100
- metric=metric,
101
- p=p,
102
- metric_params=metric_params,
103
- n_jobs=n_jobs,
104
- **kwargs,
105
- )
106
- self.weights = _check_weights(weights)
107
-
30
+ if sklearn_check_version("1.6"):
31
+ from sklearn.utils.validation import validate_data
108
32
  else:
109
- from sklearn.neighbors.base import SupervisedFloatMixin as BaseSupervisedFloatMixin
110
-
111
- class KNeighborsRegressor_(sklearn_KNeighborsRegressor, BaseSupervisedFloatMixin):
112
- @_deprecate_positional_args
113
- def __init__(
114
- self,
115
- n_neighbors=5,
116
- *,
117
- weights="uniform",
118
- algorithm="auto",
119
- leaf_size=30,
120
- p=2,
121
- metric="minkowski",
122
- metric_params=None,
123
- n_jobs=None,
124
- **kwargs,
125
- ):
126
- super().__init__(
127
- n_neighbors=n_neighbors,
128
- algorithm=algorithm,
129
- leaf_size=leaf_size,
130
- metric=metric,
131
- p=p,
132
- metric_params=metric_params,
133
- n_jobs=n_jobs,
134
- **kwargs,
135
- )
136
- self.weights = _check_weights(weights)
33
+ validate_data = _sklearn_KNeighborsRegressor._validate_data
137
34
 
138
35
 
139
- @control_n_jobs
140
- class KNeighborsRegressor(KNeighborsRegressor_, KNeighborsDispatchingBase):
36
+ @control_n_jobs(decorated_methods=["fit", "predict", "kneighbors", "score"])
37
+ class KNeighborsRegressor(KNeighborsDispatchingBase, _sklearn_KNeighborsRegressor):
38
+ __doc__ = _sklearn_KNeighborsRegressor.__doc__
141
39
  if sklearn_check_version("1.2"):
142
- _parameter_constraints: dict = {**KNeighborsRegressor_._parameter_constraints}
40
+ _parameter_constraints: dict = {
41
+ **_sklearn_KNeighborsRegressor._parameter_constraints
42
+ }
143
43
 
144
44
  if sklearn_check_version("1.0"):
145
45
 
@@ -195,13 +95,12 @@ class KNeighborsRegressor(KNeighborsRegressor_, KNeighborsDispatchingBase):
195
95
  )
196
96
 
197
97
  def fit(self, X, y):
198
- self._fit_validation(X, y)
199
98
  dispatch(
200
99
  self,
201
100
  "fit",
202
101
  {
203
102
  "onedal": self.__class__._onedal_fit,
204
- "sklearn": sklearn_KNeighborsRegressor.fit,
103
+ "sklearn": _sklearn_KNeighborsRegressor.fit,
205
104
  },
206
105
  X,
207
106
  y,
@@ -218,55 +117,45 @@ class KNeighborsRegressor(KNeighborsRegressor_, KNeighborsDispatchingBase):
218
117
  "predict",
219
118
  {
220
119
  "onedal": self.__class__._onedal_predict,
221
- "sklearn": sklearn_KNeighborsRegressor.predict,
120
+ "sklearn": _sklearn_KNeighborsRegressor.predict,
222
121
  },
223
122
  X,
224
123
  )
225
124
 
226
125
  @wrap_output_data
227
- def kneighbors(self, X=None, n_neighbors=None, return_distance=True):
126
+ def score(self, X, y, sample_weight=None):
228
127
  check_is_fitted(self)
229
128
  if sklearn_check_version("1.0"):
230
129
  self._check_feature_names(X, reset=False)
231
130
  return dispatch(
232
131
  self,
233
- "kneighbors",
132
+ "score",
234
133
  {
235
- "onedal": self.__class__._onedal_kneighbors,
236
- "sklearn": sklearn_KNeighborsRegressor.kneighbors,
134
+ "onedal": self.__class__._onedal_score,
135
+ "sklearn": _sklearn_KNeighborsRegressor.score,
237
136
  },
238
137
  X,
239
- n_neighbors,
240
- return_distance,
138
+ y,
139
+ sample_weight=sample_weight,
241
140
  )
242
141
 
243
142
  @wrap_output_data
244
- def radius_neighbors(
245
- self, X=None, radius=None, return_distance=True, sort_results=False
246
- ):
247
- _onedal_estimator = getattr(self, "_onedal_estimator", None)
248
-
249
- if (
250
- _onedal_estimator is not None
251
- or getattr(self, "_tree", 0) is None
252
- and self._fit_method == "kd_tree"
253
- ):
254
- if sklearn_check_version("0.24"):
255
- sklearn_NearestNeighbors.fit(self, self._fit_X, getattr(self, "_y", None))
256
- else:
257
- sklearn_NearestNeighbors.fit(self, self._fit_X)
258
- if sklearn_check_version("0.22"):
259
- result = sklearn_NearestNeighbors.radius_neighbors(
260
- self, X, radius, return_distance, sort_results
261
- )
262
- else:
263
- result = sklearn_NearestNeighbors.radius_neighbors(
264
- self, X, radius, return_distance
265
- )
266
-
267
- return result
143
+ def kneighbors(self, X=None, n_neighbors=None, return_distance=True):
144
+ check_is_fitted(self)
145
+ if sklearn_check_version("1.0") and X is not None:
146
+ self._check_feature_names(X, reset=False)
147
+ return dispatch(
148
+ self,
149
+ "kneighbors",
150
+ {
151
+ "onedal": self.__class__._onedal_kneighbors,
152
+ "sklearn": _sklearn_KNeighborsRegressor.kneighbors,
153
+ },
154
+ X,
155
+ n_neighbors=n_neighbors,
156
+ return_distance=return_distance,
157
+ )
268
158
 
269
- @run_with_n_jobs
270
159
  def _onedal_fit(self, X, y, queue=None):
271
160
  onedal_params = {
272
161
  "n_neighbors": self.n_neighbors,
@@ -289,11 +178,9 @@ class KNeighborsRegressor(KNeighborsRegressor_, KNeighborsDispatchingBase):
289
178
 
290
179
  self._save_attributes()
291
180
 
292
- @run_with_n_jobs
293
181
  def _onedal_predict(self, X, queue=None):
294
182
  return self._onedal_estimator.predict(X, queue=queue)
295
183
 
296
- @run_with_n_jobs
297
184
  def _onedal_kneighbors(
298
185
  self, X=None, n_neighbors=None, return_distance=True, queue=None
299
186
  ):
@@ -301,6 +188,11 @@ class KNeighborsRegressor(KNeighborsRegressor_, KNeighborsDispatchingBase):
301
188
  X, n_neighbors, return_distance, queue=queue
302
189
  )
303
190
 
191
+ def _onedal_score(self, X, y, sample_weight=None, queue=None):
192
+ return r2_score(
193
+ y, self._onedal_predict(X, queue=queue), sample_weight=sample_weight
194
+ )
195
+
304
196
  def _save_attributes(self):
305
197
  self.n_features_in_ = self._onedal_estimator.n_features_in_
306
198
  self.n_samples_fit_ = self._onedal_estimator.n_samples_fit_
@@ -308,3 +200,8 @@ class KNeighborsRegressor(KNeighborsRegressor_, KNeighborsDispatchingBase):
308
200
  self._y = self._onedal_estimator._y
309
201
  self._fit_method = self._onedal_estimator._fit_method
310
202
  self._tree = self._onedal_estimator._tree
203
+
204
+ fit.__doc__ = _sklearn_KNeighborsRegressor.__doc__
205
+ predict.__doc__ = _sklearn_KNeighborsRegressor.predict.__doc__
206
+ kneighbors.__doc__ = _sklearn_KNeighborsRegressor.kneighbors.__doc__
207
+ score.__doc__ = _sklearn_KNeighborsRegressor.score.__doc__
@@ -14,91 +14,29 @@
14
14
  # limitations under the License.
15
15
  # ===============================================================================
16
16
 
17
- try:
18
- from packaging.version import Version
19
- except ImportError:
20
- from distutils.version import LooseVersion as Version
21
-
22
- import warnings
23
-
24
- import numpy as np
25
- from sklearn import __version__ as sklearn_version
26
- from sklearn.neighbors._ball_tree import BallTree
27
- from sklearn.neighbors._base import VALID_METRICS
28
- from sklearn.neighbors._base import NeighborsBase as sklearn_NeighborsBase
29
- from sklearn.neighbors._kd_tree import KDTree
30
- from sklearn.neighbors._unsupervised import NearestNeighbors as sklearn_NearestNeighbors
17
+ from sklearn.neighbors._unsupervised import NearestNeighbors as _sklearn_NearestNeighbors
31
18
  from sklearn.utils.validation import _deprecate_positional_args, check_is_fitted
32
19
 
33
- from daal4py.sklearn._utils import control_n_jobs, run_with_n_jobs, sklearn_check_version
20
+ from daal4py.sklearn._n_jobs_support import control_n_jobs
21
+ from daal4py.sklearn._utils import sklearn_check_version
34
22
  from onedal.neighbors import NearestNeighbors as onedal_NearestNeighbors
35
- from onedal.utils import _check_array, _num_features, _num_samples
36
23
 
37
24
  from .._device_offload import dispatch, wrap_output_data
38
25
  from .common import KNeighborsDispatchingBase
39
26
 
40
- if sklearn_check_version("0.22") and Version(sklearn_version) < Version("0.23"):
41
-
42
- class NearestNeighbors_(sklearn_NearestNeighbors):
43
- def __init__(
44
- self,
45
- n_neighbors=5,
46
- radius=1.0,
47
- algorithm="auto",
48
- leaf_size=30,
49
- metric="minkowski",
50
- p=2,
51
- metric_params=None,
52
- n_jobs=None,
53
- ):
54
- super().__init__(
55
- n_neighbors=n_neighbors,
56
- radius=radius,
57
- algorithm=algorithm,
58
- leaf_size=leaf_size,
59
- metric=metric,
60
- p=p,
61
- metric_params=metric_params,
62
- n_jobs=n_jobs,
63
- )
64
-
27
+ if sklearn_check_version("1.6"):
28
+ from sklearn.utils.validation import validate_data
65
29
  else:
30
+ validate_data = _sklearn_NearestNeighbors._validate_data
66
31
 
67
- class NearestNeighbors_(sklearn_NearestNeighbors):
68
- if sklearn_check_version("1.2"):
69
- _parameter_constraints: dict = {
70
- **sklearn_NearestNeighbors._parameter_constraints
71
- }
72
32
 
73
- @_deprecate_positional_args
74
- def __init__(
75
- self,
76
- *,
77
- n_neighbors=5,
78
- radius=1.0,
79
- algorithm="auto",
80
- leaf_size=30,
81
- metric="minkowski",
82
- p=2,
83
- metric_params=None,
84
- n_jobs=None,
85
- ):
86
- super().__init__(
87
- n_neighbors=n_neighbors,
88
- radius=radius,
89
- algorithm=algorithm,
90
- leaf_size=leaf_size,
91
- metric=metric,
92
- p=p,
93
- metric_params=metric_params,
94
- n_jobs=n_jobs,
95
- )
96
-
97
-
98
- @control_n_jobs
99
- class NearestNeighbors(NearestNeighbors_, KNeighborsDispatchingBase):
33
+ @control_n_jobs(decorated_methods=["fit", "kneighbors", "radius_neighbors"])
34
+ class NearestNeighbors(KNeighborsDispatchingBase, _sklearn_NearestNeighbors):
35
+ __doc__ = _sklearn_NearestNeighbors.__doc__
100
36
  if sklearn_check_version("1.2"):
101
- _parameter_constraints: dict = {**NearestNeighbors_._parameter_constraints}
37
+ _parameter_constraints: dict = {
38
+ **_sklearn_NearestNeighbors._parameter_constraints
39
+ }
102
40
 
103
41
  @_deprecate_positional_args
104
42
  def __init__(
@@ -124,13 +62,12 @@ class NearestNeighbors(NearestNeighbors_, KNeighborsDispatchingBase):
124
62
  )
125
63
 
126
64
  def fit(self, X, y=None):
127
- self._fit_validation(X, y)
128
65
  dispatch(
129
66
  self,
130
67
  "fit",
131
68
  {
132
69
  "onedal": self.__class__._onedal_fit,
133
- "sklearn": sklearn_NearestNeighbors.fit,
70
+ "sklearn": _sklearn_NearestNeighbors.fit,
134
71
  },
135
72
  X,
136
73
  None,
@@ -147,40 +84,53 @@ class NearestNeighbors(NearestNeighbors_, KNeighborsDispatchingBase):
147
84
  "kneighbors",
148
85
  {
149
86
  "onedal": self.__class__._onedal_kneighbors,
150
- "sklearn": sklearn_NearestNeighbors.kneighbors,
87
+ "sklearn": _sklearn_NearestNeighbors.kneighbors,
151
88
  },
152
89
  X,
153
- n_neighbors,
154
- return_distance,
90
+ n_neighbors=n_neighbors,
91
+ return_distance=return_distance,
155
92
  )
156
93
 
157
94
  @wrap_output_data
158
95
  def radius_neighbors(
159
96
  self, X=None, radius=None, return_distance=True, sort_results=False
160
97
  ):
161
- _onedal_estimator = getattr(self, "_onedal_estimator", None)
162
-
163
98
  if (
164
- _onedal_estimator is not None
99
+ hasattr(self, "_onedal_estimator")
165
100
  or getattr(self, "_tree", 0) is None
166
101
  and self._fit_method == "kd_tree"
167
102
  ):
168
- if sklearn_check_version("0.24"):
169
- sklearn_NearestNeighbors.fit(self, self._fit_X, getattr(self, "_y", None))
170
- else:
171
- sklearn_NearestNeighbors.fit(self, self._fit_X)
172
- if sklearn_check_version("0.22"):
173
- result = sklearn_NearestNeighbors.radius_neighbors(
174
- self, X, radius, return_distance, sort_results
175
- )
176
- else:
177
- result = sklearn_NearestNeighbors.radius_neighbors(
178
- self, X, radius, return_distance
179
- )
180
-
181
- return result
182
-
183
- @run_with_n_jobs
103
+ _sklearn_NearestNeighbors.fit(self, self._fit_X, getattr(self, "_y", None))
104
+ check_is_fitted(self)
105
+ return dispatch(
106
+ self,
107
+ "radius_neighbors",
108
+ {
109
+ "onedal": None,
110
+ "sklearn": _sklearn_NearestNeighbors.radius_neighbors,
111
+ },
112
+ X,
113
+ radius=radius,
114
+ return_distance=return_distance,
115
+ sort_results=sort_results,
116
+ )
117
+
118
+ def radius_neighbors_graph(
119
+ self, X=None, radius=None, mode="connectivity", sort_results=False
120
+ ):
121
+ return dispatch(
122
+ self,
123
+ "radius_neighbors_graph",
124
+ {
125
+ "onedal": None,
126
+ "sklearn": _sklearn_NearestNeighbors.radius_neighbors_graph,
127
+ },
128
+ X,
129
+ radius=radius,
130
+ mode=mode,
131
+ sort_results=sort_results,
132
+ )
133
+
184
134
  def _onedal_fit(self, X, y=None, queue=None):
185
135
  onedal_params = {
186
136
  "n_neighbors": self.n_neighbors,
@@ -202,11 +152,9 @@ class NearestNeighbors(NearestNeighbors_, KNeighborsDispatchingBase):
202
152
 
203
153
  self._save_attributes()
204
154
 
205
- @run_with_n_jobs
206
155
  def _onedal_predict(self, X, queue=None):
207
156
  return self._onedal_estimator.predict(X, queue=queue)
208
157
 
209
- @run_with_n_jobs
210
158
  def _onedal_kneighbors(
211
159
  self, X=None, n_neighbors=None, return_distance=True, queue=None
212
160
  ):
@@ -221,3 +169,10 @@ class NearestNeighbors(NearestNeighbors_, KNeighborsDispatchingBase):
221
169
  self._fit_X = self._onedal_estimator._fit_X
222
170
  self._fit_method = self._onedal_estimator._fit_method
223
171
  self._tree = self._onedal_estimator._tree
172
+
173
+ fit.__doc__ = _sklearn_NearestNeighbors.__doc__
174
+ kneighbors.__doc__ = _sklearn_NearestNeighbors.kneighbors.__doc__
175
+ radius_neighbors.__doc__ = _sklearn_NearestNeighbors.radius_neighbors.__doc__
176
+ radius_neighbors_graph.__doc__ = (
177
+ _sklearn_NearestNeighbors.radius_neighbors_graph.__doc__
178
+ )
@@ -14,7 +14,6 @@
14
14
  # limitations under the License.
15
15
  # ===============================================================================
16
16
 
17
- import numpy as np
18
17
  import pytest
19
18
  from numpy.testing import assert_allclose
20
19
 
@@ -23,12 +22,16 @@ from onedal.tests.utils._dataframes_support import (
23
22
  _convert_to_dataframe,
24
23
  get_dataframes_and_queues,
25
24
  )
25
+ from sklearnex.neighbors import (
26
+ KNeighborsClassifier,
27
+ KNeighborsRegressor,
28
+ LocalOutlierFactor,
29
+ NearestNeighbors,
30
+ )
26
31
 
27
32
 
28
33
  @pytest.mark.parametrize("dataframe,queue", get_dataframes_and_queues())
29
34
  def test_sklearnex_import_knn_classifier(dataframe, queue):
30
- from sklearnex.neighbors import KNeighborsClassifier
31
-
32
35
  X = _convert_to_dataframe([[0], [1], [2], [3]], sycl_queue=queue, target_df=dataframe)
33
36
  y = _convert_to_dataframe([0, 0, 1, 1], sycl_queue=queue, target_df=dataframe)
34
37
  neigh = KNeighborsClassifier(n_neighbors=3).fit(X, y)
@@ -40,45 +43,40 @@ def test_sklearnex_import_knn_classifier(dataframe, queue):
40
43
 
41
44
  @pytest.mark.parametrize("dataframe,queue", get_dataframes_and_queues())
42
45
  def test_sklearnex_import_knn_regression(dataframe, queue):
43
- from sklearnex.neighbors import KNeighborsRegressor
44
-
45
46
  X = _convert_to_dataframe([[0], [1], [2], [3]], sycl_queue=queue, target_df=dataframe)
46
47
  y = _convert_to_dataframe([0, 0, 1, 1], sycl_queue=queue, target_df=dataframe)
47
48
  neigh = KNeighborsRegressor(n_neighbors=2).fit(X, y)
48
49
  y_test = _convert_to_dataframe([[1.5]], sycl_queue=queue, target_df=dataframe)
49
- pred = _as_numpy(neigh.predict(y_test))
50
+ pred = _as_numpy(neigh.predict(y_test)).squeeze()
50
51
  assert "sklearnex" in neigh.__module__
51
- assert_allclose(pred, [0.5])
52
+ assert_allclose(pred, 0.5)
52
53
 
53
54
 
54
- # TODO:
55
- # investigate failure for `dpnp.ndarrays` and `dpctl.tensors`.
55
+ @pytest.mark.parametrize("algorithm", ["auto", "brute"])
56
+ @pytest.mark.parametrize("dataframe,queue", get_dataframes_and_queues())
56
57
  @pytest.mark.parametrize(
57
- "dataframe,queue", get_dataframes_and_queues(dataframe_filter_="numpy")
58
+ "estimator",
59
+ [LocalOutlierFactor, NearestNeighbors],
58
60
  )
59
- def test_sklearnex_import_nn(dataframe, queue):
60
- from sklearnex.neighbors import NearestNeighbors
61
-
61
+ def test_sklearnex_kneighbors(algorithm, estimator, dataframe, queue):
62
62
  X = [[0, 0, 2], [1, 0, 0], [0, 0, 1]]
63
63
  X = _convert_to_dataframe(X, sycl_queue=queue, target_df=dataframe)
64
64
  test = _convert_to_dataframe([[0, 0, 1.3]], sycl_queue=queue, target_df=dataframe)
65
- neigh = NearestNeighbors(n_neighbors=2).fit(X)
65
+ neigh = estimator(n_neighbors=2, algorithm=algorithm).fit(X)
66
66
  result = neigh.kneighbors(test, 2, return_distance=False)
67
67
  result = _as_numpy(result)
68
68
  assert "sklearnex" in neigh.__module__
69
69
  assert_allclose(result, [[2, 0]])
70
+ result = neigh.kneighbors()
70
71
 
71
72
 
72
73
  @pytest.mark.parametrize("dataframe,queue", get_dataframes_and_queues())
73
74
  def test_sklearnex_import_lof(dataframe, queue):
74
- from sklearnex.neighbors import LocalOutlierFactor
75
-
76
75
  X = [[7, 7, 7], [1, 0, 0], [0, 0, 1], [0, 0, 1]]
77
76
  X = _convert_to_dataframe(X, sycl_queue=queue, target_df=dataframe)
78
77
  lof = LocalOutlierFactor(n_neighbors=2)
79
78
  result = lof.fit_predict(X)
80
79
  result = _as_numpy(result)
81
- assert hasattr(lof, "_knn")
80
+ assert hasattr(lof, "_onedal_estimator")
82
81
  assert "sklearnex" in lof.__module__
83
- assert "sklearnex" in lof._knn.__module__
84
82
  assert_allclose(result, [-1, 1, 1, 1])
@@ -14,6 +14,4 @@
14
14
  # limitations under the License.
15
15
  # ==============================================================================
16
16
 
17
- from .pca import PCA
18
-
19
- __all__ = ["PCA"]
17
+ __all__ = ["covariance", "decomposition", "linear_model"]