2017-06-02 76 views
0

我有一個多元迴歸模型的訓練,現在我想用它來預測。Flink多元線性迴歸:它有預測嗎?

documents據我所知,輸入是標記的矢量和輸出是與元組數據集[inputValue的,PredictValue],是嗎?

創建我的標記矢量:

val mapped = data.map {x => new org.apache.flink.ml.common.LabeledVector (x._4, org.apache.flink.ml.math.DenseVector(x._1,x._2,x._3)) } 

//Print 
mapped: org.apache.flink.api.scala.DataSet[org.apache.flink.ml.common.LabeledVector] = [email protected] 
LabeledVector(6.7, DenseVector(33.0, -52.26, 28.3)) 
LabeledVector(5.8, DenseVector(36.0, 45.53, 150.93)) 
..... 

而且隨着我的模型創建和訓練有素我預測:

// Calculate the predictions for the test data 
val predictions = mlr.predict(mapped) 

我得到這個錯誤

java.lang.RuntimeException: There is no PredictOperation defined for org.apache.flink.ml.regression.MultipleLinearRegression which takes a DataSet[org.apache.flink.ml.common.LabeledVector] as input. 

但你可以看到here即官方文件說它退出。

感謝您的幫助! :)

回答

2

LabeledVectors的預測已被刪除此commit。不幸的是,Flink文檔尚未更新。我創建了一個issue來更新文檔。

如果你想預測LabeledVectors,那麼你必須編寫自己的支持各自類型的PredictOperation

+0

**感謝您的幫助**只是爲了知道..你爲什麼決定刪除它?順便說一下,我認爲我發現了更多的錯誤......多麼可惜,如此強大的工具與文檔...如果你需要一些年輕的天才來解決它,我可以幫助! ;) – Borja

+0

我如何知道算法預測的結果?殘差,均方誤差,r²等 – Borja

+0

Flink社區一直歡迎新的貢獻者。所以,如果你想幫忙,那麼創建一些JIRA問題並開始破解:-)我們之所以刪除它,是因爲它是評估時添加的一個角落案例。相反,我們希望開發一個適當的評估框架,使您能夠爲您的預測計算度量。正是你要求的:均方誤差,殘差等。由於評估框架還沒有完成,你必須自己實施。 –