2023年深度解析 - 垂直搜索引擎构建:一个例子(下)_第1页
2023年深度解析 - 垂直搜索引擎构建:一个例子(下)_第2页
2023年深度解析 - 垂直搜索引擎构建:一个例子(下)_第3页
2023年深度解析 - 垂直搜索引擎构建:一个例子(下)_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

深度解析|垂直搜索引擎构建:一个例子(下)class="size-fullwp-image-5785423aligncenter"src="s7NkUSBIvRoiIBNXRhqO.jpg"alt=""width="900"height="420"/>

前文简要介绍了房产垂直搜寻引擎的含义、特点和作用,随后叙述了房产搜寻引擎的框架搭建,包括query分析、召回策略等。有爱好的读者可以通过点击下方链接查看。

传送门:深度解析|垂直搜寻引擎构建:一个例子(上)

在本文,我们将介绍垂直搜寻引擎的排序策略、效果评估等内容,通过本文你将了解垂直引擎的排序和评估方法大致框架。

DSSM(DeepStructuredSemanticModels)又称为双塔模型,该方法是一种深度学习方法,可以用于学习query和Item之间的语义相像性。它通过神经网络模型将它们表示为连续的低维向量,使得具有相像语义的query和ietm在向量空间中靠得更近。DSSM最初是为了解决Web搜寻中的query-doc匹配问题而提出的,但它在其他自然语言处理任务,如推举系统、文本匹配等方面也有广泛的应用。

在房产搜寻引擎中,我们可以使用DSSM模型来匹配query和房源,以找到与用户query最为相像的房源。

我们可以通过以下步骤来实现训练:

①通过对用户query的分析(参考本文前文),将用户查询做query分析预处理后,可以使用CBOW(词袋模型)、word2vec等方法将query和房源结构化表示为向量。

②构建神经网络模型(如MLP),分别对query和房源信息进行编码。该神经网络将二者表示为连续的低维向量。通过训练,模型可以使query与相像的房源在向量空间中更为接近。

③训练好后,我们可以通过训练好的DSSM模型,对给定用户的查询和房源描述进行编码,计算它们在向量空间中的相像度打分。然后,依据相像度打分对房源进行排序,将最相关的房源推举给用户。

使用DSSM可以匹配query与之关联最高的房源,可以保证粗排数据的质量。DSSM需要高质量的训练数据和大量计算资源。在工作场景中,可按需要进行处理。

例如,当用户的query=“chaoyang两居二手房”,若分析器处理结果为实体属性,如{Region:朝阳;HouseType:二居;HouseStatus:二手房}。此时我们可将其处理为业务向量,与结构化房源进行相像计算,按相像度进行排序,也可以取得不错的效果。因此,在实际应用中,依据详细场景和需求选择合适的方法是非常重要。

(4)共性化模型

共性化排序模型,又被称作“千人千面”。它基于用户特征和行为数据,对搜寻结果实施共性化排序,以更好地满意用户需求。详细而言,该模型可依据用户的个人属性、行为属性、偏好属性等特征,对搜寻结果进行共性化排序。

例如,对于一个搜寻“北京市二居室”的用户来说,假如该用户历史多次搜寻过三环内的房源,那么搜寻结果中三环内的三居室房源将会被优先展现。这种排序策略可以满意用户共性化需求,提升用户体验。

(5)多目标模型

在房产搜寻引擎中,排序不仅要考虑相关性,还要考虑多个业务目标,例如展现尽可能多的优质房源、提高用户点击率、保藏率、询问率和呼叫率等。

利用深度学习,可以训练将用户特征、物品特征、统计特征、场景特征作为输入,将点击率、保藏率、询问率和呼叫率作为输出的模型,最终计算四个值的加权平均数。我们可以将该平均数作为房源的目标评分,进行排序。该方法考虑了多个业务指标,业务解释力量更强。

(6)实时特征排序

实时特征是指用户在搜寻过程中产生的实时行为特征,例如搜寻词、搜寻时间、搜寻历史等。这些实时特征可以用来调整排序策略,更好地满意用户需求。例如,假如用户在搜寻“北京租房”后又搜寻了“朝阳区”,那么在后续的搜寻结果中,应当优先展现朝阳区的租房信息。

选取哪种方法需要考虑业务的特性和用户的需求,同时也需要平衡商业成本与ROI,从而选择最合适的排序方法。

1.2.2精排

精排是指通过各种模型对数据做出精细化排序,提高搜寻结果的质量。精排也可以供应共性化的结果,使搜寻结果更加满意用户的共性化需求。

精排需要从粗排数据筛选出较高质量的数据。常规的排序模型LR、GBDT、FM等存在一些问题,如调整参数困难、过拟合(Overfitting)等问题。而使用深度学习或强化学习构建的模型,可以自动学习特征和调整参数,能够避开上述问题,提高排序模型的精确     性。

1.LTR

随着互联网的进展,用户数据不断增加,计算机芯片算力也实现了很大的提升,这使得排序策略模渐渐向深度学习模型转移成为可能。使用深度学习进行排序通常称为学习排序,学习排序通常分为以下三种类类型。

(1)Pointwise:

Pointwise将排序问题视为一个回归或分类问题。在这种方法中,我们对每个item单独处理,不考虑其他item的相关性。CTR方法就是一个典型的Pointwise方法,例如,在房产搜寻中,为每个房源安排一个点击可能性得分,并依据上述得分对搜寻结果进行排序。

(1)Pairwise:

Pairwise将排序问题视为一个二分类问题,强调两个item之间的相对挨次。在这种方法中,我们会对每对item进行比较,推断哪个item与用户需求更相关。然后,利用二分类模型(如SVM、GBDT等)学习这些特征对之间的关系,从而猜测item之间的局部优先挨次。

以房产搜寻引擎为例,对于每对房源,我们可以计算它们的特征差(如价格差、面积差、户型差等),并依据这些特征差训练一个二分类模型,猜测输出房源相对挨次。最终,依据猜测结果对房源进行排序。

(2)Listwise:

Listwise将整个搜寻结果列表作为一个整体进行排序。在该方法中,更关注整个排序列表的质量,而不是单个item或item对之间的关系。通过训练模型,可以对全部item打分,依据item得分进行列表排序。Listwise方法通常使用NDCG作为评价函数,并基于此迭代排序模型。在房产搜寻引擎中,通过输入无序房源列表,然后输出有序的房源列表。

该方法为代表的模型有Lamda、Ada等。由于关注的是整个列表,该方法也通常更符合用户需求。但也存在数据标注困难、训练成本高等问题。

2.其他方法

近年来,随着精细排序进入深度学习时代,排序深度学习模型渐渐消失多个细分方向。

通过组合和交叉原始特征,提取更高级别的特征表示,关心模型更好地捕获特征之间的非线性关系,如FM、FFM、DeepFM、DCN等;基于用户数据信息,捕获用户爱好和行为动态变化。代如DIN、DIEN、SIM等;同时优化多个目标,如点击率和转化率等。这可以关心模型在多个指标上取得平衡。如ESSM、MMOE、SNR和PLE等。限于行文空间,上述模型的细节不作绽开讲解,我们将在后续专栏其他文章进行阐述。

1.2.3重排

重排是利用各种方式对精排数据进行重新排序,以实现搜寻结果多样化、运营内容混排、流量调控等目标。

多样性:通过展现多样化数据,可以降低内容、品类单一等问题,供应内容异质性;内容混排:如在房源列表中插入广告、视频/图文/直播内容、主题聚合等。流量调控:流量调控可以看作是对部分特别item流量进行掌握,避开缺乏曝光和过度曝光。如常见的新发布房源冷启动、曝光保量等问题。流量调控实际上有很多问题需要留意,有爱好的读者可以查阅相关内容进行阅读。在本文,我们主要介绍以下几种重排方法:

(1)固定策略

固定策略是指在搜寻引擎中,将某些内容固定展现在搜寻结果的某个位置。比较常用的是方式是等距插值,如每4个房源后插入一条广告/素材/主题等。

(2)规章策略

规章策略是指依据业务方需求,对搜寻结果进行规章性的调整。常见方法如下:

①依据类别排序,优先展现真房源、新上架房源、高评分房源等;

②排解不感爱好、B端黑名单等;

③广告竞价:依据B端广告付费竞价,进行优先排序。房源的点击会直接影响竞价广告的收益率,间接影响客户的续费率。

(3)listwise

使用pointwise时,同一用户query,每个item在精排阶段都是独立的,可能存在召回item的特征相像,缺乏异质性。listwise方法主要思想:将用户原始query与全部候选item联系起来,用来关注上下文信息。考虑上下文因素,并进行重排。

值得留意的是,在排序方面需要留意排序的全都性,避开召回、粗排、精排、重排策略不全都的状况。在各个阶段使用冲突的模型可能提高搜寻结果的不确定性,降低排序结果的表现。

最终,对于排序而言,应避开陷入技术追求陷阱,认为搜寻引擎假如没有采纳GBDT、DNN等简单技术,就算不上好的搜寻引擎。

实际上,构建一个高效的搜寻引擎应当关注业务需求和用户体验,适当地依据实际场景选择相应的技术方法。比如,在某些特定场景下,简洁的基于关键词匹配的排序策略可能就已经足够满意用户需求。此时,使用简单模型,不仅铺张了珍贵的技术资源,还会降低搜寻引擎的响应速度。

因此,在选择排序方法时,应当依据实际业务需求和场景来权衡,而不是过度追求技术简单度。

我们将调整后的CG称为DCG(DiscountedCumulativeGain,折扣累计增益),DCG=Σrel_i/log2^(i+1)。折扣累计增益通过求多次查询DCG的平均数,理论上可以得到较好的评价指标。

IDCG:

使用DCG进行打分真的没问题吗?举个例子。小兰在高考时,物理考了95分,数学考了135分。如何比较二者的成果呢?假如我们直接比较原始成果,可能会由于满分不同而导致比较不公正(读者可以简洁思索一下解决方案)。

应当如何分析小兰的成果呢?为了消退这种不公正性,我们可以将两门成果都归一到0-1的范围之内。这样,不论是数学成果还是物理成果,都可以在同一尺度(得分率)下进行比较。我们将小兰物理成果换算为95/100=0.95,数学成果换算为120/150=0.90,可以发觉物理比数学考的更好。这种处理方法被称为最大值归一化(除此之外,还有均值归一化、z值归一化,有爱好的读者可以搜寻了解)

同理,搜寻引擎返回的item数量可能或多或少。比如query=“开间”时,可能只返回3条数据。这时,返回3条结果和5条结果下的DCG,他们的分数计算标准不同,直接比较DCG分数大小就不太妥当。因此我们需要计算每条搜寻结果能获得DCG的满分,再使用DCG/满分,得到DCG的得分比例。

我们将全部与query相关的item排在前面,如query=西二旗的搜寻结果listA=[城西,二手房,西二旗1居,西二庄,西二旗开间],将结果调整为[西二旗1居,西二旗开间,城西,二手房,西二庄]时,可以得到DCG的最高分(对应的CG为[1,1,0,0,0]需要乘减函数计算DCG,只有排在前面才能获得最高分)这个最高分就是IDCG(IdealDiscountedCumulativeGain,抱负折扣累积增益)。

nDCG:

通过归一化可以得到nDCG的公式:nDCG=DCG/IDCG,NDCG是一种衡量搜寻结果质量的指标,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论