Spark ALS转换性能

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark ALS转换性能相关的知识,希望对你有一定的参考价值。

我是一个火花新手。我正在使用pyspark进行ALS推荐。装配需要几分钟,运行相当快。但是,model.transform函数需要很长时间,并且在集群中需要更多节点。

  1. 我想知道我是否可以做任何优化来处理model.transform函数?
  2. 下面使用的方法是什么?它只是简单的矩阵乘法吗?如果是这样,我不能使用另一个矩阵乘法库吗?
答案

是的,ALS算法的本质是矩阵乘法。首先要检查您的日志中是否有此类警告

15/06/15 11:17:36 WARN BLAS: Failed to load implementation from: com.github.fommil.netlib.NativeSystemBLAS
15/06/15 11:17:36 WARN BLAS: Failed to load implementation from: com.github.fommil.netlib.NativeRefBLAS
15/06/15 11:17:36 WARN LAPACK: Failed to load implementation from: com.github.fommil.netlib.NativeSystemLAPACK
15/06/15 11:17:36 WARN LAPACK: Failed to load implementation from: com.github.fommil.netlib.NativeRefLAPACK

如果你这样做 - 你应该添加外部线性代数库作为依赖。请参阅此guide

以上是关于Spark ALS转换性能的主要内容,如果未能解决你的问题,请参考以下文章

带有字符串标签的 Spark ALS - 转换回字符串

spark实现ALS矩阵分解-附scala代码

spark实现ALS算法-附scala代码

spark实现ALS算法-附scala代码

spark实现ALS矩阵分解-附scala代码

ALS推荐算法在Spark上的优化