scikit-learn-intelex 2025.7.0__py39-none-win_amd64.whl → 2025.9.0__py39-none-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of scikit-learn-intelex might be problematic. Click here for more details.

Files changed (278) hide show
  1. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/daal4py/_daal4py.cp39-win_amd64.pyd +0 -0
  2. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/mb/__init__.py +19 -8
  3. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/mb/logistic_regression_builders.py +17 -23
  4. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/mpi_transceiver.cp39-win_amd64.pyd +0 -0
  5. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_loss.py +4 -4
  6. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +545 -0
  7. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/_models_info.py +5 -2
  8. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +2 -2
  9. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/_device_offload.py +41 -40
  10. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp39-win_amd64.pyd +0 -0
  11. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp39-win_amd64.pyd +0 -0
  12. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/basic_statistics/basic_statistics.py +52 -76
  13. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/basic_statistics/incremental_basic_statistics.py +26 -41
  14. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_basic_statistics.py +6 -7
  15. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_incremental_basic_statistics.py +11 -11
  16. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/cluster/dbscan.py +7 -25
  17. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/cluster/kmeans.py +1 -1
  18. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/common/hyperparameters.py +31 -11
  19. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/common/tests/test_sycl.py +5 -0
  20. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/covariance/covariance.py +7 -16
  21. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +13 -18
  22. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_covariance.py +3 -3
  23. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/datatypes/__init__.py +6 -3
  24. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +158 -0
  25. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/onedal/datatypes/_dlpack.py +64 -0
  26. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/datatypes/_sycl_usm.py +9 -24
  27. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +85 -18
  28. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +39 -40
  29. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/onedal/decomposition/pca.py +124 -0
  30. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/decomposition/tests/test_incremental_pca.py +11 -5
  31. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/ensemble/forest.py +5 -5
  32. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/linear_model/incremental_linear_model.py +48 -160
  33. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/linear_model/linear_model.py +75 -188
  34. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/linear_model/logistic_regression.py +25 -11
  35. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_linear_regression.py +10 -17
  36. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/neighbors/neighbors.py +5 -4
  37. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/tests/test_common.py +14 -0
  38. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/utils/_array_api.py +3 -0
  39. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/utils/_sycl_queue_manager.py +51 -25
  40. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/utils/_third_party.py +52 -2
  41. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/__init__.py +2 -1
  42. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/_config.py +0 -5
  43. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/_device_offload.py +13 -12
  44. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/_utils.py +31 -4
  45. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +26 -37
  46. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +33 -42
  47. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/cluster/dbscan.py +30 -27
  48. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/cluster/k_means.py +1 -0
  49. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +139 -98
  50. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/covariance/tests/test_incremental_covariance.py +30 -0
  51. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/sklearnex/decomposition/pca.py +558 -0
  52. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +164 -0
  53. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/dispatcher.py +1 -6
  54. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/ensemble/_forest.py +8 -2
  55. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/ensemble/tests/test_forest.py +22 -7
  56. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +2 -0
  57. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_linear.py +76 -68
  58. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +69 -53
  59. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/linear_model/linear.py +53 -41
  60. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/linear_model/logistic_regression.py +122 -38
  61. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/linear_model/ridge.py +42 -31
  62. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +27 -61
  63. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +565 -0
  64. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/neighbors/common.py +8 -6
  65. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +260 -0
  66. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +112 -0
  67. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +406 -0
  68. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_incremental_pca.py +55 -1
  69. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/basic_statistics.py +7 -4
  70. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_basic_statistics_spmd.py +6 -3
  71. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_incremental_basic_statistics_spmd.py +12 -8
  72. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +26 -0
  73. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +7 -4
  74. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_covariance_spmd.py +18 -8
  75. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_incremental_covariance_spmd.py +7 -2
  76. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +6 -4
  77. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_incremental_pca_spmd.py +2 -2
  78. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_pca_spmd.py +19 -6
  79. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +299 -0
  80. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/tests/test_forest_spmd.py +21 -4
  81. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/linear_model.py +7 -4
  82. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_incremental_linear_spmd.py +16 -8
  83. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_linear_regression_spmd.py +12 -4
  84. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +23 -0
  85. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/tests/test_neighbors_spmd.py +136 -13
  86. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/svm/_common.py +71 -8
  87. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/svm/tests/test_svm.py +31 -0
  88. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/tests/test_common.py +0 -1
  89. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/tests/test_config.py +55 -6
  90. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +111 -0
  91. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +1 -1
  92. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/tests/test_patching.py +18 -14
  93. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/tests/utils/base.py +3 -21
  94. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/sklearnex/utils/_array_api.py +217 -0
  95. scikit_learn_intelex-2025.9.0.data/data/Lib/site-packages/sklearnex/utils/parallel.py +97 -0
  96. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/utils/validation.py +19 -1
  97. {scikit_learn_intelex-2025.7.0.dist-info → scikit_learn_intelex-2025.9.0.dist-info}/METADATA +83 -92
  98. scikit_learn_intelex-2025.9.0.dist-info/RECORD +259 -0
  99. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/daal4py/_daal4py.cp39-win_amd64.pyd +0 -0
  100. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +0 -1039
  101. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp39-win_amd64.pyd +0 -0
  102. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp39-win_amd64.pyd +0 -0
  103. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +0 -110
  104. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/decomposition/pca.py +0 -200
  105. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/decomposition/pca.py +0 -423
  106. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +0 -115
  107. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +0 -134
  108. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +0 -129
  109. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +0 -119
  110. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +0 -227
  111. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +0 -50
  112. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +0 -71
  113. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +0 -19
  114. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +0 -43
  115. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/utils/_array_api.py +0 -82
  116. scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/utils/parallel.py +0 -59
  117. scikit_learn_intelex-2025.7.0.dist-info/RECORD +0 -258
  118. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/__init__.py +0 -0
  119. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/__main__.py +0 -0
  120. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/mb/gbt_convertors.py +0 -0
  121. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/mb/tree_based_builders.py +0 -0
  122. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/__init__.py +0 -0
  123. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/_n_jobs_support.py +0 -0
  124. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/_utils.py +0 -0
  125. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +0 -0
  126. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +0 -0
  127. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/k_means.py +0 -0
  128. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/tests/test_dbscan.py +0 -0
  129. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/__init__.py +0 -0
  130. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +0 -0
  131. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +0 -0
  132. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +0 -0
  133. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +0 -0
  134. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +0 -0
  135. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/tests/test_decision_forest.py +0 -0
  136. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/__init__.py +0 -0
  137. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_coordinate_descent.py +0 -0
  138. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_linear.py +0 -0
  139. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_ridge.py +0 -0
  140. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/coordinate_descent.py +0 -0
  141. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/linear.py +0 -0
  142. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/ridge.py +0 -0
  143. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_linear.py +0 -0
  144. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_ridge.py +0 -0
  145. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/__init__.py +0 -0
  146. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/_t_sne.py +0 -0
  147. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +0 -0
  148. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +0 -0
  149. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +0 -0
  150. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/__init__.py +0 -0
  151. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/_split.py +0 -0
  152. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/tests/test_split.py +0 -0
  153. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
  154. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +0 -0
  155. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_monkeypatch.py +0 -0
  156. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_patching.py +0 -0
  157. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/utils/_launch_algorithms.py +0 -0
  158. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +0 -0
  159. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +0 -0
  160. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +0 -0
  161. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +0 -0
  162. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +0 -0
  163. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/tests/test_kneighbors.py +0 -0
  164. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +0 -0
  165. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +0 -0
  166. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +0 -0
  167. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/base.py +0 -0
  168. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/tests/test_utils.py +0 -0
  169. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/__init__.py +0 -0
  170. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/_config.py +0 -0
  171. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/basic_statistics/__init__.py +0 -0
  172. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/utils.py +0 -0
  173. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/cluster/__init__.py +0 -0
  174. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/cluster/kmeans_init.py +0 -0
  175. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_dbscan.py +0 -0
  176. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans.py +0 -0
  177. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans_init.py +0 -0
  178. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/common/_backend.py +0 -0
  179. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/common/_estimator_checks.py +0 -0
  180. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/common/_mixin.py +0 -0
  181. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/covariance/__init__.py +0 -0
  182. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_incremental_covariance.py +0 -0
  183. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/datatypes/tests/common.py +0 -0
  184. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/decomposition/__init__.py +0 -0
  185. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/ensemble/__init__.py +0 -0
  186. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/ensemble/tests/test_random_forest.py +0 -0
  187. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/linear_model/__init__.py +0 -0
  188. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_linear_regression.py +0 -0
  189. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_ridge_regression.py +0 -0
  190. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_logistic_regression.py +0 -0
  191. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_ridge.py +0 -0
  192. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/neighbors/__init__.py +0 -0
  193. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/neighbors/tests/test_knn_classification.py +0 -0
  194. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/primitives/__init__.py +0 -0
  195. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/primitives/get_tree.py +0 -0
  196. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/primitives/kernel_functions.py +0 -0
  197. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/primitives/tests/test_kernel_functions.py +0 -0
  198. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/svm/__init__.py +0 -0
  199. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/svm/svm.py +0 -0
  200. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/svm/tests/test_csr_svm.py +0 -0
  201. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvc.py +0 -0
  202. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvr.py +0 -0
  203. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svc.py +0 -0
  204. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svr.py +0 -0
  205. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/tests/utils/_dataframes_support.py +0 -0
  206. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +0 -0
  207. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/utils/tests/test_validation.py +0 -0
  208. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/onedal/utils/validation.py +0 -0
  209. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/__main__.py +0 -0
  210. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/base.py +0 -0
  211. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +0 -0
  212. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_basic_statistics.py +0 -0
  213. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_incremental_basic_statistics.py +0 -0
  214. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/cluster/__init__.py +0 -0
  215. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_dbscan.py +0 -0
  216. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +0 -0
  217. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/conftest.py +0 -0
  218. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/covariance/__init__.py +0 -0
  219. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/decomposition/__init__.py +0 -0
  220. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/doc/third-party-programs.txt +0 -0
  221. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/ensemble/__init__.py +0 -0
  222. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/glob/__main__.py +0 -0
  223. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/glob/dispatcher.py +0 -0
  224. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/linear_model/__init__.py +0 -0
  225. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_linear.py +0 -0
  226. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_ridge.py +0 -0
  227. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_ridge.py +0 -0
  228. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/manifold/__init__.py +0 -0
  229. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/manifold/t_sne.py +0 -0
  230. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +0 -0
  231. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/metrics/__init__.py +0 -0
  232. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/metrics/pairwise.py +0 -0
  233. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/metrics/ranking.py +0 -0
  234. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/metrics/tests/test_metrics.py +0 -0
  235. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/model_selection/__init__.py +0 -0
  236. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/model_selection/split.py +0 -0
  237. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/model_selection/tests/test_model_selection.py +0 -0
  238. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/neighbors/__init__.py +0 -0
  239. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/neighbors/_lof.py +0 -0
  240. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_classification.py +0 -0
  241. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_regression.py +0 -0
  242. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_unsupervised.py +0 -0
  243. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/neighbors/tests/test_neighbors.py +0 -0
  244. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/preview/__init__.py +0 -0
  245. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +0 -0
  246. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +0 -0
  247. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/__init__.py +0 -0
  248. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/__init__.py +0 -0
  249. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/incremental_basic_statistics.py +0 -0
  250. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +0 -0
  251. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +0 -0
  252. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_dbscan_spmd.py +0 -0
  253. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_kmeans_spmd.py +0 -0
  254. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +0 -0
  255. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/incremental_covariance.py +0 -0
  256. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/__init__.py +0 -0
  257. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/incremental_pca.py +0 -0
  258. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +0 -0
  259. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/__init__.py +0 -0
  260. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/incremental_linear_model.py +0 -0
  261. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/logistic_regression.py +0 -0
  262. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_logistic_regression_spmd.py +0 -0
  263. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/svm/__init__.py +0 -0
  264. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/svm/nusvc.py +0 -0
  265. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/svm/nusvr.py +0 -0
  266. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/svm/svc.py +0 -0
  267. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/svm/svr.py +0 -0
  268. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +0 -0
  269. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +0 -0
  270. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/tests/test_parallel.py +0 -0
  271. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +0 -0
  272. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +0 -0
  273. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +0 -0
  274. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/utils/__init__.py +0 -0
  275. {scikit_learn_intelex-2025.7.0.data → scikit_learn_intelex-2025.9.0.data}/data/Lib/site-packages/sklearnex/utils/tests/test_validation.py +0 -0
  276. {scikit_learn_intelex-2025.7.0.dist-info → scikit_learn_intelex-2025.9.0.dist-info}/LICENSE.txt +0 -0
  277. {scikit_learn_intelex-2025.7.0.dist-info → scikit_learn_intelex-2025.9.0.dist-info}/WHEEL +0 -0
  278. {scikit_learn_intelex-2025.7.0.dist-info → scikit_learn_intelex-2025.9.0.dist-info}/top_level.txt +0 -0
@@ -15,7 +15,7 @@
15
15
  # ==============================================================================
16
16
 
17
17
  import logging
18
- from typing import Any, Dict, Tuple
18
+ from typing import Callable, Dict, Tuple
19
19
  from warnings import warn
20
20
 
21
21
  from daal4py.sklearn._utils import daal_check_version
@@ -94,22 +94,26 @@ else:
94
94
  for method in filter(lambda f: f.startswith(prefix), dir(obj))
95
95
  }
96
96
 
97
- hyperparameters_backend: Dict[Tuple[str, str], Any] = {
97
+ hyperparameters_backend: Dict[Tuple[str, str], Callable] = {
98
98
  (
99
99
  "linear_regression",
100
100
  "train",
101
- ): backend.linear_model.regression.train_hyperparameters(),
102
- ("covariance", "compute"): backend.covariance.compute_hyperparameters(),
101
+ ): lambda: backend.linear_model.regression.train_hyperparameters(),
102
+ ("covariance", "compute"): lambda: backend.covariance.compute_hyperparameters(),
103
103
  }
104
104
  if daal_check_version((2024, "P", 300)):
105
- df_infer_hp = backend.decision_forest.infer_hyperparameters
106
- hyperparameters_backend[("decision_forest", "infer")] = df_infer_hp()
105
+ hyperparameters_backend[("decision_forest", "infer")] = (
106
+ lambda: backend.decision_forest.infer_hyperparameters()
107
+ )
107
108
  if daal_check_version((2025, "P", 700)):
108
- pca_train_hp = backend.decomposition.dim_reduction.train_hyperparameters
109
- hyperparameters_backend[("pca", "train")] = pca_train_hp()
110
- hyperparameters_map = {}
109
+ hyperparameters_backend[("pca", "train")] = (
110
+ lambda: backend.decomposition.dim_reduction.train_hyperparameters()
111
+ )
112
+
113
+ hyperparameters_map: Dict[Tuple[str, str], HyperParameters] = {}
111
114
 
112
- for (algorithm, op), hyperparameters in hyperparameters_backend.items():
115
+ for (algorithm, op), hyperparameters_lambda in hyperparameters_backend.items():
116
+ hyperparameters = hyperparameters_lambda()
113
117
  setters = get_methods_with_prefix(hyperparameters, "set_")
114
118
  getters = get_methods_with_prefix(hyperparameters, "get_")
115
119
 
@@ -123,6 +127,22 @@ else:
123
127
  algorithm, op, setters, getters, hyperparameters
124
128
  )
125
129
 
130
+ def get_hyperparameters_backend(algorithm, op):
131
+ """Get hyperparameters for a specific algorithm and operation."""
132
+ if (algorithm, op) in hyperparameters_backend:
133
+ return hyperparameters_backend[(algorithm, op)]()
134
+ else:
135
+ raise ValueError(f"Hyperparameters for '{algorithm}.{op}' are not defined.")
126
136
 
127
- def get_hyperparameters(algorithm, op):
137
+
138
+ def get_hyperparameters(algorithm: str, op: str) -> HyperParameters:
128
139
  return hyperparameters_map.get((algorithm, op), None)
140
+
141
+
142
+ def reset_hyperparameters(algorithm: str, op: str) -> None:
143
+ new_hyperparameters_backend = get_hyperparameters_backend(algorithm, op)
144
+ new_setters = get_methods_with_prefix(new_hyperparameters_backend, "set_")
145
+ new_getters = get_methods_with_prefix(new_hyperparameters_backend, "get_")
146
+ hyperparameters_map[(algorithm, op)] = HyperParameters(
147
+ algorithm, op, new_setters, new_getters, new_hyperparameters_backend
148
+ )
@@ -117,6 +117,8 @@ def test_backend_queue():
117
117
  q2 = backend.SyclQueue(q._get_capsule())
118
118
  # verify copying via the _get_capsule attribute
119
119
  q3 = backend.SyclQueue(q)
120
+ # create new queue on the same device for device checks
121
+ q4 = backend.SyclQueue("cpu")
120
122
 
121
123
  q_array = [q, q2, q3]
122
124
 
@@ -125,6 +127,9 @@ def test_backend_queue():
125
127
  assert all([queue.sycl_device.is_cpu for queue in q_array])
126
128
  assert all([not queue.sycl_device.is_gpu for queue in q_array])
127
129
  assert all(["cpu" in queue.sycl_device.filter_string for queue in q_array])
130
+ assert q.sycl_device == q4.sycl_device # verify that __eq__ operator works
131
+ assert not (q.sycl_device != q4.sycl_device) # verify that __ne__ operator works
132
+ assert q != q4 # verify two separate cpu queues created
128
133
 
129
134
 
130
135
  @pytest.mark.skipif(
@@ -20,7 +20,6 @@ import numpy as np
20
20
  from daal4py.sklearn._utils import daal_check_version
21
21
  from onedal._device_offload import supports_queue
22
22
  from onedal.common._backend import bind_default_backend
23
- from onedal.utils.validation import _check_array
24
23
 
25
24
  from .._config import _get_config
26
25
  from ..common.hyperparameters import get_hyperparameters
@@ -101,30 +100,22 @@ class EmpiricalCovariance(BaseEmpiricalCovariance):
101
100
  self : object
102
101
  Returns the instance itself.
103
102
  """
104
- use_raw_input = _get_config()["use_raw_input"] is True
105
- sua_iface, _, _ = _get_sycl_namespace(X)
106
- if use_raw_input and sua_iface:
107
- queue = X.sycl_queue
108
103
 
109
- if not use_raw_input:
110
- X = _check_array(X, dtype=[np.float64, np.float32])
111
- X = to_table(X, queue=queue)
104
+ X_table = to_table(X, queue=queue)
112
105
 
113
- params = self._get_onedal_params(X.dtype)
106
+ params = self._get_onedal_params(X_table.dtype)
114
107
  hparams = get_hyperparameters("covariance", "compute")
115
108
  if hparams is not None and not hparams.is_default:
116
- result = self.compute(params, hparams.backend, X)
109
+ result = self.compute(params, hparams.backend, X_table)
117
110
  else:
118
- result = self.compute(params, X)
111
+ result = self.compute(params, X_table)
119
112
  if daal_check_version((2024, "P", 1)) or (not self.bias):
120
- self.covariance_ = from_table(result.cov_matrix, sycl_queue=queue)
113
+ self.covariance_ = from_table(result.cov_matrix, like=X)
121
114
  else:
122
115
  self.covariance_ = (
123
- from_table(result.cov_matrix, sycl_queue=queue)
124
- * (X.shape[0] - 1)
125
- / X.shape[0]
116
+ from_table(result.cov_matrix, like=X) * (X.shape[0] - 1) / X.shape[0]
126
117
  )
127
118
 
128
- self.location_ = from_table(result.means, sycl_queue=queue).ravel()
119
+ self.location_ = from_table(result.means, like=X)[0, ...]
129
120
 
130
121
  return self
@@ -17,12 +17,12 @@
17
17
  import numpy as np
18
18
 
19
19
  from daal4py.sklearn._utils import daal_check_version
20
- from onedal._device_offload import supports_queue
21
- from onedal.common._backend import bind_default_backend
22
- from onedal.utils import _sycl_queue_manager as QM
23
20
 
24
21
  from .._config import _get_config
25
- from ..datatypes import from_table, to_table
22
+ from .._device_offload import supports_queue
23
+ from ..common._backend import bind_default_backend
24
+ from ..datatypes import from_table, return_type_constructor, to_table
25
+ from ..utils import _sycl_queue_manager as QM
26
26
  from ..utils._array_api import _get_sycl_namespace
27
27
  from ..utils.validation import _check_array
28
28
  from .covariance import BaseEmpiricalCovariance
@@ -74,6 +74,7 @@ class IncrementalEmpiricalCovariance(BaseEmpiricalCovariance):
74
74
  def _reset(self):
75
75
  self._need_to_finalize = False
76
76
  self._queue = None
77
+ self._outtype = None
77
78
  self._partial_result = self.partial_compute_result()
78
79
 
79
80
  def __getstate__(self):
@@ -108,15 +109,10 @@ class IncrementalEmpiricalCovariance(BaseEmpiricalCovariance):
108
109
  self : object
109
110
  Returns the instance itself.
110
111
  """
111
- use_raw_input = _get_config()["use_raw_input"] is True
112
- sua_iface, _, _ = _get_sycl_namespace(X)
113
-
114
- if use_raw_input and sua_iface:
115
- queue = X.sycl_queue
116
- if not use_raw_input:
117
- X = _check_array(X, dtype=[np.float64, np.float32], ensure_2d=True)
118
112
 
119
113
  self._queue = queue
114
+ if not self._outtype:
115
+ self._outtype = return_type_constructor(X)
120
116
  X_table = to_table(X, queue=queue)
121
117
 
122
118
  if not hasattr(self, "_dtype"):
@@ -125,8 +121,6 @@ class IncrementalEmpiricalCovariance(BaseEmpiricalCovariance):
125
121
  params = self._get_onedal_params(self._dtype)
126
122
  self._partial_result = self.partial_compute(params, self._partial_result, X_table)
127
123
  self._need_to_finalize = True
128
- # store the queue for when we finalize
129
- self._queue = queue
130
124
 
131
125
  def finalize_fit(self):
132
126
  """Finalize covariance matrix from the current `_partial_result`.
@@ -143,13 +137,14 @@ class IncrementalEmpiricalCovariance(BaseEmpiricalCovariance):
143
137
  with QM.manage_global_queue(self._queue):
144
138
  result = self.finalize_compute(params, self._partial_result)
145
139
 
146
- if daal_check_version((2024, "P", 1)) or (not self.bias):
147
- self.covariance_ = from_table(result.cov_matrix)
148
- else:
140
+ self.covariance_ = from_table(result.cov_matrix, like=self._outtype)
141
+
142
+ if self.bias and not daal_check_version((2024, "P", 1)):
149
143
  n_rows = self._partial_result.partial_n_rows
150
- self.covariance_ = from_table(result.cov_matrix) * (n_rows - 1) / n_rows
144
+ self.covariance_ *= (n_rows - 1) / n_rows
151
145
 
152
- self.location_ = from_table(result.means).ravel()
146
+ self.location_ = from_table(result.means, like=self._outtype)[0, ...]
147
+ self._outtype = None
153
148
 
154
149
  self._need_to_finalize = False
155
150
 
@@ -25,7 +25,7 @@ from onedal.tests.utils._device_selection import get_queues
25
25
  def test_onedal_import_covariance(queue):
26
26
  from onedal.covariance import EmpiricalCovariance
27
27
 
28
- X = np.array([[0, 1], [0, 1]])
28
+ X = np.array([[0, 1], [0, 1]], dtype=np.float64)
29
29
  result = EmpiricalCovariance().fit(X, queue=queue)
30
30
  expected_covariance = np.array([[0, 0], [0, 0]])
31
31
  expected_means = np.array([0, 1])
@@ -33,7 +33,7 @@ def test_onedal_import_covariance(queue):
33
33
  assert_allclose(expected_covariance, result.covariance_)
34
34
  assert_allclose(expected_means, result.location_)
35
35
 
36
- X = np.array([[1, 2], [3, 6]])
36
+ X = np.array([[1, 2], [3, 6]], dtype=np.float64)
37
37
  result = EmpiricalCovariance().fit(X, queue=queue)
38
38
  expected_covariance = np.array([[2, 4], [4, 8]])
39
39
  expected_means = np.array([2, 4])
@@ -41,7 +41,7 @@ def test_onedal_import_covariance(queue):
41
41
  assert_allclose(expected_covariance, result.covariance_)
42
42
  assert_allclose(expected_means, result.location_)
43
43
 
44
- X = np.array([[1, 2], [3, 6]])
44
+ X = np.array([[1, 2], [3, 6]], dtype=np.float64)
45
45
  result = EmpiricalCovariance(bias=True).fit(X, queue=queue)
46
46
  expected_covariance = np.array([[1, 2], [2, 4]])
47
47
  expected_means = np.array([2, 4])
@@ -14,13 +14,16 @@
14
14
  # limitations under the License.
15
15
  # ==============================================================================
16
16
 
17
- from ._data_conversion import from_table, to_table
18
- from ._sycl_usm import copy_to_dpnp, copy_to_usm, usm_to_numpy
17
+ from ._data_conversion import from_table, return_type_constructor, to_table
18
+ from ._dlpack import dlpack_to_numpy, get_torch_queue
19
+ from ._sycl_usm import copy_to_dpnp, copy_to_usm
19
20
 
20
21
  __all__ = [
21
22
  "copy_to_dpnp",
22
23
  "copy_to_usm",
24
+ "dlpack_to_numpy",
23
25
  "from_table",
26
+ "get_torch_queue",
24
27
  "to_table",
25
- "usm_to_numpy",
28
+ "return_type_constructor",
26
29
  ]
@@ -0,0 +1,158 @@
1
+ # ==============================================================================
2
+ # Copyright 2021 Intel Corporation
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+ # ==============================================================================
16
+
17
+ import numpy as np
18
+ import scipy.sparse as sp
19
+
20
+ from onedal import _default_backend as backend
21
+
22
+ from ..utils._third_party import is_dpctl_tensor, is_dpnp_ndarray, lazy_import
23
+
24
+
25
+ def _apply_and_pass(func, *args, **kwargs):
26
+ if len(args) == 1:
27
+ return func(args[0], **kwargs)
28
+ return tuple(map(lambda arg: func(arg, **kwargs), args))
29
+
30
+
31
+ def _convert_one_to_table(arg, queue=None):
32
+ # All inputs for table conversion must be array-like or sparse, not scalars
33
+ return backend.to_table(np.atleast_2d(arg) if np.isscalar(arg) else arg, queue)
34
+
35
+
36
+ def to_table(*args, queue=None):
37
+ """Create oneDAL tables from scalars and/or arrays.
38
+
39
+ Parameters
40
+ ----------
41
+ *args : scalar, numpy array, sycl_usm_ndarray, csr_matrix, or csr_array
42
+ Arguments to be individually converted to oneDAL tables.
43
+
44
+ queue : SyclQueue or None, default=None
45
+ SYCL Queue object to be associated with the oneDAL tables. Default
46
+ value None causes no change in data location or queue.
47
+
48
+ Returns
49
+ -------
50
+ tables : oneDAL homogeneous or csr tables
51
+ Converted oneDAL tables for scalar, numpy array, sycl_usm_ndarray
52
+ and dlpack inputs; oneDAL csr_table for csr_matrix, csr_array.
53
+
54
+ Notes
55
+ -----
56
+ Tables will use pointers to the original array data. Scalars
57
+ and non-contiguous arrays will be copies. Arrays may be
58
+ modified in-place by oneDAL during computation. Transformation
59
+ is possible only for data located on CPU and SYCL-enabled Intel
60
+ GPUs. Each array may only be of a single data type (i.e. each
61
+ must be homogeneous).
62
+ """
63
+ return _apply_and_pass(_convert_one_to_table, *args, queue=queue)
64
+
65
+
66
+ @lazy_import("array_api_compat")
67
+ def _compat_convert(array_api_compat, array):
68
+ return array_api_compat.get_namespace(array).from_dlpack
69
+
70
+
71
+ def return_type_constructor(array):
72
+ """Generate a function for converting oneDAL tables to arrays.
73
+
74
+ Parameters
75
+ ----------
76
+ array : array-like or None
77
+ Python object representing an array instance of the return type
78
+ for converting oneDAL tables. Arrays are queried for conversion
79
+ namespace when of sycl_usm_array type or array API standard type.
80
+ When set to None, will return numpy arrays or scipy csr arrays.
81
+
82
+ Returns
83
+ -------
84
+ func : callable
85
+ A function which takes in a single table input and returns an array.
86
+ """
87
+ if isinstance(array, np.ndarray) or array is None or sp.issparse(array):
88
+ func = backend.from_table
89
+ elif hasattr(array, "__sycl_usm_array_interface__"):
90
+ # oneDAL returns tables without sycl queues for CPU sycl queue inputs.
91
+ # This workaround is necessary for the functional preservation
92
+ # of the compute-follows-data execution.
93
+ device = array.sycl_queue
94
+ # Its important to note why the __sycl_usm_array_interface__ is
95
+ # prioritized: it provides finer-grained control of SYCL queues and the
96
+ # related SYCL devices which are generally unavailable via DLPack
97
+ # representations (such as SYCL contexts, SYCL sub-devices, etc.).
98
+ xp = array.__array_namespace__()
99
+ # array api support added in dpnp starting in 0.19, will fail for
100
+ # older versions
101
+ if is_dpctl_tensor(array):
102
+ func = lambda x: (
103
+ xp.asarray(x)
104
+ if hasattr(x, "__sycl_usm_array_interface__")
105
+ else xp.asarray(backend.from_table(x), device=device)
106
+ )
107
+ elif is_dpnp_ndarray(array):
108
+ func = lambda x: (
109
+ xp.asarray(xp.as_usm_ndarray(x))
110
+ if hasattr(x, "__sycl_usm_array_interface__")
111
+ else xp.asarray(backend.from_table(x), device=device)
112
+ )
113
+
114
+ elif hasattr(array, "__array_namespace__"):
115
+ xp = array.__array_namespace__()
116
+ device = array.device
117
+ func = lambda inp: xp.from_dlpack(inp, device=device)
118
+ else:
119
+ try:
120
+ func = _compat_convert(array)
121
+ except ImportError:
122
+ raise TypeError(
123
+ "array type is unsupported, but may be made compatible by installing `array_api_compat`"
124
+ ) from None
125
+ return func
126
+
127
+
128
+ def from_table(*args, like=None):
129
+ """Create 2 dimensional arrays from oneDAL tables.
130
+
131
+ oneDAL tables are converted to numpy ndarrays, dpctl tensors, dpnp
132
+ ndarrays, or array API standard arrays of designated type.
133
+
134
+ Parameters
135
+ ----------
136
+ *args : single or multiple python oneDAL tables
137
+ The tables should given as individual arguments.
138
+
139
+ like : callable, array-like or None, default=None
140
+ Python object representing an array instance of the return type
141
+ or function capable of converting oneDAL tables into arrays of
142
+ desired type. Arrays are queried for conversion namespace when
143
+ of sycl_usm_array type or array API standard type. When set to
144
+ None, will return numpy arrays or scipy csr arrays.
145
+
146
+ Returns
147
+ -------
148
+ arrays : numpy arrays, sycl_usm_ndarrays, or array API standard arrays
149
+ Array or tuple of arrays generated from the input oneDAL tables.
150
+
151
+ Notes
152
+ -----
153
+ Support for other array types via array_api_compat is possible (e.g.
154
+ PyTorch), but requires its installation specifically, as it is imported
155
+ only when necessary.
156
+ """
157
+ func = like if callable(like) else return_type_constructor(like)
158
+ return _apply_and_pass(func, *args)
@@ -0,0 +1,64 @@
1
+ # ==============================================================================
2
+ # Copyright Contributors to the oneDAL Project
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+ # ==============================================================================
16
+
17
+ from collections.abc import Iterable
18
+
19
+ import numpy as np
20
+
21
+ from onedal import _default_backend as backend
22
+
23
+ from ..utils._third_party import convert_sklearnex_queue, lazy_import
24
+
25
+ cpu_dlpack_device = (backend.kDLCPU, 0)
26
+
27
+
28
+ @lazy_import("torch.xpu")
29
+ @convert_sklearnex_queue
30
+ def get_torch_queue(torchxpu, array):
31
+ return backend.SyclQueue(torchxpu.current_stream(array.get_device()).sycl_queue)
32
+
33
+
34
+ def dlpack_to_numpy(obj):
35
+ # check dlpack data location.
36
+ if obj.__dlpack_device__() != cpu_dlpack_device:
37
+ if hasattr(obj, "to_device"):
38
+ # use of the "cpu" string as device not officially part of
39
+ # the array api standard but widely supported
40
+ obj = obj.to_device("cpu")
41
+ elif hasattr(obj, "to"):
42
+ # pytorch-specific fix as it is not array api compliant
43
+ obj = obj.to("cpu")
44
+ else:
45
+ raise TypeError(f"cannot move {type(obj)} to cpu")
46
+
47
+ # convert to numpy
48
+ try:
49
+ # Some frameworks implement an __array__ method just to
50
+ # throw a RuntimeError when used (array_api_strict, dpctl),
51
+ # or a TypeError (array_api-strict) rather than an AttributeError
52
+ # therefore a try catch is necessary (logic is essentially a
53
+ # getattr call + some)
54
+ obj = obj.__array__()
55
+ except (AttributeError, RuntimeError, TypeError):
56
+ # requires numpy 1.23
57
+ try:
58
+ obj = np.from_dlpack(obj)
59
+ except AttributeError:
60
+ raise NotImplementedError(
61
+ "Upgrade NumPy >= 1.23 for dlpack support"
62
+ ) from None
63
+
64
+ return obj
@@ -17,12 +17,13 @@
17
17
  from collections.abc import Iterable
18
18
 
19
19
  import numpy as np
20
+ import scipy.sparse as sp
20
21
 
21
22
  from ..utils._third_party import lazy_import
22
23
 
23
24
 
24
25
  @lazy_import("dpctl.memory", "dpctl.tensor")
25
- def array_to_usm(memory, tensor, queue, array):
26
+ def _array_to_usm(memory, tensor, queue, array):
26
27
  try:
27
28
  mem = memory.MemoryUSMDevice(array.nbytes, queue=queue)
28
29
  mem.copy_from_host(array.tobytes())
@@ -37,7 +38,7 @@ def array_to_usm(memory, tensor, queue, array):
37
38
 
38
39
 
39
40
  @lazy_import("dpnp", "dpctl.tensor")
40
- def to_dpnp(dpnp, tensor, array):
41
+ def _to_dpnp(dpnp, tensor, array):
41
42
  if isinstance(array, tensor.usm_ndarray):
42
43
  return dpnp.array(array, copy=False)
43
44
  else:
@@ -45,34 +46,18 @@ def to_dpnp(dpnp, tensor, array):
45
46
 
46
47
 
47
48
  def copy_to_usm(queue, array):
48
- if hasattr(array, "__array__"):
49
- return array_to_usm(queue, array)
49
+ if hasattr(array, "tobytes"):
50
+ return _array_to_usm(queue, array)
50
51
  else:
51
- if isinstance(array, Iterable):
52
+ if isinstance(array, Iterable) and not sp.issparse(array):
52
53
  array = [copy_to_usm(queue, i) for i in array]
53
54
  return array
54
55
 
55
56
 
56
57
  def copy_to_dpnp(queue, array):
57
- if hasattr(array, "__array__"):
58
- return to_dpnp(array_to_usm(queue, array))
58
+ if hasattr(array, "tobytes"):
59
+ return _to_dpnp(_array_to_usm(queue, array))
59
60
  else:
60
- if isinstance(array, Iterable):
61
+ if isinstance(array, Iterable) and not sp.issparse(array):
61
62
  array = [copy_to_dpnp(queue, i) for i in array]
62
63
  return array
63
-
64
-
65
- @lazy_import("dpctl.memory")
66
- def usm_to_numpy(memorymod, item, usm_iface):
67
- buffer = memorymod.as_usm_memory(item).copy_to_host()
68
- order = "C"
69
- if usm_iface["strides"] is not None and len(usm_iface["strides"]) > 1:
70
- if usm_iface["strides"][0] < usm_iface["strides"][1]:
71
- order = "F"
72
- item = np.ndarray(
73
- shape=usm_iface["shape"],
74
- dtype=usm_iface["typestr"],
75
- buffer=buffer,
76
- order=order,
77
- )
78
- return item