scikit-learn-intelex 2025.4.0__py313-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 (259) hide show
  1. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/__init__.py +73 -0
  2. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/__main__.py +58 -0
  3. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/_daal4py.cp313-win_amd64.pyd +0 -0
  4. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/doc/third-party-programs.txt +424 -0
  5. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/mb/__init__.py +19 -0
  6. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/mb/model_builders.py +377 -0
  7. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/mpi_transceiver.cp313-win_amd64.pyd +0 -0
  8. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/__init__.py +40 -0
  9. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/_n_jobs_support.py +248 -0
  10. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/_utils.py +245 -0
  11. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +20 -0
  12. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +165 -0
  13. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/k_means.py +597 -0
  14. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/tests/test_dbscan.py +109 -0
  15. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/decomposition/__init__.py +19 -0
  16. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +524 -0
  17. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +196 -0
  18. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +337 -0
  19. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +27 -0
  20. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +1397 -0
  21. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/tests/test_decision_forest.py +206 -0
  22. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/__init__.py +29 -0
  23. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/_coordinate_descent.py +848 -0
  24. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/_linear.py +272 -0
  25. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/_ridge.py +325 -0
  26. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/coordinate_descent.py +17 -0
  27. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/linear.py +17 -0
  28. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_loss.py +195 -0
  29. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +1026 -0
  30. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/ridge.py +17 -0
  31. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_linear.py +208 -0
  32. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_ridge.py +69 -0
  33. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/manifold/__init__.py +19 -0
  34. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/manifold/_t_sne.py +405 -0
  35. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +20 -0
  36. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +236 -0
  37. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +210 -0
  38. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/model_selection/__init__.py +19 -0
  39. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/model_selection/_split.py +309 -0
  40. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/model_selection/tests/test_split.py +56 -0
  41. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
  42. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +232 -0
  43. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/_models_info.py +161 -0
  44. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_monkeypatch.py +71 -0
  45. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_patching.py +90 -0
  46. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/utils/_launch_algorithms.py +117 -0
  47. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +21 -0
  48. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +503 -0
  49. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +139 -0
  50. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +74 -0
  51. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +55 -0
  52. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/tests/test_kneighbors.py +113 -0
  53. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +19 -0
  54. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +734 -0
  55. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +21 -0
  56. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/utils/base.py +75 -0
  57. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/utils/tests/test_utils.py +51 -0
  58. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +696 -0
  59. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/__init__.py +83 -0
  60. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/_config.py +54 -0
  61. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/_device_offload.py +204 -0
  62. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp313-win_amd64.pyd +0 -0
  63. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp313-win_amd64.pyd +0 -0
  64. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/basic_statistics/__init__.py +20 -0
  65. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/basic_statistics/basic_statistics.py +107 -0
  66. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/basic_statistics/incremental_basic_statistics.py +175 -0
  67. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/basic_statistics/tests/test_basic_statistics.py +242 -0
  68. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/basic_statistics/tests/test_incremental_basic_statistics.py +279 -0
  69. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/basic_statistics/tests/utils.py +50 -0
  70. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/cluster/__init__.py +27 -0
  71. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/cluster/dbscan.py +105 -0
  72. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/cluster/kmeans.py +557 -0
  73. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/cluster/kmeans_init.py +112 -0
  74. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/cluster/tests/test_dbscan.py +125 -0
  75. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/cluster/tests/test_kmeans.py +88 -0
  76. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/cluster/tests/test_kmeans_init.py +93 -0
  77. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_base.py +38 -0
  78. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_estimator_checks.py +47 -0
  79. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_mixin.py +62 -0
  80. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_policy.py +55 -0
  81. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/_spmd_policy.py +30 -0
  82. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/hyperparameters.py +125 -0
  83. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/tests/test_policy.py +76 -0
  84. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/common/tests/test_sycl.py +128 -0
  85. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/covariance/__init__.py +20 -0
  86. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/covariance/covariance.py +122 -0
  87. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +161 -0
  88. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/covariance/tests/test_covariance.py +50 -0
  89. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/covariance/tests/test_incremental_covariance.py +190 -0
  90. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/datatypes/__init__.py +19 -0
  91. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +121 -0
  92. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/datatypes/tests/common.py +126 -0
  93. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +475 -0
  94. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/decomposition/__init__.py +20 -0
  95. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +214 -0
  96. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/decomposition/pca.py +186 -0
  97. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/decomposition/tests/test_incremental_pca.py +285 -0
  98. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/ensemble/__init__.py +29 -0
  99. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/ensemble/forest.py +736 -0
  100. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/ensemble/tests/test_random_forest.py +97 -0
  101. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/linear_model/__init__.py +27 -0
  102. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/linear_model/incremental_linear_model.py +292 -0
  103. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/linear_model/linear_model.py +325 -0
  104. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/linear_model/logistic_regression.py +247 -0
  105. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_linear_regression.py +213 -0
  106. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_ridge_regression.py +171 -0
  107. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_linear_regression.py +259 -0
  108. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_logistic_regression.py +95 -0
  109. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_ridge.py +95 -0
  110. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/neighbors/__init__.py +19 -0
  111. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/neighbors/neighbors.py +763 -0
  112. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/neighbors/tests/test_knn_classification.py +49 -0
  113. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/primitives/__init__.py +27 -0
  114. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/primitives/get_tree.py +25 -0
  115. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/primitives/kernel_functions.py +152 -0
  116. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/primitives/tests/test_kernel_functions.py +159 -0
  117. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/svm/__init__.py +19 -0
  118. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/svm/svm.py +556 -0
  119. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/svm/tests/test_csr_svm.py +351 -0
  120. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/svm/tests/test_nusvc.py +204 -0
  121. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/svm/tests/test_nusvr.py +210 -0
  122. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/svm/tests/test_svc.py +176 -0
  123. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/svm/tests/test_svr.py +243 -0
  124. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/tests/test_common.py +57 -0
  125. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/tests/utils/_dataframes_support.py +162 -0
  126. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +102 -0
  127. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/utils/__init__.py +49 -0
  128. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/utils/_array_api.py +81 -0
  129. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/utils/_dpep_helpers.py +56 -0
  130. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/utils/tests/test_validation.py +142 -0
  131. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/onedal/utils/validation.py +464 -0
  132. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/__init__.py +66 -0
  133. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/__main__.py +58 -0
  134. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/_config.py +116 -0
  135. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/_device_offload.py +126 -0
  136. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/_utils.py +177 -0
  137. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +20 -0
  138. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +261 -0
  139. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +352 -0
  140. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_basic_statistics.py +405 -0
  141. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_incremental_basic_statistics.py +455 -0
  142. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/cluster/__init__.py +20 -0
  143. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/cluster/dbscan.py +197 -0
  144. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/cluster/k_means.py +397 -0
  145. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/cluster/tests/test_dbscan.py +38 -0
  146. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +157 -0
  147. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/conftest.py +82 -0
  148. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/covariance/__init__.py +19 -0
  149. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +405 -0
  150. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/covariance/tests/test_incremental_covariance.py +287 -0
  151. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/decomposition/__init__.py +19 -0
  152. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/decomposition/pca.py +427 -0
  153. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +58 -0
  154. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/dispatcher.py +534 -0
  155. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/doc/third-party-programs.txt +424 -0
  156. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/ensemble/__init__.py +29 -0
  157. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/ensemble/_forest.py +2029 -0
  158. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/ensemble/tests/test_forest.py +140 -0
  159. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/glob/__main__.py +72 -0
  160. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/glob/dispatcher.py +101 -0
  161. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/linear_model/__init__.py +32 -0
  162. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +30 -0
  163. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/linear_model/incremental_linear.py +495 -0
  164. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +432 -0
  165. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/linear_model/linear.py +346 -0
  166. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/linear_model/logistic_regression.py +415 -0
  167. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/linear_model/ridge.py +390 -0
  168. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_linear.py +267 -0
  169. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_ridge.py +214 -0
  170. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +142 -0
  171. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +134 -0
  172. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_ridge.py +256 -0
  173. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/manifold/__init__.py +19 -0
  174. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/manifold/t_sne.py +26 -0
  175. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +250 -0
  176. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/metrics/__init__.py +23 -0
  177. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/metrics/pairwise.py +22 -0
  178. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/metrics/ranking.py +20 -0
  179. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/metrics/tests/test_metrics.py +39 -0
  180. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/model_selection/__init__.py +21 -0
  181. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/model_selection/split.py +22 -0
  182. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/model_selection/tests/test_model_selection.py +34 -0
  183. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/neighbors/__init__.py +27 -0
  184. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/neighbors/_lof.py +236 -0
  185. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/neighbors/common.py +310 -0
  186. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/neighbors/knn_classification.py +231 -0
  187. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/neighbors/knn_regression.py +207 -0
  188. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/neighbors/knn_unsupervised.py +178 -0
  189. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/neighbors/tests/test_neighbors.py +82 -0
  190. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/preview/__init__.py +17 -0
  191. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +19 -0
  192. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +142 -0
  193. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +66 -0
  194. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +19 -0
  195. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +244 -0
  196. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_incremental_pca.py +336 -0
  197. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/__init__.py +25 -0
  198. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/__init__.py +20 -0
  199. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/basic_statistics.py +21 -0
  200. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/incremental_basic_statistics.py +30 -0
  201. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_basic_statistics_spmd.py +107 -0
  202. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_incremental_basic_statistics_spmd.py +306 -0
  203. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +30 -0
  204. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +50 -0
  205. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +21 -0
  206. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_dbscan_spmd.py +97 -0
  207. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_kmeans_spmd.py +173 -0
  208. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +20 -0
  209. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +21 -0
  210. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/incremental_covariance.py +37 -0
  211. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_covariance_spmd.py +107 -0
  212. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_incremental_covariance_spmd.py +184 -0
  213. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/__init__.py +20 -0
  214. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/incremental_pca.py +30 -0
  215. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +21 -0
  216. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_incremental_pca_spmd.py +269 -0
  217. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_pca_spmd.py +128 -0
  218. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +19 -0
  219. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +71 -0
  220. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/ensemble/tests/test_forest_spmd.py +265 -0
  221. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/__init__.py +21 -0
  222. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/incremental_linear_model.py +35 -0
  223. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/linear_model.py +21 -0
  224. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/logistic_regression.py +21 -0
  225. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_incremental_linear_spmd.py +331 -0
  226. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_linear_regression_spmd.py +145 -0
  227. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_logistic_regression_spmd.py +162 -0
  228. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +19 -0
  229. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/neighbors.py +25 -0
  230. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/tests/test_neighbors_spmd.py +288 -0
  231. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/svm/__init__.py +29 -0
  232. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/svm/_common.py +339 -0
  233. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/svm/nusvc.py +371 -0
  234. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/svm/nusvr.py +170 -0
  235. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/svm/svc.py +399 -0
  236. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/svm/svr.py +167 -0
  237. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/svm/tests/test_svm.py +93 -0
  238. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/tests/test_common.py +491 -0
  239. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/tests/test_config.py +123 -0
  240. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +43 -0
  241. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +347 -0
  242. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +269 -0
  243. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +108 -0
  244. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/tests/test_parallel.py +48 -0
  245. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/tests/test_patching.py +377 -0
  246. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +326 -0
  247. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +48 -0
  248. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/tests/utils/base.py +436 -0
  249. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +198 -0
  250. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/utils/__init__.py +19 -0
  251. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/utils/_array_api.py +82 -0
  252. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/utils/parallel.py +59 -0
  253. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/utils/tests/test_validation.py +238 -0
  254. scikit_learn_intelex-2025.4.0.data/data/Lib/site-packages/sklearnex/utils/validation.py +208 -0
  255. scikit_learn_intelex-2025.4.0.dist-info/LICENSE.txt +202 -0
  256. scikit_learn_intelex-2025.4.0.dist-info/METADATA +192 -0
  257. scikit_learn_intelex-2025.4.0.dist-info/RECORD +259 -0
  258. scikit_learn_intelex-2025.4.0.dist-info/WHEEL +5 -0
  259. scikit_learn_intelex-2025.4.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,534 @@
1
+ # ==============================================================================
2
+ # Copyright 2021 Intel Corporation
3
+ # Copyright 2024 Fujitsu Limited
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+ # ==============================================================================
17
+
18
+ import os
19
+ import sys
20
+ from functools import lru_cache
21
+
22
+ from daal4py.sklearn._utils import daal_check_version, sklearn_check_version
23
+
24
+
25
+ def _is_new_patching_available():
26
+ return os.environ.get("OFF_ONEDAL_IFACE", "0") == "0" and daal_check_version(
27
+ (2021, "P", 300)
28
+ )
29
+
30
+
31
+ def _is_preview_enabled():
32
+ return os.environ.get("SKLEARNEX_PREVIEW") is not None
33
+
34
+
35
+ @lru_cache(maxsize=None)
36
+ def get_patch_map_core(preview=False):
37
+ if preview:
38
+ # use recursion to guarantee that state of preview
39
+ # and non-preview maps are done at the same time.
40
+ # The two lru_cache dicts are actually one underneath.
41
+ # Preview is always secondary. Both sklearnex patch
42
+ # maps are referring to the daal4py dict unless the
43
+ # key has been replaced. Use with caution.
44
+ mapping = get_patch_map_core().copy()
45
+
46
+ if _is_new_patching_available():
47
+ import sklearn.covariance as covariance_module
48
+ import sklearn.decomposition as decomposition_module
49
+
50
+ # Preview classes for patching
51
+ from .preview.covariance import (
52
+ EmpiricalCovariance as EmpiricalCovariance_sklearnex,
53
+ )
54
+ from .preview.decomposition import IncrementalPCA as IncrementalPCA_sklearnex
55
+
56
+ # Since the state of the lru_cache without preview cannot be
57
+ # guaranteed to not have already enabled sklearnex algorithms
58
+ # when preview is used, setting the mapping element[1] to None
59
+ # should NOT be done. This may lose track of the unpatched
60
+ # sklearn estimator or function.
61
+ # Covariance
62
+ mapping["empiricalcovariance"] = [
63
+ [
64
+ (
65
+ covariance_module,
66
+ "EmpiricalCovariance",
67
+ EmpiricalCovariance_sklearnex,
68
+ ),
69
+ None,
70
+ ]
71
+ ]
72
+
73
+ # IncrementalPCA
74
+ mapping["incrementalpca"] = [
75
+ [
76
+ (
77
+ decomposition_module,
78
+ "IncrementalPCA",
79
+ IncrementalPCA_sklearnex,
80
+ ),
81
+ None,
82
+ ]
83
+ ]
84
+
85
+ return mapping
86
+
87
+ from daal4py.sklearn.monkeypatch.dispatcher import _get_map_of_algorithms
88
+
89
+ # NOTE: this is a shallow copy of a dict, modification is dangerous
90
+ mapping = _get_map_of_algorithms().copy()
91
+
92
+ # NOTE: Use of daal4py _get_map_of_algorithms and
93
+ # get_patch_map/get_patch_map_core should not be used concurrently.
94
+ # The setting of elements to None below may cause loss of state
95
+ # when interacting with sklearn. A dictionary key must not be
96
+ # modified but totally replaced, otherwise it will cause chaos.
97
+ # Hence why pop is being used.
98
+ if _is_new_patching_available():
99
+ # Scikit-learn* modules
100
+ import sklearn as base_module
101
+ import sklearn.cluster as cluster_module
102
+ import sklearn.covariance as covariance_module
103
+ import sklearn.decomposition as decomposition_module
104
+ import sklearn.ensemble as ensemble_module
105
+ import sklearn.linear_model as linear_model_module
106
+ import sklearn.manifold as manifold_module
107
+ import sklearn.metrics as metrics_module
108
+ import sklearn.model_selection as model_selection_module
109
+ import sklearn.neighbors as neighbors_module
110
+ import sklearn.svm as svm_module
111
+
112
+ if sklearn_check_version("1.2.1"):
113
+ import sklearn.utils.parallel as parallel_module
114
+ else:
115
+ import sklearn.utils.fixes as parallel_module
116
+
117
+ # Classes and functions for patching
118
+ from ._config import config_context as config_context_sklearnex
119
+ from ._config import get_config as get_config_sklearnex
120
+ from ._config import set_config as set_config_sklearnex
121
+
122
+ if sklearn_check_version("1.2.1"):
123
+ from .utils.parallel import _FuncWrapper as _FuncWrapper_sklearnex
124
+ else:
125
+ from .utils.parallel import _FuncWrapperOld as _FuncWrapper_sklearnex
126
+
127
+ from .cluster import DBSCAN as DBSCAN_sklearnex
128
+ from .cluster import KMeans as KMeans_sklearnex
129
+ from .covariance import (
130
+ IncrementalEmpiricalCovariance as IncrementalEmpiricalCovariance_sklearnex,
131
+ )
132
+ from .decomposition import PCA as PCA_sklearnex
133
+ from .ensemble import ExtraTreesClassifier as ExtraTreesClassifier_sklearnex
134
+ from .ensemble import ExtraTreesRegressor as ExtraTreesRegressor_sklearnex
135
+ from .ensemble import RandomForestClassifier as RandomForestClassifier_sklearnex
136
+ from .ensemble import RandomForestRegressor as RandomForestRegressor_sklearnex
137
+ from .linear_model import ElasticNet as ElasticNet_sklearnex
138
+ from .linear_model import (
139
+ IncrementalLinearRegression as IncrementalLinearRegression_sklearnex,
140
+ )
141
+ from .linear_model import IncrementalRidge as IncrementalRidge_sklearnex
142
+ from .linear_model import Lasso as Lasso_sklearnex
143
+ from .linear_model import LinearRegression as LinearRegression_sklearnex
144
+ from .linear_model import LogisticRegression as LogisticRegression_sklearnex
145
+ from .linear_model import Ridge as Ridge_sklearnex
146
+ from .manifold import TSNE as TSNE_sklearnex
147
+ from .metrics import pairwise_distances as pairwise_distances_sklearnex
148
+ from .metrics import roc_auc_score as roc_auc_score_sklearnex
149
+ from .model_selection import train_test_split as train_test_split_sklearnex
150
+ from .neighbors import KNeighborsClassifier as KNeighborsClassifier_sklearnex
151
+ from .neighbors import KNeighborsRegressor as KNeighborsRegressor_sklearnex
152
+ from .neighbors import LocalOutlierFactor as LocalOutlierFactor_sklearnex
153
+ from .neighbors import NearestNeighbors as NearestNeighbors_sklearnex
154
+ from .svm import SVC as SVC_sklearnex
155
+ from .svm import SVR as SVR_sklearnex
156
+ from .svm import NuSVC as NuSVC_sklearnex
157
+ from .svm import NuSVR as NuSVR_sklearnex
158
+
159
+ # DBSCAN
160
+ mapping.pop("dbscan")
161
+ mapping["dbscan"] = [[(cluster_module, "DBSCAN", DBSCAN_sklearnex), None]]
162
+
163
+ # KMeans
164
+ mapping.pop("kmeans")
165
+ mapping["kmeans"] = [[(cluster_module, "KMeans", KMeans_sklearnex), None]]
166
+
167
+ # PCA
168
+ mapping.pop("pca")
169
+ mapping["pca"] = [[(decomposition_module, "PCA", PCA_sklearnex), None]]
170
+
171
+ # SVM
172
+ mapping.pop("svm")
173
+ mapping.pop("svc")
174
+ mapping["svr"] = [[(svm_module, "SVR", SVR_sklearnex), None]]
175
+ mapping["svc"] = [[(svm_module, "SVC", SVC_sklearnex), None]]
176
+ mapping["nusvr"] = [[(svm_module, "NuSVR", NuSVR_sklearnex), None]]
177
+ mapping["nusvc"] = [[(svm_module, "NuSVC", NuSVC_sklearnex), None]]
178
+
179
+ # ElasticNet
180
+ mapping.pop("elasticnet")
181
+ mapping["elasticnet"] = [
182
+ [
183
+ (
184
+ linear_model_module,
185
+ "ElasticNet",
186
+ ElasticNet_sklearnex,
187
+ ),
188
+ None,
189
+ ]
190
+ ]
191
+
192
+ # Lasso
193
+ mapping.pop("lasso")
194
+ mapping["lasso"] = [
195
+ [
196
+ (
197
+ linear_model_module,
198
+ "Lasso",
199
+ Lasso_sklearnex,
200
+ ),
201
+ None,
202
+ ]
203
+ ]
204
+
205
+ # Linear Regression
206
+ mapping.pop("linear")
207
+ mapping.pop("linearregression")
208
+ mapping["linear"] = [
209
+ [
210
+ (
211
+ linear_model_module,
212
+ "LinearRegression",
213
+ LinearRegression_sklearnex,
214
+ ),
215
+ None,
216
+ ]
217
+ ]
218
+ mapping["linearregression"] = mapping["linear"]
219
+
220
+ # Logistic Regression
221
+
222
+ mapping.pop("logisticregression")
223
+ mapping.pop("log_reg")
224
+ mapping.pop("logistic")
225
+ mapping.pop("_logistic_regression_path")
226
+ mapping["log_reg"] = [
227
+ [
228
+ (
229
+ linear_model_module,
230
+ "LogisticRegression",
231
+ LogisticRegression_sklearnex,
232
+ ),
233
+ None,
234
+ ]
235
+ ]
236
+ mapping["logisticregression"] = mapping["log_reg"]
237
+
238
+ # Ridge
239
+ mapping.pop("ridge")
240
+ mapping["ridge"] = [
241
+ [
242
+ (
243
+ linear_model_module,
244
+ "Ridge",
245
+ Ridge_sklearnex,
246
+ ),
247
+ None,
248
+ ]
249
+ ]
250
+
251
+ # manifold
252
+ mapping.pop("tsne")
253
+ mapping["tsne"] = [
254
+ [
255
+ (manifold_module, "TSNE", TSNE_sklearnex),
256
+ None,
257
+ ]
258
+ ]
259
+
260
+ # metrics
261
+ mapping.pop("distances")
262
+ mapping.pop("roc_auc_score")
263
+ mapping["distances"] = [
264
+ [
265
+ (metrics_module, "pairwise_distances", pairwise_distances_sklearnex),
266
+ None,
267
+ ]
268
+ ]
269
+ mapping["pairwise_distances"] = mapping["distances"]
270
+ mapping["roc_auc_score"] = [
271
+ [
272
+ (metrics_module, "roc_auc_score", roc_auc_score_sklearnex),
273
+ None,
274
+ ]
275
+ ]
276
+
277
+ # model_selection
278
+ mapping.pop("train_test_split")
279
+ mapping["train_test_split"] = [
280
+ [
281
+ (model_selection_module, "train_test_split", train_test_split_sklearnex),
282
+ None,
283
+ ]
284
+ ]
285
+
286
+ # kNN
287
+ mapping.pop("knn_classifier")
288
+ mapping.pop("kneighborsclassifier")
289
+ mapping.pop("knn_regressor")
290
+ mapping.pop("kneighborsregressor")
291
+ mapping.pop("nearest_neighbors")
292
+ mapping.pop("nearestneighbors")
293
+ mapping["knn_classifier"] = [
294
+ [
295
+ (
296
+ neighbors_module,
297
+ "KNeighborsClassifier",
298
+ KNeighborsClassifier_sklearnex,
299
+ ),
300
+ None,
301
+ ]
302
+ ]
303
+ mapping["knn_regressor"] = [
304
+ [
305
+ (
306
+ neighbors_module,
307
+ "KNeighborsRegressor",
308
+ KNeighborsRegressor_sklearnex,
309
+ ),
310
+ None,
311
+ ]
312
+ ]
313
+ mapping["nearest_neighbors"] = [
314
+ [(neighbors_module, "NearestNeighbors", NearestNeighbors_sklearnex), None]
315
+ ]
316
+ mapping["kneighborsclassifier"] = mapping["knn_classifier"]
317
+ mapping["kneighborsregressor"] = mapping["knn_regressor"]
318
+ mapping["nearestneighbors"] = mapping["nearest_neighbors"]
319
+
320
+ # Ensemble
321
+ mapping["extra_trees_classifier"] = [
322
+ [
323
+ (
324
+ ensemble_module,
325
+ "ExtraTreesClassifier",
326
+ ExtraTreesClassifier_sklearnex,
327
+ ),
328
+ None,
329
+ ]
330
+ ]
331
+ mapping["extra_trees_regressor"] = [
332
+ [
333
+ (
334
+ ensemble_module,
335
+ "ExtraTreesRegressor",
336
+ ExtraTreesRegressor_sklearnex,
337
+ ),
338
+ None,
339
+ ]
340
+ ]
341
+ mapping["extratreesclassifier"] = mapping["extra_trees_classifier"]
342
+ mapping["extratreesregressor"] = mapping["extra_trees_regressor"]
343
+ mapping.pop("random_forest_classifier")
344
+ mapping.pop("random_forest_regressor")
345
+ mapping.pop("randomforestclassifier")
346
+ mapping.pop("randomforestregressor")
347
+ mapping["random_forest_classifier"] = [
348
+ [
349
+ (
350
+ ensemble_module,
351
+ "RandomForestClassifier",
352
+ RandomForestClassifier_sklearnex,
353
+ ),
354
+ None,
355
+ ]
356
+ ]
357
+ mapping["random_forest_regressor"] = [
358
+ [
359
+ (
360
+ ensemble_module,
361
+ "RandomForestRegressor",
362
+ RandomForestRegressor_sklearnex,
363
+ ),
364
+ None,
365
+ ]
366
+ ]
367
+ mapping["randomforestclassifier"] = mapping["random_forest_classifier"]
368
+ mapping["randomforestregressor"] = mapping["random_forest_regressor"]
369
+
370
+ # LocalOutlierFactor
371
+ mapping["lof"] = [
372
+ [
373
+ (neighbors_module, "LocalOutlierFactor", LocalOutlierFactor_sklearnex),
374
+ None,
375
+ ]
376
+ ]
377
+ mapping["localoutlierfactor"] = mapping["lof"]
378
+
379
+ # IncrementalEmpiricalCovariance
380
+ mapping["incrementalempiricalcovariance"] = [
381
+ [
382
+ (
383
+ covariance_module,
384
+ "IncrementalEmpiricalCovariance",
385
+ IncrementalEmpiricalCovariance_sklearnex,
386
+ ),
387
+ None,
388
+ ]
389
+ ]
390
+
391
+ # IncrementalLinearRegression
392
+ mapping["incrementallinearregression"] = [
393
+ [
394
+ (
395
+ linear_model_module,
396
+ "IncrementalLinearRegression",
397
+ IncrementalLinearRegression_sklearnex,
398
+ ),
399
+ None,
400
+ ]
401
+ ]
402
+
403
+ if daal_check_version((2024, "P", 600)):
404
+ # IncrementalRidge
405
+ mapping["incrementalridge"] = [
406
+ [
407
+ (
408
+ linear_model_module,
409
+ "IncrementalRidge",
410
+ IncrementalRidge_sklearnex,
411
+ ),
412
+ None,
413
+ ]
414
+ ]
415
+
416
+ # Configs
417
+ mapping["set_config"] = [
418
+ [(base_module, "set_config", set_config_sklearnex), None]
419
+ ]
420
+ mapping["get_config"] = [
421
+ [(base_module, "get_config", get_config_sklearnex), None]
422
+ ]
423
+ mapping["config_context"] = [
424
+ [(base_module, "config_context", config_context_sklearnex), None]
425
+ ]
426
+
427
+ # Necessary for proper work with multiple threads
428
+ mapping["parallel.get_config"] = [
429
+ [(parallel_module, "get_config", get_config_sklearnex), None]
430
+ ]
431
+ mapping["_funcwrapper"] = [
432
+ [(parallel_module, "_FuncWrapper", _FuncWrapper_sklearnex), None]
433
+ ]
434
+ return mapping
435
+
436
+
437
+ # This is necessary to properly cache the patch_map when
438
+ # using preview.
439
+ def get_patch_map():
440
+ preview = _is_preview_enabled()
441
+ return get_patch_map_core(preview=preview)
442
+
443
+
444
+ get_patch_map.cache_clear = get_patch_map_core.cache_clear
445
+
446
+
447
+ get_patch_map.cache_info = get_patch_map_core.cache_info
448
+
449
+
450
+ def get_patch_names():
451
+ return list(get_patch_map().keys())
452
+
453
+
454
+ def patch_sklearn(name=None, verbose=True, global_patch=False, preview=False):
455
+ if preview:
456
+ os.environ["SKLEARNEX_PREVIEW"] = "enabled_via_patch_sklearn"
457
+ if not sklearn_check_version("0.24"):
458
+ raise NotImplementedError(
459
+ "Intel(R) Extension for Scikit-learn* patches apply "
460
+ "for scikit-learn >= 0.24 only ..."
461
+ )
462
+
463
+ if global_patch:
464
+ from sklearnex.glob.dispatcher import patch_sklearn_global
465
+
466
+ patch_sklearn_global(name, verbose)
467
+
468
+ from daal4py.sklearn import patch_sklearn as patch_sklearn_orig
469
+
470
+ if _is_new_patching_available():
471
+ for config in ["set_config", "get_config", "config_context"]:
472
+ patch_sklearn_orig(
473
+ config, verbose=False, deprecation=False, get_map=get_patch_map
474
+ )
475
+ if isinstance(name, list):
476
+ for algorithm in name:
477
+ patch_sklearn_orig(
478
+ algorithm, verbose=False, deprecation=False, get_map=get_patch_map
479
+ )
480
+ else:
481
+ patch_sklearn_orig(name, verbose=False, deprecation=False, get_map=get_patch_map)
482
+
483
+ if verbose and sys.stderr is not None:
484
+ sys.stderr.write(
485
+ "Intel(R) Extension for Scikit-learn* enabled "
486
+ "(https://github.com/uxlfoundation/scikit-learn-intelex)\n"
487
+ )
488
+
489
+
490
+ def unpatch_sklearn(name=None, global_unpatch=False):
491
+ if global_unpatch:
492
+ from sklearnex.glob.dispatcher import unpatch_sklearn_global
493
+
494
+ unpatch_sklearn_global()
495
+ from daal4py.sklearn import unpatch_sklearn as unpatch_sklearn_orig
496
+
497
+ if isinstance(name, list):
498
+ for algorithm in name:
499
+ unpatch_sklearn_orig(algorithm, get_map=get_patch_map)
500
+ else:
501
+ if _is_new_patching_available():
502
+ for config in ["set_config", "get_config", "config_context"]:
503
+ unpatch_sklearn_orig(config, get_map=get_patch_map)
504
+ unpatch_sklearn_orig(name, get_map=get_patch_map)
505
+ if os.environ.get("SKLEARNEX_PREVIEW") == "enabled_via_patch_sklearn":
506
+ os.environ.pop("SKLEARNEX_PREVIEW")
507
+
508
+
509
+ def sklearn_is_patched(name=None, return_map=False):
510
+ from daal4py.sklearn import sklearn_is_patched as sklearn_is_patched_orig
511
+
512
+ if isinstance(name, list):
513
+ if return_map:
514
+ result = {}
515
+ for algorithm in name:
516
+ result[algorithm] = sklearn_is_patched_orig(
517
+ algorithm, get_map=get_patch_map
518
+ )
519
+ return result
520
+ else:
521
+ is_patched = True
522
+ for algorithm in name:
523
+ is_patched = is_patched and sklearn_is_patched_orig(
524
+ algorithm, get_map=get_patch_map
525
+ )
526
+ return is_patched
527
+ else:
528
+ return sklearn_is_patched_orig(name, get_map=get_patch_map, return_map=return_map)
529
+
530
+
531
+ def is_patched_instance(instance: object) -> bool:
532
+ """Returns True if the `instance` is patched with scikit-learn-intelex"""
533
+ module = getattr(instance, "__module__", "")
534
+ return ("daal4py" in module) or ("sklearnex" in module)