我正在尝试使用XGBoost对上下文广告的1亿次展示建立CTR预测模型,并且要实现相同的效果,我想在hadoop上尝试XGboost,因为我拥有HDFS中所有可用的展示数据。

有人可以引用适用于python的有效教程吗?

最佳答案

有很多方法可以做到:

  • 如果您有一些较低级别的逻辑分组,例如说某个项目部门的CTR,并且您想为部门创建本地化模型,则可以使用map reduce设置类型。这将确保所有属于单个部门的数据将最终存储在单个YARN容器中,并且您可以基于该数据构建模型。 NLineInputFormat是一个聪明的窍门,它使此仅 map 处理比基于 map 缩小的处理更为有效。
  • 您可以使用XGBoost的Spark版本进行分布式机器学习,以了解更多信息。http://dmlc.ml/2016/03/14/xgboost4j-portable-distributed-xgboost-in-spark-flink-and-dataflow.html
  • 如果您也正在决定基础架构,那么也可以尝试AWS,如此处所述。它不是hadoop,而是伪分布式机器学习:https://xgboost.readthedocs.io/en/latest/tutorials/aws_yarn.html
  • 关于python - 如何在hadoop集群上运行xgboost进行分布式模型训练?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39767280/

    10-12 23:47