搜索技术
搜索引擎
搜索排序

搜索引擎近十年来在技术上有什么发展?

从外行来看,有了关键字检索和pagerank之后,搜索引擎企业和研究者主要做什么?检索日志分析、同义词、个性化、NLP、ranking、语义网、叙词表…
关注者
742
被浏览
60,437

17 个回答

搜索的本质是满足用户通过query表达的需求,分词、倒排索引、pagerank等都只是方法,不是目的,论发展可以简单分为三个阶段:

1. 第一个阶段,倒排索引解决效率问题,文本模型解决基本的相关性,使搜索引擎变得可用、可扩展,代表比如Infoseek

2. 第二个阶段,超链模型(比如pagerank)解决权威性问题,使搜索质量提升一个档次,代表比如Google

3. 第三个阶段,一方面通过用户行为分析(将)使得搜索结果再次提升一个档次(简单的比如点击模型,复杂的比如个性化),这些在垂直搜索上表现的会更加明显;另一方面,淡化分词与文本匹配,通过query改写召回更多好结果,通过整合搜索\应用平台\结构化信息整合等方式使得结果变得更加直接有效

发布于 2011-09-02 10:06

谢邀。

针对这个问题,我们邀请了微软亚洲研究院主管研究员杨懋为大家带来他对搜索引擎的观点与见解。

--------这里是正式回答的分割线-----------------------

搜索引擎从二十年前就开始生活在我们身边,一步一步强大与进化,今天我从搜索引擎的发展历程来谈谈我的理解。

搜索引擎的诞生与发展

搜索引擎的诞生,来源于早期人们对高效寻找互联网上信息的需求。采用传统的图书馆信息检索技术的早期搜索引擎并不能满足大家的需求。无论是网页排序的准确度,反应速度和索引网页的数目都不能满足互联网用户的需求。新需求下,产生了目前常见的几个大通用搜索引擎:谷歌、微软必应、雅虎(Yahoo采用微软必应作为其搜索技术的提供商)和百度。它们大都创立于2000年左右。在这些搜索引擎诞生之初,大数据,机器学习,分布式系统这些词就和它们紧密相连。

首先,现代搜索引擎充分利用了互联网数据的特点。网页之间的超链接,网民自发的在网页上留下的足迹,比如商品评论、点赞等,都成为搜索引擎更好的对网页进行排序的依据。同时搜索引擎的系统设计也将其变为一个可以不断自我学习和改善的系统。搜索引擎根据用户对相关结果的点击行为,进行评估自己算法的好坏。

微软基于机器学习算法的排序系统不断的学习,以及总结不同用户对搜索引擎的反馈,于2005年提出了一系列使用神经网络、决策树等为基础的网页排序算法:RankNet, LambdaRank 和LambdaMART。这些算法以大规模机器学习系统为基础,将搜索引擎的排序精度不断的提升。同时,机器学习算法也有其他多个方面的应用,例如检测垃圾网页、提高搜索广告相关性等等。

除了上述算法上的进步以外,系统层面的不断创新也为搜索引擎的进步添砖加瓦。谷歌在创始之初,就开创性的提出了尽量将所有的网页信息保存在计算机内存而不是磁盘上的系统革新,这样可以将回答用户问题的时间从秒级减少到毫秒级。

微软必应搜索引擎在2008年开始,针对固态硬盘的特点,重新设计了网页索引结构。新的多级索引结构不仅能保证和全内存系统相当的查询速度,单台机器支持的网页数目及查询吞吐量得到了几十倍的提升,这样保证搜索引擎可以索引和服务互联网上更多的网页。

大数据系统更是和搜索引擎的发展紧密相连。为了更方便的存储和处理网页信息,谷歌推出的MapReduce, BigTable, GFS等著名分布式系统,掀开了大数据时代的帘幕。与此同时,微软公司也部署了Cosmos, Dryad, Scope, Kirin等系统。其中Dryad和Scope系统由于其更加前瞻的设计理念,成为新一代大数据处理系统的参考设计范本。

更人工智能的搜索体验

机器学习算法的不断进步,搜索引擎巧妙的人机交互设计,分布式系统的革新让搜索引擎在不知不觉中成为人们生活中不可或缺的一部分。同时,随着人们新需求的不断涌现,搜索引擎也没有停下变革的步伐。一方面,搜索引擎尝试以不一样的形式展示在你面前,比如Cortana, Siri, Google Now这类对话式的智能交互技术背后都离不开搜索引擎的支持。同时它也在不停的扩展新的能力。

如果你够细心的话,你可能会发现当下的搜索引擎可以更加直接的回答你搜索的某个具体问题。比如在搜索结果页面的右边,会有和你搜索相关的其他相近实体的信息。在页面的顶部,某些结果(例如天气,航班等信息)会以更丰富的形式提供答案。最近,一个更加引人关注的变化是,对很多知识性的问题,搜索引擎开始尝试给出直接的答案,而不是某几个网页链接。比如:当你问如何做一份美味的节日点心,如何安装某个新的软件时,微软必应搜索都可以直接给出答案。



搜索引擎是如何做到这一点的呢?要回答这个问题,就不得不提到过去一段时间以来深度学习领域的研究进展。搜索引擎通过大量的数据,利用DNN/RNN等新算法来更加充分的理解网页内容和用户问题之间的关系,从而可以帮助用户在网页中直接找到和问题相关的答案。微软最近收购的由著名深度学习专家Yoshua Bengio 指导的深度学习创业公司Maluuba也旨在加强微软在深度阅读理解领域的实力。而在深度文本理解方面,微软的研究小组也都处于领先位置。

随着算法的发展,搜索引擎的后台也在飞速进化。为了支持以深度学习为代表的新一代机器学习算法,GPU,FPGA以及定制的ASIC芯片已经逐渐走入搜索引擎的数据中心。索引和排序服务系统也在进一步进化以满足算法对处理能力的要求。为了更加实时的处理更大规模的数据,超低延迟网络也正被广泛应用。

智能搜索引擎的下一个目标

以上提到的所有这些努力,都是为了更好的满足人们对搜索引擎的需求。但是搜索引擎真的能完全理解人类的所有知识体系吗?它下一步的任务是什么?

显然,目前搜索引擎已经能够较好的总结互联网的信息用于满足大家的搜索请求,可以直接回答一些常见问题。但是搜索引擎是否能够真正理解这些信息的内在含义,是否可以创造性的解决以前从未出现的问题,以及能否高效的进行自我推演,还不得而知。但是有一点是肯定的,更富创造性的机器学习算法,更加强大的计算能力,以及创新性的人机交互是一切的基础,这些也是工业界和学术界共同努力的方向。

微软亚洲研究院系统研究组主导和设计了必应搜索引擎新一代的的网页处理系统,索引服务系统,语义排序系统。系统研究组同时致力于将新一代大规模人工智能算法更加系统的应用于不同领域。

--------这里是回答结束的分割线-----------------------

感谢大家的阅读。

本账号为微软亚洲研究院的官方知乎账号。本账号立足于计算机领域,特别是人工智能相关的前沿研究,旨在为人工智能的相关研究提供范例,从专业的角度促进公众对人工智能的理解,并为研究人员提供讨论和参与的开放平台,从而共建计算机领域的未来。

微软亚洲研究院的每一位专家都是我们的智囊团,你在这个账号可以阅读到来自计算机科学领域各个不同方向的专家们的见解。请大家不要吝惜手里的“邀请”,让我们在分享中共同进步。

也欢迎大家关注我们的微博和微信账号(搜索:微软亚洲研究院AI头条),了解更多我们研究。


发布于 2017-03-23 16:20

搜索引擎大致经历了如下几个发展阶段:

第一个阶段,使用倒排索引解决匹配的效率问题,使用文档模型解决基本的相关性,使搜索引擎变得可用、可扩展,代表比如Infoseek 。但这一阶段只保证了基本的文字相关性,搜索的真正效果是无法保证的。

第二个阶段,使用超链模型,比如谷歌的pagerank和百度的超链分析。解决权威性问题,使搜索质量提升一个档次。从这一阶段搜索引擎开始快速普及与并进入商业化,为谷歌和百度这样的公司带来了丰厚的利润。

第三个阶段,一方面使用更复杂的规则和机器学习排序模型,综合考虑了用户的行为特征,如商品评论、点赞、收藏、购买等,使得搜索引擎的结果再次提升一个档次,这些在电商等垂直搜索上表现的会更加明显;另一方面,基于各种先进的自然语言处理技术,充分挖掘用户搜索行为日志,对query进行分析改写以召回更多更好的结果。

第四个阶段,从“有框”搜索时代步入“无框”搜索时代。搜索引擎也更像一个智能问答机器人,理解人的自然语言问题,提供更加直接有效的知识答案。背后是基于知识图谱的自然语言理解技术,基于深度学习的答案自动生成技术。

编辑于 2017-11-08 12:30

现在有一种说法是搜索引擎已经到了第四代。第一代是以yahoo为代表的目录索引,人工查询、半自动编辑和人工申请收录。第二代则是利用SPIDER技术 的全网超链接抓取索引+超链接分析及排名算法为核心的搜索引擎,以Google为代表。百度虽然排名算法及广告模式与Google有差异,但本质还是全自 动化的爬虫+结果分析排名。

03年中搜提出了第三代搜索引擎的概念,即是“更智能,更多基于自然语言,更多用户互动和更高搜索质量”的搜索引擎。是不是很虚?04年搜狐索性推出新的搜索子公司搜狗,同年,搜狗开发出“第三代搜索引擎”。可惜市场份额却急转直下,直到Google退出中国才有所好转。

在这10年Google,百度都已经在不断进化,在自我学习,已经具备了所谓的第三代搜索引擎的要素了。所以我认为,所谓的第三代搜索引擎根本还没到来。 现在是WEB2.0时代的晚期,移动互联网时代的早期。WEB3.0来了,第三代搜索引擎才会来。当然移动互联网时代,是否还叫WEB,搜索引擎是否还叫 引擎,一切答案皆在未来!

大家有兴趣可以看看我写的一个博文:中国搜索引擎乱弹 mall2china.com/post/201

发布于 2012-10-31 20:29

我觉得不管搜索引擎在未来如何发展,对于我这种曾经是学生党,现在是工作党的人来说。好用的搜索引擎一定是界面简洁,搜索快捷,广告节制,功能全面的。
现阶段我用的搜索引擎是集搜索&网盘&实用工具于一体的【夸克APP】。
接下里和大家详细介绍一下,有感兴趣的朋友也可以下载去使用试试。


这款搜索殷勤不仅界面简洁,而且广告很节制!
细心地朋友就会发现,大部分App都有好几秒的开屏广告,个别App更肆无忌惮,你点开它后要先关2,3个广告,关的时候还很容易手滑点进广告或者其他App,然后再连退几个App,才能回到最初你想使用的App的功能页面。


我完全理解App需要接广告来盈利以维持正常运营,但非要弄这种强制性的广告逼你看,这种广告到底是宣传作用还是反宣传作用呢。


无广这么朴实的要求现在看来还是挺不容易的。
但在夸克就不同,搜索问题时夸克会把有价值的回答放在最前置的位置,搜索结果列表中也没有任何商业广告,我再也不用在垃圾广告堆中翻答案了!



其次夸克具有强大的广告过滤功能,使用过程中也不受广告弹窗的干扰,用户享受纯净浏览新体验,超过上万条过滤规则,屏蔽大部分以上站点广告,同时可以支持手动标记屏蔽,在夸克我终于可以彻底地和渣渣辉说再见了!


夸克的本质是搜索,搜索起来真的是快速又高效。速度快无外乎就是开屏时间短,搜索速度快,看搭载的内核吧,夸克搭载的是国内高端U4内核,这是基于Chromium自主订制的内核,速度提升50%以上,用起来就是两个字“丝滑”!


其次夸克具有搜索直达功能,这得利于夸克强大的算法,实时智能的识别出输入内容(如:文章,教程,小说,资料,问题),快速地搜索用户想知道的东西,让用户在问题输入一半的时候,往往已经给出了用户想要的答案。
其次,夸克APP内置网盘,不用再下载一个APP,直接就可以在夸克内点击进入夸克网盘。


在别的浏览器或搜索引擎里找资料或者电影资源,想转存到自己的网盘还需要切换App,甚至转码等比较麻烦,但是在夸克App搜索到的资料和视频资源可以直接一键保存到夸克内置的夸克网盘,甚至是用夸克扫描出来的扫描件也可以自动保存到夸克网盘。


对于打工人平时的工作备份也非常方便,因为夸克网盘上传下载不限速,几秒就可以备份成功,还可以多个文档同时备份。
夸克网盘的播放器也超勇的,非会员用户也享受免费倍速功能,让你开心刷剧,高效刷课。


说起价格这一块:
夸克的会员贵?
我想说!买淘宝88vip赠夸克会员!在价格这一方面夸克比市面上任何一款APP价格都要低!

我最喜欢夸克的一点就是功能全面,而且用户人群基本全覆盖,实用功能适用于学生&打工人。
夸克有针对K12的夸克学习板块:夸克学习(k12阶段的各地各科真题模拟,作文范本素材,教材解析);
有针对大学生的夸克大学通板块:夸克大学通(大学及考研课程/资料/课件/真题应有尽有)
有针对打工人的夸克文档:文档(各种PPT文档模板,还可以进行格式转化)

影视资源也非常丰富,直接搜索基本都可以找到资源,即使是比较小众的电影资源。


除此之外,夸克里面聚合各了种细分的内容和智能工具,功能相当齐全,如:
小说漫画(各个小说平台都可以跳转浏览,还有海量的最新免费小说漫画可以阅读)
网盘(夸克内置网盘,搜索资源一键转存,上传下载不限速,免费设置自定义倍速)
夸克扫描王(扫码,扫题,翻译,拍证件照,识物,扫描文件,提取文字一应俱全)
高考志愿(智能填报志愿,智能预测)
生活服务(查快递,查车票,租车,充值,汽车油价,驾照查分甚至限行查询)
游戏(即点即玩,超多小游戏)
夸克健康(买药,预约,问病)

最后想说,不管未来搜索引擎如何发展,现阶段好用的搜索引擎,夸克必须拥有姓名!

发布于 2023-01-11 15:13

我们常见的搜索引擎,例如百度,谷歌, bing,都是词语级的搜索引擎,它们搜索的最小单位,是一个词语(word, term, token),一个词语由多个字符组成,如果想搜索词语中的某几个字符,词语级的搜索引擎就无能为力了,这时候就需要字符级的搜索引擎,例如你要搜索一个手机号码的后4位。

小唐代码搜索引擎( tanglib.com)是一个字符级的搜索引擎,搜索精度精确到单个字符,用于程序源代码全文检索,程序语言的每个符号都有特殊的含义,甚至空格都是有意义的,只有字符级的搜索引擎才能实现精确查找。

字符级搜索引擎在搜索多词组合(例如"a b")的性能上超过词语级搜索引擎,因为词语级搜索引擎视为多个词组合搜索,字符级搜索引擎依然视为单个词搜索。

小唐代码搜索引擎目前支持Java,C,JavaScript,PHP,C++,Python,C#,Ruby,GO,TypeScript,CSS,Shell,Scala,Makefile,SQL,Lua,Perl,Dockerfile,Haskell,Rust,TeX,Batchfile,CMake,Visual Basic,FORTRAN,PowerShell,Assembly,Julia等28种程序语言源代码的检索。

小唐代码搜索引擎的源代码来自CodeParrot数据集,这是一个开源的代码数据集,来自于huggingface网站。CodeParrot数据集是很多大语言模型的代码数据集,AI代码生成工具PolyCoder正是基于CodeParrot数据集。

CodeParrot数据集的源代码来自于Github网站,star数量超过100的项目,总共包含123万个项目,730G源代码,1.15亿个代码文件。

除此之外,小唐代码搜索引擎还包含了一些巨型开源项目的检索,有如下项目:

OpenHarmony鸿蒙源代码,安卓13源代码,linux内核源代码6.29,Qt源代码6.5.0,libreoffice源码7.5.2.2,chromium源码,数据库源码(mysql8.0, mongodb, redis, postgres, sqlite)等。

目前搜索引擎正在AI化,但大语言模型的训练非常消耗算力,即使是chatGPT的原始数据集,也就在4~5T左右,而搜索引擎原始数据可轻松超过PB级,所以最佳的人工智能结构是:一个4~5T(或者更小)的大语言模型基座+一个搜索引擎,对于基座中未涉及的知识,由搜索引擎提供给基座原料,基座加工后返回给用户。字符级的搜索引擎由于去掉了分词这一步,更适合给AI基座提供原料,而且能覆盖词语级的搜索引擎的某些达不到的特性。

发布于 2023-05-25 14:51

性能优化这块,发展的套路就是慢慢地从别的成熟领域借鉴经验。比如招一大帮高性能计算的工程师来调优,有个前google员工跟我说google应该已经用remote direct memory access很多年了。Bing开源了用bloom filter实现的索引(

BitFunnel/BitFunnel

),以及一个用来给文档打分的数学表达式生成机器代码的JIT编译器(

BitFunnel/NativeJIT

)。

当然query understanding这块对于提高相关性很重要,今年的QCon 2016有一个相关的track:

qconsf.com/sf2016/speak
发布于 2016-12-18 14:07

第一阶段:基于内容本身来做判断,例如分词、自然语言识别、相关性、聚类等等

第二阶段:基于内容和内容之间的关系来进行判断,例如pagerank

第三阶段:基于用户行为来进行判断,用户看过什么类型的网页决定了TA喜欢什么类型的网页,那么将根据此进行进一步的优化

发布于 2011-09-02 15:01

基于embedding的search

发布于 2017-03-31 20:18

有一个非技术上的改进,我觉得给用户体验带来很大提升。

举个例子,搜索“天气”,以前只会搜到包含天气或者与天气相关的网站,但现在就会显示你所在地的天气。

这是一个产品设计上的进步。

扩展开来,以后用户能用自然语言提问,直接得到答案,越来越像智能助手。

这样的概念,微软叫“决策引擎”,百度叫“框计算”。(名字从这里搜到的

搜索引擎的价值确是在降低吗? - 吴凯的回答

发布于 2015-12-25 21:24

搜索引擎在过去十年中经历了许多技术上的重大发展,下面是一些主要的例子:

1. 语义搜索:搜索引擎现在能够更好地理解搜索查询的含义,并返回相关的结果,而不仅仅是基于关键词匹配。

2. 机器学习:搜索引擎开始使用机器学习算法来改进搜索结果。这些算法可以学习用户的搜索历史、地理位置、语言和其他因素,从而更好地理解用户的意图,并为其提供更有用的结果。

3. 自然语言处理(NLP):NLP 技术的发展使搜索引擎能够更好地理解用户输入的自然语言查询,并提供更准确的结果。

4. 图像搜索:搜索引擎现在可以识别和搜索图像,从而提供更广泛的搜索结果。

5. 移动优化:随着智能手机的普及,搜索引擎开始优化移动搜索体验。移动搜索结果也会优化以适应小屏幕。

6. 结构化数据:搜索引擎现在可以更好地理解和利用结构化数据,从而提供更精确和丰富的搜索结果。

7. 个性化搜索:搜索引擎可以根据用户的搜索历史和个人喜好,提供更个性化的搜索结果。

8. 实时搜索:搜索引擎可以在用户输入查询时提供实时结果,包括实时新闻和社交媒体更新等。

9. 深度学习:搜索引擎开始应用深度学习技术来改进搜索结果。深度学习模型可以学习更复杂的模式和规律,并能够提供更高质量的搜索结果。

10. 自然语言生成(NLG):搜索引擎可以使用自然语言生成技术生成文本,例如自动生成摘要和描述等。

11. 搜索体验:搜索引擎开始重视搜索体验,提供更友好、直观的搜索界面,使用户能够更轻松地找到他们需要的信息。

12. 搜索引擎优化(SEO):随着搜索引擎技术的发展,SEO也在不断发展。SEO专业人员需要不断适应搜索引擎的更新,以确保网站在搜索结果中的排名。

13. 语音搜索:语音搜索技术得到了迅速发展,这使得用户可以通过口头指令来搜索信息。

14. 本地搜索:搜索引擎现在可以基于用户的位置信息提供本地化的搜索结果。

15. 大数据:搜索引擎使用大数据技术来分析和理解海量的数据,从而提供更准确的搜索结果。

16. 人工智能(AI):搜索引擎使用AI技术来自动化搜索结果的生成过程,并优化搜索体验。

17. 语音识别:搜索引擎使用语音识别技术来识别用户的口头指令,并将其转换为搜索查询。

搜索引擎未来的发展将会继续不断地推动技术和用户体验的发展

1. 更加个性化和智能化的搜索:搜索引擎将通过更深入的用户数据分析和机器学习算法来实现更加个性化和智能化的搜索,以适应用户的不同需求和行为习惯。

2. 更加普及的语音和图像搜索:语音和图像搜索将会得到更多的发展,以适应用户日益增长的需求。

3. 更多的语言支持:搜索引擎将会支持更多的语言,尤其是那些具有快速发展的市场,以提供更广泛的搜索服务。

4. 更加丰富和实时的搜索内容:搜索引擎将会收集更多的数据,提供更丰富的搜索结果,包括视频、音频、社交媒体等各种内容,同时更快速地更新内容,以保证用户获取的是最新的信息。

5. 更加强大和智能化的搜索算法:搜索引擎将会不断地开发和改进搜索算法,以提高搜索结果的质量和准确性,包括深度学习、自然语言处理、知识图谱等技术。

搜索引擎技术的发展是不断前进的。这些技术的进步使得搜索引擎能够更好地理解用户需求,提供更准确、丰富和个性化的搜索结果,从而满足用户的需求和提高搜索引擎的用户体验。

编辑于 2023-04-27 10:08

基于本体的语义推理应该也是一个可能的发展方向,最典型的是同义词推理,自动搜索与关键词同义的词语,提高结果的完整性。完善的本体库以及语义web将会给未来的搜索带来全新的体验。

发布于 2011-09-03 01:22

我个人觉得很值得期待,搜索引擎肯定不会可能单独的想现在这样形式,可能真的会是:语音、图像、甚至是一些动。

而且搜索引擎也不会是现在这种被动式的主动访问,更有可能是实时地被触,比如现在的搜索引擎需要点进去输入(文字或者图片),以后有可能是和人工智能联动(比如微软的小娜、苹果的siri、当然也会有图像识别的人工智能),你说话的语气就能够被判断为是否搜索,然后实时呈现你的搜索结果。图像也是同样的,可能会是隐形眼镜一样的人工智能设备连接搜索引擎,会根据使用者的指令自动搜索,实时呈现,比如说你佩戴之后去了一个陌生的地方,语言不通,你的人工智能和搜索引擎就会实时翻;去植物园、动物园、也会帮你实时介绍它们的基本信息,还能够根据你的指令作更深入的搜索呈现。

其实吧人工智能和搜索引擎都是基于大数据、甚至本省两者就有很多重复的地方,多疑将来两者会越来越紧密的联系起来,值得期待。

发布于 2017-03-24 16:47

搜索的形式也在不断改进,不单单是文字搜索,可以直接图片的搜索,拍照搜索,扫二维码搜索等到

发布于 2014-02-10 17:24

主要是分词和语意理解吧,搜索引擎重要的不是能搜索多少结果,而是最相关的(高质量的)结果

还记得05年的百度广告:百度更懂中文,还有现在搜搜的:搜搜更懂你!

这些问题解决了,很多问题都解决了……比如新词的识别,歧义消除……

编辑于 2011-08-31 17:56

实体搜索

learning to rank

分布式文件系统

等等

编辑于 2016-12-19 12:42

其实就是越来越注重用户体验了,最近好像百度正在推广生态计划,也就是为了让用户有更好的serp吧

发布于 2012-12-22 14:47