📅  最后修改于: 2020-10-30 10:10:28             🧑  作者: Mango
Apache Flink的机器学习库称为FlinkML。由于过去五年来机器学习的使用呈指数增长,因此Flink社区决定将这种机器学习APO也添加到其生态系统中。在FlinkML中,贡献者和算法的列表正在增加。此API尚未成为二进制分发的一部分。
这是使用FlinkML进行线性回归的示例-
// LabeledVector is a feature vector with a label (class or real value)
val trainingData: DataSet[LabeledVector] = ...
val testingData: DataSet[Vector] = ...
// Alternatively, a Splitter is used to break up a DataSet into training and testing data.
val dataSet: DataSet[LabeledVector] = ...
val trainTestData: DataSet[TrainTestDataSet] = Splitter.trainTestSplit(dataSet)
val trainingData: DataSet[LabeledVector] = trainTestData.training
val testingData: DataSet[Vector] = trainTestData.testing.map(lv => lv.vector)
val mlr = MultipleLinearRegression()
.setStepsize(1.0)
.setIterations(100)
.setConvergenceThreshold(0.001)
mlr.fit(trainingData)
// The fitted model can now be used to make predictions
val predictions: DataSet[LabeledVector] = mlr.predict(testingData)
在flink-1.7.1 / examples / batch /路径中,您会找到KMeans.jar文件。让我们运行此示例FlinkML示例。
该示例程序使用默认点和质心数据集运行。
./bin/flink run examples/batch/KMeans.jar --output Print