---
title: GBDT
description: "| 用例编号 | 4.2.1 |"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2200/bds/kunpengbdssparkml_08_0010.html
sourcePath: /source/zh/kunpengboostkithistory/2200/bds/kunpengbdssparkml_08_0010.html
indexId: 923025bcecc7314bcb5eaa99621251509d954e6a8bf9b8b53d6f97095d9d2f9573
---
# GBDT

| 用例编号 | 4.2.1 |
| --- | --- |
| 测试目的 | GBDT（Gradient Boosting Decision Tree，梯度提升决策树）性能测试 |
| 测试组网 | 测试组网如图1所示。 |
| 预置条件 | 按照测试组网已完成集群部署。 获取算法对应的测试样例工具kal\-test(https://gitee.com/kunpengcompute/Spark\-ml\-algo\-lib/tree/master/tools/kal\-test)，样例工程目录结构参考README，以下测试过程中均需使用辅助代码。 将算法所用的数据集上传至HDFS指定目录，参考测试数据集。 |
| 测试步骤 | 将已获取的测试工具kal\-test文件夹部署到指定目录中，如“/home/test/boostkit/”。 若该目录不存在，先创建目录。 mkdir \-p /home/test/boostkit/ 参考《鲲鹏BoostKit大数据使能套件 机器学习算法加速库 特性指南》完成软件编译(https://www.hikunpeng.com/document/detail/zh/kunpengbds/appAccelFeatures/algorithmaccelf\_ml/kunpengbdssparkml\_20\_0009.html)和软件部署(https://www.hikunpeng.com/document/detail/zh/kunpengbds/appAccelFeatures/algorithmaccelf\_ml/kunpengbdssparkml\_20\_0023.html)，将获得的boostkit\-ml\-kernel\-scala\_version\-kal\_version\-spark\_version\-aarch64.jar、boostkit\-ml\-acc\_scala\_version\-kal\_version\-spark\_version.jar和boostkit\-ml\-core\_scala\_version\-kal\_version\-spark\_version.jar放入到“/home/test/boostkit/kal\-test/lib”下。 进入“/home/test/boostkit/kal\-test”目录中。 cd /home/test/boostkit/kal\-test 查看“/etc/hosts”节点名，如下图，计算节点为agent1、agent2、agent3。 cat /etc/hosts 根据4中得到的计算节点名，修改“bin/ml/gbdt\_run.sh”中对应的计算节点名称，修改方式如下。 打开“bin/ml/gbdt\_run.sh”文件。 vim bin/ml/gbdt\_run.sh 按“i”进入编辑模式，修改图中红框中对应的计算节点名称为agent1、agent2、agent3，如果计算节点不为3个，根据实际个数对该行增加或者删除。 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。 创建结果保存路径。 mkdir logs report 运行相应测试用例脚本，如测试epsilon（算法模型接口为classification，函数接口为fit）数据集的性能。 sh bin/ml/gbdt\_run.sh classification dataframe epsilon fit no 2>&1 \| tee \-a logs/gbdtc\_epsilon\_fit.log 运行结束后可在“/home/test/boostkit/kal\-test/report/算法名称\_写入文件时间.yml”文件中查看耗时、结果存放路径等数据。其中costTime为算法耗时，saveDataPath为结果保存的HDFS路径。 cat report/算法名称\_写入文件时间.yml |
| 预期结果 | 脚本执行成功。 生成“report/算法名称\_写入文件时间.yml”文件，且文件中打印相关结果信息。 |
| 测试结果 |  |
| 备注 | 如果更换目录名称或者位置，则需要在脚本中修改相应的位置。 不同集群上Spark提交的最优参数可能会有差异，需要通过搜参找到最优参数，可以在“conf/ml/gbdt/gbdt.yml”中修改模型参数，在“conf/ml/gbdt/gbdt\_spark.properties”中修改Spark运行参数。 |
