基于约束的推荐系统
Posted AINLP
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于约束的推荐系统相关的知识,希望对你有一定的参考价值。
哈喽,大家好,通过前面系列的文章,想必大家对推荐系统也有了一定的认识。今天我们从更加商业化的角度来思考一下,一些以前介绍的推荐方法不太适用的场景该如何设置推荐系统。
什么是基于约束的推荐系统
我们回想一下前面介绍的内容,比如协同过滤的方法,在众多用户对物品的评分中去学习评分规律,然后完成推荐的目标。但是试想在这些场景下:推荐汽车,房产和金融产品等的时候,数据量往往不会很大,一个用户也不会买很多这些产品来让系统收集偏好数据(反正我是不会~因为穷~)。
那么这个时候咋办呢?我们想象一下,以前这些场景下的销售们的工作:
是不是感觉销售就在这里做到了一个推荐的事情?这个时候,本章的主题是不是就很清晰易懂了,基于约束的推荐系统。这里的约束就是指约束条件,也就是用户在需求方面的一些限定。
具体的实现方法
首先提前构建好一个推荐知识库,这个库包含了一些显示的关联规则,被关联的两部分则是用户需求的描述以及与这些需求相关的产品信息特征。
其实直观技术上的理解,我们可以将其看作一个如图1所示的有限状态机,这个图从《Recommender Systems Handbook》直接截的,最后的q4,q6,q7三个部分呈现了待推荐的物品,而在此之前,就是用户对特定约束条件的选择。
图1,基于约束的推荐系统流程示意
另一方面,其实也可以将具体的推荐过程看作一个决策树的流程,对用户的需求就是决策树的每个节点,最后的叶子节点则是一些具体要分配的物品。
实际应用经验
1)用户需求难以满足
这种最常见的就是用户的需求太详尽,导致查询后没有满足的物品。这个研究方向就是宽松查询,那么如何选择一个物品集合呢?常见的做法是去除掉一些特征约束,如果约束条件变少了,那么可选择的物品自然会多起来。
2)查询紧缩
相反情况下,如果用户的约束条件过于宽泛,最终得到的推荐物品很多,一般情况下会根据剩下的物品考虑每个特征的信息熵,通过选择信息熵的思路向用户推荐约束条件,让用户进一步压缩剩余物品。这里是不是很像决策树的思路呢
3)算法比较
说了这么多,这个基于约束的推荐系统真的好使吗?其实这方面的对比难进行的点在于,它和其它推荐算法的应用场景有些出入,不过还是有人【1】进行了一些对比。结果显示,和协同过滤进行比较后,发现基于约束的方法在惊喜度上和协同过滤有一拼;同时在评分非常少的情况下,准确度优于协同过滤的方法(内心OS:人家协同过滤就擅长这个啊~)
未来的研究方法
1)产品数据抽取自动化
对基于约束的推荐系统来说,知识库的质量就影响推荐系统的质量。但是知识库的变化在有的领域是比较频繁的,这种时候就要求对应的人类专家来评价这个事儿了。
大家第一反应应该是先想,如果对房子数据列出来后,系统应该可以自动的提取一些结构化数据,比如单价,面积,朝向等。这样子就满足了我们的要求,系统就可以让用户给出自己的条件来筛选了。
但是!这种方法很依赖于特定场景,而且要是想优化,也需要人类销售员。比如销售员通过网上的评价,知道这个小区的物业怎么样,这周边的实际环境怎么样。
当然随着NLP的发展,未来我们可能就可以自动将这些非结构化的信息进行提取了。
2)社会化知识的获取
比如当知识是从不同的途径获取的,我们咋样检测和修复重复呢?
3)可解释性
试想一下构建知识库的时候,一个用户叫小明有属性1,2,3,4,5,然后他选择了物品A,另外一个用户叫小红也有属性1,2,3,4,5,然后他选择了物品B。。。这个时候咋解释嘛(╯﹏╰)~~~所以构建知识库对我们的解释也有很大区别。
另一方面,未来的终极目标是,给用户进行解释的时候,最好能知道用户对这个推荐的了解程度,然后针对他的了解程度对他进行不同深度的解释。
总结
今天的文章比较短,我们介绍了基于约束的推荐系统。与以前的方法不同,基于约束的系统比较适用于存在大型复杂的商品品种,且用户的交互量较低。还有一点就是基于约束的推荐系统还是比较适合在用户冷启动的场景下。
未来的内容,我们会继续深入介绍推荐系统的方方面面,如果觉得文章帮助到了你,点个在看是最大的鼓励哟~~
参考文献
【1】Zanker, M., Jessenitschnig, M., Jannach, D., Gordea, S.: Comparingrecommendation strategies in a commercial context. IEEE Intelligent Systems22(May/Jun), 69-73(2007)
由于微信平台算法改版,公号内容将不再以时间排序展示,如果大家想第一时间看到我们的推送,强烈建议星标我们和给我们多点点【在看】。星标具体步骤为:
(2)点击右上角的小点点,在弹出页面点击“设为星标”,就可以啦。
感谢支持,比心。
推荐阅读
关于AINLP
AINLP 是一个有趣有AI的自然语言处理社区,专注于 AI、NLP、机器学习、深度学习、推荐算法等相关技术的分享,主题包括文本摘要、智能问答、聊天机器人、机器翻译、自动生成、知识图谱、预训练模型、推荐系统、计算广告、招聘信息、求职经验分享等,欢迎关注!加技术交流群请添加AINLPer(id:ainlper),备注工作/研究方向+加群目的。
阅读至此了,分享、点赞、在看三选一吧 以上是关于基于约束的推荐系统的主要内容,如果未能解决你的问题,请参考以下文章