伪原创相似度查询工具( 基于物品相似度的协同过滤算法的特点及适用机制)
优采云 发布时间: 2022-02-11 16:45伪原创相似度查询工具(
基于物品相似度的协同过滤算法的特点及适用机制)
我最近收到了一个任务,这是一个教育应用程序上的智能推荐部分。需要根据用户的购买习惯推荐相应的可购买内容,以满足客户的个性化需求,增加产品的点击量和购买量。.
一、业务逻辑及适用机制
客户的具体需求如下:
可以看出,这里智慧推荐的用户个性化需求非常强,并且预设用户对自己之前购买过的同类型商品更感兴趣。
目前市面上商用的主流推荐算法大致可以分为以下几类:
本项目非常适合基于物品相似度的协同过滤算法的使用场景。
二、算法的特点
基于物品相似度的协同过滤算法的适用场景具有以下特点:
长尾项目丰富、用户个性化需求强的领域;长尾效应很好理解。例如,最主流、最畅销的书籍总是占据书店最显眼的位置,而同类型的冷门书籍则被摆在书架上。这种可能性要小得多,即使这些冷门书籍确实有市场需求。如果用户购买了某本畅销书,那么我向老用户推荐销量不太好的同类型书籍。这很合理吗?而且每个人读的书的种类也大不相同。如果我告诉你,你不认识的人也喜欢读某本书,你不一定愿意买。
当项目数远小于用户数时;项目数据比用户数据本身更稳定,项目数据的样本量较小。此时项目相似度的计算不仅小,而且不需要频繁更新,程序压力小。.
因此,该算法常用于书籍、电商、教育和电影网站,都符合以上两个特点。
基于物品相似度的协同过滤算法侧重于维护用户的历史兴趣,其交互特征是推荐结果的实时变化。其优点和缺点如下:
三、算法实现
在本项目中,基于物品相似度的协同过滤算法的实现大致如下:
计算项目的相似性(课程/活动/表演/展览/比赛等)。
进行如下操作:
使用项目的内容属性计算相似度。内容属性类似于标签,可以反映物品的共性。
项目可以是物理对象或虚拟娱乐服务。例如,表演的类型,是戏剧、舞蹈还是唱歌?演出适合10-18岁的青少年,20多岁的大学生,还是工作稳定、家庭幸福的中年人?表演是在茶馆、体育馆还是歌剧院?
一个项目可以有多个标签,两个项目共有的标签越多,它们就越相似。
分析用户行为记录以计算相似度。用户的行为记录包括演出、展览、参与的游戏、购买的产品等。在确认用户的行为偏好后,他们“为所欲为”。
为用户生成推荐列表。将项目与用户行为相关联,与用户历史上感兴趣的项目更相似的项目更有可能在用户的推荐列表中排名更高。需要考虑以下几个方面:
业务场景:可分为冷启动、非冷启动新用户、非冷启动老用户、匿名用户四种。不同的业务场景有不同的算法。对于本项目,基于项目的协同过滤推荐算法适用于非冷启动的老用户。
不同的算法适用于不同的业务场景
推荐位置:考虑前端推荐列表的入口(首页或模块)及其内部接口层级。
结果评估:推荐列表上线后,采集数据进行算法优化。需要对比算法使用前后商品的销量和销售额的增长情况,以衡量算法的有效性,及时调整推荐机制。
在这个项目中,前端被赋予了一个智能推荐的主入口,并提供了三个二级入口:展览服务、比赛服务和表演服务。
需要注意的是,这三个二级入口导入的内容已经维护,但在同一项的长尾列表中,曝光率可能较低。智能推荐所做的就是增加这些内容的曝光率。
考虑的项目的内容属性和权重系数不同:
展览服务(展览):
竞赛服务(Contest):竞赛类型(书法、绘画、朗诵、小玩意等标签)。
演出服务(演出):演出地点、演出类型(如朗诵、唱歌、舞蹈、小品等标签)、演出时间(近期推荐)等,类似展览。
后台给出了算法的模板配置页面、推荐位置配置页面和结果评价页面。
本文由@Smile 原创 在每个人都是产品经理发布。未经许可禁止复制
题图来自Unsplash,基于CC0协议