TransFM:基于因子分解机的序列推荐方法

论坛 期权论坛     
匿名技术用户   2021-1-15 14:45   119   0
<div class="rich_media_content" id="js_content">
<p><strong>▌</strong><strong>概述</strong></p>
<p>今天解读的论文是由 Rajiv Pasricha 和 Julian McAuley 两位大佬提出的发表在 RecSys18 上的,是 TransRec 和 FM 的结合版本。论文下载地址:</p>
<p>https://cseweb.ucsd.edu/~jmcauley/pdfs/recsys18a.pdf</p>
<p>在下面会简单介绍 TransRec 和 FM。</p>
<p>对于电商网站(如亚马逊),媒体网站(如 Netflix,Youtube)等而言,推荐系统是其中至关重要的一环。传统的推荐方法尝试对用户和物品的全局交互进行建模。例如矩阵分解和其派生模型,虽然能够有效的捕获到用户的偏好,但是未考虑到时序特征,其忽略了用户的最近交互行为,提供了一个静态的推荐列表。</p>
<p>序列推荐的目的是基于用户的历史行为序列去预测用户将来的行为。Julian McAuley 作为主要作者的另一篇论文 ( Translation-based Recommendation ) 提出了“翻译”空间的概念,将物品作为一个点嵌入到“翻译”空间内,用户的序列行为则作为一个翻译向量存在于该空间,然后通过距离计算便根据用户 u 的当前行为物品 i,预测其接下来可能有行为的物品,具体可参考:</p>
<p><a href="https://mp.weixin.qq.com/s?__biz&#61;MzI2MDU3OTgyOQ&#61;&#61;&amp;mid&#61;2247485354&amp;idx&#61;1&amp;sn&#61;693c620aa7874e46c98954848e752097&amp;scene&#61;21&amp;token&#61;755578198&amp;lang&#61;zh_CN#wechat_redirect">序列推荐模型 TransRec</a></p>
<p>TransRec 的主要思路如下图所示:</p>
<p><img alt="640?wx_fmt&#61;png" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-5f1c39486bdd9d04f56fab2ebee70cdc"></p>
<p>本论文中提出了 TransFM,其结合了 FM 和 TransRec 的思想,将其应用在序列推荐中,这样做的好处是使用简单的模型对复杂的交互之间进行建模并能取得不错的效果。</p>
<p>FM 能够对任意的实值特征向量进行操作,并通过参数分解对特征之间的高阶交互进行建模。他可以应用在一般的预测任务里,并可以通过特征替换,取代常见的推荐算法模型。</p>
<p>TransFM 的主要思路如下图所示:</p>
<p><img alt="640?wx_fmt&#61;png" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-9bfb7cd12156ab0c779967117869017c"></p>
<p>TransFM 是对所有观察到的行为之间可能的交互进行建模,对于每一个特征 i,模型学习到两部分:一个低维的 embedding 向量 <img alt="640?wx_fmt&#61;jpeg" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-33d633e767bd23b78dea0cc2183598a0"> 和一个翻译向量 <img alt="640?wx_fmt&#61;jpeg" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-ae7bf42c363972f25ab2aea3696b43be"> 特征之间的交互强度使用平方欧几里德距离来进行计算,在上图中,展示了 user,item,time 的 embedding 特征和翻译向量,交互行为之间的权重由起始点和结束点之间的平方欧几里德距离进行计算。与 FM 一样,TransFM 可以在参数和特征纬度的线性时间内进行计算,从而有效的实现大规模数据集的计算。</p>
<p><strong>▌</strong><strong>相关研究</strong></p>
<p><strong>1. 序列推荐</strong></p>
<p>已经存在了许多基于 MC ( 马尔可夫链,Markov Chains ) 的序列推荐模型,比如 FPMC ( Factorized Personalized Markov Chains ),使用独立分解矩阵对三阶交互行为进行分解,继而来模拟成对的相互作用。PRME 使用欧几里德距离替换内积对用户-物品之间的交互行为进行建模。TransRec 同样也是一个序列推荐模型,通过共享物品的 embedding 向量空间,将用户行为转化为翻译向量,其计算公式如下:</p>
<p><img alt="640?wx_fmt&#61;jpeg" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-3feb27ba080abf0a25f8e465e90d9df7"></p>
<p>这些对于给定的用户历史行为序列十分有效,但是在不改变模型结构的前提下,并不能捕获时间,地理和其他的上下文特征。</p>
<p><strong>2. 因子分解机</strong></p>
<p>FM 对于任意的机器学习任务来讲是一个通用的学习框架,他模型任意任意特征之间的二阶交互,并很容易扩展到更高阶,每个特征的交互通过参数之间的内积来权衡。其公式如下 ( 这里讨论的是 FM 的二阶形式 ):</p>
<p><img alt="640?wx_fmt&#61;jpeg" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-4454d2c4086858ea5e511d17ed7eefed"></p>
<p>通过选择合适的损失函数,FM 可以应用在任意的分类,回归或者排序任务中,在这篇文章里主要是针对隐式反馈结合 BPR 算法框架去优化预测的结果。</p>
<p><strong>3. 混合推荐</strong></p>
<p>混合推荐结合了协同和 conetnt-based,目的在于提升效果并且为行为很较少的用户提供有效的选择,在一定程度上缓解了用户冷启动。这里可以利用
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP