2
我想为我的数据集中的每个用户训练不同的模型。 Spark MlLib/Pipelines中是否支持该功能?如何使用Spark MlLib/Pipelines为每个用户构建1个模型
如果不是,为每个用户培训多个独立模型最简单/最简单的方法是什么?
我想为我的数据集中的每个用户训练不同的模型。 Spark MlLib/Pipelines中是否支持该功能?如何使用Spark MlLib/Pipelines为每个用户构建1个模型
如果不是,为每个用户培训多个独立模型最简单/最简单的方法是什么?
不幸的是Spark-ML
没有提供分离“单一模型 - 单个用户”概念的能力。但是,您可以根据需要制作自定义逻辑。我看到解决这个任务的两种可能的变体。 解决这种情况的第一个场景是继到下一个算法(我把一切 - 例如,你将有不同的步骤,但算法在逻辑上类似):
Dataset
X
和用户的工作效率Y
和最新参数对于用户组是可变的 - 您必须使用LinearRegression来训练您的模型,以便预测用户是否可以在该时间内完成工作或者c蚂蚁。第二种方法是训练你的模型,所以它适用于所有用户,则必须为算法选择选项,因此它不依赖于用户组,也就是说,将训练模型的算法推广到所有用户组 - 在这种情况下,您没有分离感
“single-model-- >单个用户“。如果第二个变体对数据集上的实现更复杂,请遵循第一种方法。
选项1:为所有用户并行模型培训的最佳方式是什么?选项2:您可以扩展“训练您的模型,以便适用于每个用户”? – Gevorg
@Gevorg Option1 - 如果您的意思只是培训过程的并行化,您可以使用ForkJoinPool或Akka编写自定义逻辑,如果您的意思是单个模型的并行培训过程,我会建议您参阅Keras和Spark Ml的集成 - https ://github.com/maxpumperla/elephas#spark-ml-example选项2 - 建议您可以为所有用户制作一般模型 - 这是唯一的假设,因为我不知道数据集的外观 –