Sklearn Random Forrest разные значения точности для разных кодировок этикеток

Я использую sklearn Random Forrest для обучения своей модели. С теми же функциями ввода для модели я попытался сначала передать целевые метки с помощью label_binarize, чтобы создать одну горячую кодировку моих целевых меток, а во-вторых, я попытался использовать label_encoder для кодирования моих целевых меток. В обоих случаях я получаю разные оценки точности. Есть ли конкретная причина, почему это происходит, поскольку я просто использую другой метод для кодирования меток без изменения каких-либо функций ввода.

2 ответа

Решение

https://datascience.stackexchange.com/questions/74364/random-forrest-sklearn-gives-different-accuracy-for-different-target-label-encod

В основном, когда вы кодируете свои целевые метки как одно горячее кодирование, sklearn рассматривает это как проблему с несколькими метками по сравнению с кодировщиком меток, который дает 1d-массив, где sklearn рассматривает его как проблему с несколькими классами.

https://scikit-learn.org/stable/modules/multiclass.html

Это не из-за ярлыка, а из-за случайности Random Forest.

Попробуйте исправить random_state, чтобы избежать этой ситуации.

Другие вопросы по тегам