ALS搭配RegressionMetrics計算RMSE
RegressionMetrics ->RDD[(Double,Double)]
from pyspark.mllib.evaluation import RegressionMetrics
model = ALS.train(ratings, ranksetparm, iterationsetparm, lambdasetparm)
usersProducts = ratings.map(lambda r:(float(r[0]), float(r[1])))
predictions = model.predictAll(usersProducts)
datardd = ratings.map(lambda x: ((float(x[0]), float(x[1])), float(x[2])))
ratingsAndPredictions = predictions.map(lambda r: ((r[0],r[1]), r[2])).join(datardd).values()
regressionMetrics = RegressionMetrics(ratingsAndPredictions)
rmse = regressionMetrics.rootMeanSquaredError