我在python中使用CatBoost分类器来训练增强树。不幸的是,部署必须使用另一种编程语言来完成,因此我无法使用已经可用的预测方法,但必须自己实现。我尝试将模型导出到json文件,然后自己重新组合树(从而进行评分)。没有分类功能时,它工作得很好。但是,如果我使用分类功能(是否进行一次热编码),我将无法理解json文件中的值。例如,我的树中有这样的裂痕:
{ “ split_index”:16, “ cat_feature_index”:0, “值”:1127826985, “ split_type”:“ OneHotFeature” }。
一键编码的功能(cat_feature_index = 0的功能)在我的数据中采用了4个不同的值(100,200,700和800)。我想知道此拆分的确切作用。
此外,如果我不使用单热编码,则拆分之一如下:
{ “ split_index”:15, “ split_type”:“ OnlineCtr”, “边框”:4.99999999046, “ ctr_target_border_idx”:0 }
其中特征和数据与上面相同。这种分裂究竟是做什么的?
能否请您告诉我在哪里可以找到关于树的说明和/或在其中定义了具有分类特征的树中的拆分的源代码?