spark分布式平台训练xgboost一个需要注意的地方

代码参考如下:scala实现

https://github.com/dmlc/xgboost/blob/master/jvm-packages/xgboost4j-example/src/main/scala/ml/dmlc/xgboost4j/scala/example/spark/SparkTraining.scala

经过transform转换之后,会出现如下几列,其中rawPrediction的值,文档解释是的边距,有点抽象:

举个例子来说,我用鸢尾花训练数据transform之后的结果如下

[[5.0,2.0,3.5,1.0],
2.0,
# 下面这一行表示的是rowprediction
[-0.18701201677322388,-0.18626302480697632,1.2945261001586914],
# 下面这一行表示的是概率
[0.156238853931427,0.15635588765144348,0.6874052286148071],

2.0]

rawPrediction经过softmax计算之后,就能得出结论,其实对应的概率0.156就是通过下面的方式计算出来的。

e^-0.187 / (e^-0.187 + e^-0.186 + e^1.29)

如果本地有测试数据,想在本地运行可以参考如下submit.sh脚本:

本地的spark版本最好在2.3及其以上

spark-submit \
--conf spark.speculation=false \
--conf spark.driver.allowMultipleContexts=true \
--conf spark.dynamicAllocation.enabled=false \
--class com.test.XGB \
--master local[*] \
/Users/spark/target/recommender-data-spark-1.0-SNAPSHOT-jar-with-dependencies.jar \
100

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

想做个自由的人

随缘吧打赏与否还是会坚持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值