微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何理解 Xgboost 模型转储

如何解决如何理解 Xgboost 模型转储

注意到 spark xgboost 没有像 Python API 那样的 API <select name="cars" id="cars"> <option value="100">Volvo</option> <option value="200">Saab</option> <option value="300">Mercedes</option> <option value="400">Audi</option> </select> <input type="text" id="name" name="name">,我试图解析 trees_to_dataframe() 结果,但我对其格式感到困惑,哪些字段代表什么等等。

getModelDump

我的模型参数设置如下:

 // train xgb_model in spark version of xgboost
scala> xgb_model
res18: ml.dmlc.xgboost4j.scala.spark.XGBoostClassificationModel = xgbc_89286dd04aa3

scala> xgb_model.nativeBooster.getModelDump(null,true);
res19: Array[String] =
Array("0:[f1<53] yes=1,no=2,missing=2,gain=58047.7812,cover=336165
        1:[f3<53.9500008] yes=3,no=4,missing=3,gain=24677.3848,cover=63748.25
                3:leaf=-0.0531237721,cover=53626.5
                4:leaf=0.031994272,cover=10121.75
        2:[f16<1.66669905] yes=5,no=6,missing=6,gain=10181.9785,cover=272416.75
                5:leaf=-0.0937986076,cover=268367
                6:leaf=-0.0139159411,cover=4049.75
","0:[f1<51] yes=1,gain=52816.4062,cover=336097.594
        1:[f8<369.570007] yes=3,missing=4,gain=22681.3555,cover=60529.668
                3:leaf=-0.0121749714,cover=37363.5625
                4:leaf=-0.0751453713,cover=23166.1055
        2:[f16<1.67979908] yes=5,gain=10274.8359,cover=275567.906
                5:leaf=-0.089068912,cover=271300.188
                6:leaf=-0.0108754979,cover=4267.74268
","0:[f1<56] yes=1,gain=4887...

scala> res19.size
res20: Int = 200

我认为 xgbParams = {'n_estimators': 200,'max_depth': 2,'eta': 0.05,'lambda':1,'gamma':4,'alpha':0.1,'subsample':0.8,#'min_child_weight': 1,'colsample_bytree':0.8,'objective': 'binary:logistic','colsample_bylevel':0.8,'eval_metric':'logloss','seed': 1122,'missing': -999999999} = 200 是有道理的,因为我已将 res19.size 设置为 200。我对 n_estimators 中的每个字符串感到困惑,它们的格式如下: 我认为 res19 必须代表某些特定功能,但我如何找到示例功能名称?另外,f201 代表什么? 2 是什么意思?

提前致谢!!

yes=3,no=4

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。