Inzynierka/Lib/site-packages/sklearn/ensemble/_hist_gradient_boosting/common.pxd
2023-06-02 12:51:02 +02:00

44 lines
1.2 KiB
Cython

cimport numpy as cnp
cnp.import_array()
ctypedef cnp.npy_float64 X_DTYPE_C
ctypedef cnp.npy_uint8 X_BINNED_DTYPE_C
ctypedef cnp.npy_float64 Y_DTYPE_C
ctypedef cnp.npy_float32 G_H_DTYPE_C
ctypedef cnp.npy_uint32 BITSET_INNER_DTYPE_C
ctypedef BITSET_INNER_DTYPE_C[8] BITSET_DTYPE_C
cdef packed struct hist_struct:
# Same as histogram dtype but we need a struct to declare views. It needs
# to be packed since by default numpy dtypes aren't aligned
Y_DTYPE_C sum_gradients
Y_DTYPE_C sum_hessians
unsigned int count
cdef packed struct node_struct:
# Equivalent struct to PREDICTOR_RECORD_DTYPE to use in memory views. It
# needs to be packed since by default numpy dtypes aren't aligned
Y_DTYPE_C value
unsigned int count
unsigned int feature_idx
X_DTYPE_C num_threshold
unsigned char missing_go_to_left
unsigned int left
unsigned int right
Y_DTYPE_C gain
unsigned int depth
unsigned char is_leaf
X_BINNED_DTYPE_C bin_threshold
unsigned char is_categorical
# The index of the corresponding bitsets in the Predictor's bitset arrays.
# Only used if is_categorical is True
unsigned int bitset_idx
cpdef enum MonotonicConstraint:
NO_CST = 0
POS = 1
NEG = -1