Участок единого дерева решений XGBoost

Я думаю, что когда вы определяете String, вы определяете объект. Поэтому вам нужно использовать .equals(). Когда вы используете примитивные типы данных, вы используете ==, но с String (и любым объектом) вы должны использовать .equals().

0
задан Leon 13 July 2018 в 10:59
поделиться

2 ответа

У меня была такая же проблема в последнее время, и единственный способ, который я нашел, - это попытаться определить размер шрифта (он все равно может быть синеватым с большой фигурой. Например, для построения 4-го дерева используйте:

fig, ax = plt.subplots(figsize=(30, 30))
xgb.plot_tree(model, num_trees=4, ax=ax)
plt.show()

Чтобы сохранить его, вы можете сделать

plt.savefig("temp.pdf")

Кроме того, каждое дерево разделяет два класса, поэтому у вас есть столько деревьев, сколько класс.

1
ответ дан Serk 17 August 2018 в 13:06
поделиться

Чтобы добавить к ответу Серка, вы также можете изменить размер фигуры перед ее отображением:

# ...
plot_tree(model)
fig = plt.gcf()
fig.set_size_inches(18.5, 10.5)
plt.show()
1
ответ дан Learning is a mess 17 August 2018 в 13:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: