ALS.train()中的rank,numIteraions和lambda是什么?

时间:2017-08-23 11:32:46

标签: algorithm machine-learning apache-spark-mllib data-science

我是新手,以激发机器学习。我正在使用 ALS算法试验协作过滤。在这个算法中,我需要对 rank,numIterations和lambda 参数进行一些澄清,这些参数用于训练算法。我需要知道如何针对最小和最大的数据集调整此算法以生成改进的预测。有人可以解释一下吗?

1 个答案:

答案 0 :(得分:1)

来自文档:

  

numBlocks 是用于并行计算的块数(设置   到-1自动配置。)

     

等级是要使用的要素数(也称为潜在要素数)。

     

迭代是要运行的ALS的迭代次数。 ALS通常在20次或更少的迭代中收敛到合理的解决方案。

numBlocks与矩阵的块有关。

rank是隐藏的因素,您想要使用的功能数量。阅读更多here

iterations 是您要执行的重复次数。参数的名称是 numIterations。

详细了解ALS here

  

我需要知道如何调整训练参数以增加数据量越来越少的预测?

这总是取决于数据。使用交叉验证来选择这些。