您好,欢迎来到纷纭教育。
搜索
您的当前位置:首页MongoDB,HDFS, Spark to 电影推荐

MongoDB,HDFS, Spark to 电影推荐

来源:纷纭教育

MovieWeb基于Python。在构建电影推荐系统时,使用flask和PyMongo读取数据,应用Python网页应用浏览电影和评分推荐;使用Spark应用来运算处理实际的推荐,并用MLLib实现协同过滤;然后搜集电影评分的数据,并创建和训练数据模型,而后处理用户和电影的数据集,再反向应用训练过的模型来尝试预测电影排名。以上完成后,将预测结果写入MongoDB,接下来那些网页应用就可以将预测的排名展示出来,再收取新一轮的预测。其中用到的工具有Apache Hadoop 2.3.0(HDFS和YARN),Spark1.0和用于管理数据的MongoDB。

MovieWeb的工作流程:

以BSON的格式快速建立数据库;在HDFS中储存该BSON;将BSON读取到Spark应用中;用已有的排名评分训练模型;建立“用户—影片”对;为所有“用户—影片”对预测排名;将预测结果写入MongoDB采集库;网页应用展示推荐;每周重复一次以上工作。这不是一项MapReduce的工作,其代码量很少,加上引入语法基本上也只需要150行左右的代码。

Spark的环境建立和架构建立的执行语句如下:

$ export SPARK_JAR=spark-assembly-1.0.0-hadoop2.3.0.jar
$ Export HADOOP_CONF_DIR=/usr/local/Hadoop/etc/Hadoop
$ bin/spark-submit
 --master yarn-cluster
 --class com.mongodb.hadoop.demo.Recommender demo-1.0.jar
 --jars mongo-java-2.12.2.jar,mongo-hadoop-1.2.1.jar
 --driver-memory 1G
 --executor-memory 2G
 --num-executors 4

功能实现之后的推荐系统中,“您可能喜欢的影片”一栏,那些根据预测推荐的影片是基于用户正在浏览的影片的第一个所属类别。例如影片《非常嫌疑犯》,第一类别为“犯罪”,则浏览该片时所推荐的电影也都属于这一类别。当用户表现出需求时,系统就会自动为用户过滤类别,再将筛选出来的结果进入给用户的推荐广播之中。

 


转载于:https://www.cnblogs.com/feika/p/4466802.html

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- fenyunshixun.cn 版权所有 湘ICP备2023022495号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务