是否可以使用已经批量训练的模型在Apache Flink中对数据流进行预测?
svm的预测函数需要一个数据集作为输入,而不需要数据流。
不幸的是,我无法弄清楚如何使用flatpMap/map函数。
我这样训练我的SVM模型:
val svm2=SVM((
svm2.setSeed(1(
svm2.fit(trainLV(
1val testVD=testLV.map(lv=>(lv.vector,lv.label((
2val evalSet=svm2.eevaluate(testVD(
并保存模型:val modelSvm=svm2.weightsOption.get
然后我在流媒体环境中有一个传入的数据流:
datastream[(Int,Int,Int(]
应该使用svm模型对其进行二元分类。
谢谢!
Flink的ML库目前只支持批处理。如果要使用DataStream
API进行预测,则需要实现自己的flatMap
/map
函数,该函数将模型应用于传入事件。