Repository: spark Updated Branches: refs/heads/branch-2.2 57c87cf2d -> b8d37ac37
[SPARK-20553][ML][PYSPARK] Update ALS examples with recommend-all methods Update ALS examples illustrating use of "recommendForAllX" methods. ## How was this patch tested? Built and ran examples locally Author: Nick Pentreath <ni...@za.ibm.com> Closes #17950 from MLnick/SPARK-20553-update-als-examples. (cherry picked from commit 6af7b43b34942c662122e3905b0724b2dd40a63f) Signed-off-by: Nick Pentreath <ni...@za.ibm.com> Project: http://git-wip-us.apache.org/repos/asf/spark/repo Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/b8d37ac3 Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/b8d37ac3 Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/b8d37ac3 Branch: refs/heads/branch-2.2 Commit: b8d37ac37bcd1ecf8b5f17233bce6b5b39ed2fd0 Parents: 57c87cf Author: Nick Pentreath <ni...@za.ibm.com> Authored: Tue May 16 10:54:42 2017 +0200 Committer: Nick Pentreath <ni...@za.ibm.com> Committed: Tue May 16 10:55:01 2017 +0200 ---------------------------------------------------------------------- .../java/org/apache/spark/examples/ml/JavaALSExample.java | 8 ++++++++ examples/src/main/python/ml/als_example.py | 8 ++++++++ .../main/scala/org/apache/spark/examples/ml/ALSExample.scala | 7 +++++++ 3 files changed, 23 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/spark/blob/b8d37ac3/examples/src/main/java/org/apache/spark/examples/ml/JavaALSExample.java ---------------------------------------------------------------------- diff --git a/examples/src/main/java/org/apache/spark/examples/ml/JavaALSExample.java b/examples/src/main/java/org/apache/spark/examples/ml/JavaALSExample.java index 81970b7..60ef03d 100644 --- a/examples/src/main/java/org/apache/spark/examples/ml/JavaALSExample.java +++ b/examples/src/main/java/org/apache/spark/examples/ml/JavaALSExample.java @@ -113,7 +113,15 @@ public class JavaALSExample { .setPredictionCol("prediction"); Double rmse = evaluator.evaluate(predictions); System.out.println("Root-mean-square error = " + rmse); + + // Generate top 10 movie recommendations for each user + Dataset<Row> userRecs = model.recommendForAllUsers(10); + // Generate top 10 user recommendations for each movie + Dataset<Row> movieRecs = model.recommendForAllItems(10); // $example off$ + userRecs.show(); + movieRecs.show(); + spark.stop(); } } http://git-wip-us.apache.org/repos/asf/spark/blob/b8d37ac3/examples/src/main/python/ml/als_example.py ---------------------------------------------------------------------- diff --git a/examples/src/main/python/ml/als_example.py b/examples/src/main/python/ml/als_example.py index 2e7214e..1672d55 100644 --- a/examples/src/main/python/ml/als_example.py +++ b/examples/src/main/python/ml/als_example.py @@ -55,5 +55,13 @@ if __name__ == "__main__": predictionCol="prediction") rmse = evaluator.evaluate(predictions) print("Root-mean-square error = " + str(rmse)) + + # Generate top 10 movie recommendations for each user + userRecs = model.recommendForAllUsers(10) + # Generate top 10 user recommendations for each movie + movieRecs = model.recommendForAllItems(10) # $example off$ + userRecs.show() + movieRecs.show() + spark.stop() http://git-wip-us.apache.org/repos/asf/spark/blob/b8d37ac3/examples/src/main/scala/org/apache/spark/examples/ml/ALSExample.scala ---------------------------------------------------------------------- diff --git a/examples/src/main/scala/org/apache/spark/examples/ml/ALSExample.scala b/examples/src/main/scala/org/apache/spark/examples/ml/ALSExample.scala index 868f49b..07b15df 100644 --- a/examples/src/main/scala/org/apache/spark/examples/ml/ALSExample.scala +++ b/examples/src/main/scala/org/apache/spark/examples/ml/ALSExample.scala @@ -75,7 +75,14 @@ object ALSExample { .setPredictionCol("prediction") val rmse = evaluator.evaluate(predictions) println(s"Root-mean-square error = $rmse") + + // Generate top 10 movie recommendations for each user + val userRecs = model.recommendForAllUsers(10) + // Generate top 10 user recommendations for each movie + val movieRecs = model.recommendForAllItems(10) // $example off$ + userRecs.show() + movieRecs.show() spark.stop() } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@spark.apache.org For additional commands, e-mail: commits-h...@spark.apache.org