如何从Catboost获得训练有素的树木?

时间:2017-09-11 10:41:56

标签: catboost

我使用--print-trees --verbose打印树并获得如下输出:

441:
(f3, split0) score -0.01684494315
(f1, split0) score 0.00728615875
(f3, split0) score 0.02879532296
learn 0.1080262936passed: 0.00033 sec   total: 234ms    remaining: 30.7ms
442:
(f0, split0) score 0.02581825636
(f0, split0) score -0.05604439647
learn 0.1080003503passed: 0.000278 sec  total: 234ms    remaining: 30.1ms

如何获取每棵树的拆分值和结果类?

2 个答案:

答案 0 :(得分:0)

您可以将模型转换为CoreML格式,它是一种原型格式,您可以从中获取所有分割值和叶值。 CoreML格式尚不支持有关分类功能的统计信息,因此目前无法使用具有这些统计信息的人类可读模型。但我们稍后会添加它,GitHub上存在一个问题:https://github.com/catboost/catboost/issues/23

答案 1 :(得分:0)

查看以下内容: https://blog.csdn.net/l_xzmy/article/details/81532281

想法是从导出的模型的详细信息中绘制树:

cat_clf.save_model(fname, format="cbm", export_parameters=None)