我正在尝试跟踪找到的数据库中的xgboost示例here
在我到达实际的训练部分之前,一切似乎都能正常工作:
val xgboostModelRDD = XGBoost.trainWithRDD(trainRDD, ...)
此时我收到错误消息。由于堆栈跟踪相当短,我将把它粘贴到这里:
java.lang.NoSuchMethodError: scala.Predef$.ArrowAssoc(Ljava/lang/Object;)Ljava/lang/Object;
at ml.dmlc.xgboost4j.scala.spark.XGBoost$.overrideParamsAccordingToTaskCPUs(XGBoost.scala:232)
at ml.dmlc.xgboost4j.scala.spark.XGBoost$.trainWithRDD(XGBoost.scala:293)
在做了一些研究之后,看来这个错误的原因是scala版本不兼容。 databricks社区版集群预先配置了scala版本2.10。这cannot be modified。
这是否意味着使用社区版运行xgboost是不可能的,还是有办法解决这个问题?