[scikit-learn] random forests and multil-class probability
niourf at gmail.com
Tue Jul 27 05:33:02 EDT 2021
To add to Guillaume's answer: the native multiclass support for
forests/trees is described here:
It's not a one-vs-rest strategy and can be summed up as:
> Store n output values in leaves, instead of 1;
> Use splitting criteria that compute the average reduction
> across all n outputs.
On 27/07/2021 10:22, Guillaume Lemaître wrote:
>> On 27 Jul 2021, at 11:08, Sole Galli via scikit-learn <scikit-learn at python.org> wrote:
>> Hello community,
>> Do I understand correctly that Random Forests are trained as a 1 vs rest when the target has more than 2 classes? Say the target takes values 0, 1 and 2, then the model would train 3 estimators 1 per class under the hood?.
> Each decision tree of the forest is natively supporting multi class.
>> The predict_proba output is an array with 3 columns, containing the probability of each class. If it is 1 vs rest. am I correct to assume that the sum of the probabilities for the 3 classes should not necessarily add up to 1? are they normalized? how is it done so that they do add up to 1?
> According to the above answer, the sum for each row of the array given by `predict_proba` will sum to 1.
> According to the documentation, the probabilities are computed as:
> The predicted class probabilities of an input sample are computed as the mean predicted class probabilities of the trees in the forest. The class probability of a single tree is the fraction of samples of the same class in a leaf.
>> Thank you
>> scikit-learn mailing list
>> scikit-learn at python.org
> scikit-learn mailing list
> scikit-learn at python.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the scikit-learn