Skip to content

Commit e02dfc4

Browse files
MNT move bitset from HGBT to utils (scikit-learn#33957)
Co-authored-by: Adam Li <adam2392@gmail.com>
1 parent 113ee74 commit e02dfc4

14 files changed

Lines changed: 105 additions & 107 deletions

File tree

sklearn/ensemble/_hist_gradient_boosting/_bitset.pxd

Lines changed: 0 additions & 20 deletions
This file was deleted.

sklearn/ensemble/_hist_gradient_boosting/_bitset.pyx

Lines changed: 0 additions & 65 deletions
This file was deleted.

sklearn/ensemble/_hist_gradient_boosting/_predictor.pyx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,13 @@ from cython.parallel import prange
55
from libc.math cimport isnan
66
import numpy as np
77

8+
from sklearn.utils._bitset cimport BITSET_INNER_DTYPE_C, in_bitset_2d_memoryview
89
from sklearn.utils._typedefs cimport intp_t, uint8_t
910
from sklearn.ensemble._hist_gradient_boosting.common cimport X_DTYPE_C
1011
from sklearn.ensemble._hist_gradient_boosting.common cimport Y_DTYPE_C
1112
from sklearn.ensemble._hist_gradient_boosting.common import Y_DTYPE
1213
from sklearn.ensemble._hist_gradient_boosting.common cimport X_BINNED_DTYPE_C
13-
from sklearn.ensemble._hist_gradient_boosting.common cimport BITSET_INNER_DTYPE_C
1414
from sklearn.ensemble._hist_gradient_boosting.common cimport node_struct
15-
from sklearn.ensemble._hist_gradient_boosting._bitset cimport in_bitset_2d_memoryview
1615

1716

1817
def _predict_from_raw_data( # raw data = non-binned data

sklearn/ensemble/_hist_gradient_boosting/binning.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,14 @@
1414

1515
from sklearn.base import BaseEstimator, TransformerMixin
1616
from sklearn.ensemble._hist_gradient_boosting._binning import _map_to_bins
17-
from sklearn.ensemble._hist_gradient_boosting._bitset import set_bitset_memoryview
1817
from sklearn.ensemble._hist_gradient_boosting.common import (
1918
ALMOST_INF,
2019
X_BINNED_DTYPE,
2120
X_BITSET_INNER_DTYPE,
2221
X_DTYPE,
2322
)
2423
from sklearn.utils import check_array, check_random_state
24+
from sklearn.utils._bitset import set_bitset_memoryview
2525
from sklearn.utils._openmp_helpers import _openmp_effective_n_threads
2626
from sklearn.utils.parallel import Parallel, delayed
2727
from sklearn.utils.stats import _weighted_percentile

sklearn/ensemble/_hist_gradient_boosting/common.pxd

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
1-
from sklearn.utils._typedefs cimport float32_t, float64_t, intp_t, uint8_t, uint32_t
1+
# Authors: The scikit-learn developers
2+
# SPDX-License-Identifier: BSD-3-Clause
3+
4+
from sklearn.utils._bitset cimport BITSET_INNER_DTYPE_C, BITSET_INNER_DTYPE_C
5+
from sklearn.utils._typedefs cimport float32_t, float64_t, intp_t, uint8_t
26

37

48
ctypedef float64_t X_DTYPE_C
59
ctypedef uint8_t X_BINNED_DTYPE_C
610
ctypedef float64_t Y_DTYPE_C
711
ctypedef float32_t G_H_DTYPE_C
8-
ctypedef uint32_t BITSET_INNER_DTYPE_C
9-
ctypedef BITSET_INNER_DTYPE_C[8] BITSET_DTYPE_C
1012

1113

1214
cdef packed struct hist_struct:

sklearn/ensemble/_hist_gradient_boosting/common.pyx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# Authors: The scikit-learn developers
2+
# SPDX-License-Identifier: BSD-3-Clause
3+
14
import numpy as np
25

36
# Y_DYTPE is the dtype to which the targets y are converted to. This is also

sklearn/ensemble/_hist_gradient_boosting/grower.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,6 @@
1414

1515
import numpy as np
1616

17-
from sklearn.ensemble._hist_gradient_boosting._bitset import (
18-
set_raw_bitset_from_binned_bitset,
19-
)
2017
from sklearn.ensemble._hist_gradient_boosting.common import (
2118
PREDICTOR_RECORD_DTYPE,
2219
X_BITSET_INNER_DTYPE,
@@ -25,6 +22,7 @@
2522
from sklearn.ensemble._hist_gradient_boosting.histogram import HistogramBuilder
2623
from sklearn.ensemble._hist_gradient_boosting.predictor import TreePredictor
2724
from sklearn.ensemble._hist_gradient_boosting.splitting import Splitter
25+
from sklearn.utils._bitset import set_raw_bitset_from_binned_bitset
2826
from sklearn.utils._openmp_helpers import _openmp_effective_n_threads
2927

3028

sklearn/ensemble/_hist_gradient_boosting/meson.build

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ hist_gradient_boosting_extension_metadata = {
1212
'splitting': {'sources': [cython_gen.process('splitting.pyx')], 'dependencies': [openmp_dep]},
1313
'_binning': {'sources': [cython_gen.process('_binning.pyx')], 'dependencies': [openmp_dep]},
1414
'_predictor': {'sources': [cython_gen.process('_predictor.pyx')], 'dependencies': [openmp_dep]},
15-
'_bitset': {'sources': [cython_gen.process('_bitset.pyx')]},
1615
'common': {'sources': [cython_gen.process('common.pyx')]},
1716
}
1817

sklearn/ensemble/_hist_gradient_boosting/splitting.pyx

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,13 @@ from libc.math cimport INFINITY, ceil
1616
from libc.stdlib cimport malloc, free, qsort
1717
from libc.string cimport memcpy
1818

19+
from sklearn.utils._bitset cimport BITSET_DTYPE_C, BITSET_INNER_DTYPE_C
20+
from sklearn.utils._bitset cimport in_bitset, init_bitset, set_bitset
1921
from sklearn.utils._typedefs cimport uint8_t
2022
from sklearn.ensemble._hist_gradient_boosting.common cimport X_BINNED_DTYPE_C
2123
from sklearn.ensemble._hist_gradient_boosting.common cimport Y_DTYPE_C
2224
from sklearn.ensemble._hist_gradient_boosting.common cimport hist_struct
23-
from sklearn.ensemble._hist_gradient_boosting.common cimport BITSET_INNER_DTYPE_C
24-
from sklearn.ensemble._hist_gradient_boosting.common cimport BITSET_DTYPE_C
2525
from sklearn.ensemble._hist_gradient_boosting.common cimport MonotonicConstraint
26-
from sklearn.ensemble._hist_gradient_boosting._bitset cimport init_bitset
27-
from sklearn.ensemble._hist_gradient_boosting._bitset cimport set_bitset
28-
from sklearn.ensemble._hist_gradient_boosting._bitset cimport in_bitset
2926

3027

3128
cdef struct split_info_struct:

sklearn/ensemble/_hist_gradient_boosting/tests/test_predictor.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,6 @@
33
from numpy.testing import assert_allclose
44

55
from sklearn.datasets import make_regression
6-
from sklearn.ensemble._hist_gradient_boosting._bitset import (
7-
set_bitset_memoryview,
8-
set_raw_bitset_from_binned_bitset,
9-
)
106
from sklearn.ensemble._hist_gradient_boosting.binning import _BinMapper
117
from sklearn.ensemble._hist_gradient_boosting.common import (
128
ALMOST_INF,
@@ -20,6 +16,10 @@
2016
from sklearn.ensemble._hist_gradient_boosting.predictor import TreePredictor
2117
from sklearn.metrics import r2_score
2218
from sklearn.model_selection import train_test_split
19+
from sklearn.utils._bitset import (
20+
set_bitset_memoryview,
21+
set_raw_bitset_from_binned_bitset,
22+
)
2323
from sklearn.utils._openmp_helpers import _openmp_effective_n_threads
2424

2525
n_threads = _openmp_effective_n_threads()

0 commit comments

Comments
 (0)