阿里妹导读:以深度学习为代表的人工智能在图像、语音和NLP领域带来了突破性的进展,在信息检索和个性化领域近几年也有不少公开文献,比如wide& deep实现了深度模型和浅层模型的结合,dssm用于计算语义相关性,deepfm增加了特征组合的能力,deep CF用深度学习实现协同过滤,rnn recommender 采用行为序列预估实现个性化推荐等。
工业级的信息检索或个性化系统是一个复杂的系统工程,深度学习的工业级应用需要具备三个条件:强大的系统计算能力,优秀的模型设计能力和合适的应用场景。今天,我们邀请了阿里搜索事业部资深算法专家三桐,介绍阿里在深度学习系统、深度学习算法和搜索应用落地的进展和思考,希望对大家有所启发。
深度学习在搜索的应用概括起来包括4个方面:
首先是系统:强大的深度学习训练平台和在线预测系统是深度学习应用的必要条件,目前我们的离线深度学习框架、在线深度学习框架和在线预测框架统一到tf,并实现了日志处理,特征抽取,模型训练和在线服务部署端到端的流程,极大提升了算法迭代效率;
其次是搜索应用:包括智能交互,语义搜索,智能匹配和智能决策四个技术方向,这四个方向的协同创新实现了搜索全链路的深度学习技术升级,并具备从传统的单场景单目标优化到多场景多目标联合优化的能力;
再次是在性能优化上做的工作:包括模型压缩、量化、低秩分解再到二值网络,大量的技术调研和论证,为未来提高深度模型预测性能和软硬件协同优化做了很好的技术铺垫;
最后是排序平台化:实现了PC商品搜索、无线商品搜索、店铺内搜索搜索和店铺搜索的搜索服务统一,通过特征和模型复用,实现了多条业务线技术的快速升级。下面我会简要的概括下在四个方向上取得的主要进展和背后的思考。
下面是搜索系统和算法的简图。系统包括:
搜索系统和算法简图
a. 离线数据平台ODPS,负责离线日志join、特征抽取和离线模型预估产出排序特征,时效性不强的特征都是通过离线数据平台产出的,比如用户性别标签,商品关键字等;
b. 离线机器学习平台PAI,底层是主流的parameter server和TF深度学习框架,平台实现了大部分机器学习算法模型的并行训练和预测,在搜索应用中主要作用是离线模型训练产出离线排序特征模型;
c. 流式计算和在线学习平台 Porsche,流式计算是基于blink负责实时日志解析和特征join生成实时排序特征,在线学习和离线学习底层框架可以相同,差别主要是依赖数据源和部分优化方法不同,由于用户行为和市场环境变化快,流式计算和在线学习在搜索应用非常广泛,并积累了不少在线学习和强化学习算法;
d. 在线服务平台,包括引擎、排序服务和搜索平台组成,负责在线的服务分发、索引查询、排序服务和结果合并等功能,搜索的排序策略、相关性、个性化等模型主要通过在线预测服务生效。经过多年发展我们已经具备了非常完善的商品搜索排序算法体系,包括知识图谱、分词、tagging、类目预测、意图预测、拼写纠错、query 推荐、query 语义改写、相关性、商品标签、商品质量、店铺分层、用户profile、用户偏好、用户感知、召回策略、个性化模型、多样性策略、异构服务混排策略、多目标联合优化策略、多场景联合排序策略等,并平台化的方式赋能相关业务团队。
系统进展:机器学习平台和在线预测平台
机器学习平台。搜索训练样本主要来自用户行为,由于用户行为是流式数据,适合做在线深度学习,但当模型参数非常庞大需要海量的样本时在线学习需要很长的时间才能收敛,这时一般是先做离线预训练再结合增量或在线学习,另外有些模型离线预训练后在线只需要对接近输出层的网络做fine-tuning。搜索在实际应用的有离线机器学习平台PAI和在线机器学习平台Porsche,两个平台深度学习框架目前都统一到了tf-pai, tf-pai 对原生tf做了一些优化,比如底层通讯,稀疏参数存储、优化方法、GPU显存优化等,比原生tf训练深度有较大的提升,训练上千亿样本和上百亿参数的深度模型毫无压力。
虽然Porsche和PAI都支持GPU,但在搜索应用中CPU依然是主流,GPU应用比较少,原因主要是个性化相对图像或语音简单,特征抽取网络比较浅,维度相对较低,GPU的稠密矩阵计算能力得不到充分发挥,同时离在线混布后流量低谷期间腾出了大量的在线服务闲置CPU,把临时闲置的CPU利用起来做深度学习训练是一个非常好的思路。
在线预估RTP,搜索排序算分服务。由于每次搜索请求有上千个商品需要计算排序分数,深度模型应用对RTP服务的压力是非常大的,RTP通过采用异构计算,计算算子化和模型分片等方式解决了深度模型inference计算和存储问题,深度模型用GPU,浅层模型用CPU,今年双11期间搜索RTP服务用到了550张GPU卡。另外,RTP还实现了离线/在线训练模型/数据和在线预测服务部署的无缝衔接,算法训练好的模型或数据可以很轻松的部署都在线服务,提升了算法迭代效率。
算法:智能交互、语义搜索、智能匹配和搜索策略四个方向
智能交互。商品搜索就是带交互的商品推荐,用户通过关键字输入搜索意图,引擎返回和搜索意图匹配的个性化推荐结果,好的交互技术能够帮助到用户更好的使用搜索引擎,目前搜索的交互主要是主动关键字输入和关键字推荐,比如搜索框中的默认查询词和搜索结果中的文字链等,推荐引擎根据用户搜索历史、上下文、行为和状态推荐关键字。
和商品推荐的区别是,关键字推荐是搜索链路的中间环节,关键字推荐的收益除了关键字的点击行为外,还需要考虑对整个购物链路的影响,包括在推荐关键字的后续行为中是否有商品点击、加购和成交或跳转到另外一个关键字的后继行为,这是一个典型的强化学习问题,action 是推荐的关键字候选集合,状态是用户当前搜索关键词、上下文等,收益是搜索引导的成交。
转自:阿里技术
完整内容请点击“完整内容”