版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要伴随大数据的普及,热衷于看电影的个体难以高效定位其感兴趣的电影,由此引发资源的无效消耗与信息泛滥的问题。为解决这一问题,各种技术方法争相竞逐,其中推荐系统表现优异。本文采用离线统计推荐算法、基于物品的协同过滤推荐算法、基于ALS的协同过滤推荐、实时推荐、基于用户生成内容推荐和离线统计类推荐等方法,设计并实现了基于个人喜好的电影智能推荐系统,并对系统进行了测试,以确保系统功能和性能达到预期设计。本系统使用IDEA开发工具,采用web框架,并用MongoDB、Redis实现了数据的存储。通过该系统,前台游客可以进行登录,执行管理账号、搜索电影、为电影打分、打标签、查看推荐列表等操作;后台管理员能执行数据管理模块的搭建和实现,对电影和用户进行可视化管理操作,使用管理员的身份对电影和用户进行审核、增删等操作。关键词:Spark;电影推荐系统;混合推荐AbstractWiththepopularizationofbigdata,individualswhoarepassionateaboutwatchingmoviesfinditdifficulttoefficientlylocatethefilmstheyareinterestedin,leadingtotheproblemofineffectiveresourceconsumptionandinformationoverload.Toaddressthisissue,varioustechnicalmethodshavebeencompeting,amongwhichrecommendationsystemshaveperformedexceptionallywell.Thispaperadoptsofflinestatisticalrecommendationalgorithms,item-basedcollaborativefilteringrecommendationalgorithms,ALS-basedcollaborativefilteringrecommendation,real-timerecommendation,user-generatedcontent-basedrecommendation,andofflinestatisticalclassrecommendationanalysismethodstodesignandimplementanintelligentmovierecommendationsystembasedonpersonalpreferences.Thesystemwastestedtoensurethatitsfunctionsandperformancemeettheexpecteddesign.ThissystemwasdevelopedusingtheIDEAdevelopmenttoolandawebframework,andMongoDBandRediswereusedfordatastorage.Throughthissystem,front-endvisitorscanlogin,manageaccounts,searchformovies,ratemovies,tagmovies,andviewrecommendationlists;back-endadministratorscanbuildandimplementdatamanagementmodules,visuallymanagemoviesandusers,andperformoperationssuchasreview,addition,anddeletionofmoviesandusersasadministrators.Theintelligentmovierecommendationsysteminthisarticlenotonlyenablesviewerstoquicklyfindthemoviestheyareinterestedinfromthevastanddiversemovieresources,therebyshorteningthetimespentonmovieselection,butalsohelpsthemdiscovermorehigh-qualitymovieworks.This,inturn,playsapositiveroleinpromotingthesemoviesandultimatelycontributestothedevelopmentofthefilmindustry.Keywords:Spark;Movierecommendationsystem;Hybridrecommendation目录TOC\o"1-3"\h\u摘要 IAbstract II目录 Ⅲ第一章绪论 11.1研究背景及意义 11.2国内外研究现状 21.2.1推荐算法发展现状 21.2.2电影推荐系统发展现状 31.2.3大数据处理引擎发展现状 41.3论文的主要工作 4第二章相关技术与理论基础 62.1推荐系统相关技术概览 62.1.1Spark技术解析 62.1.2ZooKeeper 72.1.3Kafka 72.1.4MongoDB 82.1.5Redis 82.1.6Elasticsearch 82.1.7Flume 82.2推荐系统相关理论 92.2.1推荐系统定义 92.2.2推荐系统的推荐机制 10第三章本文使用的推荐算法的概述 123.1基于近邻协同过滤推荐算法 123.2基于物品协同过滤推荐算法 133.3基于修正余弦相似度的ItemCF算法优化 143.4基于电影内容的推荐算法优化 163.4.1基于内容推荐算法 163.4.2基于用户生成内容推荐算法 173.4.3通过TF-IDF对UGC算法处理 183.5实时推荐算法研究与优化 183.5.1常规的实时推荐算法 183.5.2基于电影相似度的用户兴趣度模型 19第四章基于个人喜好的电影智能推荐系统的设计 214.1可行性分析 214.1.1技术可行性 214.1.2经济可行性 214.2需求分析 214.2.1功能需求 214.2.2非功能需求 224.3系统架构设计 234.3.1功能模块图设计 254.3.2系统流程设计 254.3.3系统数据库设计 31第五章基于个人喜好的电影智能推荐系统的实现 345.1环境部署 345.1.1开发环境 345.1.2环境启动 345.2系统前端实现 365.2.1用户注册 365.2.2系统登录 375.2.3首页界面 385.2.4查看用户评分电影列表 385.3电影混合推荐模块的实现 395.3.1基于离线统计推荐 395.3.2基于新用户推荐的实现 405.3.3基于ElasticSearch电影检索 405.3.4基于隐语义模型的离线协同推荐 415.3.5基于用户标签内容的实时推荐 415.3.6基于实时推荐算法的实现 435.4系统后端 435.4.1管理员登录 435.4.2最热电影管理 445.4.3电影信息管理 455.4.4用户信息管理 455.5.5电影类型管理 465.5.6电影评分管理 46第六章系统测试 47结论 50致谢 51参考文献 52第一章绪论1.1研究背景及意义中国互联网发展迅速,网民数量逐年增多。其中短视频应用新用户的快速增长,进一步推动了网络视频用户规模和视频内容的高质量建设,新业务和视频技术的创新实践和市场应用也进一步加快,互联网生态环境进一步重塑和净化。当前网络视频的庞大体量亦引发了过剩与无用信息的泛滥,导致用户感到困惑。随着数据量的持续膨胀,用户需求变得模糊不清,信息的有效利用度随之降低,从而导致用户时间的无效消耗和信息过载问题的凸显。为了避免信息泛滥,目前常用的技术是搜索引擎技术、信息分类技术和推荐技术。索引擎通过要求用户手动输入关键词来进行查询,例如谷歌、百度等平台,用户能够依据检索反馈来修订关键词以精炼信息筛选。然而,该方法的成效在很大程度上取决于用户对其需求的明确程度,并不是所有用户都能精确阐述其查找目标。信息分类无需用户主动提交关键词,而是通过将信息库细分为各类别,使得用户仅需定位至相应类别便能检索到所需信息,使得用户在寻找具体信息时感到困难。推荐系统在一定程度上解决了搜索引擎、信息分类的局限性,在后台中通过大数据挖掘出用户的潜在偏好,为不同的用户提供各自偏好的产品。个性化音乐广播电台、Twitter与Facebook等社交媒介以及Netflix、YouTube、优酷、爱奇艺等影视作品的在线播放应用都提供了推荐功能,推荐系统的演进从侧重单一因素转向综合考量多维度因素,以此为用户提供更加优质且即时的个性化推荐。然而,在其快速发展的同时,推荐系统在取得巨大发展的同时也面临着不可避免的问题:(1)数据存储与计算难题:伴随数据规模的急剧膨胀,电影推荐系统的存储开支及计算资源需求持续攀升,进而制约了用户体验。(2)冷启动挑战:针对新注册用户或低活跃度用户,以及鲜有播放记录的新电影或低曝光电影,由于信息不足,推荐算法难以实现精确的预测与推荐。(3)数据稀疏性挑战:在推荐系统领域,特定用户或用户群体的互动数据在整体数据集中所占比例极低,由此产生现象是,即便某些电影收获了高评价,仍难以有效推荐给具有相似兴趣的用户群体。(4)用户偏好的演变:随着时间的流逝,用户的兴趣可能出现转变,这可能导致先前的推荐结果与当前的实际需求不再匹配。推荐系统中存在冷启动问题、数据稀疏问题和用户兴趣偏差问题,因此采用Spark分布式框架对离线/在线推荐数据进行处理,以虚拟推荐辅助完成推荐任务,使得推荐系统可以高效地为用户提供高质量的电影推荐服务,满足不同用户需求。1.2国内外研究现状1.2.1推荐算法发展现状研究进展表明,推荐算法正通过深度学习、注意力机制和跨域迁移等技术不断创新,提升个性化推荐精度与用户体验。推荐系统最重要的部分即为推荐算法,算法不仅能够为用户预测出感兴趣的项目,而且能为用户推荐感兴趣的项目,来最大化的用户体验,发挥推荐系统的最大效用,主要包含:协同过滤、高精度推荐计算、混合推荐REF_Ref19745\r\h[1]等方向的研究内容。以下是几个重要的推荐算法示例:基于内容的推荐算法:某些研究者REF_Ref19892\r\h[2]量化电影间的相似性,融合影评内容的相似度与长期短期偏好模型,以提升推荐系统的精确度。将优化后的K均值聚类协同过滤技术与基于内容的推荐机制整合应用,有效提升了推荐的准确性。此外,有研究深入剖析了基于内容特征抽取的用户模型构建技术,以及新闻推荐机制的改良,旨在减轻传统推荐算法对目标检索的依附和解决新用户上线初期的推荐难题。也有研究探索了将基于内容的推荐与余弦相似度推荐算法相融合,旨在为党政机关的决策辅助信息检索提供创新解决方案。基于协同过滤的推荐算法中,用户兴趣模型的构建既依赖于长期兴趣又受到短期兴趣的影响,因此,时间维度的作用不可或缺。一些研究者REF_Ref20010\r\h[3]整合时间序列分析与知识图谱推理,创新开发了一种混合协同过滤推荐算法,将其应用于电子商务领域的推荐系统中,展现出显著的稳健性和高精度。在探讨用户兴趣随时间动态变化的挑战方面,研究者REF_Ref20180\r\h[4]对基于邻域的方法进行了拓展,设计了一种增量式算法以追踪用户兴趣的演变。此外,YinREF_Ref20281\r\h[5]引入了时间欧氏距离嵌入模型,并提出了适用于个性化排名的普遍优化准则,将其应用于矩阵分解与自适应K临近算法,从而实现个性化的推荐服务。ThomasGeorgeREF_Ref20372\r\h[6]另一项研究开发了一种协同聚类推荐系统,旨在识别用户与商品之间潜在的隐含联系。其他推荐算法:LiuREF_Ref20418\r\h[7]研究团队进一步引入了一种时空循环神经网络模型,该模型利用循环神经网络的特性捕捉时间序列与空间格局的信息,以此来剖析用户行为模式,进而优化位置推荐服务的效能。此外,研究深入探讨了深度神经网络模型与用户特定情境信息相结合,以优化图像标签推荐机制的问题。王家华REF_Ref20497\r\h[8]有研究将优化后的加权SlopeOne算法与自编码器相结合,有效应对了数据稀疏性挑战,深入挖掘数据集的潜在特征,从而显著提升了推荐系统的性能。混合推荐算法:冷启动、数据稀疏、用户兴趣发生偏移等问题引起的推荐精度不高等问题得到解决,融合推荐策略将不同的推荐算法融合在一起,按照一定的规则进行组合,有效地解决了上述问题,提高了推荐精度。1.2.2电影推荐系统发展现状电影推荐系统当前发展迅速,融合大数据、人工智能等技术,提供个性化观影建议,提升用户体验,成为内容分发的重要手段。全球范围内,电影推荐系统的领域呈现迅猛增长态势,由此催生了大量广为人知的系统。Netflix的推荐系统根据用户对电影的评分,依据用户的爱好类型来进行推荐。MovieLens通过评分机制将用户与特定电影相连结,实现对电影标题及类型的模糊检索,并基于用户的兴趣倾向推荐相应的影视作品。此系统还通过协同过滤矩阵,识别具有高度相似评分模式的用户群体。基于MovieLens数据集,PolyLens通过用户评级来预测其对电影的偏好程度REF_Ref20670\r\h[9]。Jinni通过构建、查询和建议模型,对电影的叙事线、主题、片长、发生场景以及关键词等属性进行了分析。Criticker具备识别拥有相似电影喜好的能力,并据此整合这些用户的青睐电影清单,以提供个性化的推荐。RottenTomatoes提供客观公允的电影评价。TheMorse推荐系统依托社会性筛选机制为个别用户生成推荐,而VideoRecommender则是一款专为用户定制电影推荐列表的协同过滤推荐系统。目前,国内市场已经快速普及和投入使用视频推荐技术,包括爱奇艺、哔哩哔哩、腾讯视频、优酷等,且分别采用了基于内容推荐、创新协同过滤推荐、多相似度中心概率推荐、多权重综合推荐等多种算法,使得各类电影推荐系统应用更为频繁。其中,爱奇艺作为国内最大的视频网站,其推荐系统可以根据不同的应用场景和用户个体的不同喜好,来匹配和提供视频内容,并满足用户的需求。此外,中国学者借鉴国外电影推荐系统架构,对其算法进行设计和改进,提高其效能。1.2.3大数据处理引擎发展现状Google的MapReduce分布式计算架构与Apache的Hadoop大数据处理平台,显著降低了存储开支,并提升了数据处理效能。Hadoop展现出卓越的可靠性能、强大的容错能力、高度可扩展性和高效运行效率,能够便捷地开发分布式应用,实现电影数据的大规模并行存储与处理。然而,Hadoop在数据处理过程中面临磁盘读写频率高及执行效率低下的挑战。U.C.Berkeley实验室研发的Spark大数据处理架构在降低系统硬件需求的同时提高了大数据处理的效率和能力。在推荐系统技术迭代加速的行业背景下,头部互联网企业纷纷推进架构升级。以百度为例,其构建的Spark分布式计算平台深度赋能智能推荐场景,通过商业智能推送体系实现了新闻流与广告位的跨场景智能分发。而腾讯则完成了TDW分布式数据仓库从Hive到Spark-SQL的架构迁移,为大规模用户行为分析提供了高效计算底座。此举显著提升了运行效率并有效降低了资源使用量。京东云海借助SparkStreaming技术实现实时计算以生成推荐内容,并利用RabbitMQ与Kafka系统高效管理并发消息队列。1.3论文的主要工作本文将从冷启动、数据稀疏和动态变化三个方面介绍推荐系统冷启动问题:冷启动问题:新用户、新产品的引入造成的冷启动问题;数据稀疏问题:由于用户数据量不足造成的;动态变化问题:用户的兴趣会随着时间发生变化。面对这些难题,本文构思并实现了若干改良后的混合推荐算法,并通过对照实验来评估其效能。最后,将这些推荐功能成功的部署到了Spark平台中,实现了基于个人喜好的电影智能推荐系统的开发,具体内容概述如下:(1)为克服冷启动挑战,本文在离线推荐环节,借助离线统计数据为新颖用户生成初始建议。引入修正余弦相似度计算技术,并与交替最小二乘法算法协同作用,通过训练构建出最优的潜在语义模型,有效应对数据稀疏性。针对实时推荐场景,采用基于用户生成内容的标签推荐算法,旨在为新用户量身定制个性化建议,有效缓解冷启动阶段的挑战。鉴于用户兴趣的动态演变,本文对实时推荐算法进行了修订,并优化了其优先级机制。为了证实这些优化措施的效力,本文构建了实验,并借助均方根误差和平均绝对误差等评价标准进行了性能评估。(2)在系统规划阶段,本文深入探讨了系统的功能与需求,并规划了系统的全面结构与运作流程。离线统计模块、离线推荐模块、实时推荐模块多个模块作为一个混合推荐系统,包括离线统计推荐、离线协同过滤推荐、模型推荐模块、实时推荐模块、内容推荐模块。(3)在项目实现阶段,本文选用开发语言Scala并结合Web框架。于Spark平台上引入Zookeeper、Kafka、MongoDB、Redis、Flume等组件,完成了基于个人喜好的电影智能推荐系统的开发。(4)为保障系统的可靠性和效能,本文深入展开了功能验证与性能评估。第二章相关技术与理论基础2.1推荐系统相关技术概览2.1.1Spark技术解析一个能快速处理大规模数据的分布式计算框架Spark,是用scala语言开发的,也可支持不同数据类型和结构,比如:文本数据、图表数据等,尤其对大规模数据集和实时数据流有较好的处理能力,比MapReduce广泛运用。Spark生态系统其核心组件SparkCore负责定义RDD(弹性分布式数据集)API、数据转换和动作等基本功能。SparkCORE可以从HDFS(Hadoop分布式文件系统)、AmazonS3、HBase等持久化存储中读取数据,可使用Mesos、Yarn或Spark自带的Standalone作为集群管理器来调度作业运行,实现Spark应用的计算任务。在Spark应用程序初始化阶段(如图2-1),系统执行机制可细化为以下环节:用户提交应用程序后,系统首先初始化Spark核心控制组件(SparkContext),该组件负责与集群资源协调模块建立通信通道。在资源协商过程中,集群管理系统持续监测计算节点的可用状态。核心控制器通过解析用户程序中的并行计算单元(RDD)操作链,智能构建分布式执行计划图(DAG)。执行引擎采用分层调度策略:DAG调度模块将作业分解为多个具有阶段依赖性的计算单元序列(Stage),每个Stage包含若干并行执行单元。分布式任务协调器依据集群负载情况,通过动态资源分配算法将计算单元分发到各工作节点(Executor)的线程池中执行。任务执行过程中采用容错机制,通过中间结果持久化存储确保计算可靠性。最终聚合结果通过反向回调机制逐级返回至调度中枢,完成整个计算生命周期。图2-1Spark运行机制图2.1.2ZooKeeper在分布式系统中,模块间协同工作通常会采用ZooKeeper这类开源协调框架。该系统基于分布式一致性协议构建,其核心价值体现在三个方面:一是通过ZAB协议保障数据强一致性,支持服务注册发现、分布式锁等基础协调功能;二是采用分层命名空间设计,实现配置信息版本化管理与动态更新;三是内置观察者模式,允许在不影响集群性能的前提下扩展节点监控能力。实际应用中,该框架能有效处理服务器节点的动态上下线、负载均衡策略调整及跨节点数据同步等问题,显著提升分布式架构的容错性和可维护性。ZooKeeper可以自动对搜索引擎的服务器集群的数量进行检测和管理,并对搜索任务进行搜索和处理,同时如果主服务器出现故障,可以自动对备份服务器进行使用。2.1.3Kafka鉴于电影推荐系统对实时处理用户评分数据的需求,我决定采纳Kafka作为消息队列方案。Kafka能够以微秒级的延迟(几毫秒内)处理每秒高达数十万条消息,并依托于Zookeeper实现协作功能REF_Ref21078\r\h[10]。其特性包括分布式架构、高吞吐量、消息的分片存储、多副本机制以及支持多订阅者等。Kafka通过系统OS的页面缓存,顺序读写,零拷贝实现了高效的消息能力。该队列消息与发布/订阅消息引擎架构确保了消息的精确处理,并内嵌了高可用性、故障切换与数据恢复机制。2.1.4MongoDB它支持对多种类型的松散结构数据进行存储;支持SQL式查询和基本的对数据库的增删查改操作,满足大多数用户查询的需求;完全的索引可以让数据被快速查询,降低了对磁盘的访问时间。可以说MongoDB在存储、处理松散结构数据方面有很好的性能,提升查询效率,可较好的连接分布式系统,执行复杂的数据聚合操作;通过主从复制,可实现数据在服务器和客户端之间复制REF_Ref21137\r\h[11]。2.1.5RedisRedis是一种高性能的键值存储器,是一种非关系型数据库,支持主从复制。由于Redis通过发布/订阅机制和单层树复制机制,数据库支持数据从任何一个节点开始或结束,因此可以极大地扩展读取操作,同时保持数据的冗余性,使整个系统具有更强大的稳定性和一致性。Redis有更快的读写速度、更高的输入输出速度REF_Ref21166\r\h[12]。本系统使用其内存数据库来实现用户对电影的缓存评价。2.1.6ElasticsearchElasticsearch以分片形式保存PB级的数据,在硬件稳定的基础上设计了三层技术架构:文档存储层采用基于倒排索引的非结构化数据的向量化检索技术;在分布式协调节点上使用ZenDiscovery协议来维护集群的状态同步;分析引擎内嵌了Painless脚本语言和DSL语句实现近实时(NRT)的聚合分析,支持在用户向Es导入数据时将数据的最早阶段载入内存做索引操作并存入磁盘。使用Elasticsearch的优秀搜索功能REF_Ref21297\r\h[13],在电影推荐系统的使用过程中可以将用户的输入、用户的搜索需求解析成能够用于电影推荐的规则,然后使用DSL语法将相关的信息筛选过滤出来用作数据挖掘的基础数据。2.1.7FlumeFlume是常用的开源的分布式日志采集系统,以提供高可用、高鲁棒、高性能的日志收集、聚合、传输服务REF_Ref21336\r\h[14]。Flume逻辑架构分为三层:Agent、Collector和Storage。数据经过Source→Channel→Sink→ChannelSelector→Interception→SinkProcessor等组件采集。在日志系统中,Flume充当收集器(collector),负责指定数据发送者(source),收集大量的日志数据,同时还具有简单数据处理和写入多个接收器(sink)的功能。Flume日志采集工具在分布式环境下可实现多节点日志聚合,重点针对服务器集群的系统运行日志进行集中管理,前端页面交互产生的业务数据通过各服务端日志模块持续输出。2.2推荐系统相关理论2.2.1推荐系统定义一个完整的推荐系统应包括数据、算法与架构三个方面。数据部分有用户-物品的属性以及用户的动作偏好;算法是针对用户动作属性进行一系列复杂信息处理与逻辑运算,进而返回推荐内容或服务的复杂逻辑;架构则是能使整个推荐系统实现自动化与实时化的框架。推荐系统的核心流程包含目标实体识别与兴趣建模双阶段。基于协同过滤与内容推荐算法的融合应用,系统通过隐式反馈分析提取用户行为特征,结合显式标注的偏好向量构建多维特征空间。在特征工程阶段采用XGBoost特征重要性评估模型,经信息增益率筛选后形成用户兴趣画像的核心要素。以影片推荐系统为例,其一,推荐系统可以根据用户的需求,在用户打开相关影片网站或者手机端的时候,推荐几部自己可能感兴趣的影片;第二,推荐制不能只给用户推荐打分高的影片,对有兴趣的用户也要全部推荐;其三,系统需要提高推荐质量,增强用户与系统互动,提高使用率和转换率,收集用户提供的高质量反馈信息。2.2.2推荐系统的推荐机制解决新用户数据不足的问题可实现跨领域多样性降低、冷启动问题耗费时间长,难解读常见的混合推荐机制:以推荐优化质量为目的,其中加权混合推荐是混合推荐系统中最常用的模型。加权混合推荐给予不同的推荐算法一个权重系数(介于0和1之间的数,且∑∞=1)。对给定的推荐算法进行线形组合并计算最终结果值。基于多轮参数调优实验构建动态自适应权重体系,采用贝叶斯优化框架实现特征空间的线性组合最优化,形成具有场景感知能力的动态权重混合推荐依据各自的推荐算法为每个算法赋予权重要素(0到1范围内的实数,使得权重要素和满足Σ无穷=1),然后对给定的算法进行线性组合求出加权混合后的最终结果。在异构的场景应用之下,算法性能存在明显的场景依存特性,本文通过多轮次参数调优的方式构建了动态自适应权重体系,并使用贝叶斯优化框架完成特征空间的线性组合优化,形成了具有场景感知能力的动态加权决策模型。基于级联式混合推荐结构的混合策略,提出了多粒度过滤机制:当候选集基数相差过大时,用数据稀疏性缓解技术进行三级流水线式知识蒸馏,即用上一层输出特征经过特征空间适配层映射成新的增强输入向量反馈至下一层;另外,对于一些计算复杂度高的算法模块采用延时加载的方式进行利用,并将延时加载后的计算资源分配权重系数控制计算资源配比,保证高精度计算模块能获得充足算力;对于多阶段模型集成架构,系统采用包含特征空间适配层以及决策边界优化器的级联处理单元,并结合联合损失函数完成了多推荐机制的优势互补,与此同时在特征交互层建立了跨模型知识迁移通道,并借助帕累托最优前沿寻优方式通过多目标优化实现了级联结构的Pareto最优点解集。推荐系统评测指标:通过用户行为分析与反馈调研获取主观感知指标,主要包括:界面友好度、推荐新颖性(推荐非热门物品能力)、结果多样性(推荐品类覆盖度)、系统可信度(用户对推荐逻辑的认可程度)、惊喜度(推荐超出预期的关联物品)、响应时效性(推荐更新频率)和鲁棒性(抗数据噪声能力)等。平均绝对误差(MAE)REF_Ref21430\r\h[15]:通过计算预测评分与实际评分的绝对误差均值衡量预测偏差,如式(2-1)所示,其中T为测试集,rui表示用户u对物品i的真实评分,sui为预测评分。MAE值域为[0,+∞),数值越小表征预测越精准。均方根误差(RMSE):采用预测误差平方均值的平方根进行度量,如式(2-2)所示。相较于MAE,RMSE对异常值具有更高敏感性,其值域特性与MAE相同,计算公式表示如2-2所示。召回率(Recall)REF_Ref21463\r\h[16]:反映系统捕捉用户潜在兴趣的能力,计算推荐列表Ru与用户真实偏好集合Tu的交集比例,如式(2-3)所示,值域[0,1],数值越大说明漏推率越低,Tu是指测试数据集上用户真正喜欢的物品集合。准确率REF_Ref21499\r\h[17]代表推荐系统给用户的推荐列表中用户实际选择的电影的占比,定义公式如2-4所示。第三章本文使用的推荐算法的概述3.1基于近邻协同过滤推荐算法基于近邻协同过滤算法是统计算法,直接利用掌握的用户、影片的行为数据进行在线下推荐,分为UserCF、ItemCF三种,无需如此多的迭代训练过程。协同过滤算法中的用户协同过滤采用社交网络聚类分析范式,通过融合动态用户画像与历史行为特征构建时序推荐模型。系统采用基于用户-项目隐式反馈的评分预测机制,运用改进的余弦相似度计算用户间兴趣相似性。假设为用户A推荐电影(如图3-1):根据相似度计算度量距离后得到相似兴趣的用户或集合(用户C),并计算他喜欢的电影的平均评分,最后推荐排名靠前的若干个电影给用户A(即D),但D已经评分的电影除外(即A,C)。因为UserCF具有社会化的特征,最后得到小团体流行的推荐结果,可以显示类似于用户兴趣,并且一般用于现实应用的新闻推荐。ItemCF的偏向于个性化,推荐的结果是以用户以往对数据的偏爱为重点,电影推荐系统为主要的满足用户个人爱好的工作为目的。由此可见,对于以物品协同过滤算法为基础展开讨论的电影推荐系统,更适合使用ItemCF。3.2基于物品协同过滤推荐算法从获取用户感兴趣的电影及相关行为开始,再结合相似度计算以及对用户的历史行为记录做出推荐,基于用户的行为日志来计算物品之间的相似度。对于用户C来说,推荐电影如图3-2所示的推荐例子,当在个性化推荐场景下系统核心执行的操作包含三个重要步骤:基于物品向量空间模型进行邻近检索;用余弦相似度找到目标影片A的K近邻候选集D;建立多维度排序模型,完成对候选集加权以及协同过滤;基于用户的行为画像进行去重操作,在去除掉已有过往交互记录之后,最后得到Top-N的个性化推荐列表。基于物品协同过滤推荐:得到电影-电影的相似矩阵,进而为当前用户推荐排序最高的n个偏好值的电影。3.3基于修正余弦相似度的ItemCF算法优化3.4基于电影内容的推荐算法优化3.4.1基于内容推荐算法3.4.2基于用户生成内容推荐算法\t"/report/3vgq6813868ebd524/htmls/right"其中,nu,b表示用户u被标签b所使用的总数,nb,i代表电影i被使用过b标签的总数,对不同的标签进行累加,将nv,b乘以nb,i得到用户的电影偏好。3.4.3通过TF-IDF对UGC算法处理在电影推荐系统中,系统根据TF-IDF算法对电影的内容信息进行解析得到电影特征向量,计算电影相似度矩阵,实时推荐给用户相似度高的电影,如图3-5所示。随着推荐系统的不断迭代,在协同过滤过程中存在着流行度偏差所产生的马太效应,即曝光率高的热门影片在协同过滤过程中会产生自增强效果,从而导致推荐列表逐渐变成同质化。因此本算法使用热度衰减因子、兴趣探索等方式来增加冷门影片的曝光度,并采用动态权重补偿的方法增强特征提取层,提升了用户的满意度。3.5实时推荐算法研究与优化3.5.1常规的实时推荐算法实时推荐系统利用轻量级计算架构,在满足毫秒级时延的要求下解决推荐的准确性和实时性问题,但由于动态特征空间维度受限,会导致推荐准确度稍低。但因其强实时特点能够精准发现用户兴趣偏好的变化,使得通过构建动态推荐解释模型来达到弹性平衡机制,从而更好地将二者进行最优配合,从而使系统在保证用户最好体验的同时实现最优资源配置。(1)增量更新机制:用户行为事件(如评分、点击)触发实时更新,每个任务的实时推算结束时间不超过n个动作交互;(2)计算量小,可以及时交互响应。因为电影数目远小于用户数目,所以推荐系统在计算电影相似度的时候,计算电影和电影之间的相似度要比计算用户和用户之间要稳定得多。当用户A对p评分,用户A和最相似的电影集合的推荐强度改变,取相似的K个电影作为候选电影,以时间倒叙的方式获得用户最近电影的评分,再获得p最相似的K个电影集合,最后分别计算每个电影q的推荐优先级。3.5.2基于电影相似度的用户兴趣度模型对用户评分增加反正切函数处理,对于用户A计算出最终的候选电影q的推荐优先级。而用户A大小为K的前一时刻实时推荐结果列表,推荐优先级>Rec如公式3-6所示:将updatedList与Rec进行基于合并、替换形成新的推荐结果NewRec。(3-7)i表示电影集合中的每个电影,使用topK函数筛选函数中最大的K个电影,再用cmp=Eui继续选择排序值最大的K个电影,得到最新的推荐值。第四章基于个人喜好的电影智能推荐系统的设计4.1可行性分析4.1.1技术可行性技术选型论证阶段,,本研究从架构支撑与算法实现两个维度展开可行性分析。基础架构层面,采用Spark实时计算框架作为核心引擎,整合其开源生态组件(包括Flume日志采集、Kafka消息队列、ElasticSearch检索服务及Zookeeper分布式协调服务)构建分布式处理流水线。算法层面,融合协同过滤体系(Item-CF/User-CF)、UGC建模及隐语义模型(LFM)形成混合推荐策略等,完全满足影视推荐场景的实时性要求,证实了技术方案在工程实践中的优越性。4.1.2经济可行性一个系统的投入和收益可以用经济性来衡量,本文系统均采用比较廉价的资源(如开发系统需用到的软件IDEITJ,Spark平台相关组件,还有Tomcat服务器,均是根据国内目前的商用服务器价格比较得出比较廉价的,本系统开发主要投入为时间成本,经济上是可行的。4.2需求分析4.2.1功能需求为不同的用户推荐个性化的电影是推荐系统主要的功能,功能需求主要聚焦在推荐服务上。表4-1用户功能需求表普通用户用例图分别如图4-1所示。游客无法正常使用系统,需要游客进行登录,才能管理账号、搜索电影、用户评分、打标签、查看推荐列表等。图4-1普通用户用例图4.2.2非功能需求在需求分析体系中,占据重点的是非功能性的需求。这里的非功能性需求并非就是指我们不需要注重业务功能本身的实现,而是说要保证系统的稳定高效地运行,还要提供给用户良好的体验,能通过系统最终的应用达到一个较高的技术水平。比如准确度方面的要求是系统在实现算法模型匹配后可以达到一定的准确度。为我提供精准的数据推荐给用户,提高用户留存率;再例如架构扩展性是指系统的设计应使各个功能模块之间可拆解、重组、兼并,在不增加冗余代码的前提下使新业务随时可接入,以适应场景不断变化的趋势。从系统的数据安全角度来说,应该构造多层防护机制,如加密传输、权限控制、加密存储等手段保护好我们的用户数据、行为轨迹等敏感信息不受他人非法获取或盗用。人机交互界面友好的可用性也是指标之一,它可以被拆分为几大方面:一是响应速度越快越好;二是操作逻辑简单、明了、准确;三是人机交互界面的视觉呈现,越能符合用户的喜好效果就越好。这就要求一方面我们要做美、简、巧,页面一定要简洁,但是又不能很丑,动作一定要精简但操作的过程要顺手,需要考虑能否做到兼容性强这一点;另一方面,我们还要让用户使用每一个动作时都能马上获得反馈,推荐对应的动作列表。稳定需求:用户量大、电影种类多导致推荐系统需要更大的吞吐量以及更稳定的运行情况,不会出现系统的bug。4.3系统架构设计\t"/report/3vgq6813868ebd524/htmls/right"利用分层架构打造智能推荐平台,主要实现了四大核心功能模块,分别为:图5—2所示。将多源异构数据集(电影元数据、用户标签体系、观影行为日志、评分矩阵)迁移到MongoDB非关系型数据库中,利用MongoDB的分布式存储特性建立一套可适配大规模并发查询的数据存储层;使用ApacheSpark技术栈搭建计算引擎层,集中整合四大核心组件包括:SparkCore用于进行基础数据处理、SparkStreaming用于实时数据流分析、SparkSQL用于结构化查询、MLlib是实现机器学习库,支持推荐模型训练和优化等相关的任务工作。从服务集成层面上看,系统利用混合推荐引擎是异步从消息队列中订阅用户的行为事件后,调用离线的训练好的模型以及实时的特征数据之后产生的个性化推荐结果;前端使用动静分离模式,静态基础页面由CDN加速分发至终端用户,而后端依据实际需求对接不同的在线用户的动态推荐信息则由Tomcat应用服务器根据线上请求实时返回,此设计保证了系统整体的高可用性,并通过模块化的设计提高了功能迭代效率,在保证推荐结果输出周期符合业务要求的前提下最大程度地实现了功能迭代。图4-2推荐系统架构图4.3.1功能模块图设计(1)前端功能模块用户方面:支持用户使用邮箱进行登录和注册功能,用户首次登录需选择自己喜欢的电影标签类别,对用户进行标记。用户可以对电影进行打分和标签化处理,支持用户查看个人评分空间,评分图片可视化。用户也可以搜索喜欢的电影名字和电影类型。个性化电影推荐方面:实时推荐功能使得用户每次评分后,系统会依据用户喜好实时更新推荐的电影。离线推荐模块下,用户无需评分,电影会以周为单位进行更新。系统首页也将展示近半年评分最多的N部电影进行热门推荐,选取历史记录中所有电影中评分人数最多的电影在对应板块展示,选取近半年最新上映的电影进行展示。(2)后端功能模块管理员登录后可对用户信息进行增加、修改、删除、查询等操作,方便管理用户信息;可对电影的信息,如电影名、简介、时长、演员表等信息进行修改操作;支持管理员对电影类型进行修改,如增加恐怖类电影和删除喜剧类电影等操作,此外还支持管理员对电影评分信息、热门电影信息进行修改。4.3.2系统流程设计该部分内容主要是关于资料加工过程流程设计及各推荐流程工艺设计,从系统架构流程设计的角度进行阐述。DataProcessingProcessDesign:所有的统计和推荐计算的结果都存储到MongoDB集合中;实时的数据通过MongoDB集合作为缓存;多级数据处理管道完成高效的推荐计算;数据存储层通过SparkSQL批处理接口将MovieLens原始数据集持久化到MongoDB文档数据库中,同时离线统计模块产生的推荐基准数据一同写入此数据库中,以此为基础给实时推荐引擎打下坚实的数据基础;用户行为追踪体系用Redis内存数据库记录实时评分信息,业务层采用统一标准接口调用行为数据。实时数据采集体系基于Flume日志采集框架,并且该日志框架的tail监控组件可以实时抓取到系统的操作日志。采集后的原始数据经过Kafka分布式消息队列进行格式化、异常值过滤处理,进入到流式计算阶段,由SparkStreaming组件以微批处理的方式对时序数据窗口中的特征数据进行提取,最后加入预置的推荐规则引擎进行实时推荐计算。利用分层的数据处理架构,一方面使得整个离线批处理是相对稳定的,另外一方面也达到了通过缓存库以及流式计算框架的协同处理满足低延迟的需要,最后形成了完整的推荐服务闭环。图4-5数据处理流程图对于用户画像,设置了三层推荐:第一层基础层主要是做基于历史行为统计分析、搜索关键词匹配和用户兴趣标签等多维推荐;第二层增强层使用了离线批处理和实时流式计算结合的混合推荐引擎;针对新用户冷启动的问题,采用了渐进式引导:对于初次登陆用户,在首次登录的时候会弹出类型偏好的选择页面,在用户填写完兴趣之后只向用户展示类别的热度榜单,暂时不给他做任何的推荐。而在这个场景里面,一旦用户做出了第一次的电影评价,那么就会开始用离线协同过滤模型做模型训练的工作,并且立刻开启实时的推荐计算线程。而对于存量用户来说,直接使用完整的推荐服务链路就可以了。由于是增量加载所以不会有打扰用户的体验,而且也是一个通过行为触发模型更新的过程。(1)离线推荐统计模块架构基于sparkSQL技术实现周期性数据计算,通过定时汇总全量历史记录中各影片的评分均值,最终从MongoDB存储的影评数据集调取影片评分统计指标。该模块运用结构化查询语句对所有观影评价进行批处理分析,完成基于历史评分的影片综合评估运算。在AverageMovieScore的集合中保存了新得到的DataFrame。各类热门片统计指的是对所有片类计算各片类集合得分最高的前10片,统计各片类的平均得分后所统计的集合与片类,在将笛卡尔积不含的片类资料剔除后,将其存储为最热门电影统计把评分日期时间改为月,每部影片按月统计并存储。优质电影统计所有电影中评分最高得分的电影,降序写RateMore电影的集合。(2)内容推荐模块架构依托Lucene引擎的MoreLikeThis功能构建相似度计算接口,在实现基础模糊检索能力的前提下,融合影片多维特征(主演、导演、片名、剧情简介、主题标签)进行相似度建模,通过MoreLikeThis算法引擎生成与查询影片属性匹配的相似影片推荐列表。该模块通过特征向量的加权计算,实现基于内容的多维度影片相似性智能匹配。(3)基于用户标签内容推荐模块设计使用分词器将用户对电影的标签进行转换,数据预处理时从Mongo数据库中加载Mergeigour,生成新列Features的字段形态为[香港,不好看,想看,爱情]的标签集合,采用哈希技术定义词频计算器(HashingTF)来统计词项频率。当设定特征维度为300时生成稀疏向量,结合前文建模训练的逆向文档频率(IDF)参数(基于全量标签出现频次计算),通过TF-IDF权重公式将词频与逆向文档频率进行耦合运算,最终综合TF-IDF算法量化各标签在整体语料库中的权重值。该向量空间模型通过计算特征向量的余弦相似度,实现影片间的语义关联度度量。通过用户推荐表可以进一步计算出当前类似影片的Matrix。该研究根据MongoDB中的用户评分信息和电影信息,调用Spark自带的ALS(AlternatingLeastSquares)算法,由修正余弦相似度来训练模型得到U(m,k)和V(n,k)两个电影特征矩阵,当损失函数达到最大时,得到这两个矩阵,其中U(m,k)为每名用户的k个用户特征,然后分别对UserId和MovieId做笛卡尔积,得到一个(id,id)元组,该模型对(u,id)元组进行预测,然后将得到的元组进行降序排序前K个,最终推荐前K个给当前用户排序的电影。最后,将推荐的数据存到MongoDB的UserRecs表.假设电影p和q的相似度可以由其特征向量Vp,()和Vq,()的修正余弦值来表示:Up=<,1,2,kca,Up,1p,2p,3tkca,Vq=修正余弦值函数:Rmix计算每对电影之间的相似度,并写入MongoDB中,在Table5:Mongoos电影在线选播系统系统模型研究牛电影推荐模型中,将电影的特征和用户评论表的相关信息写入数据库。(5)如图所示,一旦用户发生打分行为时就会启动三层实时计算模式:首先是Flume日志代理采集用户的行为事件信息;然后由分布式消息队列(Kafka集群)实现数据缓存和格式转换;再由SparkStreaming引擎按照预定时间窗口(TimeWindow)增量计算打分信息,使用第四章的推荐优先级算法模型生成实时推荐向量;最后做混合推荐结果融合,把实时计算的结果按照实时与历史的不同比例做权重加权整合,并把权重最高的几个结果放到Redis中按LRU的缓存替换方式更新推荐序列。经过优化之后的推荐数据使用分片存储的方法存入MongoDB集群中,利用TTL索引以及读写分离来保证高并发时的实时查询需求。以事件驱动为基础的流水线架构可以将推荐列表更新的延迟控制在500ms内,以此来抓住用户的短期兴趣。4.3.3系统数据库设计(1)本系统设计的ER图如图4-12所示。(2)各表结构详情:Move(电影数据表):系统所有电影实体信息表字段如表如表4-2所示:电影ID名称描述类别时间导演等。MIDNAMEACTORS用户评分表(Rating)结构见表4-3所载:核心字段score用于记录单一用户对指定影片的评判分值,其评分区间设定为[0.5,5]的半分数值连续域,最小分差单位设定为0.5分。系统性评判标准界定:当用户给出的评分≥3.5时判定为偏好标记,而<3.5时则归入非偏好区间。MIDTag(电影标签表):系统所有电影标签表字段如下表,其中有,用户ID、电影ID,电影标签和评分时间MIDUser(UserTable):用户基本信息表如表4-5所示,主要包括了UserID、用户名称、密码、是否为新用户、注册时间、用户偏爱电影风格。第五章基于个人喜好的电影智能推荐系统的实现5.1环境部署5.1.1开发环境本推荐系统在PC机开发测试。通过在Java虚拟机开发测试用scala语言在IDEA开发工具中。采用Mongoodbc文档数据库和Redis数据库等非关系型数据库搭建Spark单节点平台。123456MongoDB784.0.095.1.2环境启动(1)Spark环境部署:用Spark做为计算框架的数据处理平台,整个系统使用分布式架构来实现对数据的存储以及计算。由于现阶段的设备条件,将运行的物理服务器放在一台单机上,在这个阶段使用standalone集群模式来搭建此平台的开发环境。完成了各基本组件的部署之后再开启服务端口,使得服务可以正常使用,还可以保证Spark运行时的集群主从节点服务进程都处于运行状态。(2)\t"/report/3vgq6813868ebd524/htmls/right"数据库:经过完完整整的测试,MongoDB集群已经完成部署并能正常提供服务了,在做数据验证的时候大部分的字段都是可以识别出来的,其三大部分就是一个系统自动生成的唯一的ID、电影的编码(mid)、还有就是全网的评分平均值(avg)。除了像用户画像集、实时推荐队列之类的这些其他的业务集是和电影评分集锦一样也是将所有信息都以BSON二进制文件形式来实现数据存取,因为这种形式很容易被理解,因此并不需要再通过译码来转换为我想要查看的东西,并且支持了灵活的模式扩展,而嵌入式的文档会降低数据相关查询的难度。(3)具体步骤如下:配置好环境之后,依次启动各个服务模块;然后在系统初始化的时候,以普通用户的身份打开一个Elasticsearch分布式检索引擎集群,为用户提供全文搜索能力;利用用户观影评价和评分历史这两个缓存操作指令集,再用权限升级命令来执行Redis内存数据库服务进程;接着把Zookeeper集群协作服务组件进行了部署,把Kafka实时数据流处理平台也搭建起来,把消息生产终端以及消息消费终端都成功地部署完了。同时部署了Flume代理负责采集日志信息,每条记录都代表着机器上的一个服务,使用jps进程检测命令即可查看各个节点的服务是否开启,集群整体运行的状态见图5-2。该系统的电影详情页评分交互场景下,当用户评分后,则触发评分的数据的实时处理流程:由前端产生的带有用户标识和影片编号以及评分值的结构化的评分数据(存入哪个用户对什么电影打的多少分以及打分的时间点)立即被发送到Kubernetes集群上,评分的事件是诸如:用户ID为48690的用户在影片ID为1时进行了一次打分5.0的评价(UTC时间戳1662879341),在相同的用户对影片ID为1270做了打分2.0的事情,并且所有的评分事务都是经过API网关来统一进行标准化的数据打包,例如:用户id:2788给电影bank:48690打了5.0分,用户id:112175打了1.0分。5.2系统前端实现5.2.1用户注册除第一次使用的用户需要注册并且被认证可以使用系统的功能外,其他的用户都无权查看与使用系统中除登录以外的功能。注册的步骤以及操作页面如下所示。为了更方便的对学生所参加的各项项目进行推荐,在mongoDB数据库新增了一项id字段,采用uuid(通用唯一识别码)技术自动生成,能够让所有用户更方便的使用个性化推荐服务。5.2.2系统登录当用户开始使用一个推荐系统时,首先会被要求执行登录的操作,其交互过程详见图5-4,输入账号和密码等信息后,系统接收到数据后,与前置条件已经录入到MongoDB数据库中的用户集合一一对应上,在经过验证环节符合设置好的规则后就可以正常进入到用户的首页并享受专属的电影推荐业务;反之则需要进行注册才能正常进入下一步的使用环节,这是为了保证服务的安全以及验证用户身份的正确性。5.2.3首页界面5.2.4查看用户评分电影列表5.3电影混合推荐模块的实现5.3.1基于离线统计推荐用户进入首页就可以查看热门推荐,这是电影推荐运行时直接离线统计计算得到热门电影推荐列表如图5-7所示。用户进入首页就可以查看评分最多电影推荐列表,如图5-8所示,显示电影名称、评分、电影类型等信息。用户进入影视类别页面就可以查看不同类别的影视,以喜剧为例,如图5-9所示,系统会显示出各种喜剧类主题的电影作品和影视类型。5.3.2基于新用户推荐的实现用户通过登录界面输入账号信息认证登录后就可以进入到主页里面去,首页分几个栏目展示利用多维度的推荐算法生成的影片列表包括动态实时推荐、离线统计分析推荐、热度指数榜单、用户高分影片和新片上映追踪,还有智能搜索让用户可以更方便地找到喜欢的影视作品,系统的主界面如图5-10所示。5.3.3基于ElasticSearch电影检索系统实现了电影关键词查询,在首页上方搜索栏中输入关键词,如输入sea,点击搜索即可获得含有关键词的检索结果页面,如图5-11所示。5.3.4基于隐语义模型的离线协同推荐在系统中,根据用户偏好,向用户离线推荐20个电影,按照电影平均分排名,在主页显示前五个电影进行推荐,如图5-12所示。5.3.5基于用户标签内容的实时推荐详细页面推荐页面如图5-13所示,包括基本信息内容、平均分片、标签片、简介片等相关内容在内的电影基本资料内容。如图所示,当用户点击当前页面电影评分后,系统将获得用户的评分再做统计,并在当前页面上进行展示。如图5-14所示,用户标签驱动推荐机制,在影片详情页中,提供跨用户维度标签池给用户进行选择(即影片详情页上的全部用户标签),利用选择框或者拖拽的方式选择自己想关注或标签化当前影片,并将生成的该影片对应用户的推荐方案直接展现在用户面前。系统会解析用户自定义的语义标签网络并运用标签语义权重匹配算法为当前影片添加匹配度高的相关内容,在此基础上还可以基于语义标签达到对当前用户精准推送的目的。5.3.6基于实时推荐算法的实现当用户对一条电影评价过后,离线推荐得到的评分矩阵,经过计算实时推荐时各电影的推荐优先级后,离线推荐得到的优先级结合上一次实时推荐得到的优先级,离线推荐得到的推荐排序更新后的实时推荐列表如图5-15所示,实时推荐的电影都是评分最高的,当下一部电影已经含有该低评分的电影时,直接从上一层的低评分电影中删除。5.4系统后端5.4.1管理员登录管理员输入用户名和密码之后可以进行登录,管理员可以对数据库中的用户数据和电影信息进行修改、删除、增加、查询等操作。5.4.2最热电影管理管理员可以看到最热电影的ID,电影名,评分人数。可以对最热电影进行添加、删除、查询等操作。5.4.3电影信息管理管理员可以查询数据库中存储的全部电影信息,包括ID、电影名、电影时长、发行时间、电影简介、导演、编剧、演员等信息,并且可以对信息内容进行添加、修改、删除。5.4.4用户信息管理后台可以查询用户信息、添加用户、删除用户等操作。5.5.5电影类型管理用户每次注册完成账号后,需要选定自己喜欢的电影类型,而管理员可以增加和删除电影类型标签,随着电影行业的发展,不同类型的电影层出不穷,该功能可使得用户的选择更加丰富和多元化。5.5.6电影评分管理用户可以对不同电影进行打分,管理员可以查询、修改、删除这些打分数据。第六章系统测试为保证软件系统的安全性、稳定性、一致性和完整性,在设计过程中要对软件系统进行测试,以确保软件的实现符合用户的实际需求。测试主要包括功能测试、安全测试和并发性能测试。(1)功能验证:系统各主要功能按本文提出的功能需求数据进行功能验证。以下是关于测试用例的先决条件、验证要点及验证结果的概述,测试用例如表6-1所示。果12345678页面跳转至搜索结果,并展示电影搜索列表9页面跳转到结果页面,搜索结果列显示所选电影集合弹框提示电影评分成功,且更新数据库信息进入电影信息页面,查看到电影的平均评分、用户果12345678912正确13正确14正确15正确16正确17正确14正确14正确15正确16正确17正确14正确14正确15正确16正确17正确14正确14安全性能:安全性能测试、模拟断网、结论本文主要针对推荐系统的冷启动问题、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 五年级家庭奖惩制度
- 酒店员工服务奖惩制度
- 如何给自己制定奖惩制度
- 贵金属部门奖惩制度范本
- 工程机械考核与奖惩制度
- 氧气站安全生产奖惩制度
- 护士长如何落实奖惩制度
- 肿瘤病例上报奖惩制度
- 二年级奖惩制度积分细则
- 家具行业产品奖惩制度
- 徐州工业职业技术学院单招职业技能测试参考试题库(含答案)
- 秦皇岛地质考察报告
- 抖音取消实名认证申请函(个人)-抖音取消实名认证申请函
- 0~3岁婴幼儿营养与喂养(高职)全套教学课件
- 新闻写作的真实性原则
- 产业经济学-王俊豪主编
- 海岸工程海岸防护概论
- 静态与动态分析指标
- 《铁路技术管理规程》普速铁路部分
- YS/T 690-2009天花吊顶用铝及铝合金板、带材
- GB/T 4937.3-2012半导体器件机械和气候试验方法第3部分:外部目检
评论
0/150
提交评论