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,192 @@
|
|
|
1
|
+
# ==============================================================================
|
|
2
|
+
# Copyright 2014 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
|
+
# daal4py AdaBoost (Adaptive Boosting) scikit-learn-compatible estimator class
|
|
18
|
+
|
|
19
|
+
import numbers
|
|
20
|
+
|
|
21
|
+
import numpy as np
|
|
22
|
+
from sklearn import preprocessing
|
|
23
|
+
from sklearn.base import BaseEstimator, ClassifierMixin
|
|
24
|
+
from sklearn.utils.multiclass import check_classification_targets
|
|
25
|
+
from sklearn.utils.validation import check_array, check_is_fitted, check_X_y
|
|
26
|
+
|
|
27
|
+
import daal4py as d4p
|
|
28
|
+
from daal4py.sklearn._utils import sklearn_check_version
|
|
29
|
+
|
|
30
|
+
from .._n_jobs_support import control_n_jobs
|
|
31
|
+
from .._utils import getFPType
|
|
32
|
+
from ..utils.validation import validate_data
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
@control_n_jobs(decorated_methods=["fit", "predict"])
|
|
36
|
+
class AdaBoostClassifier(ClassifierMixin, BaseEstimator):
|
|
37
|
+
def __init__(
|
|
38
|
+
self,
|
|
39
|
+
split_criterion="gini",
|
|
40
|
+
max_tree_depth=1,
|
|
41
|
+
min_observations_in_leaf_node=1,
|
|
42
|
+
max_iterations=100,
|
|
43
|
+
learning_rate=1.0,
|
|
44
|
+
accuracy_threshold=0.01,
|
|
45
|
+
):
|
|
46
|
+
self.split_criterion = split_criterion
|
|
47
|
+
self.max_tree_depth = max_tree_depth
|
|
48
|
+
self.min_observations_in_leaf_node = min_observations_in_leaf_node
|
|
49
|
+
self.max_iterations = max_iterations
|
|
50
|
+
self.learning_rate = learning_rate
|
|
51
|
+
self.accuracy_threshold = accuracy_threshold
|
|
52
|
+
|
|
53
|
+
def fit(self, X, y):
|
|
54
|
+
if self.split_criterion not in ("gini", "infoGain"):
|
|
55
|
+
raise ValueError(
|
|
56
|
+
'Parameter "split_criterion" must be ' '"gini" or "infoGain".'
|
|
57
|
+
)
|
|
58
|
+
if (
|
|
59
|
+
not isinstance(self.max_tree_depth, numbers.Integral)
|
|
60
|
+
or self.max_tree_depth < 0
|
|
61
|
+
):
|
|
62
|
+
raise ValueError(
|
|
63
|
+
'Parameter "max_tree_depth" must be ' "positive integer value or zero."
|
|
64
|
+
)
|
|
65
|
+
if (
|
|
66
|
+
not isinstance(self.min_observations_in_leaf_node, numbers.Integral)
|
|
67
|
+
or self.min_observations_in_leaf_node <= 0
|
|
68
|
+
):
|
|
69
|
+
raise ValueError(
|
|
70
|
+
'Parameter "min_observations_in_leaf_node" must be '
|
|
71
|
+
"non-zero positive integer value."
|
|
72
|
+
)
|
|
73
|
+
if (
|
|
74
|
+
not isinstance(self.max_iterations, numbers.Integral)
|
|
75
|
+
or self.max_iterations <= 0
|
|
76
|
+
):
|
|
77
|
+
raise ValueError(
|
|
78
|
+
'Parameter "max_iterations" must be ' "non-zero positive integer value."
|
|
79
|
+
)
|
|
80
|
+
if self.learning_rate <= 0:
|
|
81
|
+
raise ValueError(
|
|
82
|
+
'Parameter "learning_rate" must be ' "non-zero positive value."
|
|
83
|
+
)
|
|
84
|
+
# it is not clear why it is so but we will get error from
|
|
85
|
+
# oneAPI Data Analytics
|
|
86
|
+
# Library otherwise
|
|
87
|
+
if self.accuracy_threshold < 0 and self.accuracy_threshold >= 1:
|
|
88
|
+
raise ValueError(
|
|
89
|
+
'Parameter "accuracy_threshold" must be '
|
|
90
|
+
"more or equal to 0 and less than 1."
|
|
91
|
+
)
|
|
92
|
+
|
|
93
|
+
# Check that X and y have correct shape
|
|
94
|
+
X, y = check_X_y(X, y, y_numeric=False, dtype=[np.float64, np.float32])
|
|
95
|
+
|
|
96
|
+
check_classification_targets(y)
|
|
97
|
+
|
|
98
|
+
# Encode labels
|
|
99
|
+
le = preprocessing.LabelEncoder()
|
|
100
|
+
le.fit(y)
|
|
101
|
+
self.classes_ = le.classes_
|
|
102
|
+
y_ = le.transform(y)
|
|
103
|
+
|
|
104
|
+
# Convert to 2d array
|
|
105
|
+
y_ = y_.reshape((-1, 1))
|
|
106
|
+
|
|
107
|
+
self.n_classes_ = len(self.classes_)
|
|
108
|
+
|
|
109
|
+
self.n_features_in_ = X.shape[1]
|
|
110
|
+
|
|
111
|
+
# Classifier can't train when only one class is present.
|
|
112
|
+
# Trivial case
|
|
113
|
+
if self.n_classes_ == 1:
|
|
114
|
+
return self
|
|
115
|
+
|
|
116
|
+
# Define type of data
|
|
117
|
+
fptype = getFPType(X)
|
|
118
|
+
|
|
119
|
+
# Fit the model
|
|
120
|
+
tr = d4p.decision_tree_classification_training(
|
|
121
|
+
fptype=fptype,
|
|
122
|
+
nClasses=self.n_classes_,
|
|
123
|
+
# this parameter is strict upper bound in DAAL
|
|
124
|
+
maxTreeDepth=self.max_tree_depth + 1,
|
|
125
|
+
minObservationsInLeafNodes=self.min_observations_in_leaf_node,
|
|
126
|
+
splitCriterion=self.split_criterion,
|
|
127
|
+
pruning="none",
|
|
128
|
+
)
|
|
129
|
+
|
|
130
|
+
pr = d4p.decision_tree_classification_prediction(
|
|
131
|
+
fptype=fptype, nClasses=self.n_classes_
|
|
132
|
+
)
|
|
133
|
+
|
|
134
|
+
train_algo = d4p.adaboost_training(
|
|
135
|
+
fptype=fptype,
|
|
136
|
+
nClasses=self.n_classes_,
|
|
137
|
+
weakLearnerTraining=tr,
|
|
138
|
+
weakLearnerPrediction=pr,
|
|
139
|
+
maxIterations=self.max_iterations,
|
|
140
|
+
learningRate=self.learning_rate,
|
|
141
|
+
accuracyThreshold=self.accuracy_threshold,
|
|
142
|
+
)
|
|
143
|
+
|
|
144
|
+
train_result = train_algo.compute(X, y_)
|
|
145
|
+
|
|
146
|
+
# Store the model
|
|
147
|
+
self.daal_model_ = train_result.model
|
|
148
|
+
|
|
149
|
+
# Return the classifier
|
|
150
|
+
return self
|
|
151
|
+
|
|
152
|
+
def predict(self, X):
|
|
153
|
+
check_is_fitted(self)
|
|
154
|
+
|
|
155
|
+
# Input validation
|
|
156
|
+
X = validate_data(self, X, dtype=[np.float64, np.float32], reset=False)
|
|
157
|
+
|
|
158
|
+
# Trivial case
|
|
159
|
+
if self.n_classes_ == 1:
|
|
160
|
+
return np.full(X.shape[0], self.classes_[0])
|
|
161
|
+
|
|
162
|
+
if not hasattr(self, "daal_model_"):
|
|
163
|
+
raise ValueError(
|
|
164
|
+
(
|
|
165
|
+
"The class {} instance does not have 'daal_model_' attribute set. "
|
|
166
|
+
"Call 'fit' with appropriate arguments before using this method."
|
|
167
|
+
).format(type(self).__name__)
|
|
168
|
+
)
|
|
169
|
+
|
|
170
|
+
# Define type of data
|
|
171
|
+
fptype = getFPType(X)
|
|
172
|
+
|
|
173
|
+
pr = d4p.decision_tree_classification_prediction(
|
|
174
|
+
fptype=fptype, nClasses=self.n_classes_
|
|
175
|
+
)
|
|
176
|
+
|
|
177
|
+
# Prediction
|
|
178
|
+
predict_algo = d4p.adaboost_prediction(
|
|
179
|
+
fptype=fptype, nClasses=self.n_classes_, weakLearnerPrediction=pr
|
|
180
|
+
)
|
|
181
|
+
predict_result = predict_algo.compute(X, self.daal_model_)
|
|
182
|
+
|
|
183
|
+
prediction = predict_result.prediction
|
|
184
|
+
|
|
185
|
+
# in binary classification labels "-1, 1" are returned but "0, 1" are expected
|
|
186
|
+
if self.n_classes_ == 2:
|
|
187
|
+
prediction[prediction == -1] = 0
|
|
188
|
+
|
|
189
|
+
# Decode labels
|
|
190
|
+
le = preprocessing.LabelEncoder()
|
|
191
|
+
le.classes_ = self.classes_
|
|
192
|
+
return le.inverse_transform(prediction.ravel().astype(np.int64, copy=False))
|
scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py
ADDED
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
# ==============================================================================
|
|
2
|
+
# Copyright 2014 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
|
+
# daal4py GBT scikit-learn-compatible estimator class
|
|
18
|
+
|
|
19
|
+
import numbers
|
|
20
|
+
|
|
21
|
+
import numpy as np
|
|
22
|
+
from sklearn import preprocessing
|
|
23
|
+
from sklearn.base import BaseEstimator, ClassifierMixin, RegressorMixin
|
|
24
|
+
from sklearn.utils import check_random_state
|
|
25
|
+
from sklearn.utils.multiclass import check_classification_targets
|
|
26
|
+
from sklearn.utils.validation import check_array, check_is_fitted, check_X_y
|
|
27
|
+
|
|
28
|
+
import daal4py as d4p
|
|
29
|
+
from daal4py.sklearn._utils import sklearn_check_version
|
|
30
|
+
|
|
31
|
+
from .._n_jobs_support import control_n_jobs
|
|
32
|
+
from .._utils import getFPType
|
|
33
|
+
from ..utils.validation import validate_data
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
class GBTDAALBase(BaseEstimator, d4p.mb.GBTDAALBaseModel):
|
|
37
|
+
def __init__(
|
|
38
|
+
self,
|
|
39
|
+
split_method="inexact",
|
|
40
|
+
max_iterations=50,
|
|
41
|
+
max_tree_depth=6,
|
|
42
|
+
shrinkage=0.3,
|
|
43
|
+
min_split_loss=0,
|
|
44
|
+
reg_lambda=1,
|
|
45
|
+
observations_per_tree_fraction=1,
|
|
46
|
+
features_per_node=0,
|
|
47
|
+
min_observations_in_leaf_node=5,
|
|
48
|
+
memory_saving_mode=False,
|
|
49
|
+
max_bins=256,
|
|
50
|
+
min_bin_size=5,
|
|
51
|
+
random_state=None,
|
|
52
|
+
):
|
|
53
|
+
self.split_method = split_method
|
|
54
|
+
self.max_iterations = max_iterations
|
|
55
|
+
self.max_tree_depth = max_tree_depth
|
|
56
|
+
self.shrinkage = shrinkage
|
|
57
|
+
self.min_split_loss = min_split_loss
|
|
58
|
+
self.reg_lambda = reg_lambda
|
|
59
|
+
self.observations_per_tree_fraction = observations_per_tree_fraction
|
|
60
|
+
self.features_per_node = features_per_node
|
|
61
|
+
self.min_observations_in_leaf_node = min_observations_in_leaf_node
|
|
62
|
+
self.memory_saving_mode = memory_saving_mode
|
|
63
|
+
self.max_bins = max_bins
|
|
64
|
+
self.min_bin_size = min_bin_size
|
|
65
|
+
self.random_state = random_state
|
|
66
|
+
|
|
67
|
+
def _check_params(self):
|
|
68
|
+
if self.split_method not in ("inexact", "exact"):
|
|
69
|
+
raise ValueError('Parameter "split_method" must be ' '"inexact" or "exact".')
|
|
70
|
+
if (
|
|
71
|
+
not isinstance(self.max_iterations, numbers.Integral)
|
|
72
|
+
or self.max_iterations <= 0
|
|
73
|
+
):
|
|
74
|
+
raise ValueError(
|
|
75
|
+
'Parameter "max_iterations" must be ' "non-zero positive integer value."
|
|
76
|
+
)
|
|
77
|
+
if (
|
|
78
|
+
not isinstance(self.max_tree_depth, numbers.Integral)
|
|
79
|
+
or self.max_tree_depth < 0
|
|
80
|
+
):
|
|
81
|
+
raise ValueError(
|
|
82
|
+
'Parameter "max_tree_depth" must be ' "positive integer value or zero."
|
|
83
|
+
)
|
|
84
|
+
if self.shrinkage < 0 or self.shrinkage >= 1:
|
|
85
|
+
raise ValueError(
|
|
86
|
+
'Parameter "shrinkage" must be ' "more or equal to 0 and less than 1."
|
|
87
|
+
)
|
|
88
|
+
if self.min_split_loss < 0:
|
|
89
|
+
raise ValueError(
|
|
90
|
+
'Parameter "min_split_loss" must be ' "more or equal to zero."
|
|
91
|
+
)
|
|
92
|
+
if self.reg_lambda < 0:
|
|
93
|
+
raise ValueError('Parameter "reg_lambda" must be ' "more or equal to zero.")
|
|
94
|
+
if (
|
|
95
|
+
self.observations_per_tree_fraction <= 0
|
|
96
|
+
or self.observations_per_tree_fraction > 1
|
|
97
|
+
):
|
|
98
|
+
raise ValueError(
|
|
99
|
+
'Parameter "observations_per_tree_fraction" must be '
|
|
100
|
+
"more than 0 and less or equal to 1."
|
|
101
|
+
)
|
|
102
|
+
if (
|
|
103
|
+
not isinstance(self.features_per_node, numbers.Integral)
|
|
104
|
+
or self.features_per_node < 0
|
|
105
|
+
):
|
|
106
|
+
raise ValueError(
|
|
107
|
+
'Parameter "features_per_node" must be ' "positive integer value or zero."
|
|
108
|
+
)
|
|
109
|
+
if (
|
|
110
|
+
not isinstance(self.min_observations_in_leaf_node, numbers.Integral)
|
|
111
|
+
or self.min_observations_in_leaf_node <= 0
|
|
112
|
+
):
|
|
113
|
+
raise ValueError(
|
|
114
|
+
'Parameter "min_observations_in_leaf_node" must be '
|
|
115
|
+
"non-zero positive integer value."
|
|
116
|
+
)
|
|
117
|
+
if not (isinstance(self.memory_saving_mode, bool)):
|
|
118
|
+
raise ValueError('Parameter "memory_saving_mode" must be ' "boolean value.")
|
|
119
|
+
if not isinstance(self.max_bins, numbers.Integral) or self.max_bins <= 0:
|
|
120
|
+
raise ValueError(
|
|
121
|
+
'Parameter "max_bins" must be ' "non-zero positive integer value."
|
|
122
|
+
)
|
|
123
|
+
if not isinstance(self.min_bin_size, numbers.Integral) or self.min_bin_size <= 0:
|
|
124
|
+
raise ValueError(
|
|
125
|
+
'Parameter "min_bin_size" must be ' "non-zero positive integer value."
|
|
126
|
+
)
|
|
127
|
+
|
|
128
|
+
allow_nan_ = False
|
|
129
|
+
|
|
130
|
+
def _more_tags(self):
|
|
131
|
+
return {"allow_nan": self.allow_nan_}
|
|
132
|
+
|
|
133
|
+
if sklearn_check_version("1.6"):
|
|
134
|
+
|
|
135
|
+
def __sklearn_tags__(self):
|
|
136
|
+
tags = super().__sklearn_tags__()
|
|
137
|
+
tags.input_tags.allow_nan = self.allow_nan_
|
|
138
|
+
return tags
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
@control_n_jobs(decorated_methods=["fit", "predict"])
|
|
142
|
+
class GBTDAALClassifier(ClassifierMixin, GBTDAALBase):
|
|
143
|
+
def fit(self, X, y):
|
|
144
|
+
# Check the algorithm parameters
|
|
145
|
+
self._check_params()
|
|
146
|
+
|
|
147
|
+
# Check that X and y have correct shape
|
|
148
|
+
X, y = check_X_y(X, y, y_numeric=False, dtype=[np.float64, np.float32])
|
|
149
|
+
|
|
150
|
+
check_classification_targets(y)
|
|
151
|
+
|
|
152
|
+
# Encode labels
|
|
153
|
+
le = preprocessing.LabelEncoder()
|
|
154
|
+
le.fit(y)
|
|
155
|
+
self.classes_ = le.classes_
|
|
156
|
+
y_ = le.transform(y)
|
|
157
|
+
|
|
158
|
+
# Convert to 2d array
|
|
159
|
+
y_ = y_.reshape((-1, 1))
|
|
160
|
+
|
|
161
|
+
self.n_outputs_ = y_.shape[1]
|
|
162
|
+
|
|
163
|
+
self.n_classes_ = len(self.classes_)
|
|
164
|
+
|
|
165
|
+
self.n_features_in_ = X.shape[1]
|
|
166
|
+
|
|
167
|
+
# Classifier can't train when only one class is present.
|
|
168
|
+
# Trivial case
|
|
169
|
+
if self.n_classes_ == 1:
|
|
170
|
+
return self
|
|
171
|
+
|
|
172
|
+
# Get random seed
|
|
173
|
+
rs_ = check_random_state(self.random_state)
|
|
174
|
+
seed_ = rs_.randint(0, np.iinfo("i").max)
|
|
175
|
+
|
|
176
|
+
# Define type of data
|
|
177
|
+
fptype = getFPType(X)
|
|
178
|
+
|
|
179
|
+
# Fit the model
|
|
180
|
+
train_algo = d4p.gbt_classification_training(
|
|
181
|
+
fptype=fptype,
|
|
182
|
+
nClasses=self.n_classes_,
|
|
183
|
+
splitMethod=self.split_method,
|
|
184
|
+
maxIterations=self.max_iterations,
|
|
185
|
+
maxTreeDepth=self.max_tree_depth,
|
|
186
|
+
shrinkage=self.shrinkage,
|
|
187
|
+
minSplitLoss=self.min_split_loss,
|
|
188
|
+
lambda_=self.reg_lambda,
|
|
189
|
+
observationsPerTreeFraction=self.observations_per_tree_fraction,
|
|
190
|
+
featuresPerNode=self.features_per_node,
|
|
191
|
+
minObservationsInLeafNode=self.min_observations_in_leaf_node,
|
|
192
|
+
memorySavingMode=self.memory_saving_mode,
|
|
193
|
+
maxBins=self.max_bins,
|
|
194
|
+
minBinSize=self.min_bin_size,
|
|
195
|
+
engine=d4p.engines_mcg59(seed=seed_),
|
|
196
|
+
)
|
|
197
|
+
train_result = train_algo.compute(X, y_)
|
|
198
|
+
|
|
199
|
+
# Store the model
|
|
200
|
+
self.daal_model_ = train_result.model
|
|
201
|
+
|
|
202
|
+
# Return the classifier
|
|
203
|
+
return self
|
|
204
|
+
|
|
205
|
+
def _predict(
|
|
206
|
+
self, X, resultsToEvaluate, pred_contribs=False, pred_interactions=False
|
|
207
|
+
):
|
|
208
|
+
# Check is fit had been called
|
|
209
|
+
check_is_fitted(self, ["n_features_in_", "n_classes_"])
|
|
210
|
+
|
|
211
|
+
# Input validation
|
|
212
|
+
X = validate_data(
|
|
213
|
+
self,
|
|
214
|
+
X,
|
|
215
|
+
dtype=[np.float64, np.float32],
|
|
216
|
+
ensure_all_finite="allow-nan" if self.allow_nan_ else True,
|
|
217
|
+
reset=False,
|
|
218
|
+
)
|
|
219
|
+
|
|
220
|
+
# Trivial case
|
|
221
|
+
if self.n_classes_ == 1:
|
|
222
|
+
return np.full(X.shape[0], self.classes_[0])
|
|
223
|
+
|
|
224
|
+
fptype = getFPType(X)
|
|
225
|
+
predict_result = self._predict_classification(
|
|
226
|
+
X, fptype, resultsToEvaluate, pred_contribs, pred_interactions
|
|
227
|
+
)
|
|
228
|
+
|
|
229
|
+
if resultsToEvaluate == "computeClassLabels" and not (
|
|
230
|
+
pred_contribs or pred_interactions
|
|
231
|
+
):
|
|
232
|
+
# Decode labels
|
|
233
|
+
le = preprocessing.LabelEncoder()
|
|
234
|
+
le.classes_ = self.classes_
|
|
235
|
+
return le.inverse_transform(predict_result)
|
|
236
|
+
return predict_result
|
|
237
|
+
|
|
238
|
+
def predict(self, X, pred_contribs=False, pred_interactions=False):
|
|
239
|
+
return self._predict(X, "computeClassLabels", pred_contribs, pred_interactions)
|
|
240
|
+
|
|
241
|
+
def predict_proba(self, X):
|
|
242
|
+
return self._predict(X, "computeClassProbabilities")
|
|
243
|
+
|
|
244
|
+
def predict_log_proba(self, X):
|
|
245
|
+
proba = self.predict_proba(X)
|
|
246
|
+
|
|
247
|
+
if self.n_outputs_ == 1:
|
|
248
|
+
return np.log(proba)
|
|
249
|
+
|
|
250
|
+
for k in range(self.n_outputs_):
|
|
251
|
+
proba[k] = np.log(proba[k])
|
|
252
|
+
|
|
253
|
+
return proba
|
|
254
|
+
|
|
255
|
+
@staticmethod
|
|
256
|
+
def convert_model(model):
|
|
257
|
+
gbm = GBTDAALClassifier()
|
|
258
|
+
gbm._convert_model(model)
|
|
259
|
+
|
|
260
|
+
gbm.classes_ = model.classes_
|
|
261
|
+
gbm.allow_nan_ = True
|
|
262
|
+
return gbm
|
|
263
|
+
|
|
264
|
+
|
|
265
|
+
@control_n_jobs(decorated_methods=["fit", "predict"])
|
|
266
|
+
class GBTDAALRegressor(RegressorMixin, GBTDAALBase):
|
|
267
|
+
def fit(self, X, y):
|
|
268
|
+
# Check the algorithm parameters
|
|
269
|
+
self._check_params()
|
|
270
|
+
|
|
271
|
+
# Check that X and y have correct shape
|
|
272
|
+
X, y = check_X_y(X, y, y_numeric=True, dtype=[np.float64, np.float32])
|
|
273
|
+
|
|
274
|
+
# Convert to 2d array
|
|
275
|
+
y_ = y.reshape((-1, 1))
|
|
276
|
+
|
|
277
|
+
self.n_features_in_ = X.shape[1]
|
|
278
|
+
|
|
279
|
+
# Get random seed
|
|
280
|
+
rs_ = check_random_state(self.random_state)
|
|
281
|
+
seed_ = rs_.randint(0, np.iinfo("i").max)
|
|
282
|
+
|
|
283
|
+
# Define type of data
|
|
284
|
+
fptype = getFPType(X)
|
|
285
|
+
|
|
286
|
+
# Fit the model
|
|
287
|
+
train_algo = d4p.gbt_regression_training(
|
|
288
|
+
fptype=fptype,
|
|
289
|
+
splitMethod=self.split_method,
|
|
290
|
+
maxIterations=self.max_iterations,
|
|
291
|
+
maxTreeDepth=self.max_tree_depth,
|
|
292
|
+
shrinkage=self.shrinkage,
|
|
293
|
+
minSplitLoss=self.min_split_loss,
|
|
294
|
+
lambda_=self.reg_lambda,
|
|
295
|
+
observationsPerTreeFraction=self.observations_per_tree_fraction,
|
|
296
|
+
featuresPerNode=self.features_per_node,
|
|
297
|
+
minObservationsInLeafNode=self.min_observations_in_leaf_node,
|
|
298
|
+
memorySavingMode=self.memory_saving_mode,
|
|
299
|
+
maxBins=self.max_bins,
|
|
300
|
+
minBinSize=self.min_bin_size,
|
|
301
|
+
engine=d4p.engines_mcg59(seed=seed_),
|
|
302
|
+
)
|
|
303
|
+
train_result = train_algo.compute(X, y_)
|
|
304
|
+
|
|
305
|
+
# Store the model
|
|
306
|
+
self.daal_model_ = train_result.model
|
|
307
|
+
|
|
308
|
+
# Return the classifier
|
|
309
|
+
return self
|
|
310
|
+
|
|
311
|
+
def predict(self, X, pred_contribs=False, pred_interactions=False):
|
|
312
|
+
# Check is fit had been called
|
|
313
|
+
check_is_fitted(self, ["n_features_in_"])
|
|
314
|
+
|
|
315
|
+
# Input validation
|
|
316
|
+
X = validate_data(
|
|
317
|
+
self,
|
|
318
|
+
X,
|
|
319
|
+
dtype=[np.float64, np.float32],
|
|
320
|
+
ensure_all_finite="allow-nan" if self.allow_nan_ else True,
|
|
321
|
+
reset=False,
|
|
322
|
+
)
|
|
323
|
+
|
|
324
|
+
fptype = getFPType(X)
|
|
325
|
+
return self._predict_regression(X, fptype, pred_contribs, pred_interactions)
|
|
326
|
+
|
|
327
|
+
@staticmethod
|
|
328
|
+
def convert_model(model):
|
|
329
|
+
gbm = GBTDAALRegressor()
|
|
330
|
+
gbm._convert_model(model)
|
|
331
|
+
|
|
332
|
+
gbm.allow_nan_ = True
|
|
333
|
+
return gbm
|
scikit_learn_intelex-2025.10.0.data/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# ==============================================================================
|
|
2
|
+
# Copyright 2014 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 ._forest import RandomForestClassifier, RandomForestRegressor
|
|
18
|
+
from .AdaBoostClassifier import AdaBoostClassifier
|
|
19
|
+
from .GBTDAAL import GBTDAALClassifier, GBTDAALRegressor
|
|
20
|
+
|
|
21
|
+
__all__ = [
|
|
22
|
+
"RandomForestClassifier",
|
|
23
|
+
"RandomForestRegressor",
|
|
24
|
+
"GBTDAALClassifier",
|
|
25
|
+
"GBTDAALRegressor",
|
|
26
|
+
"AdaBoostClassifier",
|
|
27
|
+
]
|