




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
主讲人:AiPPT时间:20XX.XXPOWERPOINTDESIGN202XPowerPointDesign------------------影评数据分析与电影推荐Catalogue目录工具选择2.1.明确目标与数据准备电影推荐初步分析3.4.总结与展望5.--------------PowerPointDesign明确目标与数据准备01PARTPOWERPOINTDESIGN目标明确性本案例目标明确,旨在根据用户对不同电影的评分情况实现新的电影推荐。阶段性目标包括“找出和某用户有类似观影爱好的用户”、“找出和某一个电影有相似的观众群的电影”等。数据准备是根据要实现的目标要求,收集、积累、清洗和整理所需要的数据。在实际操作时,有时候明确目标和数据准备并没有完全严格的时间界限。数据采集与处理在进行数据采集时,需要根据实际的业务环境来采用不同的方式,例如使用爬虫、对接数据库、使用接口等。本案例需要的是用户的对电影的评分数据,所以可以使用爬虫获取豆瓣电影影评数据。获取的数据有两个文件:包含加密的用户ID、电影ID、评分值的用户评分文件ratings.csv和包含电影ID和电影名称的电影信息文件movies.csv。本案例的数据较为简单,所以基本上可以省去特征方面的复杂处理过程。分析目标设定实际操作中,如果获取的数据质量无法保证,就需要对数据进行清洗,包括对数据格式的统一、缺失数据的补充等。在数据清洗完成后还需要对数据进行整理,例如根据业务逻辑进行分类、去除冗余数据等。而在数据整理完成之后需要选择合适的特征,而且特征的选择也会根据后续的分析进行变化。而关于特征的处理有一个专门的研究方向,就是特征工程,也是数据分析过程中很重要而且耗时的部分。数据清洗必要性本案例中,由于数据较为简单,主要集中在用户对电影的评分数据,因此在数据清洗和整理方面的工作相对较少。但仍然需要确保数据的准确性和完整性,以便为后续的分析和推荐提供可靠的基础。数据准备总结数据清洗与整理--------------PowerPointDesign工具选择02PARTPOWERPOINTDESIGN01Pandas(PythonDataAnalysisLibrary)是一个强大的分析结构化数据的工具集,它的使用基础是Numpy(提供高性能的矩阵运算),用于数据挖掘和数据分析,同时也提供数据清洗功能。Pandas的主要数据结构是Series(一维数据)与DataFrame(二维数据),这两种数据结构足以处理金融、统计、社会科学、工程等领域里的大多数数据。本案例中使用的是二维数据,所以更多操作是DataFrame相关的。DataFrame是Pandas中的一个表格型的数据结构,包含有一组有序的列,每列可以是不同的值类型(如数值、字符串、布尔型等),DataFrame既有行索引也有列索引,可以被看作是由Series组成的字典。Pandas工具介绍02开发工具选择比较适合尝试性开发的工具JupyterNotebook。JupyterNotebook是一个交互式笔记本,支持运行40多种编程语言。JupyterNotebook的本质是一个Web应用程序,便于创建和共享文学化程序文档,支持实时代码,数学方程,可视化和markdown。由于其灵活交互的优势,所以很适合探索性质的开发工作。其安装和使用比较简单,这里就不做详细介绍,而是推荐使用很方便的使用方式,就是使用VSCode开发工具,可以直接支持Jupyter,不需要手动启动服务。JupyterNotebook选择数据分析工具使用Pandas可以轻松地处理大规模的结构化数据,进行数据的筛选、排序、统计等操作,为数据分析提供了强大的支持。而JupyterNotebook则提供了便捷的代码编写和执行环境,支持实时的代码调试和结果展示,使得整个数据分析过程更加直观和高效。02工具使用优势选择Pandas作为数据分析工具是因为其强大的数据处理能力和对结构化数据的良好支持,能够高效地完成数据的清洗、整理和分析工作。而选择JupyterNotebook作为开发工具,则是因为其交互式的特点非常适合进行探索性的数据分析和模型构建,能够方便地展示分析过程和结果。01工具选择合理性工具选择总结--------------PowerPointDesign初步分析03PARTPOWERPOINTDESIGN用户评分数据结构首先可以先使用pandas的head()函数来看一下rating的结构。head是DataFrame的成员函数,用于返回前n行数据。其中n是参数,代表选择的行数,默认是5。可以看到,用户ID是经过长度一致的字符串(实际是经过MD5处理的字符串),影片ID是数字,所以在之后的分析过程中影片ID可能会被当作数字来进行运算。如果想看一下一共有多少条数据,可以查看rating.shape,输出的(1048575,3)代表一共有将近105万条数据,3则是对应的上面提到的3列。然后我们可以看一下用户的评论情况,例如数据中一共有多少人参与评论,每个人评论的次数。由于ratings数据中每个用户可以多部影片进行评分,所以可以按用户进行分组,然后使用count()来统计数量。而为了查看方便,可以对分组计数后的数据进行排序。再使用head()函数查看排序后的情况。可以看出评分最多的用户ID是535e6f7ef1626bedd166e4dfa49bc0b4,一共评论了1149次。这里movie_id和rating的数据是相同的,是由于其计数规则是一致的,所以属于冗余数据。但是head()函数能看到的数据太少,所以可以使用describe()函数来看统计信息。用户评论情况统计用户角度分析接下来,我们可以用相似的办法,从电影的角度来看数据的分布情况,例如每一部电影被评论的次数。要获取每一部电影的评分次数就需要通过对影片的ID进行分组和计数,但是为了提高数据的可观性,可以通过关联操作将影片的名称显示出来。通过pandas的merge函数,我们可以很容易做到数据的关联操作。可以看到,被评分次数最多的电影就是《寻龙诀》,一共被评分320次。同样,user和rating的数据是一致的,属于冗余数据。然后我们来看一下详细的统计数据和直方图。电影评分次数统计01接下来同样要对评分值进行观察。从统计数据中可以看出所有电影的平均分数和中位数很接近,大约是3.3左右,说明整体的分布比较均匀。然后我们可以将评分次数和评分值进行结合进行观察。从输出的数据可以看出,有些电影如《寻龙诀》本身被评分的次数很多,但是综合评分并不高,这也符合实际的情况。从plot()方法输出的散点图中可以看到,总体上数据还是呈现“>”分布,但是在评分次数在100和200左右出现了比较分散的情况,和之前的直方图是相对应的,这也许也是一种特殊现象,而是否是一种规律就需要更多的数据来分析和研究。电影评分值观察02电影角度分析--------------PowerPointDesign电影推荐04PARTPOWERPOINTDESIGN协同过滤推荐算法推荐算法大致可以分为三类:协同过滤推荐算法、基于内容的推荐算法和基于知识的推荐算法。其中协同过滤算法是诞生较早且较为著名的算法,其通过对用户历史行为数据的挖掘发现用户的偏好,基于不同的偏好对用户进行群组划分并推荐品味相似的商品。协同过滤推荐算法分为两类,分别是基于用户的协同过滤算法(user-basedcollaborativefiltering),和基于物品的协同过滤算法(item-basedcollaborativefiltering)。基于用户的协同过滤算法是通过用户的历史行为数据发现用户对商品或内容的喜欢(如商品购买,收藏,内容评论或分享),并对这些喜好进行度量和打分。根据不同用户对相同商品或内容的态度和偏好程度计算用户之间的关系,然后在有相同喜好的用户间进行商品推荐。其中比较重要的就是距离的计算,可以使用余弦相似性、Jaccard来实现。整体的实现思路就是:使用余弦相似性构建邻近性矩阵,然后使用KNN算法从邻近性矩阵中找到某用户临近的用户,并将这些临近用户点评过的影片作为备选,然后将邻近性的值作为权重作为推荐的得分,相同的分数可以累加,最后排除该用户已经评价后的影片。部分脚本如代码清单10-13所示。代码中给出的是基于用户的协同过滤算法,可以试着写出基于影片的协同过滤算法来试下电影推荐,然后对比算法的优良性。基于用户的协同过滤算法推荐算法介绍邻近性矩阵建立ratings_pivot=ratings.pivot('user','movie_id','rating')ratings_pivot.fillna(value=0)m,n=ratings_pivot.shapeuserdist=np.zeros([m,m])foriinrange(m):forjinrange(m):userdist[i,j]=np.dot(ratings_pivot.iloc[i,],ratings_pivot.iloc[j,])/np.sqrt(np.dot(ratings_pivot.iloc[i,],ratings_pivot.iloc[i,])*np.dot(ratings_pivot.iloc[j,],ratings_pivot.iloc[j,]))proximity_matrix=pd.DataFrame(userdist,index=list(ratings_pivot.index),columns=list(ratings_pivot.index))推荐电影列表获取deffind_user_knn(user,proximity_matrix=proximity_matrix,k=10):hbrs=userdistdf.sort(user,ascending=False)[user][1:k+1]returnnhbrsdefrecommend_movie(user,ratings_pivot=ratings_pivot,proximity_matrix=proximity_matrix):nhbrs=find_user_knn(user,proximity_matrix=proximity_matrix,k=10)recommendlist={}fornhbridinnhbrs.index:ratings_nhbr=ratings[ratings['user']==nhbrid]formovie_idinratings_nhbr['movie_id']:ifmovie_idnotinrecommendlist:recommendlist[movie_id]=nhbrs[nhbrid]else:recommendlist[movie_id]=recommendlist[movie_id]+nhbrs[nhbrid]ratings_user=ratings[ratings['user']==user]formovie_idinratings_user['movie_id']:ifmovie_idinrecommendlist:recommendlist.pop(movie_id)output=pd.Series(recommendlist)recommendlistdf=pd.DataFrame(output,columns=['score'])s=['movie_id']returnrecommendlistdf.sort('score',ascending=False)推荐算法实现--------------PowerPointDesign总结与展望05PARTPOWERPOINTDESIGN01本章通过一个利用机器学习进行的影评数据分析案例,展示了从数据准备、工具选择、初步分析到电影推荐的完整过程。数据分析是信息时代的一个基础而又重要的工作,面对飞速增长的数据,如何从这些数据中挖掘到更有价值的信息成为一个重要的研究方向。在明确分析目标后,我们进行了数据采集、清洗和整理,选择了合适的工具进行数据分析,并从用户和电影两个角度进行了初步分析。最后,我们实现了基于用户的协同过滤算法,为用户推荐了他们可能喜欢的电影。02分析过程回顾通过本项目的实施,我们成功地实现了一个电影推荐系统,能够根据用户的评分数据为用户推荐他们可能感兴趣的电影。这个系统不仅展示了数据分析的整个过程,还提供了一个实际的应用场景,展示了机器学习在推荐系统中的应用。项目成果项目总结算法优化与改进未来,我们可以进一步优化和改进推荐算法,例如尝试不同的相似性计算方法,或者结
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 踝泵运动护理宣教
- 中医儿童保健专科建设专家共识解读
- 广东省深圳市光明区2023~2024学年高三数学下学期5月模拟考试含答案
- 吉林省长春兴华高中2025届高三下学期第五次模拟考试数学试题含解析
- 四川大学锦江学院《教学剧目排演》2023-2024学年第一学期期末试卷
- 江苏省盐城市郭猛实验学校2025届初三下学期教学质量检测试题语文试题含解析
- 辽宁商贸职业学院《风景园林艺术原理》2023-2024学年第二学期期末试卷
- 漯河食品职业学院《游钓渔业学》2023-2024学年第一学期期末试卷
- 山东省滨州市沾化县2025届八校联考中考模拟数学试卷含解析
- 山东省郯城县美澳学校2024-2025学年(高三)物理试题5月月考试题含解析
- 八年级数学下册 第2章 单元综合测试卷(湘教版 2025年春)
- 2025年南阳农业职业学院高职单招职业适应性测试近5年常考版参考题库含答案解析
- 自动准同期装置技术规范书
- 井下电气设备防爆完好标准
- 《中医体重管理临床指南》
- 精油营销知识培训课件
- 医院培训课件:《医疗工作场所暴力预防与应对》
- (2025)入团考试题库及答案
- 医药代表大客户管理经验分享
- 扫描电子显微镜(SEM)-介绍-原理-结构-应用
- 《肝衰竭诊治指南(2024版)》解读
评论
0/150
提交评论