当前位置: 首页 > 科技观察

让天下没有难用的搜索:阿里搜索如何成长为贴心的“暖男”?

时间:2023-03-20 23:04:01 科技观察

第十届双11圆满结束,但对科技的探索永不止步。阿里科技推出《十年牧码记》系列,邀请历年参与双11活动的核心技术专家,回顾阿里科技的变化。近十年来,机器智能在越来越多的领域进入并改变了我们的生活。在互联网领域,机器智能得到了更加普遍和广泛的应用。搜货团队作为电商平台的基石,一直在构建适合电商平台的机器智能系统。每年的双11都是验证智能化进步的试金石。今天,阿里巴巴资深算法专家袁涵带你穿越时空,感受双11场景下搜索智能的十年进化历程。阿里的搜索技术体系发展到今天,基本形成了离线、近线、在线三层体系。分工合作,确保电商平台不仅能适应日常稳定流量下稳定有效的个性化搜索和推荐,还能满足电商平台对促销活动的技术支持,使平台在短期内的收益最大化。术语高并发流量。可以看出,经过十年双十一的考验,智能搜索体系逐渐成型,成为电商平台稳定健康发展的核动力。链接实时系统大放异彩;“深度学习+强化学习”初步探索;全面进入深度学习时代。下面一起来看看吧。四个演进阶段:业务、算法、系统同步发展第一阶段:初登场——自研流计算引擎Pora技术的演进伴随着解决实际业务问题和痛点的发展演进。2014年双11,BI团队通过历年双11的数据分析发现,即将售罄的商品仍然获得了大量流量,剩余库存无法支撑大量用户在短时间内。主销(热销sku)售罄产品获得流量,用户买不到热销sku,转化率低;交易通常得不到足够的流量。针对以上问题,通过搜索技术团队自主研发的流式计算引擎Pora,收集了预热期和双11期间全网用户的所有点击、追加购买、交易行为日志,并根据商品维度累计相关行为数量,实时关联查询商品库存信息,提供给算法插件计算分析实时售罄率和实时转化率,并将计算结果实时更新同步到搜索引擎和推荐引擎,影响排名结果。首次在双十一大促场景下实现大规模实时计算。在算法效果上,也让大家第一次感受到了实时计算的强大,PC端和移动端的量也有了明显的提升。Phase2:大放异彩——双链路实时系统2014年双11,实时技术在大促场景中实现了产品和用户的实时特性,表现出色。2015年,搜索技术与算法团队持续推进在线计算技术升级,基本确立了基于实时计算体系【在线学习+决策】的搜索智能演进路线。早期的搜索和学习能力是基于批处理的离线机器学习。在每次迭代计算过程中,需要将所有训练数据加载到内存中进行计算。虽然有分布式的大规模机器学习平台,但是批处理方法在一定程度上仍然对训练样本的数量有限制。在线学习无需缓存所有数据,可以流式处理任意数量的样本,实现实时数据消费。接下来,我们需要明确两个问题:我们为什么需要在线学习?为什么要实施二级模型更新?在batchlearning中,一般假设样本独立服从一个未知分布,但如果分布发生变化,模型效果会明显降低。在实际业务中,很多情况下,一个模型生效后,样本的分布会发生很大的变化,所以学习到的模型并不能很好地匹配线上数据。实时模型可以通过不断拟合最新的在线数据来解决这个问题,因此效果相比离线模型会有很大的提升。那么为什么要实现秒级、分钟级的模型更新呢?在双11这种交易爆发、变化剧烈的场景下,秒级实时模型在时效性上会比小时级实时模型有更明显的优势。根据2015年双11的实时成交额来看,第一个小时已经完成了总成交额的1/3左右,小时模型无法很好地捕捉到这段时间的变化。基于此,搜索技术团队基于Pora开发了基于parameterserver的在线学习框架,如下图,实现了在线训练,开发了基于pointwise的实时转化率预测模型,在线矩阵分解基于成对的模型。并将模型通过swift发送给引擎,结合实时特征,实现特征和模型的双重实时预测能力。在线学习框架然而,无论是离线训练还是在线学习,其核心能力都是尽可能提高算法对单个问题求解的准确率,却忽略了人机交互的时效性和系统性,所以它难以理解不可预知的用户行为和不断变化的外部环境的完整建模。一个典型的问题是,在个性化搜索系统中,很容易重复向消费者展示他们已经看过的产品。如何避免系统过度个性化,通过高效探索增加结果的丰富性?我们开始探索机器智能技术的另一个方向——强化学习,利用强化学习技术实现决策引擎。我们可以把系统与用户的交互过程看成时间维度上的一系列[状态、动作、奖励],决策引擎的目标就是优化这个过程。在在线决策方面,我们首先尝试使用MAB和零阶优化技术实现多个排序因子的最佳融合策略,替代之前通过离线学习学习的排序融合参数来进行排序。结果是显着的。双十一当天,我们也观察到通过实时策略优化,一天中不同时间段的最佳策略是不同的,这与全天使用离线学习得到的一组固定排序权重进行了对比。这是一个很大的进步。2015年双11双链路实时计算系统如下图所示:2015年双11实时计算系统Phase3:初探——“深度学习+强化学习”双112015年,线上学习成效显着。不过,回顾当天观察到的实时效果,也暴露出一些问题。问题一:在线学习模型方面,模型过于依赖从0点开始的累积统计信号,导致后场热销的商品绝大部分无法在累积统计信号中得到有效区分,并且模型缺乏适应数据的能力。问题二:在线决策方面。2015年双11,MAB(Multi-ArmedBandit)实时策略优化在宏实时系统中发挥了重要作用。通过经验丰富的算法工程师开发的离散排序策略集,MAB可以在双11实时选择最佳策略。但同时也暴露出MAB基于离散策略空间优化的一些问题。离散策略空间还是拍脑袋的智慧。同时,为了保证MAB策略优化的统计稳定性,几十分钟的迭代周期依然无法匹配双十一流量变化的脉搏。对于第一个问题,我们也在2016年双十一进行了优化改进11.对于从0时的累积统计信号到后场的饱和以及统计值的离散化缺乏合理的起点,我们参考了Facebook在AD-KDD中的工作。在此基础上,结合在线学习,我们在DeltaGBDT模型上开发了StreamingFTRLstacking,如下图所示。StreamingFTRLstackingonDeltaGBDTmodel对于双十一不同时间段的实时样本,时间分段的GBDT模型将持续产生其有效特征,onlineFTRL将学习这些时间敏感特征的相关性。针对在线决策问题,我们进行了策略空间的最优探索,并尝试分别引入延迟奖励的强化学习技术,即在搜索中使用强化学习(ReinforcementLearning)的方法来对产品排名进行实时调控和优化。我们把搜索引擎看作一个代理(Agent),把用户看作一个环境(Environment),那么商品搜索问题就可以看作是一个典型的序贯决策问题(SequentialDecision-makingProblem)。我们的目标是最大化使用该平台的长期累积收益。在系统方面,2016年双11,我们的实时计算引擎从istream时代平滑升级到Blink/Flink时代,实现了24小时不间断无延时运行,机器学习任务从几个扩展到数百个工作岗位。为算法实现大规模在线深度学习、强化学习等前沿技术奠定了坚实的基础。第四阶段:全面进入深度学习时代由于在线深度学习需要强大的计算资源支撑,2017年我们重构了支持CPU/GPU的流计算平台、机器学习平台和异构在线服务平台。可支持更大规模的流式数据计算、超大规模深度模型的在线学习和在线预测。依托强大的算力,实现了深度学习在搜索中的全面落地,包括语义搜索、深度用户兴趣感知、产品多模表征学习、在线深度机制模型、多场景协同智能决策等技术创新点:a)深度用户感知模型:搜索或推荐的个性化重点是用户的理解和表达。基于淘宝静态用户画像特征和用户行为动态特征,我们提出了基于多模态学习、多任务表示学习和LSTM的相关技术。从海量用户行为日志中直接学习用户的一般表达。这种学习方法擅长“总结经验”和“举一反三”,使得得到的用户表达更加基础和全面,可以直接用于用户行为识别、偏好预测、个性化召回和个性化排名等任务,具有在搜索、推荐、广告等个性化服务中有着广泛的应用场景。(相关论文已被KDD2018录用)b)大规模商品多模态表征学习:淘宝商品具有文本、图片、标签、id、品牌、品类、店铺、统计特征等多模态信息。存在一定的冗余和互补性。我们使用多模态学习将多维特征融合在一起,学习出统一的乘积向量,利用注意力机制实现不同场景下不同特征维度的差异。比如女装的形象特征就比较重要,3C下,价格和销量更重要。c)线上深度机制模型:由于不同用户、不同场景有不同的优化目标,我们在机制模型中加入了用户状态和场景相关的特征,实现了千人千面的排序机制模型。同时,由于各种基础实时日志的qps和延迟不同,为保证在线学习的稳定性,我们构建了实时样本池,以维持在线学习稳定的样本采集。d)全局排序:传统的排序模型只对单个文档进行评分,然后根据评分从高到低排序。这种方法不能考虑产品之间的相互影响;传统的单个产品的ctr和cvr是基于一个产品的ctr和cvr不会被同时显示的其他产品影响的假设(我们称之为显示上下文)。事实上,商品的展示上下文可以影响用户的点击或购买决策:如果同一款商品周边的商品与其相似,而且价格比它便宜,那么用户购买它的概率就不会高;否则,如果周围的同类产品比它贵,那么用户购买它的概率就会大大增加。全局排序需要解决这个问题,考虑产品之间的相互影响,最大化整个页面的效率。(相关论文已被IJCAI2018录用)e)多场景协同智能决策:搜索多个不同的商品依赖个性化实现GMV优化,导致不同商品的搜索结果趋同。这个问题的根源在于不同场景下的算法各自为战,缺乏协同和关联。今年所做的一项重要工作是利用多智能体协同学习技术,实现多个异构场景之间的环境感知、场景通信、个体决策和联合学习,从而实现联合利益的最大化,而不是相互淘汰。其他。length(相关成果论文已被www2018录用)。让我们回顾一下推动智能搜索系统演进的三点。是什么推动了智能搜索系统的发展?目前各大互联网公司的主流技术路线是利用机器学习技术来提高搜索/推荐平台的流量投放效率,随着算力和数据规模的增长,大家也在不断优化和深化。是什么驱使我们推动智能搜索系统从离线建模、在线预测向在线学习、实时决策演进?总结起来,主要有三点。首先,众所周知,淘宝搜索非常活跃,宝贝流通暂停,新卖家加入,卖家上新,价格调整,标题更新,旧产品下架,季节性产品推广,更新宝贝图片。更新、销量变化、卖家排名提升等,都需要搜索引擎第一时间捕捉到这些变化,并在最后的排序过程中,将这些变化及时整合到匹配排序中,从而动态调整结果。其次,从2013年开始,淘宝搜索进入了千人千面的个性化时代。搜索框背后的查询逻辑,从原来的Query,演变为[Query+usercontext+region+time]。搜索不仅仅是一个简单的不是一个根据输入返回内容的智能“机器”,而是一个可以自动理解甚至提前猜测用户意图的机器(比如用户浏览了一些女士牛仔裤产品,然后输入搜索并输入查询词“衬衫”,系统分析出用户当前的意图是寻找与女性相关的产品,因此会展示更多的女式衬衫,而不是男式衬衫),而智能系统则可以将这一意图准确反映在返回的结果。在查询词时,可以根据用户的差异,展示用户最想看到的结果。变化无时无刻不在发生,产品在变化,个人用户在变化,群体和环境在变化。合理捕捉搜索个性化系统的变化,正是实时个性化要解决的问题。最后,电商平台也完成了从PC时代到移动时代的转型。随着移动时代的到来,人机交互的便捷性、碎片化使用的普遍性、业务切换的系列化,要求我们的系统能够完整地对不可预知的用户行为和千变万化的外部环境进行建模。基于监督学习时代的搜索和推荐,缺乏有效的探索能力,系统倾向于向消费者推荐已经行动过的商品或店铺。真正的智能搜索和推荐需要作为投放引擎的agent具有决策能力。这个决定不是根据单个节点的直接收益来决定的,而是作为一个人机交互的过程。消费者与平台的交互被视为一个马尔可夫决策过程,采用强化学习框架建立消费者与系统交互的循环系统,系统的决策是基于过程的利益最大化。未来展望——让淘宝搜索拥有智能体验经过这么多年的双十一推广,围绕在线AI技术的智能框架已经初具规模,基本形成了一个在线学习、智能决策的智能搜索体系。电商平台为实现消费者、卖家、平台的利益最大化奠定了坚实的基础。这个具有学习和决策能力的智能系统,也让搜索从一个简单的寻找产品的机器变成了一个可以学习成长、理解用户、为用户着想的“人”。但在这个过程中,通过搜索排序学习到的知识,大部分是通过现有的产品标签数据和用户行为数据获得的,还缺乏对产品和用户更深入的理解,仍然无法完全理解用户的多样性。意图表达的真实需求。例如,如果用户搜索“sexydress”,他们可能想查找“适合晚会的低胸晚礼服”或“适合海滩度假的露肩沙滩裙”;用户收藏了“登山鞋”和“拐杖”,可能对“登山装备”有需求,需要挖掘更多与登山装备相关的其他类目产品。一位带着孩子的父亲,在暑假伊始,选择“适配器”,查看“大英博物馆门票”。也许他想带家人来一次“英国夏日亲子游”,需要寻找更多其他品类的相关产品。究其原因,当前的机器智能技术,尤其是以深度学习为代表的模型,在现实应用中发展迅速,主要得益于海量大数据和大规模计算能力。通过对物理世界的数字化抽象和程式化学习,使机器智能具有很强的获取有限知识的能力,但很难获取数据以外的知识,更不用说知识类比、迁移和推理了。机器的认知智能,比如自主学习和发现,甚至是创造力,是人工智能的更高层次。当然,通用机器智能还有很多工作要做。在这个过程中,如何先将人类知识与机器智能相结合,实现初步的认知智能,让淘宝搜索具有智能化的体验,是未来值得探索的方向。我们有理由相信,随着智能技术的进一步升级,这个“人”会越来越聪明,最终实现机器智能和认知智能的目标。【本文为专栏作者《阿里巴巴官方技术》原创稿件,转载请联系原作者】点此查看作者更多好文