港科大KDD 2017录用论文作者详解:基于异构信息网络元结构融合的推荐系统

在KDD 2017上,香港科技大学计算机系博士生赵欢作为第一作者的论文 Meta-Graph Based Recommendation Fusion over Heterogeneous Information Networks 被 research track接收并做口头报告。经雷锋网 AI 科技评论邀请,赵欢为雷锋网独家供稿,分享了团队此项研究的核心思想、算法框架及实验结果。

作者介绍

本文主要介绍 KDD 2017 的一篇有关推荐系统的论文:「Meta-Graph Based Recommendation Fusion over Heterogeneous Information Networks」 这篇论文被KDD 2017的research track接收并做口头报告(录取率8.6%)。作者包括:

  • 第一作者赵欢,香港科技大学计算机系博士生,研究方向为「异构网络与推荐系统」;
  • 第二作者姚权铭,香港科技大学计算机博士生,研究方向为「机器学习优化算法研究」,2016 Google Fellowship 获得者;
  • 第三作者李健达,香港科技大学硕士毕业生,本科毕业于上海交通大学。
  • 第四作者宋阳秋,香港科技大学助理教授,研究方向为「知识图谱、文本数据挖掘和自然语言处理」;
  • 第五作者李迪麟,香港科技大学正教授,研究方向为「信息检索,推荐系统,移动数据管理」。

核心思想

在这个信息爆炸的时代,推荐系统不仅能帮助用户更快地获取感兴趣的信息,同时也能创造巨大的商业价值,目前全球主要的互联网公司都会有专门的推荐团队来从事推荐算法的研究,旨在提升自己的业务效果。

传统的推荐系统中,最常见的方法就是「协同过滤」,典型的例子就是我们在电商网站见到的「购买该商品的用户也购买了/也在看」。协同过滤方法一般包括两种方式,即基于用户和基于商品的协同过滤,以及矩阵分解 (Matrix Factorization)。自从 2007 年 Netflix 百万大奖的推荐系统比赛以来,矩阵分解的方法开始变得流行。尽管矩阵分解可以获得不错的推荐效果,但也有明显的问题:

  • 1)稀疏性(Sparsity)。现实生活里的评分矩阵往往非常稀疏,因为单个用户评分的商品是非常少的;
  • 2)冷启动(Cold Start)。新产生的用户和商品往往都没有评分。

上述两种情况都会严重影响矩阵分解的预测准确性。

除了这两个基本的问题以外,矩阵分解还有一个更严重的问题:它很难适应现在的推荐系统。因为当下的推荐系统需要处理的特征并非只有评分信息,而是各种各样的信息(称作 Side Information),比如商品的描述,图片,用户的好友关系等。我们可以看图 1 的例子,这是 Yelp 上一个餐馆的详情页。

图 1:Yelp 上的一个详情页,Royal House

从图中,我们可以看到,除了评分信息之外,还有餐馆的地理位置,用户上传的图片,评论等信息。显然,在给用户推荐餐馆的过程中,这些信息都非常重要,但它们又很难融入到现有的矩阵分解的模型中。因此,我们需要一个全新的框架来解决这样的问题。这是我们此次 KDD 工作的核心思想:「我们用 HIN 来对 side information 进行建模,同时设计了一套有效的算法框架,从而获得更好的推荐效果」。

算法框架

预备知识

异构信息网络 (Hetegeneous Information Network 以下简称 HIN),是由 UIUC 的 Han Jiawei 和 UCLA 的 Sun Yizhou 在 2011 年的 VLDB 论文中首次提出 [1]。

简单地理解,HIN 就是一个有向图,图中的节点和边都可以有不同的类型,如下图,是一个从上面 Yelp 详情页抽取出来的 HIN。节点可以代表不同类型的实体,比如 user, review, restaurant 等, 边代表不同类型的关系,比如 Check-in, Write, Mention 等。

利用 HIN,我们就可以将各种各样的 side information 统一起来,接下来我们将介绍如何在 HIN 这个框架下完成我们的推荐过程。

从meta-path到meta-graph

在Sun Yizhou的VLDB2011的论文中,除了提出HIN,同时也提出了meta-path,用来计算两个节点之间的相似度。meta-path就是一个节点的sequence,节点与节点之间由不同类型的边连接,也就是不同的关系。

比如从上图中的HIN,我们可以设计meta-path:

它表示的意义就是两个用户在同一个餐馆签到。

我们可以提取一条meta-path的实例:

那我们可以衡量和 Bar Louie 之间的相似度,当有越多的meta-path实例来连接和 Bar Louie,它们之间的相似度就越大,我们也会可以给推荐 Bar Louie。我们可以发现,这条 meta-path 正好对应我们熟悉的「基于用户的协同过滤」,即经常去 Royal House 的人也会去 Bar Louie。

从这个例子我们可以看出,对于推荐系统来说,HIN和meta-path有两个好处:

  • 1) 非常完美地将各种side information融入到一个统一的模型;
  • 2)利用meta-path,可以设计出各种各样的推荐策略,除了推荐准确性提升之外,还能提供「可解释性」。

当然,在计算节点相似度这个任务上,meta-path也有自己的问题:「无法处理复杂的关系」。比如两个用户之间有如下连接性。

对应到图上的实例, 和 分别给 Royal House 写了一个评论,不仅给了五星好评,还在评论里同时提到了这里的「Seafood」,可以说这两个用户对餐馆的偏好非常相似。但是这样一种相似性,meta-path 无法对其进行建模。为了解决这个问题,有两篇论文 ( KDD 16 [2] 和 ICDE 16 [3]) 提出了一种更为通用通用的结构: meta-graph(也叫 meta-Structure)。相比 meta-path 要求必须是 sequence 的结构,meta-graph 只要求「一个起点和一个终点,中间结构并不限制」,这样大大提升了灵活性。因此,在我们的 KDD 论文中,我们采用了 meta-graph 这样一种结构,来计算用户和商品之间的相似度。在实践中,我们可以设计  条 meta-graph,从而得到多种商品和用户之间的相似度,也就是  个相似度矩阵。

推荐过程: 矩阵分解(MF) + 分解因子机(Factorization Machine)

通过HIN和mega-graph,我们完美地将各种各样的side information统一到一个框架中。接下来的问题就是「如何设计更好的推荐算法」。在这个论文里,我们用到了「MF + FM」的框架,简单来说: 分别对个相似度矩阵进行矩阵分解,得到组用户和商品的隐式特征,然后将所有的特征拼起来,使用分解因子机进行训练和评分预测。

对于一个样本,即用户-商品对,我们分别可以得到组特征,每组的维度为(在矩阵分解的时候,我们设定秩为)。那么我们就可以拼出下图中所以的一个维度为的特征向量。

Factorization Machine (FM) [4] 是 2010 年在 ICDM 上提出一种模型,由于可以对特征之间的高阶关系进行建模,以及对二阶参数进行低秩分解,因而在评分预测这个推荐任务上取得了非常好的效果。在实践中,我们一般使用二阶关系:

其中,是一阶参数,是二阶参数。为了学出 和,我们使用了 Least Squared loss:

特征选择: Group Lasso

一般在 FM 的训练过程中,往往也会加上的正则项来防止过拟合,用的最多的就是  。但是,在我们的工作中,由于我们会设计多条 meta-graph,并不是每条 meta-graph 都有用,为了自动选择出有用的 meta-graph,我们放弃了,而选择,也称作 group lasso。在我们的算法框架中,我们是以 meta-graph 为单位来构造用户和商品的隐式特征的,因此,每条 meta-graph 对应一组用户和商品的隐式特征。一旦某条 meta-graph 没有用,那么它对应的一组特征都应该被去掉,这就是我们采用 group lasso 来做正则项的动机。

使用 group lasso 正则项之后,目标函数优化就变成了一个非凸非光滑(non-convex, non-smooth)的问题,我们使用了邻近梯度算法(proximal gradient)算法来求解它。

以上就是我们的算法框架,接下来,我们将通过部分实验结果,来证明我们算法的优势。

实验结果

数据集和评估标准

我们使用了 Yelp 和 Amazon 这两个数据集,这两个都是非常经典的推荐系统数据集,同时也包含了丰富的 side information。数据的具体统计数据,可以参看我们的论文,这里只展示我们用到的 meta-graph,如下图。在 Yelp 上,我们设计了 9 条 meta-graph,在 amazon 上,我们设计了 6 种 meta-graph。

在推荐系统中,我们一般用来评估评分预测的好坏,越小意味着推荐效果越好。

其中,是实际评分,是预测评分,是 test set 的个数。

推荐效果

在实验中,我们和一些常见的方法相比,包括基于矩阵分解和基于HIN的方法。具体结果如下图:

上图中,RegSVD 和 FMR 是基于矩阵分解的方法,HeteRec [5] 和 SemRec [6] 分别是 WSDM14 和 CIKM15 上的两篇论文,在 HIN 上用 meta-path 来进行推荐,FMG 是我们的算法。另外,CIKM-Yelp 和 CIKM-Douban 两个数据集是 CIKM15 的作者 Shi Chuan 提供给我们的。根据上图,我们有以下发现:

在所有的数据集上,FMG 打败了所有的方法,推荐效果取得了不同程度的提升,证明了我们算法的有效性。

在 CIKM-Yelp 和 CIKM-Douban 这两个数据集,我们使用和 CIKM15 一样的 meta-path,依然取得了 4.2% 和 3.2% 的提升,进一步证明在 HIN 这个框架下,我们推荐算法的有效性。

在两种基于 HIN 的方法中,我们发现 SemRec 比 HeteRec 的效果好不少。除去推荐算法的差异,一个重要的不同就是,在 SemRec 中,作者设计了 U→∗←U→B 这样形式的 meta-path,而在 HeteRec,作者使用了 U→B←∗→B 这样形式的 meta-path。在我们的算法中,最终选择出来有效的 meta-graph,大多就是 U→∗←U→B 这样的形式。这个发现非常有意思,说明通过「用户协同」的推荐结果效果会更好一些。这个发现也和现实生活中对应,我们获取感兴趣的商品或者餐馆,除了兴趣本身之外,更多的时候是通过朋友圈里好友推荐而发现。它反过来也能解释 SemRec 好于 HeteRec。

除了推荐效果的比较,我们还做了其他很多实验,有兴趣的读者可以去阅读我们的论文,在这里就不做赘述了。

总结

最后,给我们的论文做一个简单的总结。近些年,由于移动互联网和大数据的发展,现在的推荐系统面临丰富side information场景,传统的基于矩阵分解的方法已经很难再发挥作用,而基于人工设计的特征工程又极其费劲。通过HIN和meta-graph,我们提供了一种简单有效的框架,既能够非常灵活地利用side information来提升推荐效果,同时,还能利用人工设计的meta-graph来保留必要的语义信息,从而对推荐结果提供一定的「可解释性」。通过实验,我们也证明了这个框架的有效性。

本文作者:奕欣

本文转自雷锋网禁止二次转载,原文链接

时间: 2024-08-11 17:23:11

港科大KDD 2017录用论文作者详解:基于异构信息网络元结构融合的推荐系统的相关文章

阿里iDST ICCV 2017录用论文详解:基于层次化多模态LSTM的视觉语义联合嵌入

本文讲的是阿里iDST ICCV 2017录用论文详解:基于层次化多模态LSTM的视觉语义联合嵌入, ICCV,被誉为计算机视觉领域三大顶级会议之一的.作为计算机视觉领域最高级别的会议之一,其论文集代表了计算机视觉领域最新的发展方向和水平.阿里巴巴在今年的 ICCV 2017上有多篇论文入选. 本文是阿里iDST与西安电子科大.西安交大等合作的 ICCV 2017 论文解读<基于层次化多模态LSTM的视觉语义联合嵌入>(Hierarchical Multimodal LSTM for Dens

从 20 篇ICCV 2017录用论文,看商汤科技四大攻坚领域

本文讲的是从 20 篇ICCV 2017录用论文,看商汤科技四大攻坚领域, 今秋,在以水城而闻名的威尼斯,来自世界各地的三千多位学者荟萃一堂,共赴两年一度的国际计算机视觉大会 (ICCV).这次大会的一个重要亮点就是中国学者的强势崛起.根据组委会公开的数字,会议 40% 的论文投稿来自中国的研究者.在中国的人工智能浪潮中,商汤科技以及它与港中文的联合实验室无疑是其中最有代表性的力量.在本届 ICCV 大会,商汤科技与香港中大-商汤科技联合实验室共发表了 20 篇论文,其中包括 3 篇 Oral

《嵌入式Linux软硬件开发详解——基于S5PV210处理器》——导读

前言 嵌入式Linux软硬件开发详解--基于S5PV210处理器 近年来,嵌入式技术和嵌入式产品发展势头迅猛,其应用领域涉及通信产品.消费电子.汽车工业.工业控制.信息家电.国防工业等各个方面.嵌入式产品在IT产业以及电子工业的经济总额中所占的比重越来越大,对国民经济增长的贡献日益显著.随着智能手机.媒体播放器.数码相机和机顶盒等嵌入式产品的普及,嵌入式系统的知识在广大民众中的传播也越来越广泛.出于对嵌入式高科技知识的追求,广大在校学生纷纷选修嵌入式系统课程,以获得嵌入式系统的理论知识和开发技能

CVPR 2017最佳论文作者解读:DenseNet 的“what”、“why”和“how”|CVPR 2017

雷锋网 AI 科技评论按:CVPR 2017上,康奈尔大学博士后黄高博士(Gao Huang).清华大学本科生刘壮(Zhuang Liu).Facebook 人工智能研究院研究科学家 Laurens van der Maaten 及康奈尔大学计算机系教授 Kilian Q. Weinberger 所作论文<Densely Connected Convolutional Networks>当选 CVPR 2017 最佳论文,与苹果的首篇公开论文<Learning From Simulate

详解基于javascript实现的苹果系统底部菜单_javascript技巧

(不好意,先前发布的是有误的分析.现在的这个没问提了!!!) 昨天看到了"妙味课堂"的一个苹果菜单的DEMO.根据里面提到的"勾股定理".我自己分析了一下代码.如下: 先来一效果图吧! 静止时: 鼠标滑动时: 一.要实现在的功能或效果: 在鼠标滑动的靠近其中某一张图片时,这个图片会随着鼠标向它的靠近而慢慢放大. a.是"放大"不是"变大".[放大]是等比例的,而[变大]:不一定是等比例.后面的公式中会体现. b.这里的[靠近]

《滚雪球》作者详解巴菲特:他的成功在于专注

赵刚 尽管CBN记者面前的爱丽丝·施罗德的眼神并没有她的著作<滚雪球>扉页上的照片看上去那么犀利,但聪明伶俐的她却获得了股神巴菲特的青睐.在5年的时间里和巴菲特长达2000多小时的接触,给了她一个全面了解股神的机会. 她称自己是最了解巴菲特的人,从巴菲特每天必读的5份报纸到来中国拒绝美食而大嚼汉堡,她眼中的巴菲特是全方位的.她也坦承这段经历改变了自己的人生,股神的精神似乎已经在她的人生里烙下了深深的印记. CBN:在和巴菲特接触的过程中,对他最深的印象是什么? 施罗德:在我的印象里,巴菲特是个

支付宝前端团队详解基于Node.jsWeb框架Chair

Chair是支付宝前端团队推出的,基于Node.js的Web框架,适用于大部分的Web应用. 本文简要介绍Chair的设计思想.功能架构和开发状况. 一.Chair的由来和设计思想 历史上,支付宝前端项目都是直接基于Java后端开发的.这种架构下,前端工程师做出网页模板(基于velocity模板引擎的vm文件),交给后端的Java引擎渲染.支付宝采用的Java引擎是名为Sofa的MVC框架. 对于前端工程师来说,这种架构有很多不方便的地方.首先,需要了解后端的实现,并且依赖开发环境中的dev服务

详解基于朴素贝叶斯的情感分析及 Python 实现

相对于「 基于词典的分析 」,「 基于机器学习 」的就不需要大量标注的词典,但是需要大量标记的数据,比如: 还是下面这句话,如果它的标签是: 服务质量 - 中 (共有三个级别,好.中.差) ╮(╯-╰)╭,其是机器学习,通过大量已经标签的数据训练出一个模型, 然后你在输入一条评论,来判断标签级别 宁馨的点评 国庆活动,用62开头的信用卡可以6.2元买一个印有银联卡标记的冰淇淋, 有香草,巧克力和抹茶三种口味可选,我选的是香草口味,味道很浓郁. 另外任意消费都可以10元买两个马卡龙,个头虽不是很大

详解基于CentOS 6.2下DNS主从复制搭建与部署

1)主从DNS--准备--DNS主从相关理论 1.什么是DNS? 简单的理解,Domain Name System,是互联网一项核心的服务,他作为一个桥梁可以将域名和IP地址相互因素的一个分布式数据库,能够使人更加方便的访问互联网,而不用去记复杂的IP地址. 2.DNS的类型,master/slave架构: Master 这种类型的DNS的这个配置文件中,包括所有主机的主机名等相关信息,一般是我们手动添加修改的,设置完之后我们要重启服务的才能读取到master库里面的数据内容:一般我们在做DNS