我发现了许多关于Mleap的很好的回答--一个库,允许快速得分。它在一个模型的基础上工作,转换成MLeap包。
但是,在得分之前,数据准备阶段是什么呢?
是否有有效的方法将“spark数据准备管道”(它在培训期间工作,但在spark框架中)转换为健壮的、性能有效的、优化的字节码?
发布于 2019-08-06 15:43:23
您可以使用PipelineModel轻松地序列化整个MLeap (包括特性工程和模型培训)。
注意:下面的代码有点老了,您现在可能可以访问更干净的API了。
// Mleap PipelineModel Serialization into a single .zip file
val sparkBundleContext = SparkBundleContext().withDataset(pipelineModel.transform(trainData))
for(bundleFile <- managed(BundleFile(s"jar:file:${mleapSerializedPipelineModel}"))) {
pipelineModel.writeBundle.save(bundleFile)(sparkBundleContext).get
}
// Mleap code: Deserialize model from local filesystem (without any Spark dependency)
val mleapPipeline = (for(bf <- managed(BundleFile(s"jar:file:${modelPath}"))) yield {
bf.loadMleapBundle().get.root
}).tried.get请注意,需要注意的是,如果您在星火中定义了自己的估计器/变形金刚,因为它们也需要相应的MLeap版本。
https://stackoverflow.com/questions/56872086
复制相似问题