OpenSearch最新功能介绍

摘要:阿里云开放搜索(OpenSearch)是一款结构化数据搜索托管服务,其可以提供简单、高效、稳定、低成本和可扩展的搜索解决方案。OpenSearch以平台服务化的形式,将专业搜索技术简单化、低门槛化和低成本化,让搜索引擎技术再也不成为客户的业务瓶颈,以低成本实现产品搜索功能并快速迭代。本文将为你们介绍OpenSearch的最新推出的电商查询语义理解和搜索算法平台两个新功能。算法

本文整理自直播分享以及PPT。数据库

本次分享将主要围绕如下三个方面:数组

  1. OpenSearch产品简介
  2. 新功能介绍-电商查询语义理解
  3. 新功能介绍-搜索算法平台和人气模型

1、OpenSearch产品简介
OpenSearch产品上云以前在阿里巴巴集团内部一直都扮演着搜索中台的角色。除了淘宝、天猫以外,阿里巴巴集团的其余核心业务产品好比飞猪、菜鸟等也都是经过OpenSearch接入的。其实OpenSearch和淘宝、天猫所使用的搜索引擎原理基本相同,只不过OpenSearch在其基础之上实现了多租户逻辑。
1
OpenSearch上云以后的主打方向就是为外部的企业客户提供具备高搜索质量的一站式内容智能搜索服务。OpenSearch的主要优点能够大体总结为如下四个方面:app

  1. 淘宝主要算法功能原生集成:OpenSearch不只基于了阿里巴巴自主研发的大规模分布式搜索引擎,其在搜索引擎之上还集成了业界领先的淘系算法功能,包括了电商领域的语义查询与理解、排序等,借助这些算法能力就可以助力GMV转化率、CTR等业务指标的快速提高。
  2. 无需开发就能实现索引秒级更新:OpenSearch支持与云上的RDS和PolarDB两个数据库无缝对接。在OpenSearch的控制台只须要配置几个关键参数,好比数据库名、用户名以及密码就能够直接对接数据库和OpenSearch,实现数据实时更新,整个过程很是简单,无需任何开发。
  3. 0运维,免部署:OpenSearch是云端全托管服务,所以无需运维和部署,很是方便。
  4. 服务搭建更简单:开发者无需了解OpenSearch复杂的原理,就可以快速上手使用,并将关键路径流程化、可视化出来,仅须要几步就可以完成基础服务的搭建。若是业务常常会出现波峰波谷状况,好比618或者双11大促,均可以在OpenSearch上随时扩缩容,而且可以及时生效,无需提早申请配额,所以也很是方便。

2、新功能介绍-电商查询语义理解
首先为你们介绍OpenSearch的电商查询语义理解这个新功能。之因此要实现电商查询语义理解这个功能,是由于在电商场景里面,搜索引导的成交每每占比达到60%以上,所以电商对于搜索的精准度要求很是严格。可是在实际的搜索场景中,用户输入的关键词每每很是口语化,而站内商品的标题、详情描述、类目以及标签等都属于比较书面化和规范化的文本,所以就致使查询词和商品信息没法匹配。若是站点没有实现语义的Mapping,用户每每搜不到其想要的商品,对于平台而言,这就使得无结果率或者少结果率都会很是高。基于上述的背景,OpenSearch就把淘宝搜索内部的智能语义Mapping功能集成到了OpenSearch内部,称之为查询语义理解,该功能专门为电商领域提供服务,所以垂直性也很是强。
2运维

淘宝搜索和OpenSearch的解决方案
这里为你们介绍一个实际案例,来帮助你们理解电商场景的语义查询Mapping功能对于实际业务的具体做用。下图中,用户在搜索框输入了“NKIE新款运动鞋”,这里的“NKIE”实际上是输入错误的“NIKE”,而搜索返回的结果其实都是符合用户实际需求的NIKE的新款运动鞋。那么,在这个过程当中系统作了哪些工做呢?首先,系统会对于用户输入的关键词进行拼写纠错,将其修改成正确的关键词,并作一个大小写的归一化处理。以后使用分词器对其进行处理,对于分词的语义单元实现实体的标签识别,这里的做用就是抓住核心的东西来进行搜索,保证搜索结果既丰富又不会跑题。系统在最后还会进行同义词的拓展来扩大搜索结果的召回量。所以,系统在最后实际进行查询的词并非用户所输入的“NKIE新款运动鞋”,而是如图中所示的实际执行的查询词。这就是电商查询语义理解在实际业务中的做用。
3机器学习

核心功能亮点
本次OpenSearch所集成的电商查询语义理解功能具备如下的三个核心亮点。这里之因此强调电商领域,是由于OpenSearch在本来通用的查询语义理解基础之上提供了针对于电商场景的纵深优化。分布式

  • 电商拼写纠错:OpenSearch系统会对于用户输入的查询串进行拼写错误检查,计算查询词是否须要进行纠错,并给出纠错建议。对于明确的拼写错误会直接改写原始查询串,而后进行检索;对于可能的拼写错误将仍然使用原始查询串进行检索。
  • 电商命名实体识别(NER):OpenSearch系统将查询词分词后对每一个语义单元进行需求识别,每一个实体会被打上一个类型标签(共36种标签),好比品牌、品类、新品等。在系统中,标签重要性大体分为三档:高、中、低。标签重要性低的实体在查询中会被忽略,以扩大召回率;标签重要性高的实体会直接影响文本相关性的计算和类目预测训练。好比“耐克修身连衣裙”,实体识别的结果为“耐克/品牌/中”、“修身/款式元素/低”、“连衣裙/品类/高”。而且若是系统中默认的标签重要性不符合用户预期,用户也能够直接进行调配。
  • 灵活干预:电商场景中查询语义理解功能是基于淘宝搜索多年沉淀的大数据训练,绝大多数状况下会为电商场景提供良好的查询分析效果,可是不一样的业务场景都会有自身垂直的查询词可能未覆盖或者分析错误,因此开放搜索也支持可视化上传、管理干预词条,支持自定义词库的上传,支持灵活配置,即干预即生效,简单快捷,方便用户在业务中更加灵活地使用这一功能。
    3

电商查询语义理解客户案例
这里为你们分享一个使用OpenSearch电商查询语义理解的实际客户案例,该客户的业务属于垂直领域的电商行业,搜索引导的成交占比所有成交的60%以上,所以搜索是站内最重要的功能。而用户在站内搜索的无结果率却接近60%,也就是说天天海量搜索PV都是0转化,这是很是巨大的浪费。基于上述背景,该客户内部明确立项对于在两个月的时间内对于搜索效果进行优化,而其面对的最大挑战就是业务很是垂直而且圈子内用户输入的查询词和商品的官方名称每每千差万别。此外,该客户所售卖的商品不少来自海外,最开始名字为英文,而当引入国内以后,客户的用户有时会直接音译成为中文来称呼商品名称,因此站内的热搜词每每会是商品的别名、缩写、音译词等。并且客户本来自建的开源服务没有对搜索关键词作智能的语义理解,甚至有些实体名词分词仍是错误的,所以形成了搜索无结果率居高不下。
4学习

基于上述问题,客户方的技术人员开始调研解决方案。客户内部明确要求对于搜索效果的优化周期要在两个月以内完成,而技术人力却只有一个。解决搜索结果召回问题的主要路径就是创建起搜索关键词的智能语义理解服务,而从0到1的实现该能力不只须要多个精通NLP的算法专家,还须要至少几十万量级有人工标注的数据物料作训练,而现阶段,客户方面既没人也没数据,市面上也没有现成的开源插件。基于这样的效率和投入成本的考虑,客户就选择使用OpenSearch对于以前的搜索功能进行改造和升级。该客户使用了OpenSearch的电商分词、电商查询语义理解以外,还将一些自定义的补丁词库放到了OpenSearch上,而词库能够由运营同窗直接上传,而不须要为技术人员增长额外的开发工做量。通过不到2个月的时间,全流程实现完成以后,使用OpenSearch的部分服务的结果召回率基本达到了90%左右,而自建服务的结果召回率只有31%左右,二者进行对比就可以发现使用OpenSearch在结果召回率方面具备较大的优点。除此以外,使用OpenSearch使得搜索引导成交转化率相比于本来的开源自建服务提高了9%。测试

3、新功能介绍-搜索算法平台和人气模型大数据

搜索算法平台
之因此要实现搜索算法平台功能,是由于当搜索业务发展到必定阶段,用户行为数据对于搜索排序效果的提高将会承担重要的角色。受限于行为日志数据的庞大和繁杂,这个时候每每须要机器经过统计学习算法,对大量的历史数据进行学习从而生成经验模型。利用经验模型将行为数据量化为合理的分数,最终在排序中使用。想要在业务中高效实现这一整套机器学习流程,每每会面临如下两个问题:

  • 繁杂的数据采集和预处理工做:天天亿级的数据都须要经过自动化的方式进行采集、存储和处理,对于这些原始数据还须要进行统计、分析和处理来发现用户行为的基本规律,这就要求开发者具有长分析能力和长期经验积累,好比发现原始数据正负不均衡时,如何构建出正负样本数均衡的样本数据,这些还须要必定的算法工做经验。
  • 大海捞针般的算法调参:面对错综复杂的算法参数,开发者们每每须要花费很是多的时间进行调试,而这就如同大海捞针通常。当找到一个看似靠谱的参数组合以后,这个参数组合是否最优还会存在必定不肯定性。
    5

基于以上两个使人极为头疼的问题,OpenSearch经过一个高可视化的方式来支持用户直接完成数据预处理、特征工程、算法调参、模型评估、模型管理模型上线等一系列繁杂的算法平常工做,而且还集成了阿里巴巴集团内部比较成熟的排序算法模型。用户能够经过整个算法平台自行训练高质量的算法排序模型而且应用到OpenSearch的算法排序中,以后将模型上线到实际业务并进行AB Test对比,获得总体实验效果而且回收,实现全链路OpenSearch的彻底打通,而且以可视化、流程式地进行呈现。对于没有接触过这些算法的开发者而言,也能够直接上手这个OpenSearch平台。而且该平台专一于搜索算法模型训练,所以会内置一些阿里巴巴集团已经通过多年实战经验沉淀下来的模型,好比比较成熟的人气模型。而且在将来,类目预测等模型也会陆续上线到OpenSearch平台上。总之,用户能够在平台上完成整个算法模型训练以及上下游的流程。
6
此外,对于上线的模型是否优秀而言,平台还会产出一个较为专业的评估报告,经过这些评估报告和指标使得模型的效果能够一目了然。对于模型上线以后用户是否买单而言,OpenSearch还支持一键生成对比AB Test实验,可以支持用户快速迭代模型和改善效果。对于模型上线效果的回归而言,平台还能提供业务指标分析的报表。

人气模型
人气模型简单而言就是衡量用户对于站内每一个商品或者每一个文件的受欢迎程度,也就是静态质量分数。能够将其加入排序,使其成为排序的一个因子,经过这个因子来直接影响排序效果。OpenSearch会将四个维度的特征加入训练,包括了实体维度、时间维度、行为维度以及统计维度。
7

模型评估报告
OpenSearch会针在每一个模型在训练完成后自动产出一个模型评估报告,经过这个质量来评估模型的效果,好比分类算法模型的评估报告中就会包括如下指标,好比整个模型是否适合在业务中使用,此外还有一些细化的指标如AUC值、ROC曲线、混淆矩阵、特征权重等。对于一些有算法经验的同窗也能够直接经过这些指标值来发现问题,并进行模型的下一轮调优。
8

如何使用
若是想要使用搜索算法平台,首先须要经过OpenSearch的SDK上传行为数据,以后就能够直接在算法平台上建立和训练模型,模型训练完成以后就能够查看模型评估报告。若是模型评估报告建议使用该模型,就能够直接将模型部署到OpenSearch的应用中,进而将其应用到排序表达式中。
9

搜索业务效果评估
将模型应用到排序表达式中以后就须要对于搜索业务效果进行评估了,传统方式每每是结合线下人工评估和线上流量测试。线下人工评估每每会抽取一些具备表明性的查询关键词,组成一个规模适当的关键词集合。针对这个关键词集合,从排序模型的产出结果中查询对应的结果,进行人工标注相关性。对人工评测的结果数据,使用预约义好的评价计算公式好比DCG等,用数值化的方法来评价模型的结果和标注的理想结果的接近程度。若是人工评估认为搜索业务的效果是变好的,此时就能够进行线上流量测试。为了真实验证一个排序模型的好坏,就须要使用刚才提到的AB Test机制来检验和对比。在用户搜索时,由测试机制根据必定的策略来自动决定用户的分组号,保证自动抽取导入不一样分组的流量具备可对比性,而后让不一样分组的用户看到的不一样排序模型所提供的结果,用户在不一样模型下的行为将被记录下来,这些行为数据经过数据分析造成一系列指标,经过比较,最后就造成了不一样模型之间孰优孰劣的结论。
10
对于OpenSearch而言,其没法支持第一种线下人工评估,所以用户只能本身抽取Query来进行人工评估。当人工评估完成以后,OpenSearch能够支持线上的AB Test端到端一键配置,能够支持多场景多分组下流量划分进行试验,充分知足了单一应用但覆盖多样业务场景的实验需求。而且使得实验配置和上下线状态能够灵活调整,即操做即生效。而且能够实现报表的天级产出,帮助客户进行决策。而且可以实现全流程可视化界面操做,可以使得用户实现快速接入,简单无门槛,而且产品和运营人员也能够直接使用。
11
当整个优化完成以后,OpenSearch还提供了一套专业搜索业务质量报表指标体系,该体系针对于电商场景划分了5个体系,即流量指标、点击指标、用户分析指标、Query分析指标以及成交指标。
12
借助于这些效果评估指标,客户能够很是专业而且直接地看到通过本身的一轮又一轮的优化,搜索效果的提高可以体如今哪里以及存在的问题在哪里。

阿里云双11亿元补贴提早领,进入抽取iPhone 11 Pro:https://www.aliyun.com/1111/2019/home?utm_content=g_1000083110

原文连接

本文为云栖社区原创内容,未经容许不得转载。

相关文章
相关标签/搜索