#python-3.x #machine-learning #xgboost
#python-3.x #машинное обучение #xgboost
Вопрос:
Я создал модель XGBoost на Python и использовал следующий код, чтобы лучше понять модель:
xgb.plot_importance(model)
или
xgb.plot_importance(model, importance_type="gain")
Я могу получить представление о том, какие параметры имели наибольшее значение, но, похоже, мне совершенно не хватает информации об этих значениях.
Предположим, я пытаюсь определить, сколько людей будут арендовать велосипеды в данный день. Выполнение двух приведенных выше методов plot_importance может подсказать мне, что «температура» и «день недели» являются наиболее важными параметрами при определении количества поездок на велосипеде. Однако я хочу знать, какие из этих значений определяли высокое количество поездок на велосипеде, а какие значения определяли низкое количество поездок на велосипеде.
Ответ №1:
Я предполагаю, что вы пытаетесь визуализировать и отлаживать то, что алгоритм выполняет при прогнозировании. Для этого я бы рекомендовал ознакомиться с ELI5, в частности с той частью, которая охватывает работу с XGBoost. Для получения исчерпывающего примера того, как использовать ELI5 с XGBoost в наборе данных Titanic, ознакомьтесь с этой ссылкой.
Чтобы объяснить прогнозирование, выполните следующее:
from eli5 import show_prediction
show_prediction(moel, your_prediction, show_feature_values=True)