Both the OCT and BinOCT model have the parameter min_samples_split with default value 2.
However, they are used to constrain the minimum samples in the leaf, not in a split.
See oct.py line 166: m.addConstrs(z.sum('*', t) >= self.min_samples_split * l[t] for t in self.l_index)
Following the naming convention of sklearn's DecisionTreeClassifer, I suggest changing the parameter name to min_samples_leaf and changing its default value to 1
Both the OCT and BinOCT model have the parameter
min_samples_splitwith default value2.However, they are used to constrain the minimum samples in the leaf, not in a split.
See oct.py line 166:
m.addConstrs(z.sum('*', t) >= self.min_samples_split * l[t] for t in self.l_index)Following the naming convention of sklearn's DecisionTreeClassifer, I suggest changing the parameter name to
min_samples_leafand changing its default value to1