scikit-learn-intelex 2025.0.1__py310-none-win_amd64.whl → 2025.2.0__py310-none-win_amd64.whl

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

Potentially problematic release.


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

Files changed (277) hide show
  1. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/daal4py/_daal4py.cp310-win_amd64.pyd +0 -0
  2. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/daal4py/mpi_transceiver.cp310-win_amd64.pyd +0 -0
  3. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/_n_jobs_support.py +21 -15
  4. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/_utils.py +11 -7
  5. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +9 -5
  6. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +35 -16
  7. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_linear.py +12 -0
  8. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +91 -10
  9. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_patching.py +4 -1
  10. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/utils/_launch_algorithms.py +3 -4
  11. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +6 -3
  12. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/_config.py +1 -0
  13. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/_device_offload.py +15 -40
  14. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp310-win_amd64.pyd +0 -0
  15. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp310-win_amd64.pyd +0 -0
  16. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/basic_statistics/basic_statistics.py +5 -5
  17. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/basic_statistics/incremental_basic_statistics.py +34 -19
  18. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_basic_statistics.py +16 -72
  19. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_incremental_basic_statistics.py +100 -17
  20. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/onedal/basic_statistics/tests/utils.py +50 -0
  21. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/cluster/dbscan.py +5 -10
  22. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/cluster/kmeans.py +16 -19
  23. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/cluster/kmeans_init.py +7 -10
  24. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/common/_policy.py +0 -4
  25. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/common/hyperparameters.py +22 -13
  26. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/common/tests/test_policy.py +4 -3
  27. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/onedal/common/tests/test_sycl.py +128 -0
  28. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/covariance/covariance.py +6 -9
  29. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +41 -26
  30. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_incremental_covariance.py +69 -1
  31. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/onedal/datatypes/__init__.py +19 -0
  32. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +121 -0
  33. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/onedal/datatypes/tests/common.py +126 -0
  34. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +475 -0
  35. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +42 -32
  36. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/decomposition/pca.py +7 -7
  37. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/decomposition/tests/test_incremental_pca.py +87 -0
  38. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/ensemble/forest.py +30 -14
  39. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/linear_model/incremental_linear_model.py +86 -52
  40. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/linear_model/linear_model.py +19 -23
  41. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/linear_model/logistic_regression.py +9 -11
  42. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_linear_regression.py +72 -27
  43. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_ridge_regression.py +64 -0
  44. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_linear_regression.py +110 -0
  45. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/neighbors/neighbors.py +55 -70
  46. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/primitives/kernel_functions.py +3 -4
  47. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/svm/svm.py +10 -10
  48. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svc.py +8 -0
  49. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/tests/test_common.py +25 -9
  50. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/tests/utils/_dataframes_support.py +4 -10
  51. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +19 -24
  52. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/utils/_array_api.py +12 -22
  53. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/onedal/utils/_dpep_helpers.py +56 -0
  54. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/onedal/utils/tests/test_validation.py +142 -0
  55. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/utils/validation.py +52 -20
  56. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/__init__.py +1 -0
  57. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/_config.py +19 -1
  58. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/_device_offload.py +17 -12
  59. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/_utils.py +45 -11
  60. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +123 -27
  61. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +65 -34
  62. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_basic_statistics.py +190 -36
  63. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_incremental_basic_statistics.py +99 -28
  64. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/cluster/dbscan.py +12 -7
  65. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/cluster/k_means.py +56 -42
  66. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +15 -11
  67. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/conftest.py +9 -0
  68. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +32 -13
  69. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/covariance/tests/test_incremental_covariance.py +61 -0
  70. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/decomposition/pca.py +30 -19
  71. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/dispatcher.py +1 -10
  72. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/ensemble/_forest.py +72 -59
  73. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/ensemble/tests/test_forest.py +40 -20
  74. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_linear.py +52 -40
  75. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +18 -4
  76. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/linear_model/linear.py +114 -75
  77. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/linear_model/logistic_regression.py +49 -39
  78. {scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/preview → scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/sklearnex}/linear_model/ridge.py +390 -419
  79. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_linear.py +70 -6
  80. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_ridge.py +61 -0
  81. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +41 -41
  82. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_ridge.py +256 -0
  83. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +250 -0
  84. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/neighbors/_lof.py +16 -11
  85. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/neighbors/common.py +4 -4
  86. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_classification.py +20 -15
  87. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_regression.py +18 -14
  88. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_unsupervised.py +22 -14
  89. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/neighbors/tests/test_neighbors.py +4 -2
  90. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/preview/__init__.py +1 -1
  91. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +18 -13
  92. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +1 -1
  93. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +30 -14
  94. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_incremental_pca.py +70 -0
  95. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_basic_statistics_spmd.py +4 -4
  96. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_incremental_basic_statistics_spmd.py +7 -8
  97. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_dbscan_spmd.py +1 -1
  98. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_kmeans_spmd.py +4 -3
  99. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_covariance_spmd.py +1 -1
  100. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_incremental_covariance_spmd.py +1 -1
  101. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_incremental_pca_spmd.py +1 -1
  102. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_pca_spmd.py +1 -1
  103. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/tests/test_forest_spmd.py +1 -1
  104. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_incremental_linear_spmd.py +17 -15
  105. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_linear_regression_spmd.py +1 -1
  106. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_logistic_regression_spmd.py +1 -5
  107. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/tests/test_neighbors_spmd.py +1 -1
  108. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/svm/_common.py +58 -47
  109. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/svm/nusvc.py +68 -29
  110. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/svm/nusvr.py +40 -18
  111. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/svm/svc.py +66 -27
  112. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/svm/svr.py +36 -18
  113. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/sklearnex/tests/test_common.py +491 -0
  114. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/sklearnex/tests/test_config.py +123 -0
  115. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +43 -0
  116. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +69 -13
  117. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +4 -11
  118. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +108 -0
  119. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/tests/test_patching.py +1 -9
  120. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +43 -13
  121. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +48 -0
  122. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/tests/_utils.py → scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/sklearnex/tests/utils/base.py +117 -9
  123. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/utils/validation.py → scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/sklearnex/utils/__init__.py +3 -1
  124. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/sklearnex/utils/tests/test_validation.py +238 -0
  125. scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/sklearnex/utils/validation.py +208 -0
  126. {scikit_learn_intelex-2025.0.1.dist-info → scikit_learn_intelex-2025.2.0.dist-info}/METADATA +2 -2
  127. scikit_learn_intelex-2025.2.0.dist-info/RECORD +259 -0
  128. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/daal4py/_daal4py.cp310-win_amd64.pyd +0 -0
  129. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/daal4py/mpi_transceiver.cp310-win_amd64.pyd +0 -0
  130. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp310-win_amd64.pyd +0 -0
  131. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/onedal/_onedal_py_host.cp310-win_amd64.pyd +0 -0
  132. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/onedal/datatypes/__init__.py +0 -19
  133. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +0 -95
  134. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +0 -235
  135. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/linear_model/logistic_path.py +0 -17
  136. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/linear_model/ridge.py +0 -24
  137. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +0 -26
  138. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/preview/linear_model/__init__.py +0 -19
  139. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/preview/linear_model/tests/test_ridge.py +0 -102
  140. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/tests/test_common.py +0 -54
  141. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/tests/test_config.py +0 -43
  142. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +0 -103
  143. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/utils/__init__.py +0 -19
  144. scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/utils/tests/test_finite.py +0 -89
  145. scikit_learn_intelex-2025.0.1.dist-info/RECORD +0 -255
  146. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/__init__.py +0 -0
  147. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/__main__.py +0 -0
  148. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/doc/third-party-programs.txt +0 -0
  149. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/mb/__init__.py +0 -0
  150. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/mb/model_builders.py +0 -0
  151. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/__init__.py +0 -0
  152. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +0 -0
  153. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +0 -0
  154. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/k_means.py +0 -0
  155. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/tests/test_dbscan.py +0 -0
  156. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/__init__.py +0 -0
  157. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +0 -0
  158. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +0 -0
  159. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +0 -0
  160. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/tests/test_decision_forest.py +0 -0
  161. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/__init__.py +0 -0
  162. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_coordinate_descent.py +0 -0
  163. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_linear.py +0 -0
  164. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_ridge.py +0 -0
  165. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/coordinate_descent.py +0 -0
  166. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/linear.py +0 -0
  167. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_loss.py +0 -0
  168. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +0 -0
  169. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/ridge.py +0 -0
  170. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_ridge.py +0 -0
  171. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/__init__.py +0 -0
  172. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/_t_sne.py +0 -0
  173. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +0 -0
  174. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +0 -0
  175. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/__init__.py +0 -0
  176. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/_split.py +0 -0
  177. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/tests/test_split.py +0 -0
  178. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
  179. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +0 -0
  180. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/_models_info.py +0 -0
  181. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_monkeypatch.py +0 -0
  182. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +0 -0
  183. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +0 -0
  184. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +0 -0
  185. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +0 -0
  186. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +0 -0
  187. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/tests/test_kneighbors.py +0 -0
  188. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +0 -0
  189. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +0 -0
  190. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +0 -0
  191. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/base.py +0 -0
  192. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/tests/test_utils.py +0 -0
  193. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/__init__.py +0 -0
  194. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/basic_statistics/__init__.py +0 -0
  195. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/cluster/__init__.py +0 -0
  196. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_dbscan.py +0 -0
  197. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans.py +0 -0
  198. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans_init.py +0 -0
  199. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/common/_base.py +0 -0
  200. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/common/_estimator_checks.py +0 -0
  201. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/common/_mixin.py +0 -0
  202. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/common/_spmd_policy.py +0 -0
  203. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/covariance/__init__.py +0 -0
  204. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_covariance.py +0 -0
  205. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/decomposition/__init__.py +0 -0
  206. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/ensemble/__init__.py +0 -0
  207. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/ensemble/tests/test_random_forest.py +0 -0
  208. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/linear_model/__init__.py +0 -0
  209. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_logistic_regression.py +0 -0
  210. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_ridge.py +0 -0
  211. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/neighbors/__init__.py +0 -0
  212. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/neighbors/tests/test_knn_classification.py +0 -0
  213. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/primitives/__init__.py +0 -0
  214. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/primitives/get_tree.py +0 -0
  215. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/primitives/tests/test_kernel_functions.py +0 -0
  216. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/svm/__init__.py +0 -0
  217. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/svm/tests/test_csr_svm.py +0 -0
  218. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvc.py +0 -0
  219. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvr.py +0 -0
  220. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svr.py +0 -0
  221. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/onedal/utils/__init__.py +0 -0
  222. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/__main__.py +0 -0
  223. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +0 -0
  224. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/cluster/__init__.py +0 -0
  225. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_dbscan.py +0 -0
  226. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/covariance/__init__.py +0 -0
  227. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/decomposition/__init__.py +0 -0
  228. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +0 -0
  229. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/doc/third-party-programs.txt +0 -0
  230. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/ensemble/__init__.py +0 -0
  231. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/glob/__main__.py +0 -0
  232. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/glob/dispatcher.py +0 -0
  233. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/linear_model/__init__.py +0 -0
  234. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +0 -0
  235. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +0 -0
  236. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/manifold/__init__.py +0 -0
  237. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/manifold/t_sne.py +0 -0
  238. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/metrics/__init__.py +0 -0
  239. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/metrics/pairwise.py +0 -0
  240. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/metrics/ranking.py +0 -0
  241. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/metrics/tests/test_metrics.py +0 -0
  242. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/model_selection/__init__.py +0 -0
  243. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/model_selection/split.py +0 -0
  244. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/model_selection/tests/test_model_selection.py +0 -0
  245. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/neighbors/__init__.py +0 -0
  246. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +0 -0
  247. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +0 -0
  248. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/__init__.py +0 -0
  249. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/__init__.py +0 -0
  250. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/basic_statistics.py +0 -0
  251. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/incremental_basic_statistics.py +0 -0
  252. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +0 -0
  253. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +0 -0
  254. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +0 -0
  255. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +0 -0
  256. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +0 -0
  257. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/incremental_covariance.py +0 -0
  258. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/__init__.py +0 -0
  259. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/incremental_pca.py +0 -0
  260. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +0 -0
  261. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +0 -0
  262. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +0 -0
  263. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/__init__.py +0 -0
  264. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/incremental_linear_model.py +0 -0
  265. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/linear_model.py +0 -0
  266. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/logistic_regression.py +0 -0
  267. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +0 -0
  268. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/neighbors.py +0 -0
  269. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/svm/__init__.py +0 -0
  270. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/svm/tests/test_svm.py +0 -0
  271. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/tests/test_parallel.py +0 -0
  272. /scikit_learn_intelex-2025.0.1.data/data/Lib/site-packages/sklearnex/tests/_utils_spmd.py → /scikit_learn_intelex-2025.2.0.data/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +0 -0
  273. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/utils/_array_api.py +0 -0
  274. {scikit_learn_intelex-2025.0.1.data → scikit_learn_intelex-2025.2.0.data}/data/Lib/site-packages/sklearnex/utils/parallel.py +0 -0
  275. {scikit_learn_intelex-2025.0.1.dist-info → scikit_learn_intelex-2025.2.0.dist-info}/LICENSE.txt +0 -0
  276. {scikit_learn_intelex-2025.0.1.dist-info → scikit_learn_intelex-2025.2.0.dist-info}/WHEEL +0 -0
  277. {scikit_learn_intelex-2025.0.1.dist-info → scikit_learn_intelex-2025.2.0.dist-info}/top_level.txt +0 -0
@@ -18,7 +18,7 @@ import numpy as np
18
18
 
19
19
  from daal4py.sklearn._utils import get_dtype
20
20
 
21
- from ..datatypes import _convert_to_supported, from_table, to_table
21
+ from ..datatypes import from_table, to_table
22
22
  from ..utils import _check_array
23
23
  from .pca import BasePCA
24
24
 
@@ -99,11 +99,22 @@ class IncrementalPCA(BasePCA):
99
99
  self._reset()
100
100
 
101
101
  def _reset(self):
102
- self._partial_result = self._get_backend(
103
- "decomposition", "dim_reduction", "partial_train_result"
104
- )
102
+ self._need_to_finalize = False
103
+ module = self._get_backend("decomposition", "dim_reduction")
105
104
  if hasattr(self, "components_"):
106
105
  del self.components_
106
+ self._partial_result = module.partial_train_result()
107
+
108
+ def __getstate__(self):
109
+ # Since finalize_fit can't be dispatched without directly provided queue
110
+ # and the dispatching policy can't be serialized, the computation is finalized
111
+ # here and the policy is not saved in serialized data.
112
+
113
+ self.finalize_fit()
114
+ data = self.__dict__.copy()
115
+ data.pop("_queue", None)
116
+
117
+ return data
107
118
 
108
119
  def partial_fit(self, X, queue):
109
120
  """Incremental fit with X. All of X is processed as a single batch.
@@ -144,13 +155,12 @@ class IncrementalPCA(BasePCA):
144
155
  self._queue = queue
145
156
 
146
157
  policy = self._get_policy(queue, X)
147
- X = _convert_to_supported(policy, X)
158
+ X_table = to_table(X, queue=queue)
148
159
 
149
160
  if not hasattr(self, "_dtype"):
150
- self._dtype = get_dtype(X)
151
- self._params = self._get_onedal_params(X)
161
+ self._dtype = X_table.dtype
162
+ self._params = self._get_onedal_params(X_table)
152
163
 
153
- X_table = to_table(X)
154
164
  self._partial_result = self._get_backend(
155
165
  "decomposition",
156
166
  "dim_reduction",
@@ -160,6 +170,7 @@ class IncrementalPCA(BasePCA):
160
170
  self._partial_result,
161
171
  X_table,
162
172
  )
173
+ self._need_to_finalize = True
163
174
  return self
164
175
 
165
176
  def finalize_fit(self, queue=None):
@@ -177,28 +188,27 @@ class IncrementalPCA(BasePCA):
177
188
  self : object
178
189
  Returns the instance itself.
179
190
  """
180
- if queue is not None:
181
- policy = self._get_policy(queue)
182
- else:
183
- policy = self._get_policy(self._queue)
184
- result = self._get_backend(
185
- "decomposition",
186
- "dim_reduction",
187
- "finalize_train",
188
- policy,
189
- self._params,
190
- self._partial_result,
191
- )
192
- self.mean_ = from_table(result.means).ravel()
193
- self.var_ = from_table(result.variances).ravel()
194
- self.components_ = from_table(result.eigenvectors)
195
- self.singular_values_ = np.nan_to_num(from_table(result.singular_values).ravel())
196
- self.explained_variance_ = np.maximum(from_table(result.eigenvalues).ravel(), 0)
197
- self.explained_variance_ratio_ = from_table(
198
- result.explained_variances_ratio
199
- ).ravel()
200
- self.noise_variance_ = self._compute_noise_variance(
201
- self.n_components_, min(self.n_samples_seen_, self.n_features_in_)
202
- )
203
-
191
+ if self._need_to_finalize:
192
+ module = self._get_backend("decomposition", "dim_reduction")
193
+ if queue is not None:
194
+ policy = self._get_policy(queue)
195
+ else:
196
+ policy = self._get_policy(self._queue)
197
+ result = module.finalize_train(policy, self._params, self._partial_result)
198
+ self.mean_ = from_table(result.means).ravel()
199
+ self.var_ = from_table(result.variances).ravel()
200
+ self.components_ = from_table(result.eigenvectors)
201
+ self.singular_values_ = np.nan_to_num(
202
+ from_table(result.singular_values).ravel()
203
+ )
204
+ self.explained_variance_ = np.maximum(
205
+ from_table(result.eigenvalues).ravel(), 0
206
+ )
207
+ self.explained_variance_ratio_ = from_table(
208
+ result.explained_variances_ratio
209
+ ).ravel()
210
+ self.noise_variance_ = self._compute_noise_variance(
211
+ self.n_components_, min(self.n_samples_seen_, self.n_features_in_)
212
+ )
213
+ self._need_to_finalize = False
204
214
  return self
@@ -22,7 +22,7 @@ from sklearn.decomposition._pca import _infer_dimension
22
22
  from sklearn.utils.extmath import stable_cumsum
23
23
 
24
24
  from ..common._base import BaseEstimator
25
- from ..datatypes import _convert_to_supported, from_table, to_table
25
+ from ..datatypes import from_table, to_table
26
26
 
27
27
 
28
28
  class BasePCA(BaseEstimator, metaclass=ABCMeta):
@@ -48,7 +48,7 @@ class BasePCA(BaseEstimator, metaclass=ABCMeta):
48
48
  elif stage == "predict":
49
49
  n_components = self.n_components_
50
50
  return {
51
- "fptype": "float" if data.dtype == np.float32 else "double",
51
+ "fptype": data.dtype,
52
52
  "method": self.method,
53
53
  "n_components": n_components,
54
54
  "is_deterministic": self.is_deterministic,
@@ -130,11 +130,11 @@ class BasePCA(BaseEstimator, metaclass=ABCMeta):
130
130
  def predict(self, X, queue=None):
131
131
  policy = self._get_policy(queue, X)
132
132
  model = self._create_model()
133
- X = _convert_to_supported(policy, X)
134
- params = self._get_onedal_params(X, stage="predict")
133
+ X_table = to_table(X, queue=queue)
134
+ params = self._get_onedal_params(X_table, stage="predict")
135
135
 
136
136
  result = self._get_backend(
137
- "decomposition", "dim_reduction", "infer", policy, params, model, to_table(X)
137
+ "decomposition", "dim_reduction", "infer", policy, params, model, X_table
138
138
  )
139
139
  return from_table(result.transformed_data)
140
140
 
@@ -151,11 +151,11 @@ class PCA(BasePCA):
151
151
  # fails to be converted to oneDAL table
152
152
  if isinstance(X, np.ndarray) and not X.flags["OWNDATA"]:
153
153
  X = X.copy()
154
- X = _convert_to_supported(policy, X)
155
154
 
155
+ X = to_table(X, queue=queue)
156
156
  params = self._get_onedal_params(X)
157
157
  result = self._get_backend(
158
- "decomposition", "dim_reduction", "train", policy, params, to_table(X)
158
+ "decomposition", "dim_reduction", "train", policy, params, X
159
159
  )
160
160
 
161
161
  self.mean_ = from_table(result.means).ravel()
@@ -19,6 +19,7 @@ import pytest
19
19
  from numpy.testing import assert_allclose
20
20
 
21
21
  from daal4py.sklearn._utils import daal_check_version
22
+ from onedal.datatypes import from_table
22
23
  from onedal.decomposition import IncrementalPCA
23
24
  from onedal.tests.utils._device_selection import get_queues
24
25
 
@@ -196,3 +197,89 @@ def test_on_random_data(
196
197
  whiten and queue is not None and queue.sycl_device.device_type.name == "gpu"
197
198
  ):
198
199
  assert_allclose(transformed_data, expected_transformed_data, atol=tol)
200
+
201
+
202
+ @pytest.mark.parametrize("queue", get_queues())
203
+ @pytest.mark.parametrize("dtype", [np.float32, np.float64])
204
+ def test_incremental_estimator_pickle(queue, dtype):
205
+ import pickle
206
+
207
+ from onedal.decomposition import IncrementalPCA
208
+
209
+ incpca = IncrementalPCA()
210
+
211
+ # Check that estimator can be serialized without any data.
212
+ dump = pickle.dumps(incpca)
213
+ incpca_loaded = pickle.loads(dump)
214
+ seed = 77
215
+ gen = np.random.default_rng(seed)
216
+ X = gen.uniform(low=-0.3, high=+0.7, size=(10, 10))
217
+ X = X.astype(dtype)
218
+ X_split = np.array_split(X, 2)
219
+ incpca.partial_fit(X_split[0], queue=queue)
220
+ incpca_loaded.partial_fit(X_split[0], queue=queue)
221
+ assert incpca._need_to_finalize == True
222
+ assert incpca_loaded._need_to_finalize == True
223
+
224
+ # Check that estimator can be serialized after partial_fit call.
225
+ dump = pickle.dumps(incpca)
226
+ incpca_loaded = pickle.loads(dump)
227
+ assert incpca._need_to_finalize == False
228
+ # Finalize is called during serialization to make sure partial results are finalized correctly.
229
+ assert incpca_loaded._need_to_finalize == False
230
+
231
+ partial_n_rows = from_table(incpca._partial_result.partial_n_rows)
232
+ partial_n_rows_loaded = from_table(incpca_loaded._partial_result.partial_n_rows)
233
+ assert_allclose(partial_n_rows, partial_n_rows_loaded)
234
+
235
+ partial_crossproduct = from_table(incpca._partial_result.partial_crossproduct)
236
+ partial_crossproduct_loaded = from_table(
237
+ incpca_loaded._partial_result.partial_crossproduct
238
+ )
239
+ assert_allclose(partial_crossproduct, partial_crossproduct_loaded)
240
+
241
+ partial_sum = from_table(incpca._partial_result.partial_sum)
242
+ partial_sum_loaded = from_table(incpca_loaded._partial_result.partial_sum)
243
+ assert_allclose(partial_sum, partial_sum_loaded)
244
+
245
+ auxiliary_table_count = incpca._partial_result.auxiliary_table_count
246
+ auxiliary_table_count_loaded = incpca_loaded._partial_result.auxiliary_table_count
247
+ assert_allclose(auxiliary_table_count, auxiliary_table_count_loaded)
248
+
249
+ for i in range(auxiliary_table_count):
250
+ aux_table = incpca._partial_result.get_auxiliary_table(i)
251
+ aux_table_loaded = incpca_loaded._partial_result.get_auxiliary_table(i)
252
+ assert_allclose(from_table(aux_table), from_table(aux_table_loaded))
253
+
254
+ incpca.partial_fit(X_split[1], queue=queue)
255
+ incpca_loaded.partial_fit(X_split[1], queue=queue)
256
+ assert incpca._need_to_finalize == True
257
+ assert incpca_loaded._need_to_finalize == True
258
+
259
+ dump = pickle.dumps(incpca_loaded)
260
+ incpca_loaded = pickle.loads(dump)
261
+
262
+ assert incpca._need_to_finalize == True
263
+ assert incpca_loaded._need_to_finalize == False
264
+
265
+ incpca.finalize_fit()
266
+ incpca_loaded.finalize_fit()
267
+
268
+ # Check that finalized estimator can be serialized.
269
+ dump = pickle.dumps(incpca_loaded)
270
+ incpca_loaded = pickle.loads(dump)
271
+
272
+ assert_allclose(incpca.singular_values_, incpca_loaded.singular_values_, atol=1e-6)
273
+ assert_allclose(incpca.n_samples_seen_, incpca_loaded.n_samples_seen_, atol=1e-6)
274
+ assert_allclose(incpca.n_features_in_, incpca_loaded.n_features_in_, atol=1e-6)
275
+ assert_allclose(incpca.mean_, incpca_loaded.mean_, atol=1e-6)
276
+ assert_allclose(incpca.var_, incpca_loaded.var_, atol=1e-6)
277
+ assert_allclose(
278
+ incpca.explained_variance_, incpca_loaded.explained_variance_, atol=1e-6
279
+ )
280
+ assert_allclose(incpca.components_, incpca_loaded.components_, atol=1e-6)
281
+ assert_allclose(
282
+ incpca.explained_variance_ratio_,
283
+ incpca_loaded.explained_variance_ratio_,
284
+ atol=1e-6,
285
+ )
@@ -18,19 +18,18 @@ import numbers
18
18
  import warnings
19
19
  from abc import ABCMeta, abstractmethod
20
20
  from math import ceil
21
- from numbers import Number
22
21
 
23
22
  import numpy as np
24
23
  from sklearn.ensemble import BaseEnsemble
25
24
  from sklearn.utils import check_random_state
26
25
 
27
26
  from daal4py.sklearn._utils import daal_check_version
28
- from onedal import _backend
27
+ from sklearnex import get_hyperparameters
29
28
 
30
29
  from ..common._base import BaseEstimator
31
30
  from ..common._estimator_checks import _check_is_fitted
32
31
  from ..common._mixin import ClassifierMixin, RegressorMixin
33
- from ..datatypes import _convert_to_supported, from_table, to_table
32
+ from ..datatypes import from_table, to_table
34
33
  from ..utils import (
35
34
  _check_array,
36
35
  _check_n_features,
@@ -159,7 +158,7 @@ class BaseForest(BaseEstimator, BaseEnsemble, metaclass=ABCMeta):
159
158
  seed = rs.randint(0, np.iinfo("i").max)
160
159
 
161
160
  onedal_params = {
162
- "fptype": "float" if data.dtype == np.float32 else "double",
161
+ "fptype": data.dtype,
163
162
  "method": self.algorithm,
164
163
  "infer_mode": self.infer_mode,
165
164
  "voting_mode": self.voting_mode,
@@ -307,9 +306,9 @@ class BaseForest(BaseEstimator, BaseEnsemble, metaclass=ABCMeta):
307
306
  else:
308
307
  data = (X, y)
309
308
  policy = self._get_policy(queue, *data)
310
- data = _convert_to_supported(policy, *data)
309
+ data = to_table(*data, queue=queue)
311
310
  params = self._get_onedal_params(data[0])
312
- train_result = module.train(policy, params, *to_table(*data))
311
+ train_result = module.train(policy, params, *data)
313
312
 
314
313
  self._onedal_model = train_result.model
315
314
 
@@ -346,7 +345,7 @@ class BaseForest(BaseEstimator, BaseEnsemble, metaclass=ABCMeta):
346
345
  # upate error msg.
347
346
  raise NotImplementedError("Creating model is not supported.")
348
347
 
349
- def _predict(self, X, module, queue):
348
+ def _predict(self, X, module, queue, hparams=None):
350
349
  _check_is_fitted(self)
351
350
  X = _check_array(
352
351
  X, dtype=[np.float64, np.float32], force_all_finite=True, accept_sparse=False
@@ -355,25 +354,33 @@ class BaseForest(BaseEstimator, BaseEnsemble, metaclass=ABCMeta):
355
354
  policy = self._get_policy(queue, X)
356
355
 
357
356
  model = self._onedal_model
358
- X = _convert_to_supported(policy, X)
357
+ X = to_table(X, queue=queue)
359
358
  params = self._get_onedal_params(X)
360
- result = module.infer(policy, params, model, to_table(X))
359
+ if hparams is not None and not hparams.is_default:
360
+ result = module.infer(policy, params, hparams.backend, model, X)
361
+ else:
362
+ result = module.infer(policy, params, model, X)
363
+
361
364
  y = from_table(result.responses)
362
365
  return y
363
366
 
364
- def _predict_proba(self, X, module, queue):
367
+ def _predict_proba(self, X, module, queue, hparams=None):
365
368
  _check_is_fitted(self)
366
369
  X = _check_array(
367
370
  X, dtype=[np.float64, np.float32], force_all_finite=True, accept_sparse=False
368
371
  )
369
372
  _check_n_features(self, X, False)
370
373
  policy = self._get_policy(queue, X)
371
- X = _convert_to_supported(policy, X)
374
+ X = to_table(X, queue=queue)
372
375
  params = self._get_onedal_params(X)
373
376
  params["infer_mode"] = "class_probabilities"
374
377
 
375
378
  model = self._onedal_model
376
- result = module.infer(policy, params, model, to_table(X))
379
+ if hparams is not None and not hparams.is_default:
380
+ result = module.infer(policy, params, hparams.backend, model, X)
381
+ else:
382
+ result = module.infer(policy, params, model, X)
383
+
377
384
  y = from_table(result.probabilities)
378
385
  return y
379
386
 
@@ -458,15 +465,24 @@ class RandomForestClassifier(ClassifierMixin, BaseForest, metaclass=ABCMeta):
458
465
  )
459
466
 
460
467
  def predict(self, X, queue=None):
468
+ hparams = get_hyperparameters("decision_forest", "infer")
461
469
  pred = super()._predict(
462
- X, self._get_backend("decision_forest", "classification", None), queue
470
+ X,
471
+ self._get_backend("decision_forest", "classification", None),
472
+ queue,
473
+ hparams,
463
474
  )
464
475
 
465
476
  return np.take(self.classes_, pred.ravel().astype(np.int64, casting="unsafe"))
466
477
 
467
478
  def predict_proba(self, X, queue=None):
479
+ hparams = get_hyperparameters("decision_forest", "infer")
480
+
468
481
  return super()._predict_proba(
469
- X, self._get_backend("decision_forest", "classification", None), queue
482
+ X,
483
+ self._get_backend("decision_forest", "classification", None),
484
+ queue,
485
+ hparams,
470
486
  )
471
487
 
472
488
 
@@ -19,7 +19,7 @@ import numpy as np
19
19
  from daal4py.sklearn._utils import get_dtype
20
20
 
21
21
  from ..common.hyperparameters import get_hyperparameters
22
- from ..datatypes import _convert_to_supported, from_table, to_table
22
+ from ..datatypes import from_table, to_table
23
23
  from ..utils import _check_X_y, _num_features
24
24
  from .linear_model import BaseLinearRegression
25
25
 
@@ -47,10 +47,22 @@ class IncrementalLinearRegression(BaseLinearRegression):
47
47
  self._reset()
48
48
 
49
49
  def _reset(self):
50
+ self._need_to_finalize = False
50
51
  self._partial_result = self._get_backend(
51
52
  "linear_model", "regression", "partial_train_result"
52
53
  )
53
54
 
55
+ def __getstate__(self):
56
+ # Since finalize_fit can't be dispatched without directly provided queue
57
+ # and the dispatching policy can't be serialized, the computation is finalized
58
+ # here and the policy is not saved in serialized data.
59
+
60
+ self.finalize_fit()
61
+ data = self.__dict__.copy()
62
+ data.pop("_queue", None)
63
+
64
+ return data
65
+
54
66
  def partial_fit(self, X, y, queue=None):
55
67
  """
56
68
  Computes partial data for linear regression
@@ -77,20 +89,19 @@ class IncrementalLinearRegression(BaseLinearRegression):
77
89
  self._queue = queue
78
90
  policy = self._get_policy(queue, X)
79
91
 
80
- X, y = _convert_to_supported(policy, X, y)
81
-
82
- if not hasattr(self, "_dtype"):
83
- self._dtype = get_dtype(X)
84
- self._params = self._get_onedal_params(self._dtype)
85
-
86
- y = np.asarray(y, dtype=self._dtype)
87
-
88
92
  X, y = _check_X_y(
89
93
  X, y, dtype=[np.float64, np.float32], accept_2d_y=True, force_all_finite=False
90
94
  )
95
+ y = np.asarray(y, dtype=X.dtype)
91
96
 
92
97
  self.n_features_in_ = _num_features(X, fallback_1d=True)
93
- X_table, y_table = to_table(X, y)
98
+
99
+ X_table, y_table = to_table(X, y, queue=queue)
100
+
101
+ if not hasattr(self, "_dtype"):
102
+ self._dtype = X_table.dtype
103
+ self._params = self._get_onedal_params(self._dtype)
104
+
94
105
  hparams = get_hyperparameters("linear_regression", "train")
95
106
  if hparams is not None and not hparams.is_default:
96
107
  self._partial_result = module.partial_train(
@@ -106,6 +117,9 @@ class IncrementalLinearRegression(BaseLinearRegression):
106
117
  policy, self._params, self._partial_result, X_table, y_table
107
118
  )
108
119
 
120
+ self._need_to_finalize = True
121
+ return self
122
+
109
123
  def finalize_fit(self, queue=None):
110
124
  """
111
125
  Finalizes linear regression computation and obtains coefficients
@@ -122,27 +136,30 @@ class IncrementalLinearRegression(BaseLinearRegression):
122
136
  Returns the instance itself.
123
137
  """
124
138
 
125
- if queue is not None:
126
- policy = self._get_policy(queue)
127
- else:
128
- policy = self._get_policy(self._queue)
129
-
130
- module = self._get_backend("linear_model", "regression")
131
- hparams = get_hyperparameters("linear_regression", "train")
132
- if hparams is not None and not hparams.is_default:
133
- result = module.finalize_train(
134
- policy, self._params, hparams.backend, self._partial_result
139
+ if self._need_to_finalize:
140
+ if queue is not None:
141
+ policy = self._get_policy(queue)
142
+ else:
143
+ policy = self._get_policy(self._queue)
144
+
145
+ module = self._get_backend("linear_model", "regression")
146
+ hparams = get_hyperparameters("linear_regression", "train")
147
+ if hparams is not None and not hparams.is_default:
148
+ result = module.finalize_train(
149
+ policy, self._params, hparams.backend, self._partial_result
150
+ )
151
+ else:
152
+ result = module.finalize_train(policy, self._params, self._partial_result)
153
+
154
+ self._onedal_model = result.model
155
+
156
+ packed_coefficients = from_table(result.model.packed_coefficients)
157
+ self.coef_, self.intercept_ = (
158
+ packed_coefficients[:, 1:].squeeze(),
159
+ packed_coefficients[:, 0].squeeze(),
135
160
  )
136
- else:
137
- result = module.finalize_train(policy, self._params, self._partial_result)
138
161
 
139
- self._onedal_model = result.model
140
-
141
- packed_coefficients = from_table(result.model.packed_coefficients)
142
- self.coef_, self.intercept_ = (
143
- packed_coefficients[:, 1:].squeeze(),
144
- packed_coefficients[:, 0].squeeze(),
145
- )
162
+ self._need_to_finalize = False
146
163
 
147
164
  return self
148
165
 
@@ -171,15 +188,26 @@ class IncrementalRidge(BaseLinearRegression):
171
188
  """
172
189
 
173
190
  def __init__(self, alpha=1.0, fit_intercept=True, copy_X=False, algorithm="norm_eq"):
174
- module = self._get_backend("linear_model", "regression")
175
191
  super().__init__(
176
192
  fit_intercept=fit_intercept, alpha=alpha, copy_X=copy_X, algorithm=algorithm
177
193
  )
178
- self._partial_result = module.partial_train_result()
194
+ self._reset()
179
195
 
180
196
  def _reset(self):
181
197
  module = self._get_backend("linear_model", "regression")
182
198
  self._partial_result = module.partial_train_result()
199
+ self._need_to_finalize = False
200
+
201
+ def __getstate__(self):
202
+ # Since finalize_fit can't be dispatched without directly provided queue
203
+ # and the dispatching policy can't be serialized, the computation is finalized
204
+ # here and the policy is not saved in serialized data.
205
+
206
+ self.finalize_fit()
207
+ data = self.__dict__.copy()
208
+ data.pop("_queue", None)
209
+
210
+ return data
183
211
 
184
212
  def partial_fit(self, X, y, queue=None):
185
213
  """
@@ -207,24 +235,26 @@ class IncrementalRidge(BaseLinearRegression):
207
235
  self._queue = queue
208
236
  policy = self._get_policy(queue, X)
209
237
 
210
- X, y = _convert_to_supported(policy, X, y)
211
-
212
- if not hasattr(self, "_dtype"):
213
- self._dtype = get_dtype(X)
214
- self._params = self._get_onedal_params(self._dtype)
215
-
216
- y = np.asarray(y, dtype=self._dtype)
217
-
218
238
  X, y = _check_X_y(
219
239
  X, y, dtype=[np.float64, np.float32], accept_2d_y=True, force_all_finite=False
220
240
  )
241
+ y = np.asarray(y, dtype=X.dtype)
221
242
 
222
243
  self.n_features_in_ = _num_features(X, fallback_1d=True)
223
- X_table, y_table = to_table(X, y)
244
+
245
+ X_table, y_table = to_table(X, y, queue=queue)
246
+
247
+ if not hasattr(self, "_dtype"):
248
+ self._dtype = X_table.dtype
249
+ self._params = self._get_onedal_params(self._dtype)
250
+
224
251
  self._partial_result = module.partial_train(
225
252
  policy, self._params, self._partial_result, X_table, y_table
226
253
  )
227
254
 
255
+ self._need_to_finalize = True
256
+ return self
257
+
228
258
  def finalize_fit(self, queue=None):
229
259
  """
230
260
  Finalizes ridge regression computation and obtains coefficients
@@ -240,19 +270,23 @@ class IncrementalRidge(BaseLinearRegression):
240
270
  self : object
241
271
  Returns the instance itself.
242
272
  """
243
- module = self._get_backend("linear_model", "regression")
244
- if queue is not None:
245
- policy = self._get_policy(queue)
246
- else:
247
- policy = self._get_policy(self._queue)
248
- result = module.finalize_train(policy, self._params, self._partial_result)
249
273
 
250
- self._onedal_model = result.model
274
+ if self._need_to_finalize:
275
+ module = self._get_backend("linear_model", "regression")
276
+ if queue is not None:
277
+ policy = self._get_policy(queue)
278
+ else:
279
+ policy = self._get_policy(self._queue)
280
+ result = module.finalize_train(policy, self._params, self._partial_result)
251
281
 
252
- packed_coefficients = from_table(result.model.packed_coefficients)
253
- self.coef_, self.intercept_ = (
254
- packed_coefficients[:, 1:].squeeze(),
255
- packed_coefficients[:, 0].squeeze(),
256
- )
282
+ self._onedal_model = result.model
283
+
284
+ packed_coefficients = from_table(result.model.packed_coefficients)
285
+ self.coef_, self.intercept_ = (
286
+ packed_coefficients[:, 1:].squeeze(),
287
+ packed_coefficients[:, 0].squeeze(),
288
+ )
289
+
290
+ self._need_to_finalize = False
257
291
 
258
292
  return self