当前位置:

首页 > 业界资讯 > 泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

作者|汪昊审校|孙淑娟推荐系统是目前互联网行业最火爆的技术之一。在过去的十年中,互联网行业诞生了数以百万计的推荐系统模型迭代版本。尽管针对不同场景进行优化的推荐系统模型非常之多,但是经典的模型非常少。矩阵分解是推荐系统领域勃兴早期,在Netflix大赛中展露头角的推荐系统算法,也是过去十年中最为成功的推荐系统算法。尽管到2023年的今天,推荐系统领域早已是深度学习的天下,矩阵分解仍然广泛应用于各大公司研发过程中,并且仍然有许多科研人员在从事相关算法的研究工作。矩阵分解算法最为经典的论文是

作者 | 汪昊

审校 | 孙淑娟

推荐系统是目前互联网行业最火爆的技术之一。在过去的十年中,互联网行业诞生了数以百万计的推荐系统模型迭代版本。尽管针对不同场景进行优化的推荐系统模型非常之多,但是经典的模型非常少。矩阵分解是推荐系统领域勃兴早期,在 Netflix 大赛中展露头角的推荐系统算法,也是过去十年中最为成功的推荐系统算法。尽管到 2023 年的今天,推荐系统领域早已是深度学习的天下,矩阵分解仍然广泛应用于各大公司研发过程中,并且仍然有许多科研人员在从事相关算法的研究工作。

泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

矩阵分解算法最为经典的论文是 2007 年的 Probabilistic Matrix Factorization 。在此基础上,后人进行了大量的扩展工作,比如 2021 年的 RankMat(论文下载地址:https://arxiv.org/abs/2204.13016)、ZeroMat (论文下载地址:https://arxiv.org/abs/2112.03084) 和 2022 年的 DotMat (论文下载地址:https://arxiv.org/abs/2206.00151)、KL-Mat (论文下载地址 :https://arxiv.org/abs/2204.13583/ 代码下载地址:https://github.com/haow85/KL-Mat)等。推荐系统因为其简单易用性,以及速度快等原因,深受互联网行业广大工程师的喜爱。

推荐系统冷启动问题是今年来备受关注的另一个研究热点。许多从业者解决推荐系统的思路都是迁移学习和元学习。然而这个思路有个致命的缺点,就是需要其他知识领域的数据。而许多公司是不具备这一条件的。真正不需要任何数据的冷启动算法,是在 2021 年 ZeroMat 提出以后出现的。代表算法包括上一节提到的 ZeroMat 和 DotMat。本文将要介绍的泊松矩阵分解算法(PoissonMat)是 2022 年国际学术会议MLISE 2022发表的论文。论文的名称是PoissonMat:Remodeling Matrix Factorization using Poisson Distribution and Solving the Cold Start Problem without Input Data(论文下载地址:https://arxiv.org/abs/2212.10460)。

我们首先回顾一下Probabilistic Matrix Factorization的MAP定义:

泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

我们随后定义用户给物品打分这一行为为泊松分布。根据泊松分布的定义,我们得到以下公式:

泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

根据泊松公式中参数的定义,我们有:

泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

根据齐夫分布,我们可以得到如下公式:

泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

综合以上公式,我们得到泊松矩阵分解(PoissonMat)的解析形式:

泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

采用随机梯度下降算法求解以上公式,我们得到如下算法流程:

泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

作者随后在 MovieLens 1 Million Dataset 和 LDOS-CoMoDa Dataset 上进行了算法准确率和公平性的实验对比:

泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

图 1 泊松矩阵分解在 MovieLens 1 Million Dataset 上的对比实验

泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

图 2 泊松矩阵分解在 LDOS-CoMoDa Dataset 上的对比实验

根据实验对比效果,我们可以得出如下结论:泊松矩阵分解(PoissonMat)在准确率和公平性指标方面都优于其他算法。并且难能可贵的是,泊松矩阵分解算法没有用到任何输入数据,是一个彻头彻尾的零样本学习算法,很好的解决了冷启动问题。

最后,作者是在 16G RAM 和 Intel Core i5 的联想家用笔记本上做的实验,算法运行速度飞快,并且实现也非常简单。

以解决推荐系统冷启动问题为目标的零样本学习算法,目前是研究热点。而不需要任何数据解决零样本学习问题的真正的零样本学习算法,始自 2021 年的 ZeroMat 算法。本文介绍的泊松矩阵分解算法(PoissonMat)性能优于 ZeroMat 及其后续算法 DotMat,是目前这一领域最优秀的算法之一。由于相关研究还处于起步阶段,希望能够引起广大科技从业者的关注和重视。

作者介绍

汪昊,前 Funplus 人工智能实验室负责人,前恒昌利通大数据部负责人。本科 (2008 年)和硕士(2010年)毕业于美国犹他大学(University of Utah)。对外经贸大学在职 MBA (2016年)。在推荐系统(公平性/基于场景的推荐/冷启动/可解释性/排序学习)、计算机图形学(几何建模/可视化)、自然语言处理(工业界的落地应用)、风控反欺诈(金融/医疗)等方向有多年的经验和独到的见解。在互联网(豆瓣、百度、新浪、网易等)、金融科技(恒昌利通)和游戏公司(Funplus等)有 12 年的技术研发和管理经验。在国际学术会议和期刊发表论文 30 篇,获得国际会议最佳论文奖 / 最佳论文报告奖 3 次 (IEEE SMI 2008 Best Paper Award / ICBDT 2020 Best Oral Presentation Award / ICISCAE 2021 Best Oral Presentation Award)。2006 年 ACM/ICPC 北美落基山区域赛金牌。2004 年全国大学生英语能力竞赛口语决赛铜牌。2003 年济南市高考理工科英语状元。

本文内容来源于互联网,如有侵权请联系删除。
作者最新文章
业界资讯
相关文章 更多
“异算方舟”国产计算系统软件生态全栈平台发布
“异算方舟”国产计算系统软件生态全栈平台发布

6月29日,中科院计算机网络信息中心等单位发布“异算方舟”国产计算系统软件生态全栈平台。该平台针对算法供给不足、代码迁移困难、智能应用落地慢三大痛点,打造九衍枢算法库、无界BoundX代码转换大模型、Agent-HiReFlow自动化仿真智能体三大能力,提供从底层算法到代码适配再到智能应用的一体化解决方案。

熵基科技发布HuggingZKT算法商城
熵基科技发布HuggingZKT算法商城

熵基科技发布HuggingZKT算法商城,面向空间智能领域打造端云协同AI算法管理平台,覆盖算法训练、发布、订阅、升级等全生命周期,形成开放高效的算法服务体系,推动园区、楼宇等场景的AI能力敏捷调用,助力空间智能规模化应用迈入新阶段。

芬兰阿尔托大学找到了让视觉文档理解彻底摆脱
芬兰阿尔托大学找到了让视觉文档理解彻底摆脱"坐标困境"的新路径

芬兰阿尔托大学提出用语言引用原文代替坐标定位,解决视觉文档理解中的归因幻觉问题。实验显示,该方法使归因幻觉率从97%降至28%,证据召回率从个位数提升至50%以上,且答案质量几乎不变。

什么是推荐系统以及其基本原理使用案例
什么是推荐系统以及其基本原理使用案例

推荐系统主要分为基于内容与协同过滤两类。基于内容的方法根据物品特征与用户历史评分预测喜好,解决商品冷启动但需特征工程。协同过滤通过用户或物品相似度进行推荐,无需领域知识,但存在冷启动与复杂度问题。

对于懂得编程的人来说,编程对你来说有什么乐趣?编程大概是什么感觉?
对于懂得编程的人来说,编程对你来说有什么乐趣?编程大概是什么感觉?

解决编程问题后的痛快、完成作品的成就感、获取知识的满足感,以及用代码实现简化生活的惊喜与踏实,这些是编程独有的乐趣,只有真正写代码的人才能体会其中的酸甜苦辣、惊喜与满足,令人回味无穷。

以前我没学过编程 请问编程从那里学起
以前我没学过编程 请问编程从那里学起

编程语言仅为工具,真正决定高度的是数据结构和算法及计算机底层逻辑理解。建议从C语言入门,打好基本功。根据目标选择深入方向,避免同时学习多门语言。最终目标是学会用程序解决问题,语言只是实践载体。

编程和我
编程和我

考取了程序员证书,却无法与“程序员”身份画等号,更偏爱算法和底层操作,对软件工程兴趣寥寥。编程作为兴趣能带来挑战与喜悦,一旦沦为重复工作便失去意义。坚持自然学习,远胜于强制赶进度。

趣味编程:少儿编程思维的启蒙之旅
趣味编程:少儿编程思维的启蒙之旅

Scratch图形化编程以拖拽积木块方式启蒙少儿编程思维,无需记忆代码语法。通过素材库、即时反馈和社区协作,帮助孩子在创作中理解顺序执行、条件判断等核心概念,锻炼逻辑、创造力和问题解决能力。

函数式编程与异步编程学习
函数式编程与异步编程学习

函数式编程和异步编程,是很多开发者绕不开的两个核心概念。它们听起来有点学术,但实际上在日常的软件开发中,尤其是现代后端、数据处理和并发场景里,几乎无处不在。今天我们就来捋一捋,这两者到底在讲什么,以及怎么用Python写点实际的例子。 函数式编程 函数式编程,简单说就是一种把计算过程当成数学函数组合

再论中文编程
再论中文编程

中文编程旨在用母语写代码,但易语言等早期方案因理论根基不实、生态薄弱而失败。核心突破依赖编译原理创新,如解决产生式数量导致的LR状态爆炸问题,可尝试解释型分析法和公共命名空间。

查看更多
精品专题 更多
装机必备
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows
Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

macOS软件
macOS软件

正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

Mac软件 更多
灵活计算器
灵活计算器
macOS/iOS/Android

灵活计算器是一款笔记式算数应用,支持实时计算、动态关联和云端同步功能。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

赤友清理大师
赤友清理大师
macOS

赤友清理大师是一款为 Mac 设计的智能清理优化工具,可精准扫描垃圾、大文件、重复文件等,释放磁盘空间。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

极度公式
极度公式
Windows/macOS/Linux

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

WINDOWS 更多
Windows 10
Windows 10
Windows

Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。

极度公式
极度公式
Windows/macOS/Linux

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

密码键盘
密码键盘
Windows/macOS/iOS/Android

密码键盘是一款兼具安全性与便捷性的高效密码管理器。日常使用里的持续防护和信息管理会更突出,适合把安全控制放进长期使用流程中的场景。