Apache-flink-machine-learning
提供:Dev Guides
Apache Flink-機械学習
Apache Flinkの機械学習ライブラリはFlinkMLと呼ばれます。 機械学習の使用が過去5年間で指数関数的に増加しているため、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