Apache spark 长时间运行离线Spark(MLlib)模型训练后,获得实时预测的过程是什么?

Apache spark 长时间运行离线Spark(MLlib)模型训练后,获得实时预测的过程是什么?,apache-spark,apache-spark-mllib,Apache Spark,Apache Spark Mllib,例如,如果我使用MLlib逻辑回归来训练数据集,并且每个数据都有超过100000000个特征,经过数小时的训练,我们得到了模型,如何使用该模型“实时”预测,例如,一个网页响应用户,预测结果在200ms内? 只需使用模型。Spark 2.0的预测(…)?逻辑回归仅支持二元分类。OP说回归。。所以我们需要跟进这一点 在任何情况下,使用逻辑回归B进行二元分类时,预测工作几乎是微不足道的: BLAS.dot(features, coefficients) + intercept 所以Spark只需要取

例如,如果我使用MLlib逻辑回归来训练数据集,并且每个数据都有超过100000000个特征,经过数小时的训练,我们得到了模型,如何使用该模型“实时”预测,例如,一个网页响应用户,预测结果在200ms内?
只需使用
模型。Spark 2.0的预测(…)

逻辑回归仅支持二元分类。OP说回归。。所以我们需要跟进这一点

在任何情况下,使用逻辑回归B进行二元分类时,预测工作几乎是微不足道的:

BLAS.dot(features, coefficients) + intercept
所以Spark只需要取训练好的权重(“系数”)和输入行的点积


要记住一件事:一行必须装入一台机器上的内存中。此外,向量中的元素数量==特征数量必须保留感谢您的回答,但是我不知道的是,如果我们已经有了经过训练的模型,并且特征非常巨大,我们如何“实时计算预测”?如果
predict
方法由于任何原因(例如高维特征)速度较慢,有什么方法可以实时实现吗?@Stephen Ah yea。。我没有引起足够的注意。“100毫克功能”。太多了。“我要看看源代码,看看这在现实生活中究竟意味着什么。”斯蒂芬更新了答案。Spark2.0中专门针对LogReg的一个关键考虑因素是它只支持二进制分类。从你的操作来看,这是回归:所以让我知道你是否有一个特定的(不同的)回归算法在头脑中。我在这里更新了答案并提出了一些建议。是的,我的意思是分类。@Stephen如前所述,MLlib中的逻辑回归实际上是二进制分类。这方面的答案已在修订答案的第一部分中给出。还是你需要多项式?您的OP没有指定此信息。
BLAS.dot(features, coefficients) + intercept