scikit-learn-intelex 2025.10.0__py313-none-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/__init__.py +73 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/__main__.py +58 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/_daal4py.cp313-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/mb/__init__.py +94 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/mb/gbt_convertors.py +1199 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/mb/logistic_regression_builders.py +211 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/mb/tree_based_builders.py +425 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/mpi_transceiver.cp313-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/__init__.py +40 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/_n_jobs_support.py +252 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/_utils.py +245 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +20 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +165 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/k_means.py +565 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/cluster/tests/test_dbscan.py +109 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/decomposition/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +528 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +192 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +333 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +27 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +1285 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/tests/test_decision_forest.py +206 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/__init__.py +29 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/_coordinate_descent.py +826 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/_linear.py +269 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/_ridge.py +290 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/coordinate_descent.py +17 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/linear.py +17 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_loss.py +195 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +561 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/ridge.py +17 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_enet.py +157 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_linear.py +198 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_ridge.py +69 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/manifold/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/manifold/_t_sne.py +432 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +20 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +259 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +210 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/model_selection/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/model_selection/_split.py +309 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/model_selection/tests/test_split.py +56 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +232 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/_models_info.py +164 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_monkeypatch.py +71 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_patching.py +90 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/utils/_launch_algorithms.py +117 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +21 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +493 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +136 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +72 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +55 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/neighbors/tests/test_kneighbors.py +113 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +736 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +21 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/utils/base.py +80 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/utils/tests/test_utils.py +51 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +772 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/__init__.py +151 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/_config.py +80 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/_device_offload.py +199 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp313-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp313-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/basic_statistics/__init__.py +20 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/basic_statistics/basic_statistics.py +151 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/basic_statistics/incremental_basic_statistics.py +165 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/basic_statistics/tests/test_basic_statistics.py +241 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/basic_statistics/tests/test_incremental_basic_statistics.py +279 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/basic_statistics/tests/utils.py +50 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/cluster/__init__.py +27 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/cluster/dbscan.py +80 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/cluster/kmeans.py +582 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/cluster/kmeans_init.py +145 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/cluster/tests/test_dbscan.py +125 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/cluster/tests/test_kmeans.py +88 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/cluster/tests/test_kmeans_init.py +93 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/common/_backend.py +258 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/common/_estimator_checks.py +47 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/common/_mixin.py +62 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/common/hyperparameters.py +148 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/common/tests/test_sycl.py +148 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/covariance/__init__.py +20 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/covariance/covariance.py +121 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +151 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/covariance/tests/test_covariance.py +50 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/covariance/tests/test_incremental_covariance.py +190 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/datatypes/__init__.py +29 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +158 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/datatypes/_dlpack.py +64 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/datatypes/_sycl_usm.py +63 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/datatypes/tests/common.py +131 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +686 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/decomposition/__init__.py +20 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +218 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/decomposition/pca.py +124 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/decomposition/tests/test_incremental_pca.py +291 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/dummy/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/dummy/dummy.py +137 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/ensemble/__init__.py +29 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/ensemble/forest.py +781 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/ensemble/tests/test_random_forest.py +97 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/linear_model/__init__.py +27 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/linear_model/incremental_linear_model.py +201 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/linear_model/linear_model.py +230 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/linear_model/logistic_regression.py +293 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_linear_regression.py +213 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_ridge_regression.py +171 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_linear_regression.py +252 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_logistic_regression.py +95 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/linear_model/tests/test_ridge.py +95 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/neighbors/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/neighbors/neighbors.py +690 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/neighbors/tests/test_knn_classification.py +49 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/primitives/__init__.py +27 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/primitives/get_tree.py +27 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/primitives/kernel_functions.py +202 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/primitives/tests/test_kernel_functions.py +159 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/svm/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/svm/svm.py +592 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/svm/tests/test_csr_svm.py +352 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/svm/tests/test_nusvc.py +204 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/svm/tests/test_nusvr.py +210 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/svm/tests/test_svc.py +168 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/svm/tests/test_svr.py +243 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/tests/test_common.py +71 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/tests/utils/_dataframes_support.py +179 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +94 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/utils/_array_api.py +98 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/utils/_sycl_queue_manager.py +213 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/utils/_third_party.py +220 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/utils/tests/test_validation.py +142 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/onedal/utils/validation.py +503 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/__init__.py +69 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/__main__.py +58 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/_config.py +163 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/_device_offload.py +205 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/_utils.py +219 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/base.py +109 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +20 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +241 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +338 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_basic_statistics.py +405 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_incremental_basic_statistics.py +455 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/cluster/__init__.py +20 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/cluster/dbscan.py +199 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/cluster/k_means.py +399 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/cluster/tests/test_dbscan.py +38 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +157 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/conftest.py +82 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/covariance/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +440 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/covariance/tests/test_incremental_covariance.py +307 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/decomposition/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/decomposition/pca.py +558 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +164 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/dispatcher.py +572 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/doc/third-party-programs.txt +629 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/dummy/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/dummy/_dummy.py +615 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/dummy/tests/test_dummy.py +62 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/ensemble/__init__.py +29 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/ensemble/_forest.py +1799 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/ensemble/tests/test_forest.py +196 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/glob/__main__.py +72 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/glob/dispatcher.py +101 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/linear_model/__init__.py +32 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +44 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/linear_model/incremental_linear.py +427 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +407 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/linear_model/linear.py +363 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/linear_model/logistic_regression.py +466 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/linear_model/ridge.py +407 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_linear.py +267 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_ridge.py +214 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +167 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +565 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/linear_model/tests/test_ridge.py +256 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/manifold/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/manifold/t_sne.py +28 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +256 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/metrics/__init__.py +23 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/metrics/pairwise.py +20 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/metrics/ranking.py +20 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/metrics/tests/test_metrics.py +39 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/model_selection/__init__.py +21 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/model_selection/split.py +20 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/model_selection/tests/test_model_selection.py +34 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/neighbors/__init__.py +27 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/neighbors/_lof.py +189 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/neighbors/common.py +313 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/neighbors/knn_classification.py +189 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/neighbors/knn_regression.py +167 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/neighbors/knn_unsupervised.py +170 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/neighbors/tests/test_neighbors.py +82 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/preview/__init__.py +17 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +261 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +112 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +406 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_incremental_pca.py +390 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/__init__.py +25 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/__init__.py +20 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/basic_statistics.py +24 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/incremental_basic_statistics.py +30 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_basic_statistics_spmd.py +117 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_incremental_basic_statistics_spmd.py +314 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +30 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +26 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +21 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_dbscan_spmd.py +108 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_kmeans_spmd.py +180 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +20 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +24 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/incremental_covariance.py +29 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_covariance_spmd.py +120 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_incremental_covariance_spmd.py +200 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/__init__.py +20 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/incremental_pca.py +23 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +23 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_incremental_pca_spmd.py +276 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_pca_spmd.py +146 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +299 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/ensemble/tests/test_forest_spmd.py +299 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/__init__.py +21 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/incremental_linear_model.py +28 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/linear_model.py +24 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/logistic_regression.py +21 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_incremental_linear_spmd.py +345 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_linear_regression_spmd.py +162 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_logistic_regression_spmd.py +169 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +23 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/spmd/neighbors/tests/test_neighbors_spmd.py +433 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/svm/__init__.py +29 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/svm/_common.py +403 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/svm/nusvc.py +278 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/svm/nusvr.py +158 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/svm/svc.py +306 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/svm/svr.py +155 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/svm/tests/test_svm.py +124 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/tests/test_common.py +607 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/tests/test_config.py +256 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +111 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +335 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +269 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +111 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/tests/test_parallel.py +48 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/tests/test_patching.py +418 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +335 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +48 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/tests/utils/base.py +420 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +198 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/utils/__init__.py +19 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/utils/_array_api.py +217 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/utils/class_weight.py +100 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/utils/parallel.py +97 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/utils/tests/test_class_weight.py +69 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/utils/tests/test_validation.py +238 -0
- scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/sklearnex/utils/validation.py +212 -0
- scikit_learn_intelex-2025.10.0.dist-info/LICENSE.txt +202 -0
- scikit_learn_intelex-2025.10.0.dist-info/METADATA +182 -0
- scikit_learn_intelex-2025.10.0.dist-info/RECORD +267 -0
- scikit_learn_intelex-2025.10.0.dist-info/WHEEL +5 -0
- scikit_learn_intelex-2025.10.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,157 @@
|
|
|
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
|
+
import warnings
|
|
17
|
+
|
|
18
|
+
import numpy as np
|
|
19
|
+
import pytest
|
|
20
|
+
from sklearn.datasets import make_regression
|
|
21
|
+
from sklearn.exceptions import ConvergenceWarning
|
|
22
|
+
from sklearn.linear_model import ElasticNet as _sklElasticnet
|
|
23
|
+
from sklearn.linear_model import Lasso as _sklLasso
|
|
24
|
+
|
|
25
|
+
from daal4py.sklearn.linear_model import ElasticNet, Lasso
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def fn_lasso(model, X, y, lambda_):
|
|
29
|
+
resid = y - model.predict(X)
|
|
30
|
+
fn_ssq = resid.reshape(-1) @ resid.reshape(-1)
|
|
31
|
+
fn_l1 = np.abs(model.coef_).sum()
|
|
32
|
+
return (1 / (2 * X.shape[0])) * fn_ssq + lambda_ * fn_l1
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
@pytest.mark.parametrize("nrows", [10, 20])
|
|
36
|
+
@pytest.mark.parametrize("ncols", [10, 20])
|
|
37
|
+
@pytest.mark.parametrize("n_targets", [1, 2])
|
|
38
|
+
@pytest.mark.parametrize("fit_intercept", [False, True])
|
|
39
|
+
@pytest.mark.parametrize("positive", [False, True])
|
|
40
|
+
@pytest.mark.parametrize("l1_ratio", [0.0, 1.0, 0.5])
|
|
41
|
+
def test_enet_is_correct(nrows, ncols, n_targets, fit_intercept, positive, l1_ratio):
|
|
42
|
+
X, y = make_regression(
|
|
43
|
+
n_samples=nrows, n_features=ncols, n_targets=n_targets, random_state=123
|
|
44
|
+
)
|
|
45
|
+
with warnings.catch_warnings():
|
|
46
|
+
warnings.simplefilter("ignore", ConvergenceWarning)
|
|
47
|
+
model_d4p = ElasticNet(
|
|
48
|
+
fit_intercept=fit_intercept,
|
|
49
|
+
positive=positive,
|
|
50
|
+
l1_ratio=l1_ratio,
|
|
51
|
+
tol=1e-7,
|
|
52
|
+
max_iter=int(1e4),
|
|
53
|
+
).fit(X, y)
|
|
54
|
+
model_skl = _sklElasticnet(
|
|
55
|
+
fit_intercept=fit_intercept,
|
|
56
|
+
positive=positive,
|
|
57
|
+
l1_ratio=l1_ratio,
|
|
58
|
+
tol=1e-7,
|
|
59
|
+
max_iter=int(1e4),
|
|
60
|
+
).fit(X, y)
|
|
61
|
+
|
|
62
|
+
# Note: lasso is not guaranteed to have a unique global optimum.
|
|
63
|
+
# If the coefficients do not match, this makes another check on
|
|
64
|
+
# the optimality of the function values instead. It checks that
|
|
65
|
+
# the result from daal4py is no worse than scikit-learn's.
|
|
66
|
+
|
|
67
|
+
tol = 1e-6 if n_targets == 1 else 1e-5
|
|
68
|
+
try:
|
|
69
|
+
np.testing.assert_allclose(model_d4p.coef_, model_skl.coef_, atol=tol, rtol=tol)
|
|
70
|
+
except AssertionError as e:
|
|
71
|
+
if l1_ratio != 1:
|
|
72
|
+
raise e
|
|
73
|
+
fn_d4p = fn_lasso(model_d4p, X, y, model_d4p.alpha)
|
|
74
|
+
fn_skl = fn_lasso(model_skl, X, y, model_skl.alpha)
|
|
75
|
+
assert fn_d4p <= fn_skl
|
|
76
|
+
|
|
77
|
+
if fit_intercept:
|
|
78
|
+
np.testing.assert_allclose(
|
|
79
|
+
model_d4p.intercept_, model_skl.intercept_, atol=tol, rtol=tol
|
|
80
|
+
)
|
|
81
|
+
|
|
82
|
+
if positive:
|
|
83
|
+
assert np.all(model_d4p.coef_ >= 0)
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
@pytest.mark.parametrize("nrows", [10, 20])
|
|
87
|
+
@pytest.mark.parametrize("ncols", [10, 20])
|
|
88
|
+
@pytest.mark.parametrize("n_targets", [1, 2])
|
|
89
|
+
@pytest.mark.parametrize("fit_intercept", [False, True])
|
|
90
|
+
@pytest.mark.parametrize("positive", [False, True])
|
|
91
|
+
@pytest.mark.parametrize("alpha", [1e-2, 1e2])
|
|
92
|
+
def test_lasso_is_correct(nrows, ncols, n_targets, fit_intercept, positive, alpha):
|
|
93
|
+
X, y = make_regression(
|
|
94
|
+
n_samples=nrows, n_features=ncols, n_targets=n_targets, random_state=123
|
|
95
|
+
)
|
|
96
|
+
with warnings.catch_warnings():
|
|
97
|
+
warnings.simplefilter("ignore", ConvergenceWarning)
|
|
98
|
+
model_d4p = Lasso(
|
|
99
|
+
fit_intercept=fit_intercept,
|
|
100
|
+
positive=positive,
|
|
101
|
+
alpha=alpha,
|
|
102
|
+
tol=1e-7,
|
|
103
|
+
max_iter=int(1e4),
|
|
104
|
+
).fit(X, y)
|
|
105
|
+
model_skl = _sklLasso(
|
|
106
|
+
fit_intercept=fit_intercept,
|
|
107
|
+
positive=positive,
|
|
108
|
+
alpha=alpha,
|
|
109
|
+
tol=1e-7,
|
|
110
|
+
max_iter=int(1e4),
|
|
111
|
+
).fit(X, y)
|
|
112
|
+
|
|
113
|
+
tol = 1e-4 if alpha < 1 else (1e-6 if n_targets == 1 else 1e-5)
|
|
114
|
+
try:
|
|
115
|
+
np.testing.assert_allclose(model_d4p.coef_, model_skl.coef_, atol=tol, rtol=tol)
|
|
116
|
+
if fit_intercept:
|
|
117
|
+
np.testing.assert_allclose(
|
|
118
|
+
model_d4p.intercept_, model_skl.intercept_, atol=tol, rtol=tol
|
|
119
|
+
)
|
|
120
|
+
except AssertionError as e:
|
|
121
|
+
fn_d4p = fn_lasso(model_d4p, X, y, model_d4p.alpha)
|
|
122
|
+
fn_skl = fn_lasso(model_skl, X, y, model_skl.alpha)
|
|
123
|
+
assert fn_d4p <= fn_skl
|
|
124
|
+
|
|
125
|
+
if positive:
|
|
126
|
+
assert np.all(model_d4p.coef_ >= 0)
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
@pytest.mark.parametrize("n_targets", [1, 2])
|
|
130
|
+
def test_warm_start(n_targets):
|
|
131
|
+
X, y = make_regression(
|
|
132
|
+
n_samples=20, n_features=10, n_targets=n_targets, random_state=123
|
|
133
|
+
)
|
|
134
|
+
X1 = X[:10]
|
|
135
|
+
y1 = y[:10]
|
|
136
|
+
X2 = X[10:]
|
|
137
|
+
y2 = y[10:]
|
|
138
|
+
|
|
139
|
+
with warnings.catch_warnings():
|
|
140
|
+
warnings.simplefilter("ignore", ConvergenceWarning)
|
|
141
|
+
model_d4p = ElasticNet(
|
|
142
|
+
warm_start=True,
|
|
143
|
+
tol=1e-7,
|
|
144
|
+
max_iter=int(1e4),
|
|
145
|
+
).fit(X1, y1)
|
|
146
|
+
coefs_ref = model_d4p.coef_.copy()
|
|
147
|
+
intercept_ref = model_d4p.intercept_.copy()
|
|
148
|
+
|
|
149
|
+
model_d4p.set_params(max_iter=1)
|
|
150
|
+
model_d4p.fit(X2, y2)
|
|
151
|
+
|
|
152
|
+
model_from_scratch = ElasticNet(tol=1e-7, max_iter=int(1e4)).fit(X2, y2)
|
|
153
|
+
|
|
154
|
+
diff_ref = np.linalg.norm(model_d4p.coef_ - coefs_ref)
|
|
155
|
+
diff_from_scratch = np.linalg.norm(model_d4p.coef_ - model_from_scratch.coef_)
|
|
156
|
+
|
|
157
|
+
assert diff_ref < diff_from_scratch
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
# ==============================================================================
|
|
2
|
+
# Copyright 2020 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 pytest
|
|
19
|
+
from sklearn.datasets import make_regression
|
|
20
|
+
from sklearn.linear_model import LinearRegression
|
|
21
|
+
from sklearn.utils._testing import assert_array_almost_equal
|
|
22
|
+
|
|
23
|
+
from daal4py.sklearn._utils import sklearn_check_version
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def make_dataset(n_samples, n_features, kind=np.array, random_state=0, types=None):
|
|
27
|
+
try:
|
|
28
|
+
from pandas import DataFrame
|
|
29
|
+
|
|
30
|
+
if kind not in (list, np.array, DataFrame):
|
|
31
|
+
kind = np.array
|
|
32
|
+
except ImportError:
|
|
33
|
+
if kind not in (list, np.array):
|
|
34
|
+
kind = np.array
|
|
35
|
+
|
|
36
|
+
x, y = make_regression(n_samples, n_features, random_state=random_state)
|
|
37
|
+
|
|
38
|
+
if kind == list:
|
|
39
|
+
x = list(x)
|
|
40
|
+
for i, row in enumerate(x):
|
|
41
|
+
x[i] = list(row)
|
|
42
|
+
y = list(y)
|
|
43
|
+
|
|
44
|
+
if types:
|
|
45
|
+
n_types = len(types)
|
|
46
|
+
for i, row in enumerate(x):
|
|
47
|
+
for j, cell in enumerate(row):
|
|
48
|
+
x[i][j] = types[j % n_types](cell)
|
|
49
|
+
|
|
50
|
+
try:
|
|
51
|
+
from pandas import DataFrame
|
|
52
|
+
|
|
53
|
+
if kind == DataFrame:
|
|
54
|
+
x = DataFrame(data=x, index=None, columns=None)
|
|
55
|
+
y = DataFrame(y)
|
|
56
|
+
|
|
57
|
+
if types:
|
|
58
|
+
n_types = len(types)
|
|
59
|
+
dir_dtypes = {col: types[i % n_types] for i, col in enumerate(x.columns)}
|
|
60
|
+
x = x.astype(dir_dtypes)
|
|
61
|
+
except ImportError:
|
|
62
|
+
pass
|
|
63
|
+
|
|
64
|
+
return x, y
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
def test_linear_array_vs_dataframe_homogen():
|
|
68
|
+
pd = pytest.importorskip("pandas")
|
|
69
|
+
|
|
70
|
+
x_train, y_train = make_dataset(100, 20)
|
|
71
|
+
x_test, _ = make_dataset(100, 20, random_state=1)
|
|
72
|
+
|
|
73
|
+
df_x_train, df_y_train = make_dataset(100, 20, pd.DataFrame)
|
|
74
|
+
df_x_test, _ = make_dataset(100, 20, pd.DataFrame, random_state=1)
|
|
75
|
+
|
|
76
|
+
array_reg = LinearRegression()
|
|
77
|
+
array_reg.fit(x_train, y_train)
|
|
78
|
+
|
|
79
|
+
df_reg = LinearRegression()
|
|
80
|
+
df_reg.fit(df_x_train, df_y_train)
|
|
81
|
+
|
|
82
|
+
assert_array_almost_equal(
|
|
83
|
+
array_reg.coef_.reshape((-1, 1)), df_reg.coef_.reshape((-1, 1))
|
|
84
|
+
)
|
|
85
|
+
assert_array_almost_equal(array_reg.intercept_, df_reg.intercept_)
|
|
86
|
+
assert_array_almost_equal(
|
|
87
|
+
array_reg.predict(x_test).reshape((-1, 1)),
|
|
88
|
+
df_reg.predict(df_x_test).reshape((-1, 1)),
|
|
89
|
+
)
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
def test_linear_array_vs_dataframe_heterogen():
|
|
93
|
+
pd = pytest.importorskip("pandas")
|
|
94
|
+
|
|
95
|
+
types = (np.float64, np.float32)
|
|
96
|
+
|
|
97
|
+
x_train, y_train = make_dataset(100, 20)
|
|
98
|
+
x_test, _ = make_dataset(100, 20, random_state=1)
|
|
99
|
+
|
|
100
|
+
df_x_train, df_y_train = make_dataset(100, 20, pd.DataFrame, types=types)
|
|
101
|
+
df_x_test, _ = make_dataset(100, 20, pd.DataFrame, random_state=1, types=types)
|
|
102
|
+
|
|
103
|
+
array_reg = LinearRegression()
|
|
104
|
+
array_reg.fit(x_train, y_train)
|
|
105
|
+
|
|
106
|
+
df_reg = LinearRegression()
|
|
107
|
+
df_reg.fit(df_x_train, df_y_train)
|
|
108
|
+
|
|
109
|
+
assert_array_almost_equal(
|
|
110
|
+
array_reg.coef_.reshape((-1, 1)), df_reg.coef_.reshape((-1, 1))
|
|
111
|
+
)
|
|
112
|
+
assert_array_almost_equal(array_reg.intercept_, df_reg.intercept_)
|
|
113
|
+
assert_array_almost_equal(
|
|
114
|
+
array_reg.predict(x_test).reshape((-1, 1)),
|
|
115
|
+
df_reg.predict(df_x_test).reshape((-1, 1)),
|
|
116
|
+
decimal=5,
|
|
117
|
+
)
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
def test_linear_array_vs_dataframe_heterogen_double_float():
|
|
121
|
+
pd = pytest.importorskip("pandas")
|
|
122
|
+
|
|
123
|
+
types = (np.float64, np.float32)
|
|
124
|
+
|
|
125
|
+
x_train, y_train = make_dataset(100, 20, list, types=types)
|
|
126
|
+
x_test, _ = make_dataset(100, 20, list, random_state=1, types=types)
|
|
127
|
+
|
|
128
|
+
df_x_train, df_y_train = make_dataset(100, 20, pd.DataFrame, types=types)
|
|
129
|
+
df_x_test, _ = make_dataset(100, 20, pd.DataFrame, random_state=1, types=types)
|
|
130
|
+
|
|
131
|
+
array_reg = LinearRegression()
|
|
132
|
+
array_reg.fit(x_train, y_train)
|
|
133
|
+
|
|
134
|
+
df_reg = LinearRegression()
|
|
135
|
+
df_reg.fit(df_x_train, df_y_train)
|
|
136
|
+
|
|
137
|
+
assert_array_almost_equal(
|
|
138
|
+
array_reg.coef_.reshape((-1, 1)), df_reg.coef_.reshape((-1, 1))
|
|
139
|
+
)
|
|
140
|
+
assert_array_almost_equal(array_reg.intercept_, df_reg.intercept_)
|
|
141
|
+
assert_array_almost_equal(
|
|
142
|
+
array_reg.predict(x_test).reshape((-1, 1)),
|
|
143
|
+
df_reg.predict(df_x_test).reshape((-1, 1)),
|
|
144
|
+
)
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
def test_linear_array_vs_dataframe_heterogen_double_int():
|
|
148
|
+
pd = pytest.importorskip("pandas")
|
|
149
|
+
|
|
150
|
+
types = (np.float64, np.int32)
|
|
151
|
+
|
|
152
|
+
x_train, y_train = make_dataset(100, 20, list, types=types)
|
|
153
|
+
x_test, _ = make_dataset(100, 20, list, random_state=1, types=types)
|
|
154
|
+
|
|
155
|
+
df_x_train, df_y_train = make_dataset(100, 20, pd.DataFrame, types=types)
|
|
156
|
+
df_x_test, _ = make_dataset(100, 20, pd.DataFrame, random_state=1, types=types)
|
|
157
|
+
|
|
158
|
+
array_reg = LinearRegression()
|
|
159
|
+
array_reg.fit(x_train, y_train)
|
|
160
|
+
|
|
161
|
+
df_reg = LinearRegression()
|
|
162
|
+
df_reg.fit(df_x_train, df_y_train)
|
|
163
|
+
|
|
164
|
+
assert_array_almost_equal(
|
|
165
|
+
array_reg.coef_.reshape((-1, 1)), df_reg.coef_.reshape((-1, 1))
|
|
166
|
+
)
|
|
167
|
+
assert_array_almost_equal(array_reg.intercept_, df_reg.intercept_)
|
|
168
|
+
assert_array_almost_equal(
|
|
169
|
+
array_reg.predict(x_test).reshape((-1, 1)),
|
|
170
|
+
df_reg.predict(df_x_test).reshape((-1, 1)),
|
|
171
|
+
)
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
def test_linear_array_vs_dataframe_heterogen_float_int():
|
|
175
|
+
pd = pytest.importorskip("pandas")
|
|
176
|
+
|
|
177
|
+
types = (np.float32, np.int32)
|
|
178
|
+
|
|
179
|
+
x_train, y_train = make_dataset(100, 20, list, types=types)
|
|
180
|
+
x_test, _ = make_dataset(100, 20, list, random_state=1, types=types)
|
|
181
|
+
|
|
182
|
+
df_x_train, df_y_train = make_dataset(100, 20, pd.DataFrame, types=types)
|
|
183
|
+
df_x_test, _ = make_dataset(100, 20, pd.DataFrame, random_state=1, types=types)
|
|
184
|
+
|
|
185
|
+
array_reg = LinearRegression()
|
|
186
|
+
array_reg.fit(x_train, y_train)
|
|
187
|
+
|
|
188
|
+
df_reg = LinearRegression()
|
|
189
|
+
df_reg.fit(df_x_train, df_y_train)
|
|
190
|
+
|
|
191
|
+
assert_array_almost_equal(
|
|
192
|
+
array_reg.coef_.reshape((-1, 1)), df_reg.coef_.reshape((-1, 1))
|
|
193
|
+
)
|
|
194
|
+
assert_array_almost_equal(array_reg.intercept_, df_reg.intercept_)
|
|
195
|
+
assert_array_almost_equal(
|
|
196
|
+
array_reg.predict(x_test).reshape((-1, 1)),
|
|
197
|
+
df_reg.predict(df_x_test).reshape((-1, 1)),
|
|
198
|
+
)
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# ==============================================================================
|
|
2
|
+
# Copyright 2024 Intel Corporation
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
# ==============================================================================
|
|
16
|
+
|
|
17
|
+
import numpy
|
|
18
|
+
import pytest
|
|
19
|
+
from sklearn.datasets import make_regression
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def _test_multivariate_ridge_coefficients(ridge_class, random_state):
|
|
23
|
+
X, y = make_regression(
|
|
24
|
+
n_samples=10, n_features=5, n_targets=3, random_state=random_state
|
|
25
|
+
)
|
|
26
|
+
alpha = 3 + numpy.random.rand(3) * 5
|
|
27
|
+
|
|
28
|
+
# computing coefficients using daal4py Ridge
|
|
29
|
+
model = ridge_class(fit_intercept=False, alpha=alpha)
|
|
30
|
+
model.fit(X, y)
|
|
31
|
+
|
|
32
|
+
# computing coefficients manually
|
|
33
|
+
n_features, n_targets = X.shape[1], y.shape[1]
|
|
34
|
+
betas = numpy.zeros((n_targets, n_features))
|
|
35
|
+
|
|
36
|
+
identity_matrix = numpy.eye(n_features)
|
|
37
|
+
|
|
38
|
+
for j in range(n_targets):
|
|
39
|
+
y_j = y[:, j]
|
|
40
|
+
inverse_term = numpy.linalg.inv(numpy.dot(X.T, X) + alpha[j] * identity_matrix)
|
|
41
|
+
beta_j = numpy.dot(inverse_term, numpy.dot(X.T, y_j))
|
|
42
|
+
betas[j, :] = beta_j
|
|
43
|
+
|
|
44
|
+
# asserting that the coefficients are close
|
|
45
|
+
numpy.testing.assert_allclose(model.coef_, betas, rtol=1e-3, atol=1e-3)
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
def _test_multivariate_ridge_alpha_shape(ridge_class, random_state):
|
|
49
|
+
X, y = make_regression(
|
|
50
|
+
n_samples=10, n_features=5, n_targets=3, random_state=random_state
|
|
51
|
+
)
|
|
52
|
+
wrong_shape_alpha = numpy.random.rand(5)
|
|
53
|
+
# asserting exception if alpha has wrong shape
|
|
54
|
+
with pytest.raises(ValueError):
|
|
55
|
+
ridge_class(alpha=wrong_shape_alpha).fit(X, y)
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
def test_multivariate_ridge_coefficients():
|
|
59
|
+
from daal4py.sklearn.linear_model._ridge import Ridge
|
|
60
|
+
|
|
61
|
+
random_state = 0
|
|
62
|
+
_test_multivariate_ridge_coefficients(Ridge, random_state)
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
def test_multivariate_ridge_alpha_shape():
|
|
66
|
+
from daal4py.sklearn.linear_model._ridge import Ridge
|
|
67
|
+
|
|
68
|
+
random_state = 0
|
|
69
|
+
_test_multivariate_ridge_alpha_shape(Ridge, random_state)
|
scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/manifold/__init__.py
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# ==============================================================================
|
|
2
|
+
# Copyright 2020 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
|
+
from ._t_sne import TSNE
|
|
18
|
+
|
|
19
|
+
__all__ = ["TSNE"]
|