首页天道酬勤周欢周畅,周欢周畅双胞胎

周欢周畅,周欢周畅双胞胎

张世龙 08-06 10:55 86次浏览

⬆⬆⬆ 点击蓝字

关注我们

AI TIME欢迎每一位AI爱好者的加入!

尽管大家对认知科学和推荐系统并不陌生,很少人会想到两者的交叉会擦出怎样的火花。2020 年 9 月 25日,由中国科协主办,清华大学计算机科学与技术系、AI TIME 论道承办的《2020 中国科技峰会系列活动青年科学家沙龙——人工智能学术生态与产业创新》上,阿里巴巴高级算法专家dtdld所作的学术报告《认知智能与推荐系统》,从了解用户兴趣和意图这两方面,介绍了他在细粒度用户行为建模方面的研究与探索。

dtdld,阿里巴巴高级算法专家,2017年博士毕业于北京大学。他主要的研究方向为表征学习,推荐系统,目前已在NIPS/ICLR/ACL/WWW/VLDB/AAAI等会议上发表20余篇文章。其研发的超大规模商品图表征算法APP、用户表征框架ATRank、基于自监督对比学习的向量召回算法CLRec系列已先后在手淘多个个性化推荐场景下获得大幅提升。他目前在探索认知智能与推荐系统的结合点,并做了一系列探索性的工作,包括自监督的Disentangled用户/商品表征、认知推理、行为语义对齐、记忆机制等。

一、推荐系统与认知科学的交集

现今推荐系统目的主要是建立用户和商品之间高效的流量分发机制,其核心问题之一是如何更好地理解用户在系统中行为,包括如何有效记住用户历史上尽可能多的行为、推测行为背后反映的逻辑。而认知科学研究人们怎么认识世界、并在认知的驱使下做出行为,两者都关注人的建模问题。因此认知科学中关于人类的记忆机制、知识的形成、存储及传播的观点,可能会对推荐系统尤其是用户行为方式的理解有一定的借鉴意义。

最近几年随着深度学习的发展,从最开始的特征聚合到现在对行为粒度的理解,用户建模的方式有较大的变迁。

过去用户建模,会利用各种聚合规则人工抽取出用户行为的粗粒度特征,比如对品牌和类目的偏好。现在,这些工作被端到端的、更细粒度的行为建模所替代。一方面,通过这样的方式,我们能记住更多、更精确的用户兴趣,从而提高推荐效率。换言之,我们能知道用户具体干了什么。另一方面,通过对细粒度行为的理解,我们能探测用户行为背后的意图,即为什么产生这些行为,进而尝试一些新的交互形式。

下面,我们从这两方面,谈谈近期的工作成果。

二、记忆之链:用户行为表征

2.1

自注意力序列表征模型

我们的动机是摆脱用户的粗粒度表征,深入挖掘用户行为记忆中的意义并把它们表征出来。其中一个问题,就是用户的某一个行为相对于他所有的记忆来说,究竟代表着怎样的含义?

当时transformer刚发表,我们发现其做法与我们的目标非常一致:transformer代表的self-attention和人脑的记忆机制有一定的相似之处。从如下公式可以看出,频繁出现的事情在记忆中会被平均。比如我每天坐车去上班,可能哪一天坐的具体路线已经模糊不清,但如果有一天来场特别的旅行,这种非常意外、或频率较低的事情,则不太受其他行为干扰,能够较好地保留自身。也就是说,不同用户做的同一件事在记忆中代表的意义不同。

于是,我们设计了基于注意力机制的用户行为建模框架ATRank。然而它的局限性在于,用户无数的行为记忆会被塑造成一簇unlimited slots。一方面,由于工程原因,数量无限的slots无法存储;另一方面,只能支持少数向量的快速检索,庞大的向量召回线上代价较高。

因此,我们需要化无限为有限,利用少数几个slots,每个向量分别代表客户的独立兴趣。如果把行为按照pooling的方式形成一个单向量,会发现单向量在大规模的数据集上,多样性表征很差。比如在亿级别的数据集上,单向量只能召回一到两个兴趣,造成最终的用户体验较差。

2.2

多向量兴趣分块模型

面对这个问题,我们提出了一个方案,将不同的兴趣点变成不同的memory chunk。实际上我们在解一个”用户行为记忆是如何聚簇和压缩的“问题。

具体地,给定用户行为序列(sequence),我们希望能找到一种归属关系(assignment),把该序列里的每个行为分配到某个兴趣点上,形成一种映射关系。仅用这些兴趣点附近的行为去做兴趣点下的用户表征,然后用该用户表征还原该兴趣点下的用户序列,如此便能让最后形成的每个向量代表一个独立的兴趣,然后通过兴趣分别进行召回。

该方法的难点在于,如何在不知道目标item出自哪个兴趣prototype的情况下优化item到prototype的归属关系,以及loss怎么选择。

今年,我们利用上述思路实现了全量上线的工作。在实际线上,我们使用类目信息对prototype进行约束限制。如果不加这个信息,还是会发现推出的不同向量代表的风格可能比较接近,很难达到完美的差异化目标。

具体做法是,限定每个向量和一级类目绑定的关系,把整个sequence用prototype-based multi-head attention分成64个head,每个head都能与几个一级类目相关联。由于最终用户的向量需要较少,我们把原来的64个head变成8个一组,每8个向量中选出一个聚合的向量进行召回。这种方式在效率端和多样性上有比较显著的提升。

有意思的是,我们原来预期相似的类目会分到相同的group,但真正学出来的归属关系是发散式的。

例如,即使所有行为序列的信息都与鞋有关,我们仍然会在不同的group里找到一些不是鞋的类目,比如西服西裤、袜子,甚至召回商品中会出现房地产销售人员口才训练的书籍。可以看出,模型根据行为信息将用户解读为中介类型的人,并在这个兴趣点上进行发散。

然而这个模型仍存在较大的问题:线上inference的时候只能处理较少的用户序列,比如仅能支持200或者300以下的级别,但用户更长期的兴趣就丢失了。如何构件一个life-long memory,使得用户所有的行为都包括进来,同时memory里面每个slot都能代表用户的独立兴趣呢?

当下的推荐模型,单纯依靠模型结构的聚合如pooling/RNN并不能很好的记住长期信息,我们认为主要是受限于“下一个点击“这类监督信号。于是我们有两个任务:一个是传统的任务,预测下一个item;另一个则比较有意思,设计一套记忆机制的自监督方法,即判断历史上是否有类似的subsequence出现,以及给定一些历史上的碎片是否能还原整体的subsequence。经过推荐、视频和文本的QA、以及自己构建的小数据集上的测试,我们得出了一些有意思的结论:

第一,只经过推理任务训练的memory不能很好地记住历史。

第二,基于回忆任务的训练,即基于自监督的memory,其实也包含推理所需要的关键信息,尽管不能像带query的QA记得那么清晰。自监督记忆机制会尽可能记下更多内容,并塞到有限的slots里面。

第三,其实next item prediction的任务和机器自监督的任务并不会相互影响,两者结合反而推理任务的效果会更好。

第四,这套方法会形成比较自然的聚集的分块效应,保持之前的多向量里面每个slot都代表一个独立兴趣点的特性。

三、意图之谜:解离化表征

这个部分主要是想研究用户行为背后具体的细粒度偏好,即识别用户行为意图。

传统方法是给定一堆用户行为形成黑箱的表征,然后算各种相似度。现在我们想给定一个用户行为,不仅能得到在不同类目或者不同兴趣点下的偏好,同时该偏好的embedding的组织方式有较好的可解释性,即每一维能代表不同的含义。例如手机的偏好,第一维代表电池,第二维代表款式,第三维代表屏幕大小,这些含义由模型自己学出来。

具体做法是在刚才多向量的工作中加入一个beta项,当beta设定足够大的时候,就会限制dimension之间的关联关系,使得它们尽可能独立。

利用该方法,我们有一些下游任务可以玩。假如我们得到了一个用户表征,并且能识别这个表征中每一维的含义,我们可以挑选出其中一维控制其大小,相当于离散空间中的带控制的图片生成。假如定位到第一维代表包的大小,通过调整第一维的大小可以得到一个渐变的列表,保证其他维度相近,只在这一维发生变化,形成渐变效果。例如在手机里面发现某一维是关于风格的,从最小调到最大,可能得到从可爱到商务的风格,形成循序渐进的过渡,供用户挑选和适应。

然而,现在的问题是必须手动检查每一维代表的具体物理含义。因为我们所用的数据集完全是仅基于行为的理解,所以我们并不知道每一维和自然语言所描述的大、小、可爱、商务之间的关联关系。因此,我们的下一个目标是如何建立一个binding关系,把行为背后的语义和自然语言关联起来,从而衍生出更多的交互式的产品。

最后安利一个今年年初研发的自监督学习的表征框架CLRec,该工作现已支持其他很多的业务,比如商品召回、视频召回、各类多模态训练的召回。

未来,我们会聚焦于行为、文本、图片之间细粒度语义的对齐,以及记忆和激活机制的探索,在此基础上去探索新的交互式产品。

整理:鸽鸽

审稿:dtdld

排版:田雨晴

本周直播预告:

AI Time欢迎AI领域学者投稿,期待大家剖析学科历史发展和前沿技术。针对热门话题,我们将邀请专家一起论道。同时,我们也长期招募优质的撰稿人,顶级的平台需要顶级的你,请将简历等信息发至yun.he@aminer.cn!

微信联系:AITIME_HY

 

AI Time是清华大学计算机系一群关注人工智能发展,并有思想情怀的青年学者们创办的圈子,旨在发扬科学思辨精神,邀请各界人士对人工智能理论、算法、场景、应用的本质问题进行探索,加强思想碰撞,打造一个知识分享的聚集地。

更多资讯请扫码关注

(点击“阅读原文”查看直播回放)

大数据专业认知实践报告,大数据专业实践内容 感知 认知 决策 行动,什么是勤奋精进