我是 Spark 机器学习的新手。我正在使用ALS 算法 试验协同过滤。在这个算法中,我需要一些关于用于训练算法的rank、numIterations 和 lambda 参数的说明。而且我需要知道如何针对最小和最大的数据集调整此算法以产生改进的预测。有人可以解释一下吗?
最佳答案
来自文档:
numBlocks is the number of blocks used to parallelize computation (set to -1 to auto-configure).
rank is the number of features to use (also referred to as the number of latent factors).
iterations is the number of iterations of ALS to run. ALS typically converges to a reasonable solution in 20 iterations or less.
numBlocks
与矩阵的 block 有关。
rank
是隐藏因素,您想要使用的功能数量。阅读更多 here .
iterations 是您要执行的重复次数。该参数的名称不是 numIterations。
阅读更多关于 ALS 的信息 here .
I need to know how to tune the training parameters to increase the prediction with the less and high number of datas?
这总是取决于数据。使用交叉验证来选择这些。
关于algorithm - ALS.train() 中的秩、迭代次数和 lambda 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45838557/