ReCNet:在Wayfair深度学习基于跨类推荐

2019年12月12日
围棋翁冒充户外

围棋翁

介绍

主要目标我们的推荐系统是缩小Wayfair庞大目录,以帮助客户准确地找到他们想要的产品。最推荐算法利用客户的浏览历史记录,其中包括各类型的产品,如点击互动,添加到购物车的行动,和订单。每个客户的浏览历史的多样性使得充分利用它包含相当困难的信息的任务。一个与不同的浏览历史记录是确定我们是否可以用客户的互动与产品的一类推荐相关的产品在其他类别的挑战。例如,如果一个客户有浏览床和梳妆台,我们想推荐互补类像床头柜,以及项目。这些建议将允许客户找到适合她的风格,她开始通过该类别中的可能淹没选项涉水前有用的产品。能够帮助客户找到从家具,他们没有浏览,与之交互,或搜索类项目,因此将显著改善的网上购物体验。

应用标准的协同过滤技术在跨类别场景像上面提到的一个是具有挑战性的。首先,基于相似性指标,如杰卡德指数接近的计算量很大。要在跨类推荐方案计算相似性指数,我们需要计算从数千类别的数以百万计的产品之间的客户互动。此外,当类别更新和扩频成对计算是不可扩展或维护。此外,矩阵因式分解方法施加在编码大和稀疏矩阵上大类别浏览历史花费时间来收敛,并且可以在数值上是不稳定的。考虑到这些障碍,我们对数据科学产品推荐团队决定探索其他途径。

在这篇文章中,我们将通过我们在这里开发了在Wayfair,ReCNet令人兴奋的方法之一(在步行回覆盟国COOL工作),基于深学习的混合推荐模型,诬陷为度量学习问题。ReCNet支持跨Wayfair目录的补充建议,并正在积极扩展到许多用例。

方法

要在现实世界的商业应用深度学习技术时,必须考虑四个关键组成部分:问题改造,模型架构,损失函数的设计,生产和部署。我们将介绍每一种在下面的章节。

问题转型:度量学习

直观地说,在跨类别的情况下,一个产品,因为它与此客户拥有或浏览其他类别的产品顺利推荐给客户。试想一下,存在这样一个空间,是不会相互影响的产品接近对方。然后,在这个空间里,两个产品之间的距离,实际测量他们是如何紧密匹配的,这是解决跨类建议,作为一个度量学习问题的主要目标。在度量学习,模型训练,以创建编码包含在所学指标性质的潜在空间。例如,在FaceNet,在潜在空间措施面部相似[1]欧几里德距离的工作。公制学习在时尚界也适用于学习服装款式[2],其中的曲风类似的服装向量表示是相互靠近的空间。在我们使用的情况下,那些经常购买,添加到用户策划的想法板一起,或共享相同的风格标签将接近彼此的度量空间的产品。我们定义这些产品作为曲风相似。此外,它们具有类似的侧信息(价格,评级,回顾数等),产品将更加密切。那么问题就变成了如何创建这样一个空间。

图1:该ReCNet度量空间。在这里,形状代表各种类型的家具顺利在一起,而颜色指示价格范围。我们希望度量组家具风格上,而微调基于像价格方面信息的位置。

模型体系结构:连体网

在我们的ReCNet模型中,我们培养了连体网络,其中每条腿是多峰的,并且使用宽和深架构[3]。输入到网络连体是一对产品图像和它们的侧信息载体。连体网络中的每个腿部具有广泛的子网和子网深。

图2:以上是ReCNet模型结构的图。先启V3示意图从谷歌AI博客。

谷歌的团队开发了深刻的子网来概括和宽子记忆[3]。我们做了一些修改,这个框架有利于我们的使用情况下,培养了浅网络作为宽子学从侧面信息的矢量表示。我们从Wayfair的内部视觉搜索模型的一个版本进行迁移学习初始化深子网的基础上,成立之初V3架构。通过深子网,嵌入载体(一世)从图像特征衍生被学习。与此同时,宽子网获知嵌入载体(小号)从辅助信息的功能。侧信息的特征被馈送到一层宽子网记住抽象略微特征,旨在防止所述网络从过拟合,同时仍然收敛到更好的局部最优。然后,通过连接产生的合成嵌入每个产品一世小号并且对所得到的矢量进行L2-正常化。以这种方式,合成的嵌入位于一个单元超球,并且具有在其他编码在某种尺寸和侧信息表示的图像信息。

损失函数设计:定制Constrastive损失

即使有合成的嵌入,我们仍然需要一个损失函数模型进行训练。原始对比损失函数损失内喷射时在匹配对的两个项是远离彼此或两个项目中的非匹配对太靠近在度量空间[4]一定的余量之内。原来损耗函数定义为

哪里ÿ是两个产品是否曲风相似或不二进制标签。dw ^之间的距离度量X1X2,两个了解到产品的载体。中号衡量利润率的产品必须表现出,如果他们不匹配。换句话说,这是需要在它们之间不征收损失的最小距离。最重要的是,我们结合图像信息嵌入维度的概念(一世)和辅助信息嵌入尺寸(小号)在

哪里

这里ÿ标签是否两款产品照方信息和类似措施的保证金不同产品的大小应该是从学习的空间彼此。Alpha是用于相对于图像信息的辅助信息的权重。通常,定制的损失函数可以被看作是施加在侧信息的尺寸和图像尺寸信息两个嵌套对比损耗函数。给予两个标签,ÿÿ,自定义的损失函数可以被细分为四种情况:

1。如果两个产品是文体相似(ÿ= 1),并具有类似的辅助信息(ÿ= 1),如果它们太远在图像中嵌入的尺寸和侧信息嵌入尺寸损失被引入。

2。如果两个产品都没有文体相似(ÿ= 0),但具有相似的边信息(ÿ= 1),如果它们太靠近在图像中嵌入尺寸损失被引入。

3。如果两个产品是文体相似(ÿ= 1),但不是在侧信息相似(ÿ= 0),如果它们太远在图像中嵌入的尺寸和太接近在侧信息嵌入尺寸损失被引入。

4。如果两个产品都没有文体相似(ÿ= 0)也不是它们在侧信息(类似于ÿ= 0),如果它们太靠近在图像中嵌入尺寸损失被引入。

生产部署:近邻的建议

一旦模型架构已经确定,我们采用随机梯度下降了循环学习率训练模型[5]。然后,我们从连体网络负载一条腿到内存中,并用它来嵌入所有产品从目录中。该方式的嵌入在ReCNet潜在空间产品的矢量表示。要生成的建议,我们只需要查询产品的最近邻居在客户的浏览历史记录。要做到这一点,我们使用专为快速,高效的近邻搜索数据结构。确定性的数据结构,像球树,可以用来解决此类问题,以及像分层导航的小世界图表概率数据结构。后面这些结构改善后球树木的性能,但提供近似最近邻搜索,而不是一个确切的一个。我们发现,分层导航的小世界图表生产工作得很好,并产生合理的结果在下面的部分。

结果

以下是利用一个控制台表来生成端表建议的定性例子。我们在这里看到的木质光泽的控制台表中有经典的,但简单的设计。ReCNet能够捕捉到的设计和风格上找到类似的茶几在形状和结构与多样性的建议。因为从产品的图像和侧信息模型获悉,它具有阻止我们从冷启动问题的痛苦基于内容的属性。此外,由于基于内容的属性,ReCNet挖掘更深的目录,以更多的文体暴露类似的产品给客户。

图3:左边是玄关桌顾客浏览。在右边是结束表ReCNet会推荐为控制台表。

现在我们的模型是如何工作的定性感。但是,如何从定量的角度发挥作用?是模型真学问潜在空间为自定义损失函数预期或反映?在潜在空间的进一步检查,我们拉的产品对我们的测试集,并计算它们之间的成对距离。这些距离的分布可以在该曲线与表示四个标签组合中的每一个不同颜色可见。

图4:可视化的产品之间的成对距离的分布有助于有ReCNet潜在空间的定量图。

的三峰分布确认ReCNet能够微调基于边信息的度量。多数是在辅助信息(红色)文体类似和匹配的产品都彼此接近比是文体类似的产品,但在边信息(黄)不相似。产品不在文体相似,不管他们是在侧信息相似的,是渐行渐远。蓝色和绿色分布之间的重叠,预计因为我们不区分产品是否有着相似的侧信息,只要他们不曲风相似。这样,当我们做这个潜在空间最近邻居搜索后,我们取得不仅是最曲风相似的结果,也是那些沿着侧信息方面,如价格,等级等比赛

未来的工作

在未来,我们将着眼于实现具有两种不同的利润率/标签创建标签配置的四种可能的组合的概念三重损失。此外,我们将看看插入ReCNet到当前个性化框架在其他使用情况如在线广告和营销电子邮件支持的建议。Wayfair数据科学是永远做不完的,敬请关注在Wayfair科技博客更多的更新!

参考

[1]施罗夫,F.,Kalenichenko,D.,&菲尔宾,J。(2015)。FaceNet:统一嵌入人脸识别和集群。2015年IEEE会议计算机视觉与模式识别(CVPR)。DOI:10.1109 / cvpr.2015.7298682。第5页

[2]维特,A.,科瓦奇,B.,钟,S.,麦考利,J.,巴拉,K.,&Belongie,S。(2015)。学习视觉服装风格与异构二元共现。2015年IEEE国际会议计算机视觉(ICCV)。DOI:10.1109 / iccv.2015.527。第3页

[3]程,H.-T.,Ispir,M.,阿尼尔,R.,哈克,Z.,香,L.,耆那,V.,...柴,W。(2016)。广泛而深刻学习的推荐系统。第一次研讨会上深入学习的推荐系统的程序 - 2016年DLRS DOI:10.1145 / 2988450.2988454。第30页

[4] Hadsell,R.,普拉,S.,&Lecun,Y。(N.D.)。降维通过学习一个不变的映射。2006年IEEE计算机协会会议计算机视觉与模式识别 - 第2卷(CVPR06)。DOI:10.1109 / cvpr.2006.100。第16页

[5]史密斯,L. N.(2017)。周期性学习速率的训练神经网络。2017年IEEE冬季会议计算机视觉中的应用(WACV)。DOI:10.1109 / wacv.2017.58。第4页

回应

  1. 阿凡达
    千里

    2019年12月12日

    有趣的文章!

提交评论

注意:您的电子邮件地址才能添加注释,但将不会被发表。