首页 电商 正文

微信开发工程师带你一文了解推荐领域最新工作 微信小程序之页面路由

2024-03-21 19:32
admin

介绍

工业界通用推荐系统包括两个阶段的流程,匹配(match)和排序(rank)。在匹配的过程中主要是根据用户的一些兴趣点,找到可能感兴趣的潜在商品集。由于整个商品集的海量性,对实时访问的用户去计算他对全部商品的感兴趣程度是不实际的,所以需要预先根据一些兴趣、特征策略等来寻找用户可能感兴趣的潜在商品集,在此基础上,再根据特定的模型算法来进行商品集兴趣分深层排序,效果指标往往通过点击率(ClickTroughRate)、转化率、时长等来量化,所以rank阶段的主要目的就在于预测一个用户在他感兴趣的商品中的CTR等,并且根据预测分值的大小进行排序,最终返回排序作为推荐系统的推荐结果。

本文将介绍三篇重点分别在ranking,matching和featureenginerring上的文章,借此来展示业界推荐系统方面的一些最新工作进展。

1.Ranking:

BehaviorSequenceTransformerforE-commerceRecommendationinAlibaba

这篇文章主要关注在rank阶段的改进。以往在预测CTR场景下常见的深度学习方法是基于嵌入层与多层前馈神经网络的结合,将大量的低阶原始特征通过简单地嵌入层进行降维,然后降维后的低维特征再作为全连接网络的输入,最终通过网络输出对CTR点击率的概率预测(由于输出结果是一个点击概率,所以取值范围落在区间[0,1]上)。具有代表性的工作参考WDL(wideanddeeplearningbygoogle)和DIN(DeepInterestNeworksbyAlibaba)。

但是上述方法存在一个比较明显的问题,直接输入原始特征实际上缺失了很多高阶的特征信息,比如高阶的交互项、序列信息等。这类特征在推荐场景下往往比较重要,比如年龄特征与性别特征的交互项可以刻画不同年龄层与不同性别的购买需求差异性。另一点,一个客户在购买了手机后很有可能会继续浏览手机配件等商品,就需要一些行为序列特征去捕捉这些信息。因此,从这些实例中可以获知,高阶的特征在进行点击率预测的任务十分重要。对比前面提到的两种方法,WDL仅仅是简单地拼接rawfeatures,DIN考虑了通过注意力机制来刻画商品与用户的历史兴趣的多峰表征,二者都没有考虑行为的序列特征。

为了解决这方面的问题,作者参考了在NLP领域机器翻译任务transformer模块。由于在机器翻译中,语言的序列信息是十分关键的,而transformer可以取得很好的效果,所以认为如果把客户的购买历史看做是一串文字,那么每种商品之间的序列相关性的信息也可以通过transformer捕捉到。

该论文整体网络结构如下,主要包含三个部分:嵌入层,转换层,前馈网络层。

嵌入层的主要目的仅仅在于将高维的特征映射到相对低维的空间中,通过一个嵌入矩阵

,其中

就是嵌入空间的维度。需要输入到嵌入层的特征主要有一下几个部分:包含序列信息的item特征和其他特征。其他特征的内容如下表格所示:

序列信息的item特征作者又分为了两个部分,分别是SequenceItemFeatures和PositionFeatures。其中SequenceItemFeatures主要是商品的item_id和category_id这两个可以表征商品信息的特征,原因是考虑到提取序列信息的计算复杂性,输入全部的item特征效率很低。PositionFeature实际上是通过postionalembedding的变换来获取的,在"Attentionisallyourneed"中有提及。本文中考虑一个客户的浏览历史,时间间隔最能够体现浏览历史中的位置信息。

因此本文定义如下positionembedding:pos(v_i)=t(v_t)-t(v_i),其中t(v_t)代表的是推荐系统的推荐时间点,t(v_i)代表用户点击第i件商品的时间点。构造序列特征之后,通过

进行序列特征的嵌入,

代表浏览历史的长度,

是嵌入空间的维度。

转换层:

Multi-HeadSelf-Attention(多头注意力模型)是Transformer的核心单元,理解MHAttention机制对于Transformer层原理掌握特别重要,并且在Encoder和Decoder中都有用到。MHSelf-attention最新应用可以替代一些基于RNN行为序列模型在推荐场景落地。另外在下文即将介绍的AutoInt中也是引入了Multi-headSelf-attention核心思想,所以这里花一定篇幅对此进行原理讲解。

先从一个机器翻译的小例子来看:

”Theanimaldidn'tcrossthestreetbecauseitwastootired”

单词"it"表示什么呢,是"animal"还是"street",对机器算法来说识别这个不是一件简单的事情,算法在处理每个词的时候需要知道上下文信息。

较早一代NLP算法中RNN、LSTM、SRU等序列模型可以处理这种场景,基本做法是将句子分词,然后每个词转化为对应的词向量序列,经过RNN算法来处理词序列信息,在翻译这种场景仅用RNN很难做到高水准,这样出现了RNN的变种:Encoder-Decoder,也叫Seq2Seq。如下图所示,在Encoder阶段,输入数据编码成一个上下文语义向量c(语义向量c可以有多种表达方式,最简单的方法就是把Encoder的最后一个隐状态赋值给c),Encoder是一个RNN。Decoder是同样的RNN(也可以不一样的结构),拿到c之后,对其进行解码操作,c当做之前的初始状态h0输入到Decoder中,每一次得到一个最有可能的翻译结果,然后让所有单词的crossentropy达到最小。

RNN、LSTM这种类型算法自然可以很好的处理序列信息,结构相对比较简单,本质上都是递归处理结构,缺点是无法做到并行,训练速度比较慢,另外它也是一种马尔科夫决策过程,无法很好的学习全局结构信息。那有没有改进的算法呢?Attention,对"AttentionisAllyouneed",这也是谷歌17年的一篇经典论文,后面在此基础上也诞生了各种优秀论文。

接着看上面翻译的小例子,这里的"it"表示"animal"还是"street"呢,联系上下文,就知道it很大概率指的是animal。

下图直观地展示了self-attention机制,计算每个单词与其他单词之间的关联,这里用attentionscore来表示关联度,处理"it"时"the"、"animal"就有比较高的attentionscore。这些score在self-attention中就是权重的概念,对输入vector小程序之页面路由

小程序页面路由共有5个api,使用这些页面路由首先你要到在小程序的主配置文件App.json里面配置你页面的路径,这些页面你可以放到pages目录下,也可以定义到pages目录下子目录的文件夹,例如pages/index/index。

{"pages":["pages/logs/index","pages/index/index","pages/user/index","pages/my/index"]}1.Tab切换wx.switchTab(Objectobject)

跳转到tabBar页面,并关闭其他所有非tabBar页面,这个api只能跳转到底部导航设置的几个页面,它是不能跳转到其他单独页面的。

小程序底部tab

代码示例

(调用APIwx.switchTab或使用组件或用户切换Tab)

首先底部导航的设置路径是到app.json里面设置

{"tabBar":{"list":[{"pagePath":"page/tabBar/index/index",//路径设置"text":"首页"},{"pagePath":"page/cart/cart","text":"购物车"},{"pagePath":"page/tabBar/userCenter/userCenter","text":"我的"}]}

wx.switchTab({url:'/index'});//跳转到指定URL地址

2.打开新页面wx.navigateTo(Objectobject)

保留当前页面,跳转到应用内的某个页面。但是不能跳到tabbar页面。使用wx.navigateBack可以返回到原页面,小程序中页面栈最多十层。

代码示例

(调用APIwx.navigateTo或使用组件

wx.navigateTo({url:'test?id=1',events:{//为指定事件添营销方案http:///shhmt/wxyx/

相关文章

  • 京东店铺优惠券怎么领(京东各处优惠券领券位置)

    京东店铺优惠券怎么领(京东各处优惠券领券位置) 估计很多人都是本着京豆去了,但是偶尔也会有一些不错的优惠券。,除此之外,在店铺首页由精选切换到活动,有时也会有特殊的粉丝券可以领取。,(25)play day 另外这个是还没有赶上的每月8日的plus day,印象中提前一天会开放这个页面,里面有一大堆优惠券,有些甚至是神券可以领取,如果每个月7日能想起来的话建议去翻一翻。

    2024-03-18 09:30
  • 京东店铺logo在哪设置(京东logo设计说明)

    京东店铺logo在哪设置(京东logo设计说明) 商家登录后台,然后点击第二个标签“我的店铺”。,如果在这里找到,可以直接点击第二个“店铺装修设置”。,在这里的右边,你会看到一个“店铺装修”。

    2024-03-18 09:30
  • 京东店铺跳失率多少正常(降低跳失率提高转化率的方法)

    京东店铺跳失率多少正常(降低跳失率提高转化率的方法) 究竟网店各页面的跳失率大小为多少才算正常水平?,宝贝页跳失率在50%左右都属于正常水平,但是如第5行所示,这一页宝贝的跳失率达到了60%以上,就需要花心思做一些优化了,毕竟这样的数据水平不太乐观,有必要作出改进。,降低跳失率提高转化率的方法一、 宝贝价格亲民很多卖家为了赚取高利润,将宝贝价格设置很高,导致客户很难接受而流失。

    2024-03-18 09:30
  • 京东店铺首页怎么装修(网店首页装修思路方案)

    京东店铺首页怎么装修(网店首页装修思路方案) 我将首页分为3屏:因为一般人滑动手机也就滑那么几下,如果让用户找不到他们感兴趣的内容,用户很快就会流失掉。,分为3类:4. 常购清单 页面布局:分为常买(买过1次以上)、可能再会买(买过1次),后台应该是会把购买频次相对较高的商品放上去,比如生活用品、水果零食之类的,而不是把所有购买过的商品都列上去,那样不是很合理。,下一期我会对电商平台的商品详情页进行对比研究,欢迎关注。

    2024-03-18 09:30
  • 京东礼品卡如何使用?礼品卡怎么购买?

    京东礼品卡如何使用?礼品卡怎么购买? 京东是国内比较有实力的电商平台,为了吸引用户在平台上面消费,京东也在平台推出了礼品卡,能够作为礼品在用户之间流通。获得礼品卡的用户,可以直接使用礼品卡在京东平台消费,那么京东礼品卡如何使用?一、礼品卡如何使用1、没有经过绑定的礼品卡是可以任意转让的。用户拿到卡后,刮开礼品卡后面的密码,记住礼品卡的卡号和密码。2、打开京东网,登陆自己的用记名。如果是新用户的话,可以花几分钟注册一个新的号码,很简单。

    2024-03-13 19:12
  • 京东618活动场景怎么搭建?怎么提升热度?

    京东618活动场景怎么搭建?怎么提升热度? 2、大促页面中的动线设计,提升留存大促活动场景可使用模块化设计的方式:头图氛围,玩法攻略,活动优惠栏,秒杀板块,爆品专区,主推楼层,折扣楼层等。,可通过发布玩法攻略达到引流,预约,发券等营销目的。,商家要在这时期进行预售订单催付,刺激未成交兴趣用户付款。

    2024-03-13 19:09
  • 京东手机端首页尺寸是多少?装修技巧介绍

    京东手机端首页尺寸是多少?装修技巧介绍 在这种趋势下,商家一定要特别注意移动端页面的装修设计。,4、京东详情图一般定位在3到6屏,手机端如果页面弄太长的话,会影响用户体验。,手机端用户下单无非就是看你几张细节图,合适呢我就下单不合适就在去逛逛。

    2024-03-13 19:09
  • 京东没收到货怎么理赔?投诉步骤是什么?

    京东没收到货怎么理赔?投诉步骤是什么? 在京东上面购物,其实也有一些消费者出现了没有收到货的情况,针对这种情况,买家肯定也会出来维护自己的权益,那么到底应该怎么理赔呢?投诉的步骤是什么呢?1、如果是京东自营商品,即从京东配送发货的商品,需要查看一下商品的物流状态,如果已经签收而没有收到货,就联系京东客服,说明情况,自然会帮助解决。,2、如果不是京东自营商品,而是个人商家的商品,在物流表明已经签收的状态下,可以找到物流的快递,看是否为快递

    2024-03-13 19:08
  • 京东拼购在哪里进入?商品为何价格低廉?

    京东拼购在哪里进入?商品为何价格低廉? 2、京东拼购产品大多数都是生活用品,所以京东拼购的团购价也就能便宜一些,所以用户单独购买,价格是不一样的。,目前刚在京东拼购买了几样东西,质量还可以。,所以,我们在买东西时,也是要有选择性的。

    2024-03-13 19:03
  • 京东e卡在哪里找?京东e卡是什么?

    京东e卡在哪里找?京东e卡是什么? 没有使用完的余额将仍然保留在京东卡/京东E卡中,可在有效期内继续使用。,如果当次消费金额超过京东卡/京东E卡的金额,不足部份需顾客使用其它支付方式付清。,京东卡不能购买部分虚拟产品、部分团购商品、政府补贴的大家电、金银投资类商品。

    2024-03-13 19:02