1. 模拟一个基于朋友圈的电影推荐系统。 设定目前微信总用户有1000人,每个人均有自己的朋友圈,每个人
你这种要花大劳动力的不是100财富值能解决的。还是去相关的雇佣网站上发布需求吧。价格估计不低。
2. 电影推荐系统是用java写还是paython写好一点
我觉得用java好一些。
java是一门面向对象的编程语言。java语言具有功能强大和简单易用两个特征,具有简单性、面向对象、分布式等特点,可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
Python目前的应用领域比较广泛,目前Python的主要方向分为后端开发、数据分析、网络爬虫、机器学习等。
3. 电影推荐系统没有管理员可以吗
不可以。管理者是管理行为过程的主体,在推荐系统中需要维持秩序,没有管理员是不可以的,因为管理员可以使系统正常运行,从而得到更多用户的喜爱。
4. Amazon推荐系统是如何做到的
亚马逊使用了哪些信息进行推荐:
1)当前浏览品类
2)与当前商品经常一同购买的商品
3)用户最近浏览记录
4)用户浏览历史(长期)中的商品
5)用户浏览历史(长期)相关的商品
6)购买相同商品的其它用户购买的物品
7)已购商品的新版本
8)用户购买历史(如近期购买商品的互补品)
9)畅销商品
2、推荐系统模型:U x S → R
1)U是用户矩阵
2)S是物品矩阵
3)R是用户对物品的喜爱程度,推荐系统就是基于现有的信息填补R矩阵
3、常用推荐算法
1)基于内容:易实现,效果好,但是如何获得一个物品的内容、相似度如何定义等有些情况下会较难把握
2)协同过滤:基于物的协同过滤与基于人的协同过滤
3)矩阵分解(SVD):用户-物品评分矩阵A很大且稀疏,将A分解为用户矩阵(用户潜在因子)和物品矩阵(物品潜在因子),目标是这两个矩阵的乘积尽可能接近R。缺点是只利用了评分信息,忽略了用户属性和物品属性
4)因子分解机(FM):将SVD推广到多类潜因子的情况,如分解为 用户、物品、用户性别、用户年龄、物品价格 等多个因子,允许因子之间有相关关系(如下图,方程前半部分是线性回归,后半部分加入了两两因子间关系)
5)深度学习:训练深度神经网络,输入用户id,输出层做softmax,得到对每个物品id的权重
6)机器学习排序
7)探索与利用:先对用户聚类(如分为abcde五类),随机对a中的用户1和b中的用户2推荐电影,如果用户1没点击,2点击了,说明b类用户可能对该电影更感兴趣。
8)集成:对上述多种方法的ensemble
5. 电影推荐系统包括什么功能
电影推荐系统功能包括票房统计,评分推荐,电影类型推荐。
项目流程:首先获取用户id,删除用户之前存在的推荐结果,装载样本评分数据(不同用户对不同电影的评分数据:userid、 movieid、rating、timestamp )。然后装载电影信息数据(从movieinfo表中取出movieid、moviename、typelist)。
注:样本评分数据和电影信息数据以.dat文件的形式被传入HDFS中。
将样本评分数据切分成3部分,60%用于训练(训练集)、20%用于校验(校验集)、20%用于测试(测试集)
训练不同参数下的模型,并在校验集中校验,找出最佳模型。
设置参数(隐语义因子的个数、ALS的正则化参数、迭代次数),将设置的参数和训练集作为参数传入到spark MLlib库的ALS()函数中,得到推荐模型,调整参数会得到多个不同的模型。
校验方法:
将校验集装入模型中,得到用户对电影的预测评分,计算预测评分和实际评分的均方根误差,找出多个模型中均方根误差最小的模型作为最佳模型。
用最佳模型预测测试集的评分,并计算预测评分和实际评分的均方根误差,改进最佳模型。
用最佳模型预测某用户对电影信息数据集中的所有电影的评分,选出评分最高的前十部电影。将推荐结果存入数据库recommendresult表中
————————————————
版权声明:本文为CSDN博主「塞奈」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_44459219/article/details/118416465
6. 电影推荐系统中电影类型怎么弄
建军大业
9.4分加入收藏
主演:刘烨朱亚文黄志忠王景春
导演:刘伟强
类型:动作战争其它
时长:127分钟
年代:2017
地区:内地
语言:汉语普通话
简介
7. 学IT的,写了一个电影推荐系统,但是为什么评分预测值大于五
全文以“预测电影评分”例子展开
r(i,j)=0则表明user_j没有对movie_i 没有评分,
推荐系统要做的就是通过预测user_j对这些movie {i|r(i,j)=0}的评分来给user_j 推荐其可能会喜欢的电影<预测评分较高的movie>
=======================================二、基于内容的推荐=======================================
对每个movie_i引入特征x(i)=(x1, x2),这种特征可能表明user对movie类型的偏好:浪漫or动作等
对于每个user引入一个参数theta,然后对评分矩阵的每列(对应一个user)做线性回归,数据是{ (x(i), y(i,j)) |r(i,j)=1,for some j all i}
像机器学习一样,x(i)添加个1变量x(i)=(1, x1, x2)
那么对于未评分的movie_t,我们可以使用线性回归训练的参数theta与对应特征x(t)做内积来得到其预测评分
对每个用户都训练一个参数theta_j,优化模型如下:
优化算法:注意正则项是不约束x(i)=(1, x1, x2)中1对应的参数theta的第一项theta0,所以k=0与k=1,2分别对待
=======================================三、协同过滤=======================================
现在换个角度:如果知道theta for all user j,如何来预测x(i) = (x1, x2) all i
仍然可以使用线性回归,为训练每个x(i),需要评分矩阵的第i行数据{ (x(i), y(i,j)) |r(i,j)=1,for some i all j}
theta_j = (0, theta1, theta2) ;theta1=5说明user_j喜欢romance类movie, theta2=5说明user_j喜欢action类movie,只能有一个等于5哦,
我觉得也可以是:theta_j = (0, 4, 1) ;喜欢romance 4 action 1.
对应的优化:
协同过滤:交替优化theta与x
=========================================四、协同过滤算法=======================================
优化:
优化:注意去掉了theta和x的添加项
=========================================五、实现细节补充=======================================
实现细节:
如果有user没有对任何电影评分或者所有评分的电影都是0分,那么所学习到的参数是零向量,
则预测都是0值,这是不合理的。通过 将评分矩阵减去其行均值再进行线性回归来“避免”这种情况
=========================================六、一点思考==========================================
协同过滤那块,同时优化theta、x,这样得到的theta、x还有特定的意义<比如:x是否还表征对影视类型的喜爱与否>没有?
回归中,在x数据上不添加1-feature是不是因为后来引入的平均值化;如果不是,那会对结果有什么影响?
用x-feature来表征一个movie,x-feature的各分量的可解释性;应该会有一部分user应为演员的缘故有一些"偏爱"。
这里,讲的"基于内容的推荐"与"协同过滤"跟以前对这两个词的认识/所指内容不同,查清楚、搞明白。
这周还会再更一篇关于此节课的算法实现,会对上述部分问题做出回答。
8. 如何将基于hadoop的电影推荐系统的推荐结果用网页面显示出来
一般主要为: 算法思想 基本构架 运行流程 任务力度
9. 算法的健壮性是其主要评价之一对吗
算法的健壮性是其主要评价之一。
健壮性是指标之一。评价一个算法好坏的基本原则之一是算法的健壮性,所谓的健壮性指的是算法能对意外情况做出适当反映或进行相应处理,所以根据这个定义,健壮性越好的算法,其运行效果就越好。
算法的由来:
算法最先被知道的就是推荐算法。研究起源于20世纪90年代,由美国明尼苏达大学GroupLens研究小组最先开始研究,他们想要制作一个名为Movielens的电影推荐系统,从而实现对用户进行电影的个性化推荐。
首先研究小组让用户对自己看过的电影进行评分,然后小组对用户评价的结果进行分析,并预测出用户对并未看过的电影的兴趣度,从而向他们推荐从未看过并可能感兴趣的电影。
此后,Amazon开始在网站上使用推荐系统,在实际中对用户的浏览购买行为进行分析,尝试对曾经浏览或购买商品的用户进行个性化推荐。根据 enture Beat的统计,这一举措将该网站的销售额提高了35%自此之后,个性化推荐的应用越来越广泛。
10. 推荐系统的主要推荐方法
基于内容的推荐(Content-based Recommendation)是信息过滤技术的延续与发展,它是建立在项目的内容信息上作出推荐的,而不需要依据用户对项目的评价意见,更多地需要用机 器学习的方法从关于内容的特征描述的事例中得到用户的兴趣资料。在基于内容的推荐系统中,项目或对象是通过相关的特征的属性来定义,系统基于用户评价对象 的特征,学习用户的兴趣,考察用户资料与待预测项目的相匹配程度。用户的资料模型取决于所用学习方法,常用的有决策树、神经网络和基于向量的表示方法等。 基于内容的用户资料是需要有用户的历史数据,用户资料模型可能随着用户的偏好改变而发生变化。
基于内容推荐方法的优点是:1)不需要其它用户的数据,没有冷开始问题和稀疏问题。2)能为具有特殊兴趣爱好的用户进行推荐。3)能推荐新的或不是很流行的项目,没有新项目问题。4)通过列出推荐项目的内容特征,可以解释为什么推荐那些项目。5)已有比较好的技术,如关于分类学习方面的技术已相当成熟。
缺点是要求内容能容易抽取成有意义的特征,要求特征内容有良好的结构性,并且用户的口味必须能够用内容特征形式来表达,不能显式地得到其它用户的判断情况。 协同过滤推荐 (Collaborative Filtering Recommendation)技术是推荐系统中应用最早和最为成功的技术之一。它一般采用最近邻技术,利用用户的历史喜好信息计算用户之间的距离,然后 利用目标用户的最近邻居用户对商品评价的加权评价值来预测目标用户对特定商品的喜好程度,系统从而根据这一喜好程度来对目标用户进行推荐。协同过滤最大优 点是对推荐对象没有特殊的要求,能处理非结构化的复杂对象,如音乐、电影。
协同过滤是基于这样的假设:为一用户找到他真正感兴趣的内容的好方法是首先找到与此用户有相似兴趣的其他用户,然后将他们感兴趣的内容推荐给此用 户。其基本思想非常易于理解,在日常生活中,我们往往会利用好朋友的推荐来进行一些选择。协同过滤正是把这一思想运用到电子商务推荐系统中来,基于其他用 户对某一内容的评价来向目标用户进行推荐。
基于协同过滤的推荐系统可以说是从用户的角度来进行相应推荐的,而且是自动的即用户获得的推荐是系统从购买模式或浏览行为等隐式获得的,不需要用户努力地找到适合自己兴趣的推荐信息,如填写一些调查表格等。
和基于内容的过滤方法相比,协同过滤具有如下的优点:1) 能够过滤难以进行机器自动内容分析的信息,如艺术品,音乐等。2) 共享其他人的经验,避免了内容分析的不完全和不精确,并且能够基于一些复杂的,难以表述的概念(如信息质量、个人品味)进行过滤。3) 有推荐新信息的能力。可以发现内容上完全不相似的信息,用户对推荐信息的内容事先是预料不到的。这也是协同过滤和基于内容的过滤一个较大的差别,基于内容的过滤推荐很多都是用户本来就熟悉的内容,而协同过滤可以发现用户潜在的但自己尚未发现的兴趣偏好。4) 能够有效的使用其他相似用户的反馈信息,较少用户的反馈量,加快个性化学习的速度。
虽然协同过滤作为一种典型的推荐技术有其相当的应用,但协同过滤仍有许多的问题需要解决。最典型的问题有稀疏问题(Sparsity)和可扩展问题(Scalability)。 基于关联规则的推荐 (Association Rule-based Recommendation)是以关联规则为基础,把已购商品作为规则头,规则体为推荐对象。关联规则挖掘可以发现不同商品在销售过程中的相关性,在零 售业中已经得到了成功的应用。管理规则就是在一个交易数据库中统计购买了商品集X的交易中有多大比例的交易同时购买了商品集Y,其直观的意义就是用户在购 买某些商品的时候有多大倾向去购买另外一些商品。比如购买牛奶的同时很多人会同时购买面包。
算法的第一步关联规则的发现最为关键且最耗时,是算法的瓶颈,但可以离线进行。其次,商品名称的同义性问题也是关联规则的一个难点。 由于各种推荐方法都有优缺点,所以在实际中,组合推荐(Hybrid Recommendation)经常被采用。研究和应用最多的是内容推荐和协同过滤推荐的组合。最简单的做法就是分别用基于内容的方法和协同过滤推荐方法 去产生一个推荐预测结果,然后用某方法组合其结果。尽管从理论上有很多种推荐组合方法,但在某一具体问题中并不见得都有效,组合推荐一个最重要原则就是通 过组合后要能避免或弥补各自推荐技术的弱点。
在组合方式上,有研究人员提出了七种组合思路:1)加权(Weight):加权多种推荐技术结果。2)变换(Switch):根据问题背景和实际情况或要求决定变换采用不同的推荐技术。3)混合(Mixed):同时采用多种推荐技术给出多种推荐结果为用户提供参考。4)特征组合(Feature combination):组合来自不同推荐数据源的特征被另一种推荐算法所采用。5)层叠(Cascade):先用一种推荐技术产生一种粗糙的推荐结果,第二种推荐技术在此推荐结果的基础上进一步作出更精确的推荐。6)特征扩充(Feature augmentation):一种技术产生附加的特征信息嵌入到另一种推荐技术的特征输入中。7)元级别(Meta-level):用一种推荐方法产生的模型作为另一种推荐方法的输入。