背景介绍
华为开发者论坛 HMS Core 发布了一篇关于数据驱动产品增长的文章,其中深度解析了用户行为路径,从用户数据中寻找价值功能点,优化产品布局,实现用户增长,纵观该文章中的系列操作均是针对业务数据表现为用户制定优化策略,可以说是很小的改动点但带来了很大的收益,那么借鉴这些经验在手淘中我们又能做些什么呢?
在聚划算主站单个功能模块 IPV 提升目标上还有很大的空间,可以从用户实时行为(曝光、访问、点击、频度等维度)来测试对产品沉浸度的提升效果,因此,端智能项目针对聚划算主站进行了详细的数据分析,并实施了一系列的沉浸度提升策略探索实验,实验迭代到目前淘汰了一些策略,但也沉淀了不少的规则策略:动态调整品牌团与商品坑插卡比例、banner扶梯实验(banner 区自动滚动)、动态调整固定资源位插卡位置等,AB 实验结果证明,这些实验确实有效提升用户对产品的沉浸度,对整体效果均有提升,整体 IPV (人均商品点击数-全引导宝贝口径)相对提升 20%。
本篇文章将给大家分享淘系端智能项目在策略探索阶段中是如何在淘系业务聚划算应用落地的,详细介绍落地应用的策略合集。
技术方案
前端端智能设计前端和算法两个领域,因此如何衔接好两个能力成为端智能应用的重要点,端智能业务应用具体技术流程大图如下:
端智能在策略探索阶段中尝试了不少的模式匹配策略,优势劣汰,迭代了几轮之后,发现当承接策略幅度大用户感知明显时效果提升明显,但需要兼顾用户体验,进行严谨的 AB 实验得出有效结论之后才能灰度放量上线。此外,设计一套埋点规范,其主要有两个作用:设置前置条件排除干扰和后期数据上报效果分析,按这种埋点规范能够保证实验的严谨性和数据的可靠性。
端智能策略探索阶段的整体技术框架有 5 个环节:数据洞察、圈人策略、承接策略、技术设计、效果分析,其中,数据洞察指依据业务数据进行初步的理论分析,经过公式推导出预计结果;圈人策略指策略执行的目标人群划分规则;承接策略指一系列有效可行的前端视觉效果;技术设计指承接策略对应的具体实现方案;效果分析指经过 AB 分组后得到严谨准确的结果数据。整体框架如下:
上面 5 个环节中的圈人策略是可以被承接策略复用的,在承接策略介绍中不再赘述这部分,其作用是:为了进行严谨的效果分析,前端埋点的时候需要过滤干扰效果分析的用户,即让执行策略的用户和不执行策略的用户个体差异最小化,这些预设的条件比如是是否登录、是否第一次进入、是否是在直播页面、是否是高端机等,只有符合这些条件的用户才会作为策略人群。下面详细介绍端前端智能是如何应用落地的。
实验一:所见所得功能偏好策略-所见即所得微动效策略【功能点击偏好】
结论:从淘宝首页聚划算卡片进入聚划算主站的用户中,其中有一部分是受所见即所得商品的吸引而来的,针对这一部分有偏好度的用户,对所见即所得模块采用微动效策略可以使用户更容易、更方便的发现吸引自己的商品,进而有助于提高所见即所得模块的点击率。经过对数据分析可知,所见即所得微动效策略的各类指标整体正向,具体为:人均商品点击数相对提升35.9%,次均商品点击数相对提升1.8%,uvctr相对提升9.3%。后续可以考虑在聚划算全频道推广,并继续思考推广更好的所见即所得承接策略。聚划算主站中所见即所得(猜你想买)模块的点击率虽然点击率相比其他模块最高,但还有进一步优化空间,可以基于用户的实时行为对所见即所得模块进行动态调整,根据用户的偏好度调整卡片大小、图片动画、字体大小等,增强所见即所得模块在偏好度高的用户界面的显著展示效果,从而达到提高模块点击率的目的,进而提升聚划算主站的沉浸度。
聚划算主站(v3.0)自上而下主要包含的模块: 1. 直播 tab、2. 搜索框、3. 轮播图、4. 所见即所得、5. 划算江湖、6. Feeds、7. 百亿补贴、8. banner。用户进入主站后,对以上模块的访问是否有一定的模式或者规律?如果有的话,频道可以根据用户访问的模式实现更个性化的行为干预,从而促进用户转化和留存。因此,探索用户行为模式对频道效率改进有积极意义。
用户行为模式的分析需要先对用户行为特征进行定义。按照主站的结构,用户主要的交互模式是点击和浏览,所以用户的行为特征可以被定义为模块的点击和曝光次数。而对于除了 Feeds 以外的模块,由于其位置固定,且进入页面之后几乎 100 % 曝光,因此可以忽略。最终我们选取的特征以点击为主,具体为:直播点击、搜索入口点击、banner区(轮播)点击、所见即所得点击、百亿补贴点击、feeds 点击、feeds 曝光、划算江湖点击。
传统的机器学习算法应用在前端具备高强度的可解释性和可实现性,因此采用聚类算法 K-means 分析出聚划算主站的功能模块的访问模式,并实现对聚划算主站功能模块的进行聚类的偏好度模型。经过前端的数据埋点、特征工程、模型训练等一系列步骤之后得到一个适用于聚划算主站的功能模块的 8 种类型的聚类模型,8 分类的雷达图如下:
该图是 8 种类型的聚类模型评估雷达图,可以综合表现多维数据的性能,从上图可以看出每个类别的特征都比较显著。该模型的输出结果是一个 8 维向量,每一个维度上的值代表对聚划算主站的功能模块的偏好度,基于这些偏好度承接对应的前端策略,可以线上验证该模型效果,因此进行了两个验证实验:搜索栏偏好度实验和所见即所得微动效实验。下面详细介绍所见即所得微动效实验:
数据洞察
聚划算主站中所见即所得(猜你想买)模块的PV点击率为25%+,UV点击率为40%+。与频道内的其他模块相比,所见即所得模块的UV点击率、支付引导进店UV、全引导进店UV等指标都是最高的。这也印证了之前的分析,由淘宝首页进入频道的大部分用户,是被所见即所得商品所吸引。但是对所见即所得模块一次都不点的用户占比仍>30%,同时有用户反应被淘宝首页聚划算宫格所见即所得商品吸引进入聚划算频道后,找不到所见即所得的商品。对此我们初步分析原因为聚划算首页所见所得商品较小,用户不容易看到。 根据以上分析,为了进一步做好对频道内所见即所得模块的承接,可以基于用户的实时行为对所见即所得模块进行动态调整,基于功能模块偏好模型获取用户偏好度,根据用户的偏好度调整图片动画、字体大小等,增强所见即所得模块在偏好度高的用户界面的显著展示效果,从而达到提高模块点击率的目的,进而提升聚划算主站的沉浸度。
圈人策略
从淘宝首页聚划算卡片进入聚划算主站的用户中,其中有一部分是受所见即所得商品的吸引而来的,针对这一部分有偏好度的用户,对所见即所得模块采用微动效策略可以使用户更容易、更方便的发现吸引自己的商品,进而有助于提高所见即所得模块的点击率。
承接策略
针对对所见即所得模块没有偏好度的用户,不采取措施,如左图;针对对所见即所得模块有偏好度的用户,但是偏好度较低的用户,用户进入频道时对模块中商品图片、商品价格进行动效放大,如右图。在该策略下,我们希望对无偏好度的用户不产生任何影响,对低偏好度的用户产生提示、引导的影响,对高偏好度的用户产生明确提示、明确引导的影响。
技术实现
基于用户偏好度对所见即所得模块采用微动效策略的流程图如下:
策略中很重要的一点就是我们如何定义无偏好度、低偏好度和高偏好度。通过聚类对用户行为模式的分类有8分类、9分类、10分类。聚类结果显示不论哪种聚类,每个类别的特征都是比较显著的,在本实验中,选择了8分类。
用户对每个模块的偏好度处于0-1之间,实验中定义:
所见即所得高偏好度用户:类别1 的值 > 0.2
所见即所得低偏好度用户:类别2 + 类别3 + 类别4 + 类别6 的值 > 0.2
所见即所得无偏好度用户: 除以上两种类型外的其他用户
实验二:搜索功能偏好度策略-简版搜索入口切换【功能点击偏好】
数据洞察
根据用户行为进行搜索栏偏好实验具有更强的可解释性,假设这种方案能够命中用户偏好,喜欢点搜索栏的用户搜索栏会一直展示;不喜欢搜索栏的用户不会看到搜索栏,但会在首屏多展示出大概 1/10 的其他坑位信息,从而提高商品的有效曝光。
圈人策略
搜索栏策略实验根据云上模型输出阈值来圈选人群,本次实验选取 0.1 作为搜索栏偏好度阈值,即认为云上模型输出用户对搜索栏偏好度值大于 0.1 就认为有偏好,小于 0.1 就认为没有偏好。除此之外,还有一些预设条件排除圈选人群的差异性,如:是否为高端机、是否登录、是否第一次进入等条件。
策略承接
聚划算主站搜索栏展示情况如下左图,搜索栏隐藏情况如下右图:
技术实现
首先根据埋点数据获取用户行为数据,然后基于 kmeans 算法训练出用户偏好度模型。训练好的用户偏好度模型被用来设计搜索栏策略实验。详细策略如下图:
结合 banner 扶梯实验不难发现当承接策略幅度大用户感知明显时效果提升明显,故搜索栏实验策略可以再进行迭代,可以为搜索栏偏好用户承接一些 feeds 呈现搜索相关的内容或功能,这样效果提升会更明显。
实验三:曝光疲劳度控制策略-banner 自动滚动策略【功能点击偏好】
红框部分定义为 banner 区。搜索框不算入内的原因是,页面下滑到 feeds 之后可以在顶部通过搜索 icon 进入搜索页,这部分用户行为受默认下滑机制的影响较小。
数据洞察
从优化后的收益上看,假设用户浏览 feeds 的时长只和浏览深度、二跳次数相关,二次进入时直接下滑到 feeds 将会额外曝光两个商品。我们设二次进入的用户 pv 为 N,那么会额外曝光 N x 2个商品,按点击率 4% 计算,将会有额外 N x 2 x 0.04 的 ipv。所以我们只需要分析出二次进入的 pv 就可以知道大致的收益情况。 而这个策略会导致二次进入 banner 区上移,用户需要上划才能看到 banner 区,因此 banner 区的点击会受到影响,假设二次进入用户 banner 区的点击 pv 是 M,按照聚划算 feeds 大盘的次均 ipv 0.4 计算,损失的 banner 区 ipv 为 M x 0.4。
承接策略
banner 扶梯的视觉效果是当用户进入聚划算主站未进行操作时页面自动滚动至 feeds 置顶。效果展示如下:
技术设计
banner 扶梯实验执行有前置条件,即人群定投保证效果可比性,捞取两类人群的行为相关数据进行比对,两类人群皆是符合单日内二次进入频道用户,区别在于一类是被命中“自动滚动banner”策略人群,一类是不被命中“自动滚动banner”策略人群。
实验四:曝光疲劳度控制策略-固定资源位显隐策略【功能点击偏好】
聚划算主站固定资源位的点击率不高,因此结合用户实时行为针对固定资源位限时秒杀、轮播图进行动态调整所在位置,假设用户进入聚划算主站,根据用户行为判断是否对固定资源位有偏好,若有偏好则将固定资源位位置前移,若无偏好则将固定资源位位置后移。希望通过这种方式达到个性化偏好的目的,进而提升商品有效曝光,提高 ipv。聚划算主站限时秒杀和轮播图样式如图所示:
上图中,限时秒杀作为固定资源位插入到首屏固定位置、轮播图作为固定资源位插入非首屏的固定位置。
数据洞察
根据用户行为进行固定资源位穿刺实验具有更强的可解释性,假设这种方案能够命中用户偏好,不喜欢限时秒杀和轮播图的用户看到这两个固定资源位的位置后移,这将额外曝光 1 个商品,从而提高商品的有效曝光,假设进入聚划算主站的用户 pv 为 N,那么会额外曝光 N x 1个商品,按点击率 4% 计算,将会有额外 N x 1 x 0.04 的 ipv。
承接策略
根据限时秒杀的点击曝光将用户分为 4 类,并相应进行策略 高频曝光不点击用户:点击次数为 0,曝光次数大于 20 次,不显示限时秒杀卡片 低频曝光不点击用户:点击次数为 0,曝光次数在 5 到 10 之间,将限时秒杀卡片放到第 3 屏展示 高频点击用户:点击次数大于 3 次,将限时秒杀隔 2 屏就展示 低频点击用户:点击次数 1 到 2 次的用户,限时秒杀放到首屏 技术设计 if (xsmsClkCount === 0 && xsmsExpCount > 20) { xsmsType = 1; } else if (xsmsClkCount === 0 && xsmsExpCount > 5 && xsmsExpCount < 10) { xsmsType = 2; } else if (xsmsClkCount > 2) { xsmsType = 3; } else { xsmsType = 0; }
实验五:品牌团功能偏好策略-品牌团实验【功能点击偏好】
结论:品牌团功能偏好策略实验是指商品坑位和品牌团坑位之间的比例随用户行为数据动态调整的实验,通过线上实验数据验证了插卡比例动态调整实验在 IPV 指标上提升 3%。
数据洞察
经过业务数据分析,聚划算主站品牌团与商品坑的比例对整体 IPV 有影响,
品牌团和商品坑的比例对整体的 IPV 存在一定的模式规律,加上聚划算主站首屏沉浸度不高,因此结合用户实时行为对品牌团和商品坑比例进行动态调整,假设用户进入聚划算主站,根据用户行为判断是否对品牌团有偏好,若有偏好则将品牌团和商品坑比例降低,若无偏好则将品牌团和商品坑比例增大。希望通过这种方式达到个性化偏好的目的,进而提升商品有效曝光,提高 ipv。聚划算主站品牌团和商品坑位置如图:
上图中,红框表示品牌团,用户需要二次跳转才能进入商品详情页;绿框表示商品坑。两者默认以 1:5 在 feeds 中透出。
承接策略
本实验根据用户的实时行为来决定展示给用户的品牌团和商品坑比例,达到一种个性化的目的,假如用户这一屏点了品牌团则下一屏将品牌团和商品坑比例减小,没点品牌团则将比例增大。根据用户行为进行品牌团穿刺实验具有更强的可解释性,假设这种方案能够命中用户偏好,喜欢品牌团的用户看到品牌团的频次变高,不喜欢品牌团的用户看到品牌团的频次变少,从而提高商品的有效曝光。
技术设计
实验六:页面跳失挽留策略【跳失偏好】
针对如何将跳失算法落地在聚划算主站问题,提出一套自定义数据埋点、训练数据定义、模型端上加载、承接策略设计的框架。
上图中,跳失预测模型落地在聚划算主站,需要结合聚划算主站的具体情况来设计实验,实验环节分为 4 部分:1. 数据埋点部分:该部分针对聚划算主站的各个功能模块(如所见即所得、划算江湖、百亿补贴等)进行点击、曝光行为埋点; 2. 训练数据定义部分:用户的行为数据是序列特征,需要经过数据映射操作转换成模型可识别的格式;3. 端上加载模型部分:该部分保证跳失预测模型端上高性能、高可用加载;4. 承接策略设计部分:指模型训练好后在聚划算主站的落地场景。
数据埋点
跳失模型需要自定义的训练数据,因此在黄金令箭埋点时加入了自定义参数 cardType,针对聚划算主站穷举了 14 现有展示的功能模块: hsbdb、search、banner、sjjsd、bybt、item、brand、theme、live、pptm、video、multiPicBanner、hsjh、xsms。每个功能模块都加入了曝光和点击的行为 除了上面的聚划算主站所有的功能模块的曝光点击行为特征外,还有很多特征可加入:驻留时间、滑动速度、用户画像等,这些特征可作为后续的模型迭代方向。
训练数据定义
训练数据定义环节除了数据映射转换外还有一个很重要的部分:跳失模型的正负样本定义。为了定义出跳失模型的正负样本并保证正负样本数据量均衡,将采集到的完整的一段 session 序列作为正样本,该 session 里的随机一段行为序列作为负样本,这可以理解为完整的一段 session 序列用户跳失,该 session 序列里随机的一段理解为用户不会跳失。 数据映射转换环节将长度不固定的用户行为序列转换为长度固定的数组,转换成模型可识别、可训练的数据格式。
端上模型加载
上面讲过端上模型加载需要高性能、高可用。针对高性能,提出在 web server 上加载模型的方法,这样模型可以提升加载速度;针对高可用,与端智能团队合作定制了一个获取用户行为的接口,该接口满足本次实验模型入参数据的要求,并且调用性能高。
承接策略设计
利用现有的一个商品参加活动的信息,设计一个跳失模型的承接策略,该策略在保证不影响用户的体验前提下去挽留用户并提升点击率,具体的形式是当模型判断出用户即将跳失时弹出一个用户历史浏览商品的 toast,如下图:
未来展望
目前前端端智能策略探索实验在实验桶里进行 A/B 实验,基于之前实验数据分析可知这些实验在各类指标上确实是有提升,像 banner 扶梯实验效果明显的主要原因是交互幅度大,用户感知明显,对购买型用户有体验优化的效果,对全引导宝贝路径有明显正向效果。但与此同时需要兼顾舆情,因为并非所有用户都能够接受这种体验。未来,可以以此为基石,探索一些幅度大、用户能明显感知的聚划算主站功能模型的偏好策略,可以再进行迭代,像为用户承接一些 feeds 呈现搜索相关的内容或功能,这样效果提升会更明显。 高阶的算法模型能力能为前端端智能提供有效协助,淘系前端端智能立基于有效切实的承接策略为用户带来体验优化,所以未来前端端智能将在手淘中探索更多的有效策略,在算法模型的加持之下落地业务场景,优化产品,提升用户体验和转化。