As a result, when the weights are relatively small, it is possible to encounter situations where no split is generated, despite obtaining splits during the prebinning process.
The problem occurs when we specify the min_bin_size parameter. I suspect it may be the same for max_bin_size.
Hi! It appears that there is an inconsistency in the add_constraint_min_max_bin_size function when sample weights are used. We compare there bin_size, which uses n_records (this is the sum of weights for a particular bin) with min_bin_size, which is calculated here https://github.com/guillermo-navas-palencia/optbinning/blob/master/optbinning/binning/continuous_binning.py#L759 and this value doesn't take into account sample weights.
As a result, when the weights are relatively small, it is possible to encounter situations where no split is generated, despite obtaining splits during the prebinning process.
The problem occurs when we specify the min_bin_size parameter. I suspect it may be the same for max_bin_size.