随着Internet的普及以及网上购物的诸多优点,使得网上购物越来越受认可。电子商务以其令人难以置信的速度蓬勃发展,已经成为当今互联网IT产业的经济增长点。但是,不仅仅是用户数量与日俱增,同时存在大量的有用,没用的信息充斥着整个电子商务领域。如何从海量的信息中,寻找到我们想要的信息,已经成为一个重要的问题。推荐系统就是处理该问题的重要途径。一个好的电子商务网站除了基本的商品浏览、搜索、购买和评价功能外,还应具备商品推荐的功能,这可以向用户推荐个性化的商品,解决用户难以查找信息的难题,同时可以提高电子商务网站的交易量。
本文分析了项目协同过滤算法的原理及实现步骤,并在此之上设计和实现了一个基于项目协同过滤的电子商务推荐系统。主要工作内容如下:
对网络开放的数据集MovieLens进行分析,并将数据存储到SQL Server数据库对应的表中;
根据用户的评分信息,利用余弦相似性的计算方法计算物品之间的相似度,进而根据用户历史的评分信息和相似度表来计算得出用户对物品的兴趣程度信息,最后根据不同的用户形成不同的推荐结果;
根据前面算法的实现,运用.NET WEB API以及C#等相关技术设计实现了简要的推荐系统;
根据MovieLens数据集的信息进行算法的性能测试以及对推荐系统做出系统测试,测试推荐效果;
最后对本次基于项目协同过滤的电子商务推荐系统的开发做了工作总结,并对未来的发展做了展望。
1.1 研究背景与意义
1.2 研究背景
互联网技术的飞速发展,给用户带来了海量的信息,满足人类对信息的需求。但随着网络的快速发展,人类进入了信息社会和网络经济社会,走进了一个信息过载的时代,这样使得用户无法从大量信息中捕获自己真正需要的那部分信息,从而大大降低了对信息的使用效率。
电子商务蓬勃兴起,电子商务网站正在为用户提供越来越多的选择的同时,其机构也变得更加复杂,电子商务的发展面临新的挑战:一方面商家在网上所能提供的商品种类和数量非常之多,用户对网络提供的众多商品束手无策,通常需要经过多次浏览才能找到满足自己需求的商品;另一方面,商家也会迷失在大量的网络信息和用户信息中,以至于不能将优秀的商品广泛推销出去。
网络所带来的便捷的信息传递和信息服务推动着电子商务的蓬勃发展,人们在逐渐享受由此带来的巨大惊喜的同时,也面临着从传统购物方式向网络虚拟购物方式转变的挑战:面对Web商家如此众多的商品,用户发觉自己很难通过一个小小的计算机屏幕方便地发现自己感兴趣的商品。个性化推荐系统的出现为用户提供了一个解决Web商品信息过载问题的强大工具,承担了在识别客户消费偏好的基础上,模拟商店销售人员向客户提供商品信息和建议,帮助客户完成购买过程,从而使客户避免信息“超载”所带来的麻烦,顺利完成购买过程的功能。在实际应用中,许多电子商务网站,如Amazon、Hulu和eBay等网站已经充分领略到了推荐系统带来的好处。
随着网络技术的发展和不断完善,电子商务已经覆盖了整个营销网络,成为一种新的商务通信通道,为了使用户得到更好的购买体验,个性化的推荐系统渐渐兴起。推荐系统为人们提供了一条从海量信息中获取对用户有用信息的可能途径,能根据用户的兴趣爱好推荐符合用户兴趣爱好的商品,使用户减少浏览次数,提高上网效率;也可以为商家提供很好的商品推荐策略,以获得更大的利润。
1.2.1 设计推荐系统的意义
伴随着Internet的快速普及以及网上购物的诸多便利,使得网上购物得到越来越多消费者的认可。当然,新的商业环境在为商家提供新的商机的同时,也对他们提出了新的挑战。基于互联网的交易模式与传统商业经销方式有所不同,电子商务的交易是交易双方不谋面的,商家没能直观地了解用户,在这样的经销模式下,难免会产生问题:
-
用户面对电子商务网站提供的大量商品,从中选择自己想要的东西犹如是大海捞针。
-
经销商家无法实现根据不同用户的需求进行导购,从而不能进行更好的营销和推广。这样情况下,给用户带来一定的挑选难度,同时也无疑造成商家的客户流失,给商家带来经济亏损。
基于项目协同过滤的电子商务推荐系统是一种广泛应用的推荐系统。它的实现是基于用户对商品的评价,基于评价计算商品之间的相似性,根据用户的行为习惯将并较为相似的物品推荐给目标用户。
本文所做的主要工作可总结为以下几点:
-
在充分查阅国内外文献的基础上,介绍了电子商务推荐系统的研究背景及国内外的研究现状。
-
介绍了电子商务推荐系统及相关技术,包括推荐系统的输入输出、分类等;.NET平台下的ASP.NET WEB API 技术。
-
阐述了项目协同过滤算法的原理思想、实现步骤及实验结果分析。
-
探讨了推荐系统的设计与实现。
互联网的迅速扩张,电子商务网站的蓬勃发展,对推荐技术需求不断急剧增加,谁能较好的使用推荐技术,谁就可以占领用户市场。本系统的特色归纳如下:
-
本系统是基于电子商务网站现状的实际需求进行开发,在测试数据集测试时取得较好的结果。
-
本系统可以实现通过HTTP向多种客户端,包括浏览器,智能手机,平板电脑等提供服务。、
-
本系统运用微软成熟的.NET WEB API技术实现,具有较好的稳定性和可靠性。