4

Flink 文档给出了 SVM 算法的 scala 示例:

val trainingDS: DataSet[LabeledVector] = env.readLibSVM(pathToTrainingFile)
val svm = SVM()
.setBlocks(10)

// Learn the SVM model
svm.fit(trainingDS)

对“适合”的调用将如何转换为 java?

(java 表达式“svm.fit(trainingDS)”给出了 java 编译器错误:

“类型 SVM 中的方法 fit(DataSet, ParameterMap, FitOperation) 不适用于参数 (DataSet)”)

4

1 回答 1

4

目前,FlinkML 只能与 Scala 一起使用。原因是 FlinkML 自带了灵活的流水线机制,可以让你轻松构建数据分析流水线。这些管道可以由任意数量的Estimators单个尾随Predictor.

这种机制的实现依赖于封装程序逻辑的类型类。类型类通过将它们声明为隐式值来自动检索和链接。因此,Scala 编译器将确保执行正确的程序逻辑。

理论上,可以手动构建这些管道。但是,这是一个费力的过程,因此,如果您想与 FlinkML 交互,我建议您简单地使用 Flink 的 Scala API。

于 2015-09-15T14:11:33.323 回答