推荐系统遇上深度学习(一二二)-[阿里]通过孪生掩码层来高效的学习特征表示向量

今天给大家介绍阿里在CIKM2021上发表的一篇关于Embedding的论文,本文的标题是从阿里妈妈技术复制过来的(共有6篇论文入选,可参考https://zhuanlan.zhihu.com/p/401520358)。论文设计了孪生的自适应掩码层(AMTL)来计算每个特征保留的Embedding长度的大小,在提升精度的同时,还能有效节省Embedding的存储空间并很好的支持模型特征向量的热启动,一起来看一下。

1、背景

大多数的推荐系统模型遵循Embedding + MLP的范式,其中Embedding层的参数往往占模型参数量的90%以上,因此Embedding层对于效果的提升非常重要。

标准的Embedding层将每个离散特征映射为相同长度的向量,这种方法主要存在两方面的问题。一方面,离散特征的不同取值在数据中的出现频次是相差巨大的,对于高频次的特征取值,应当使用长度更长的Embedding向量来表示更丰富的信息,而对于低频次的特征取值,如果Embedding向量过长,则容易导致过拟合。因此,如果对所有特征取值采用相同的长度会降低Embedding学习的有效性。另一方面,相较于灵活的Embedding长度处理方式,定长的方式需要的存储空间也是更大的。

针对标准的定长Embedding处理方式存在的问题,有一些工作开始研究不定长的处理方式。这些方法主要可以分为两类。第一类是基于规则的方法,对于频次高的特征,设置更长的Embedding长度,对于频次低的特征,设置较低的Embedding长度。这类方法的主要问题是较为依赖人工经验。第二类是基于神经架构搜索(Neural architecture search ,简称NAS)的方法,这种方法从候选的Embedding长度中寻找每个特征最适合的Embedding长度,但候选集往往会被限制在有限的范围内。同时,上述说的两类方法都需要从头开始训练来找到最适合的Embedding长度,对于模型特征向量的热启动(warm starting)并不友好。

针对上述方法的问题,论文设计了孪生的自适应掩码层(AMTL)来计算每个特征保留的embedding长度的大小,在提升精度的同时,还能有效节省embedding的存储空间并很好的支持模型特征向量的热启动,下面一张图概括了现有的处理方式以及本文提出的方法,本文的方法将在第二节进行介绍。

2、方法介绍

2.1 基本思路

论文提出的基本思路是在定长Eembdding的基础上,针对每一个特征取值对应的Embedding,学习一个掩码向量,掩码向量的定义如下:

也就是说,在实际应用时,对特征fi的Embedding向量ei,其0到ki的索引下对应的取值保留,大于ki的索引下对应的值置0。这种方式有以下几点优势:

1)存储时,对特征fi的Embedding向量ei,只需要存储ki+1长度的向量即可,线上应用时用0补齐为相同的长度,可减少存储空间
2)由于Embedding的初始化是定长长度的向量,掩码向量通过其他部分的网络单独学习,可以通过warm starting的方式对Embedding进行初始化。

那么接下来的问题是,如何学习掩码向量?论文设计了孪生的自适应掩码层(Adaptively-Masked Twins-based Layer,以下简称AMTL),咱们在下一小节进行介绍。

2.2 AMTL介绍

AMTL的架构如下图所示:

对AMTL来说,学习方向主要是基于特征的出现频次,因此输入特征主要是频次相关特征,输出为one-hot向量,其中1位置所在的索引,其实就是上一小节中所提到的ki。那么基于ki,就可以生成对应的掩码向量mi

从上到下来介绍一下AMTL的计算过程。对于频率向量,分别输入到两个孪生的自适应掩码层,分别计作h-AML和l-AML,输出和Embdding相同长度的向量。这种设计思路的主要原因是考虑到如果只是用单一的AML,参数的学习会受频率高的特征的主导,因此设计h-AML和l-AML,分别用于高频特征和低频特征的掩码向量的学习??梢钥吹?,两个AML的输出,会进行加权,而权重基于特征的出现频次,如果出现频次高,权重α大于0.5,h-AML的输出占据主导,如果出现频次低,权重α<0.5,则l-AML的输出占主导。

两个AML的输出结果加权后,首先通过softmax,再通过argmax和one-hot操作,得到ont-hot向量计作ti,最后乘上事先定义好的矩阵M(对矩阵的元素Mi,j来说,如果j<=i,则Mi,j=1,否则等于0),得到掩码向量mi。

上述过程中存在的主要问题是argmax是无法进行梯度传导的,因此使用Temperated Softmax,如果将温度系数设置很小的话,可以达到近似argmax的效果:

进一步,借鉴直通估计器的思路( Straight Through Estimator,简称STE),巧妙的能在前向计算的时候使用argmax得到的one-hot向量,以及在梯度计算的时候对Temperated Softmax得到的向量进行更新,减小二者的gap,具体计算公式如下:

好了,AMTL的整体结构介绍到这里,接下来看下实验结果。

3、实验结果

论文对比了AMTL和一些现有方法的比较,从AUC和存储消耗两份面进行比较,可以看到,AMTL无论是在模型精度还是存储空间上,都取得了不错的提升:

好了,本文就介绍到这里,论文设计了孪生的自适应掩码层(AMTL)来计算每个特征保留的embedding长度的大小,在提升精度的同时,还能有效节省embedding的存储空间并很好的支持模型特征向量的热启动,感兴趣的同学可以阅读原文~

?著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,992评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,212评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事?!?“怎么了?”我有些...
    开封第一讲书人阅读 159,535评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,197评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,310评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,383评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,409评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,191评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,621评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,910评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,084评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,763评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,403评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,083评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,318评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,946评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,967评论 2 351

推荐阅读更多精彩内容