Робастность важности случайных лесов с Python - PullRequest
0 голосов
/ 11 февраля 2020

Я использую Random Forest от Sklearn для важности функций. Однако важность функций может измениться путем изменения параметра random_state в RF. Я задаюсь вопросом, есть ли какой-нибудь способ получить надежную важность функции с RF?

1 Ответ

0 голосов
/ 11 февраля 2020

это из-за принципа алгоритма Random Forest. РФ находит оптимальный по heuristi c жадный путь. И работая по такому способу heuristi c, он смягчает множество деревьев со случайно выбранными объектами и выборками. И здесь random_state дает случайные числа для выборки. Если вы видите ниже документы, там написано

Если int, random_state - это начальное число, используемое генератором случайных чисел; Если экземпляр RandomState, random_state является генератором случайных чисел; Если None, генератор случайных чисел является экземпляром RandomState, используемым np.random.

[https://scikit-learn.org/stable/modules/generated/sklearn.tree.DecisionTreeClassifier.html] [1]

Так что если вы установите random_state с фиксированным значением, вы можете иметь фиксированное значение для важности функции. Это не гарантирует надежность, потому что RF не алгоритмы, гарантирующие надежность, но дает ответ на основе его heuristi c находки.

...