写点什么

构建生产可用的推荐系统需要注意哪些问题?

  • 2020-01-06
  • 本文字数:3622 字

    阅读完需:约 12 分钟

构建生产可用的推荐系统需要注意哪些问题?

虽然经历了几十年的研究和发展,推荐系统已经成了各种现代网络应用中不可或缺的组成部分,但是推荐系统的研究和应用仍然面临着很多重要而急迫的挑战,推荐系统的应用形式和场景也蕴含着更多的可能。本节,我们总结归纳目前推荐系统在研究和应用方面所面临的一些重要问题,同时指出推荐系统在研究和应用上的一些潜在方向,以使读者对推荐系统的未来发展拥有一些认识。

推荐系统面临的问题

1.推荐的冷启动问题

冷启动问题是困扰学术界和产业界多年的重要问题。对于一个全新的网络用户,系统中尚没有任何可以用来分析其个性化偏好和需求的商品购买或浏览交互信息,因此无法向其提供个性化的推荐列表。该问题在传统的基于数值化评分的个性化推荐方法中尤为突出,并与数据的稀疏性问题互为因果,这是由于网站内的新注册用户往往只对非常少量的商品给出过数值化的评分,很难通过如此少量的评分分析用户的偏好和需求。另外,在大数据环境下,数据的稀疏性显得愈加明显和严重,这进一步加重了冷启动问题给实际系统带来的负面影响。


目前,解决冷启动问题的方法主要包括如下几种。


(1)降维技术(Dimensionality Reduction),通过 PCA、SVD 等技术降低稀疏矩阵的维度,为原始矩阵求得最好的低维近似,但是实际系统中庞大的数据规模使得降维过程存在大量运算成本,并有可能影响预测和推荐效果。


(2)使用混合推荐模型的方法,通过取长补短弥补其中某种方法的问题。


(3)加入用户画像信息和物品属性信息,例如通过使用用户资料信息计算用户相似度,或者使用物品的内容信息计算物品相似度,进一步与基于打分的协同过滤方法相结合,以提供更准确的推荐。


另外,推荐系统中的小众用户(gray sheep)问题限制了系统在小众用户上取得较好性能。该问题主要表现为有些人的偏好与任何人或绝大多数人都不同,因而难以在大规模数据上采用协同过滤的方式为该用户给出合理的推荐。目前,小众用户推荐一般采用混合式的推荐模型来解决。例如,最常见的方法是把基于内容的推荐和基于协同过滤的推荐结合起来,挖掘小众用户在感兴趣的物品上的内容信息,并进一步结合可用的相似用户行为信息给出推荐。然而,该方案在解决小众用户推荐的问题上还远远不够,由于长尾效应的存在,系统在小众用户上的性能对整体能取得的性能有较大的影响,需要对小众用户推荐做进一步的研究和实践。

2.个性化推荐的可解释性问题

个性化推荐的可解释性是长期困扰学术界和产业界的重要问题。由于算法的复杂性和隐性变量方法的大量使用,算法所给出的推荐列表往往并不能得到较为直观的解释,也就难以让用户理解为什么系统会给出该物品作为推荐而不是其他物品。


当前的实际系统中往往简单地给出“看过该物品的用户也看过这些物品”作为推荐理由,这样的推荐理由往往无法令人信服,从而降低了用户点击和接受推荐结果的潜在可能性。在跨领域的异质推荐背景下,推荐结果的可解释性显得更为重要,因为缺乏直观可信的推荐理由将难以说服用户进入新的甚至陌生的网站查看异质推荐结果。如何将推荐理由的构建与系统所使用的推荐算法紧密结合,得到更细致、准确、有说服力的推荐理由,引导用户查看甚至接受系统给出的推荐,是学术研究和实际系统都需要考虑的重要问题。

3.推荐系统的防攻击能力

推荐系统如何应对恶意攻击(shilling attack)也是实际系统中需要解决的重要问题,该问题实际上是推荐系统中的反垃圾(anti spam)问题。例如,有些用户或商家会频繁地为自己的物品或者对自己有利的物品打高分,为竞争对手的物品打低分,甚至注册大量的系统账号人工干预某物品的得分,达到人工干预推荐系统推荐效果的目的,这会影响协同过滤算法的正常工作。该问题的被动解决方法是采用基于物品的推荐,因为在恶意攻击的问题上,基于物品的推荐往往能比基于用户的推荐具有更好的鲁棒性。作弊者总是较少数,在计算物品的相似度时影响较小。当然,我们也可以采用主动的解决办法,设计有效的垃圾用户识别技术来识别和去除作弊者的影响。


除此之外,推荐系统的研究和应用中还面临很多其他的问题和挑战,如隐私问题、噪声问题、推荐的新颖性,等等。急需对这些问题投入更多的研究和实践,从而不断完善推荐系统的性能和应用场景。

推荐系统的新方向

1.基于多源异质信息的推荐

长期以来,推荐系统的各种算法和研究都是基于数值化打分矩阵的形式化模型,该模型的核心是以用户打分为基础,而少有对基于用户文本评论语料进行个性化推荐的研究。基于文本评论的个性化推荐被很多论文提到,但是研究并不深入,这一方面限于文本挖掘技术的研究遇到很多难点,另一方面限于之前网络上积累的文本信息还不够多。随着 Web 2.0 网络的兴起,互联网上所积累的用户文本信息越来越多,已经成为一种不可忽略的信息来源,如电子购物网站中的用户评论、社交网络中的用户状态,等等。这些文本信息对于了解用户兴趣、发掘用户需求有极其重要的作用,如何充分利用这些数值评分之外的文本信息进行用户建模和个性化推荐具有重要的意义。

2.推荐系统与人机交互的关系

推荐系统与用户的交互方式也是相关领域内研究的热点方向。目前常见的实际系统一般以推荐列表的形式给出推荐,然而一些研究表明,即便是同样的打分和评价系统,如果展示给用户的方式不同,也会对用户的使用、评价、效果产生一定的影响。例如,MovieLens 小组第一次研究了用户打分区间、连续打分还是离散(如星标)打分、推荐系统主动欺骗等对用户使用推荐系统造成的影响。与搜索引擎一样,推荐系统的界面设计和交互方式也越来越受到研究人员的关注。

3.长尾效应与小众推荐

长尾效应在推荐系统中的理解和应用可以为进一步提高系统的推荐效果打开新的窗户。一个推荐系统的性能不能直接以预测评分的精确度测量,而应该考虑用户的满意度。推荐系统应该以“发现”为终极目标,而现存的一些推荐技术通常会倾向于推荐流行度很高的,用户已经知道的物品。这样存在于长尾中的物品也就不能很好地推荐给相应的用户了。但是,这些长尾物品通常更能体现用户的兴趣偏好。


所以,在推荐系统的设计过程中,不仅要考虑预测的精度,还要考虑用户真正的兴趣点在哪里。研究人员也开始考虑长尾效应在推荐系统设计过程中的应用,并考虑如何将长尾物品推荐给用户,以及如何为小众用户推荐合适的物品。

4.可解释性推荐

推荐系统的可解释性成为一个重要的研究课题。随着实际系统中的数据越来越多、规模越来越庞大、算法越来越复杂,包括推荐系统在内的智能决策系统变得越来越黑箱化,系统难以给出直观可信的解释来告诉用户为什么要做特定的决策。


在此背景下,推荐系统的可解释性变得越来越重要,研究人员正在试图构建可解释的推荐算法和模型,使得系统不仅可以给出推荐结果,还可以自动给出恰当的推荐理由。

5.推荐系统的商业价值

推荐系统所能实现的价值也是个性化推荐的一个重要问题。在已有的绝大多数推荐系统中,算法往往只关心准确率、点击率、购买率等指标,很多推荐算法也是围绕着对 RMSE、Precision、NDCG 等指标的优化而设计的。然而被推荐的物品未必会被用户购买,即便被用户购买,不同物品为系统带来的价值也是不一样的。因此,如何直接优化推荐系统对平台的价值也是一个重要的演进方向,有助于帮助推荐系统通过推荐恰当的物品,直接优化和提升系统带来的实际效益。


例如,阿里巴巴通过直接优化推荐列表的商业价值来构建推荐列表(Pei, et al.,2019),在这一方向上做出了尝试。

6.多平台协作式推荐

越来越多的生活项目日益网络化,在网络上造成了一个个信息孤岛:每一个网络应用平台拥有用户在该平台或该领域内的行为信息,了解用户在该平台和领域内的行为偏好,从而可以在该领域内给出个性化的专业服务;然而在不同平台和领域之间,尤其是异质领域(如视频和购物)之间,用户的行为线索并没有被打通,每一个平台和领域没有其他平台和领域的用户行为信息,也就难以给出平台之外其他领域的个性化服务。这些独立的信息孤岛将网络用户原本完整而流畅的生活时间线割裂,未能形成浑然一体的个性化服务流程,使得互联网本应在人们日常生活中所起的重要甚至核心作用大打折扣。


因此,如何由互联网所连接的各个系统协作式地发掘用户潜在需求,适时地给出跨领域的异质推荐结果和个性化服务成为推荐系统向通用推荐引擎方向发展的重要问题和研究前沿,并将极大地降低人们使用互联网的时间和精力成本,免去在各个独立服务之间进行切换和查找的麻烦。更重要的是,不同类型的异质商品或服务之间的信息联通和相互推荐,蕴含着全新的互联网运营和盈利模式。例如,通过从历史数据中进行任务挖掘,旅行机票订购网站可以通过异质推荐为酒店预订、车辆租赁、团队预订等多种潜在的关联网站带来流量,并从中获得额外收益;视频服务商可以通过异质推荐给出来自购物网站的商品推荐,从而实现虚拟产业收入与实物商品收入的结合,这对促进产业协作发展和产业整合具有重要意义。


本文内容节选自图书《大数据智能》,感兴趣的用户欢迎点击链接了解:https://item.jd.com/12603411.html?dist=jd


2020-01-06 11:592291

评论

发布
暂无评论
发现更多内容

哪款国产堡垒机好用便宜实惠?大家推荐一下!

行云管家

网络安全 数据安全 堡垒机 国产

Mac苹果电脑无线鼠标连不上怎么办

柠檬与橘子

鲸鸿动能加入气候行动,与野生救援(WildAid)探索公益新玩法

最新动态

深入探讨Java面试中内存泄漏:如何识别、预防和解决

程序那些事

Java 程序那些事 面试秘籍

软件测试/测试开发丨利用人工智能ChatGPT自动生成架构图

测试人

人工智能 软件测试 ChatGPT

一篇聊聊Mybatis插件开发

互联网工科生

sql 数据 mybatis

华秋应邀精彩亮相IOTE物联网展

华秋电子

IOTE

ByConity 技术详解之 ELT

字节跳动开源

大数据 开源 实时数仓 Clickhouse 数仓

这个时代,由消费主导的敏态数据更值钱

ToB行业头条

入门有监督学习:数据、模型、度量

麦田的守望者

机器学习 有监督学习

软件测试/测试开发丨ChatGPT在测试计划中的应用策略

测试人

人工智能 软件测试 测试开发 ChatGPT

干货丨中国移动5G数字工厂引领工业数字化未来(附PPT)

工赋开发者社区

深度学习之“切图”

矩视智能

深度学习

文档信息抽取技术:从非结构化文本到结构化信息的旅程

合合技术团队

人工智能 技术 文档 文档抽取

【效率提升】maven 转 gradle 实战 | 京东云技术团队

京东科技开发者

maven 编译 Gradle 打包工具 企业号9月PK榜

从 Hackathon 战队到创业公司,和开发者们聊聊真实世界 AI Apps 的基础设施丨活动预告

PingCAP

数据库 开发 hackathon TiDB pingCAP

企业微信 API 接口调用教程:从入门到精通

Liam

后端 后端开发 API 开放 API 企业微信开发

如何正确地计算经过时间(elapsed time)

WuXiaoYuan

Java 时钟同步

PPT | 智能工厂生产制造执行系统(MES)建设方案

工赋开发者社区

用友第五届开发者大赛初赛晋级公示,复赛火热进行中!

YonBuilder低代码开发平台

安全厂商安恒信息加入龙蜥社区,完成 与 Anolis OS 兼容适配

OpenAnolis小助手

操作系统 龙蜥社区 兼容适配 安全联盟 安恒信息

Golang 的 GMP:并发编程的艺术

树上有只程序猿

golang GMP

聊聊wireshark的进阶使用功能 | 京东云技术团队

京东科技开发者

网络协议 Wireshark 抓包 企业号9月PK榜

【华秋干货铺】双面混装PCBA过波峰焊时,如何选用治具?

华秋电子

PCB

脱颖而出!云起无垠荣获第二届“陇剑杯”优胜奖

云起无垠

基于Kubernetes的Serverless PaaS稳定性建设万字总结

Serverless Devs

云计算 Serverless 运维 托管

广东汕头等保测评机构有哪些?位于哪里?

行云管家

等保 等级保护 等保测评 汕头

构建生产可用的推荐系统需要注意哪些问题?_架构_赵钰莹_InfoQ精选文章