写一段基于Spark SQL的推荐算法
时间: 2024-03-27 20:35:55 浏览: 73
一些学习时学到spark的推荐算法
下面是一段基于Spark SQL的推荐算法示例代码:
```scala
import org.apache.spark.sql.SparkSession
import org.apache.spark.ml.recommendation.ALS
// 创建SparkSession
val spark = SparkSession.builder()
.appName("RecommendationSystem")
.master("local[*]")
.getOrCreate()
// 读取数据集
val data = spark.read.format("csv")
.option("header", "true")
.option("inferSchema", "true")
.load("ratings.csv")
// 数据集预处理
val ratings = data.select("userId", "movieId", "rating")
// 训练推荐模型
val als = new ALS()
.setMaxIter(10)
.setRegParam(0.01)
.setUserCol("userId")
.setItemCol("movieId")
.setRatingCol("rating")
val model = als.fit(ratings)
// 为用户推荐电影
val userRecs = model.recommendForAllUsers(10)
// 显示推荐结果
userRecs.show()
```
以上代码读取了一个名为“ratings.csv”的数据集,其中包含用户对电影的评分。然后,使用ALS算法训练推荐模型,并使用该模型为所有用户推荐10部电影。最后,将推荐结果显示出来。
请注意,以上代码仅供参考,实际开发中需要根据具体情况进行修改和调整。
阅读全文