НачатьНачать бесплатно

Извлечение параметра случайного леса

Теперь вы перенесёте работу, выполненную ранее с моделью логистической регрессии, на модель случайного леса. Один из параметров этой модели — способ, которым конкретное дерево принимает решение о разбиении на каждом уровне.

Такой анализ менее информативен, чем изучение коэффициентов логистической регрессии: вряд ли вам когда-либо удастся изучить каждое разбиение и каждое дерево в модели случайного леса. Тем не менее это очень полезное упражнение — заглянуть «под капот» и понять, что делает модель.

В этом упражнении мы извлечём одно дерево из модели случайного леса, визуализируем его и программно извлечём одно из разбиений.

Вам доступны:

  • Объект модели случайного леса rf_clf
  • Изображение верхней части выбранного дерева решений tree_viz_image
  • DataFrame X_train и список original_variables

Это упражнение является частью курса

Подбор гиперпараметров в Python

Посмотреть курс

Инструкции к упражнению

  • Извлеките 7-е дерево (индекс 6) из модели случайного леса.
  • Визуализируйте это дерево (tree_viz_image), чтобы увидеть решения о разбиении.
  • Извлеките признак и уровень верхнего разбиения.
  • Выведите признак и уровень вместе.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Extract the 7th (index 6) tree from the random forest
chosen_tree = rf_clf.estimators_[____]

# Visualize the graph using the provided image
imgplot = plt.imshow(____)
plt.show()

# Extract the parameters and level of the top (index 0) node
split_column = chosen_tree.tree_.feature[____]
split_column_name = X_train.columns[split_column]
split_value = chosen_tree.tree_.threshold[____]

# Print out the feature and level
print("This node split on feature {}, at a value of {}".format(split_column_name, ____))
Редактировать и запускать код