【51CTO.com原创稿件】推荐系统自诞生以来在学术界和工业界都得到了广泛的应用。许多举足轻重的网站比如亚马逊、今日头条和抖音都依靠推荐系统获得了大量的点击和丰厚的企业利润。如何提升推荐系统的点击率至今仍是业内主要研究的方向之一。
尽管推荐系统引起了很多人的关注,但是有些固有的内在问题一直困扰着推荐系统的从业者。冷启动问题作为重要的推荐系统研究课题,虽然广受关注,但是一直以来都缺乏有效的解决方案。
推荐系统的冷启动问题指的是当我们遇到新的用户或者新的物品的时候,因为缺乏历史数据,无法给用户进行推荐的问题。现在流行的解决方案包括元学习(Meta Learning)等技术方法。
在 ICISCAE 2021 上研究者提出了一个名为 ZeroMat 的算法,在完全不利用任何输入数据,仅仅知道评分数据最大值的情况下解决了推荐系统冷启动问题。
首先,作者借鉴了 Probabilistic Matrix Factorization 的框架定义了矩阵分解的问题,也就是我们要计算如下概率的最大值:
根据齐夫定律,我们对用户评分概率分布进行如下建模:
另外,我们用正态分布进行如下建模:
将公式展开,我们得到如下公式:
利用随机梯度下降,我们得到:
整理之后,我们复原用户评分值:
我们注意到,整个计算的过程中没有用到任何的外部输入数据, U 和 V 都是参数,唯一需要知道的就是评分的最大值。比如电影评分的最大值是 1 分还是 5 分,这通常是个产品设计问题,并且都是预先都知道的。
在实验中,作者对比了 3 个算法的效果,分别是 ZeroMat, 随机定值和经典的矩阵分解算法,作者用 MAE 和 Degree of Matthew Effect 这 2 个指标分别验证了 ZeroMat 的效果。令人惊奇的是 ZeroMat 的效果有的时候竟然比有完整输入数据的经典矩阵分解算法更优。
3 种不同算法在 MAE 上的测试效果
3 种不同算法在 Degree of Matthew Effect 上的测试效果
推荐系统马太效应是困扰研究学者和工业界从业者已久的问题,ZeroMat 是首次提出了在完全不利用任何数据的情况下解决冷启动问题的算法框架。算法简单易懂,运行速度快,效果非常好,为彻底解决推荐系统冷启动问题打开了一扇不同于以往的门。
【51CTO原创稿件,合作站点转载请注明原文作者和出处为51CTO.com】