CSDN揭秘阿里中台!一文看懂阿里推荐业务的两项利器 | 赠书( 二 )


在BE中 , 向量召回也是一种召回方式 , 可以与BE最擅长的KV和KKV召回形式同时使用 , 也可以作为一种独立的召回方式实现完整的业务召回 。
目前 , 向量召回已在阿里巴巴集团的大量场景(如猜你喜欢、猫客、SEO等场景)中应用 , 并取得了不错的效果 。 在1688的业务实践中 , 我们用BE的向量召回功能实现了SEO内链系统的重构 , 取得了不错的业务结果 。
SEO(Search Engine Optimization , 搜索引擎优化)是一种重要的营销手段 , 商家通过影响用户搜索引擎内的自然排名从搜索引擎中获得尽可能多的免费流量 。 SEO流程为:发现→抓取→解析→索引→排名→展现→转化 。 其中 , 内链系统就占了其中的3个重要环节:通过构建内链系统扩大搜索发现率、提高网页爬虫抓取量 。 因此 , 优化SEO内链系统对于SEO站内优化非常重要 。
1688.com之前的SEO内链系统存在覆盖率不高且不均匀、相关性不佳、零少结果较多的问题 。 使用BE的向量召回功能重构SEO内链系统后 , 完美地解决了以上问题 , 召回成功率、覆盖率、相关性均有大幅提升 。 从整体效果看 , 爬虫量和索引量指标均得到大幅提升 。
1688.com的SEO系统的架构如图3所示 。
CSDN揭秘阿里中台!一文看懂阿里推荐业务的两项利器 | 赠书
本文插图
图31688的SEO系统架构
BE是推荐系统负责在线召回的引擎 , 基于DII算法在线服务平台实现 , 融合了搜索从离线到在线的全链路技术体系 , 并依托管控系统 , 实现了从开发、上线到运维的全生命周期管理 。
从逻辑上讲 , BE主要负责从多种类型的索引表中召回商品 , 并根据对应的商品信息进行过滤和粗排 。 其中filter和sorter是算法插件 , 可以灵活配置在检索流程的各个环节 , 具体的过滤和排序逻辑由算法工程师根据业务场景进行编写 。 同时 , BE也内置了大量的通用组件 。 在灵活性和可扩展性方面 , BE具备一个中台产品支持多种推荐业务的能力 。
算分服务RTP
为满足推荐和搜索两大业务对score/rank的需求 , 阿里巴巴搜索事业部在2016年开发了最初的RTP系统Rank Service排序服务器 。 它是一个支持数据分区、function函数插件化、实时feature特征和model模型更新的分布式服务 。 基于Rank Service我们可以搜索业务的match匹配和rank排序拆分为两个独立的模块 , 从而提升业务迭代效率及整体集群性能 。
为更好地支持算法团队快速迭代深度模型 , 赋能业务 , 搜索事业部又对RTP系统进行了大幅度的迭代和升级 。 2017年引入了TensorFlow , 将整个RTP框架改造成一个图执行引擎 , 从而可以支持任意的可用图描述的机器学习模型 。 在此基础上 , 又进一步增加了按模型分partition的功能 , 从而解决了超大模型单机无法容纳的问题 。
在阿里巴巴内部 , 推荐业务使用了RTP的在线打分功能;搜索业务不仅使用了在线打分功能 , 还使用RTP对打分的结果进行在线排序 。
1. RTP和TensorFlow Serving
TensorFlow在2017年提供了Tensorflow Serving , 可以将训练好的模型直接上线并提供服务 , RTP也支持将TensorFlow的模型上线并提供服务 。 那么 , 问题来了 , 既然已有TensorFlow Serving , 为什么还要用RTP?引用RTP开发团队资深技术专家以琛的观点 , 相比TensorFlow Serving , RTP有如下3方面特点和优势 。