Kernel-CF:推荐系统的最优召回策略

推荐系统自诞生以来广受关注,尤其是互联网领域,推荐系统已经成为了给企业下金蛋的白鹅。我们来算一笔账,假设我们公司推荐产品的日 PV 是500 万,推荐系统让用户点击率提升了1%, 也就是一天增加了5 万 PV。Google Ads 的CPC 均价是2 美元。这样算来,推荐系统每天给该网站节省了10 万美元的获客费用,一年下来就是3650 万美元。这真的是一笔非常庞大的数字,可见大型网站/ App 对推荐系统趋之若鹜是有原因的。

推荐系统自引入国内之后,许多工程师喜欢把推荐系统划分为召回-排序等阶段。其实所谓的召回,指的就是利用算法或规则先给执行推荐算法的数据筛选出一个子集合,然后再进入算法执行的下一个阶段。作者在互联网大厂的时候,曾经先用协同过滤做召回,然后用排序学习(Bayesian Personalized Ranking / Collaborative Less is More Filtering)做排序,取得了不错的结果。

召回的策略千千万,也许有人要问:有没有什么召回策略是最优的?我们有没有办法通过最优化理论计算出最优的召回策略?答案是肯定的。Ratidar Technologies LLC 在国际学术会议 CAIBDA 2022 上宣读了一篇题为Kernel-CF: Collaborative filtering done right with social network analysis and kernel smoothing 的论文,介绍了如何利用数据可视化算法和非参数统计方法计算推荐系统最优召回策略。我们下面详细的介绍相关内容:

首先,我们介绍一下什么是 ForceAtlas-2 算法。ForceAtlas-2 发表于 PLoS 的2014 年的论文。论文题目是ForceAtlas2, a Continuous Graph Layout Algorithm for Handy Network Visualization Designed for the Gephi Software. 这篇论文讲述了如何借用物理学中的概念,实现对于复杂网络的可视化。相关算法已经集成在了常用的社交网络分析软件Gephi 中。

ForceAtlas-2 认为一个社交网络中,点与点之间的相互作用有两种:吸引力和排斥力。其中吸引力定义如下:

而排斥力定义如下:

其中 d 是距离函数,而deg 是视图中节点的度。通过观察,我们得知,距离越近,吸引力越小;距离越远,吸引力越大。节点的度越大,排斥力越大;节点之间的距离越远,排斥力越小。ForceAtlas-2 通过在社交网络中模拟这两种力的相互作用,把复杂的社交网络在二维空间简单漂亮的展现了出来。

下面我们进入正题。我们来讨论怎样给协同过滤算法设计最优召回策略。我们这里拿基于用户的协同过滤做例子。基于物品的协同过滤算法模型的分析与此类似。基于用户的协同过滤算法的公式如下:

基于用户的协同过滤的基本思想是根据与用户相似的用户的喜好列表给当前用户推荐他所没有见过的物品。这里面存在一个问题:我们该选择哪些与用户相似的用户进行计算?是所有用户吗?还是有个最优的召回策略?这就是 Kernel-CF 算法将要讨论的问题。Kernel-CF 算法的论文下载地址在这里:https://arxiv.org/ftp/arxiv/papers/2303/2303.04561.pdf 。下面我们针对这个算法展开介绍。

我们首先计算出所用用户对之间的相似性,然后把相似矩阵转换为距离矩阵,利用ForceAtlas-2 将距离矩阵映射到二维空间。我们发现,在新的社交网络中,基于用户的协同过滤其实就是非参数统计学中的 Nadaraya-Watson 核回归问题,而我们要做的就是计算最优核半径。而这是一个学者已经通过 plug-in 方法解决了的问题。在一维Nadaraya-Watson 核回归中,最优核半径的计算方法如下:

现在我们考虑二维的情况(我们有X 轴和 Y 轴两个方向上的变量):

其中:

我们看到,我们利用 plug-in 方法,完美的解决了协同过滤中的最优召回问题。下图是一张基于 ForceAtlas-2 降维之后的协同过滤输入数据(LDOS-CoMoDa 数据集)的部分展示,可以看到最优召回策略可以节省大量的计算资源:

现在还剩下一个问题,那就是在上述利用 Plug-in 方法求解协同过滤算法最优召回的过程中存在着一些未知量,需要通过统计的方式进行近似,比如r 和 f。r 函数的定义如下:

r 可以通过一般形式的最小二乘法进行近似。我们做了如下假定:

我们定义f 为数据造成的概率分布。我们通过概率密度估计来估计f :

其中 H 通过如下方式进行估计:

其中 是协方差矩阵。综合我们在上面讨论的结果,我们得到如下算法流程(伪代码):

本文详细介绍了如何利用信息可视化和非参数统计方法计算协同过滤中最优召回的问题。算法中虽然公式推导复杂,但是整体流程可实现性较强。一旦读者熟悉了文章中算法的细节,就能很好的完成算法的实现工作。这个算法的名字叫做 Kernel-CF,一方面是因为利用了核回归的知识,另外一方面是因为问题解决对象是协同过滤。

Kernel-CF 算法告诉我们在解决实际的机器学习问题中,应该集思广益,博览群书,充分利用其他领域的学科知识,就可以综合起来解决推荐系统中的老大难问题。非参数统计是统计学专业高年级学生或者统计学研究生所学的内容。作为算法工程师,相关的知识平日里可能接触不到,但是这不妨碍我们经常去图书馆借阅(中国国家图书馆有数百万持卡用户)或者购买书籍阅读。扎实的数学功底,能够给我们的算法工作插上腾飞的翅膀,翻越一座又一座的高山峻岭。

作者简介

汪昊,前 Funplus 人工智能实验室负责人/创业公司CTO。曾在 ThoughtWorks、豆瓣、百度、新浪等公司担任技术和技术高管职务。在互联网公司和金融科技、游戏等公司任职 13 年,对于人工智能、计算机图形学和区块链等领域有着深刻的见解和丰富的经验。在国际学术会议和期刊发表论文 42 篇,获得IEEE SMI 2008 最佳论文奖、ICBDT 2020 / IEEE ICISCAE 2021 / AIBT 2023 / ICSIM 2024最佳论文报告奖。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/225349.html<

(0)
运维的头像运维
上一篇2025-04-16 20:50
下一篇 2025-04-16 20:52

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注