Добування параметра Random Forest
Тепер ви перенесете підхід, який застосовували до моделі логістичної регресії, на модель випадкового лісу. Параметром цієї моделі є те, як конкретне дерево вирішує, де розділяти на кожному рівні.
Цей аналіз не такий корисний, як коефіцієнти логістичної регресії, адже навряд чи ви коли-небудь детально розглядатимете кожне розбиття та кожне дерево у моделі випадкового лісу. Проте це дуже корисна вправа, щоб зазирнути „під капот" і побачити, що робить модель.
У цій вправі ми дістанемо одне дерево з нашої моделі випадкового лісу, візуалізуємо його та програмно дістанемо одне з розбиттів.
У вашому розпорядженні є:
- Об'єкт моделі випадкового лісу
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, ____))