案例分享 | 网易严选用 TensorFlow 给品牌电商插上 AI 的翅膀
写在前面:网易严选在供应端和销售端利用机器学习技术为品牌电商进行赋能,获得了不错的成绩。TensorFlow 在各个环节中扮演了重要的角色。本篇文章会对技术应用做一个大致的介绍,在接下来的几周内,文中提到的三个主要技术能力,供应链管理、个性化推荐以及客服机器人会有网易严选的技术专家来逐一展开分享。
计划:销售计划、需求计划、补货计划等;
实施:生产、销售、仓配等;
反馈:售后、评论、舆情等。
下面从这三个阶段,分别挑选销量预测、个性化算法和客服机器人三个案例,介绍机器学习和 TensorFlow 在严选的应用。
供应链销量预测
严选是品牌电商,电商的本质还是零售,做零售就需要做好备货和库存优化,因此需要做销售计划、活动计划、需求计划、补货计划、调拨计划等各种计划,销量预测的主要目的正是支撑各种计划的落地,从而达到降库转、防缺货、保体验的最终目的。
过程中我们也遇到了很多困难,整理下来有以下几个,
预测周期长:深度参与生产过程,比一般电商要多预测 2 - 3 个月,甚至更多。
销售场景多:有主站,考拉、天猫、淘宝、京东等大量线上渠道,园区店等线下渠道,企业大客户采购,线下店销售等。
促销波动大:周年庆、6.18、双十一和双十二四个大促,月度常规促销,全年达到上万个小活动。
数据不连续:新品、迭代品、上下架造成很多商品的历史销量比较短。
需求多种粒度:日/周/月,sku/spu/类目,省/仓/渠道。
为了解决以上问题,我们依靠严选产技团队的支撑和业务方的配合做了大量的技术优化。对于预测周期长的问题,我们利用机器学习做训练,尽可能把周期长的粗粒度的活动计划拟合成历史上的细粒度的计划,再进行预测。对于短期的促销活动预测,依靠活动计划后台,运营同学能提前两周做到 SKU 粒度的计划,并把数据同步到预测服务。对于新品和迭代品问题,商品同学会帮助打标有相似目标用户的商品,再进行机器学习。
可以说从数据清洗、特征工程、商品分类、模型训练、评估校验、到数据输出,每一步都针对特定问题做了优化,也演化出多种多样的模型。有基本的销量点估计、销量区间分布预估、事件影响因子预估、季节性趋势预估等不同场景的预测模型。
这里面有基于业务策略的统计模型,有基于 XGBoost 的树模型,也在探索基于 TensorFlow 的深度模型。其中基于概率模型的销量分布预测(支持不同服务水平的 SKU 采购策略)和季节性预测(支持小数据量下的季节性趋势预估),已经很好服务于线上。并且我们还在尝试用 tensorflow_probability 优化这个概率网络模型。
虽然有这么多的困难,我们的销量预测准确率最近提升到 65% 以上,在国内电商行业处于较高的水平。支撑了严选上万个 SKU 在整个供应链和销售端的半年以上的各种计划任务,处理促销事件数万次,支持不同颗粒度的丰富的预测场景,并且申请了多个技术专利。
销售端个性化算法
个性化算法与用户体验、交易流水密切相关。在严选的搜索、推荐、广告场景都依赖个性化服务提升产品核心指标。具体指标上我们综合考量点击率(CTR)、转化率(CVR)、UV 价值、总体 GMV,这些都是算法需要全局优化的目标。同时综合业务的整体策略,呈现给用户最终的商品浏览效果。比如用户搜索“牛肉”,并点击了一款牛排商品,我们的实时在线 DeepCTR 模型能学到用户的这个行为,并应用在实时重排序模块。当他再搜索类似关键词时,召回的商品里面牛排和相关的牛肉生鲜商品都会在排序上实时往前调整,这仅是针对用户实时行为的个性化方案之一。
在销售端的个性化服务项目中, TensorFlow 也帮我们解决了特征工程、多任务学习、用户实时偏好感知等很多问题。
第一个问题是如何提升算法迭代效率,更确切的说是特征工程的提速。传统机器学习比如 LR 需要做大量的特征工程工作,这需要算法人员熟悉领域知识,并持续投入,因此人效 ROI 持续降低。我们的方法是用机器算力换人力,用深度学习做低成本的 Wide & Deep 特征学习。
主体思路是 Embedding & MLP,依靠 TensorFlow 提供基础的 WDL 模型,对 DeepPart 做定制优化:模型对商品 Id,类目 Id,属性 Id 实现 Embedding。不直接对用户 Id 做 Embedding,基于用户和商品的行为序列表征用户,引入注意力模块计算用户向量。WidePart 会挑选覆盖率高的标签 or 属性做两两交叉构建特征。DeepPart 依靠深度网络实现特征组合,主要传入的是 Id 特征;WidePart 依靠先验知识构建特征输入,主要是类目特征。存在数量较少的连续特征在 Deep 和 Wide(需先分桶)都有传入。
第二个问题是如何兼顾点击率和转化率等多指标提升,我们引入多任务学习完成多目标训练。定制的 WDL 是我们的基础模型,在此之上加入 CTR、CVR 的多任务学习,共享 Embedding 层权重,构建 CTCVR LOSS,实现曝光阶段的 CVR 预估。
第三个问题是如何以较低成本的实时感知用户偏好,我们采用 Online Deep Learning 的近似解决方案。提取用户 Session 内的商品交互序列作为数据基础,以 Sequence Embedding 的思路计算商品向量表征(具体计算方式比较复杂,有去除负采样、融合 side info等等)。当用户访问严选时,基于用户和商品的交互可以计算用户实时的兴趣向量。实际使用过程中,我们会对每个用户维护多份分类目的兴趣向量,在不同的场景按需使用(如在搜索推荐,会基于当前的上下文信息激活用户某些实时的类目向量)。最终的个性化排序使用用户实时向量重排,达到类似实时模型的效果。
客服机器人
在电商场景下,随着用户的浏览、购买行为,会在售前及售后过程中提出各种问题,智能客服是辅助人工客服解答用户问题的智能对话系统。
电商领域的业务点繁杂,用户的输入具备口语化、多样化的特性。如何根据用户的会话及行为准确的识别出用户意图,并分发到对应的会话模块,是我们首要要关注的问题。在各个子对话模块中,需要从用户的会话中解析出关键的细粒度语义信息,并与现有的商品、业务知识库进行知识的匹配,最终生成能够解决用户问题的回复。
伴随着用户输入的文本,我们基于当前输入、上下文语境以及用户的历史行为,利用 TensorFlow 构建了多层级意图识别模型,并将用户的问题分发到对应的问答子模块中,进行语义解析和回复生成。
在商品知识问答、导购模块中,我们基于 TensorFlow 构建了电商领域的命名实体识别模型,识别用户问句中的商品名、商品属性名、商品属性值等关键的商品信息,并基于知识图谱问答技术生成最终的答案。
在业务问答 FAQ 模块中, 我们在严选的业务知识库中进行检索,并基于 TensorFlow 构建了文本匹配及文本相似模型,对召回的候选答案进行重排,进一步提升了问答匹配精度。除此之外,为了彰显智能客服的人性化,我们还构建了日常语聊模块,通过 TensorFlow 搭建 transformer 结构,形成生成式模型,采用 end-to-end 的方式生成用户的回复。
得益于 BERT 等语言模型开源的 TensorFlow 版本的模型,在实际业务中,我们仅利用少量的标注样本,即可高效的搭建高准确率的各类文本模型,利用 GPU 加速计算满足线上 QPS 的要求,并基于 TensorFlow Serving快速部署上线。正是因为有 TensorFlow 提供的一系列支持,我们才能稳健高效的进行线上业务的部署与迭代。
总结与展望
2016 年以前我们以传统机器学习为主,到 17 年部分项目使用深度学习,再到 18 年借着 TensorFlow 社区和生态的快速发展,严选算法业务全面拥抱深度学习。
TensorFlow 的应用场景已经深入到供应、销售、售后服务等环节,并向商品上游的研发和生产环节部分工作渗透。希望 TensorFlow 的社区和生态发展越来越好,让更多的专业的和非专业的从业人员能通过机器学习改变世界。
想加入案例分享?点击 “阅读原文”,填写相关信息,我们会尽快与你联系。
更多相关案例: