Home | News | Documentation | Download

Global weights in AddRegressionTree

Dear experts,
I’ve two trees for a regression problem, corresponding to two different channels.
For the training, I want that one channel has a larger weight.
I tried putting two different weights in
factory->AddRegressionTree( regTree, regWeight )
factory->AddRegressionTree( regTree2, regWeight2 )
but nothing changed.with respect to using the same weight for the two trees.

Best, Marianna.

Hi Marianna,

The default normalisation for the dataloader is EqualNumEvents which ensures that each class is normalised independently to have an average event weight of 1.

To retain the per-class weighting, use None, or NumEvents where the former does no normalisation and the latter normalises all events to an average weight of 1.

An additional note that does not apply to you since you are using regression but that is relevant for the common case of binary classification with boosted decision trees is that the events are then by default normalised according to EqualNumEvents (done internally in the method) unless SkipNormalisation is given as an option when booking the method. Again this last paragraph is not directly applicable to your situation but could be surprising if one is not aware :slight_smile:

Cheers,
Kim

1 Like