回顾与本文目标
前一篇文章基本上是在通过人肉的方式试图去做编译器应该做的事情。看上去不是一个聪明的办法(居然现在才想起来,我也是醉了)。换一个思路。我们现在试图用编译、运行的方式来理解 XGBoost 库。注意到 源代码有 cli_main.cc 这样的文件存在。意味着我们可以使用命令行调用库。
基本思路与过程
为此,我们下载了 JetBrains 的 CLion 作为 IDE (免费试用 30 天,暂时应该够了)。在 Configuration 里选择 runxgboost 。
我们可以编译,然后运行。得到了
/home/gq/github/xgboost/xgboost
Usage: <config>
Process finished with exit code 0
这样令人感动的输出。意思是,我们已经生成了 xgboost 的可执行文件,但我们需要参数,以执行代码。加上断点甚至可以逐步跟代码,实在让人欣慰。我们需要做的是去翻阅网上的一些使用命令行的教程,让代码跑起来。
在 xgboost 的 github 自带的 demo 中1,我们似乎找到了合适的教程。我们需要准备一个 mushroom.conf 文件:

本文通过CLion IDE,采用命令行方式理解并调试XGBoost库。借助github上的demo,配置训练模型所需的参数文件,将数据集与可执行文件对应,并成功运行,为深入学习XGBoost的内部逻辑提供了方法。
最低0.47元/天 解锁文章
3343

被折叠的 条评论
为什么被折叠?



