R&S[26] | 搜索领域算法需要掌握的知识

往期回顾:

搜索领域在我的一些文章下,似乎让一些人产生了兴趣(窃喜),那么搜索领域需要掌握什么内容呢,这次我花时间总结了一下。

懒人目录:

  • 前言

  • 自然语言处理

  • 学习排序

  • 数据结构与算法

前言

搜索早就不是新东西了,它的出现比机器学习深度学习可要早得多,也能蓬勃发展起来,截至目前,无论是百度谷歌必应这类的大搜,还是网易云音乐、应用宝等应用下的垂直搜索,都有一套比较成熟的方法。在我的视角看,搜索作为用户主动获取信息的重要入口,会长期存在,另外还有大量的人其实没有培养起搜索的习惯,随着慢慢培养需求会被激活,还是非常有发展前景的,而且成了推荐系统发展场景下的“灯下黑”,竞争其实并不如所想的激烈。

自然语言处理

自然语言处理在整个检索流程中都起到了重要作用,上游的query预处理、纠错拓展、意图识别,到下游的召回、精排,都要用到,简单句几个例子吧:

  • 预处理和纠错,涉及到文本生成、文本共现挖掘等方面的技术。

  • 意图识别,最直接的使用就是文本分类。

  • 召回阶段,需要根据term weighting进行重要性算分,可供粗排使用。

  • 精排部分,需要计算query和doc的匹配度,那就是文本匹配、语义相似度方面的内容了。

开始我的理解搜索中使用的是只有nlp中的NLU,即自然语言理解,如文本分类、实体识别、文本匹配之类,但是在查询拓展、纠错等方面,NLG,即文本生成,仍有一席之地。目前自己在文本分类和实体识别都点了一些技能点了,文本匹配尚且经验不足,没想到知道的越来越多,就发现自己不知道的也越多。

学习排序

在搜索引擎的初级阶段,一般就会从query理解整,在query理解模块逐步成熟,流量提升,doc增长后,就会开始建设排序模块,在已经具有优质内容的前提下,良好的排序能够为整体搜索体验带来新的提升,因此排序从这时候开始,将也会成为搜索系统的重要部分。

learning to rank其实是一个比较重要的课题,已经成为一个单独的科研课题,但是在现实应用中更多的工作关注于特征,对base模型是逐步提升迭代的,lr、xgboost之类的还是主流和首选,后面才有了基于问题的优化,很多工业界的模型其实都是基于业务场景进行的优化。

数据结构与算法

搜索系统涉及大量的计算,尤其是搜索方面的计算,因此需要构建大量方便检索的数据结构,其中大部分都和树有关,如trie树等,当然还有各种哈希等等,为的是能快速从海量数据中找到所需的数据,确实需要进行大量的操作,这些工作大部分可能是在工程团队手里,但是仍有部分内容会在算法的手里,例如词典的构建来协助提升准招。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值