我想了解在哪些情况下不应该使用Spark MMLIB。
回答:
作为一个经验法则,当以下情况出现时,您应该重新考虑您的选择:
- 您需要精确的解决方案或明确定义的误差。Spark MLlib通常使用为Spark架构调整的启发式方法。有些方法在一般情况下能提供非常好的结果,其他方法可能需要复杂的调优。
- 您的数据较少/维度较低(最多几千)或者数据能够装入单个节点的内存中(如今轻松达到256GB – 512GB)。在这种情况下,优化的机器学习/线性代数库通常比Spark表现得更好。
- 您希望在训练过程中收集详细的诊断信息。MLlib的算法通常是黑盒子。
- 模型将在Spark之外使用。导出选项相当有限。