搜索引擎的很多算法都是相通的,都是围绕着用户体验的角度展开一些算法的更新和迭代,在seo技术的学习和工作过程中,简单来讲只需要关注主流的搜索引擎算法就可以满足网站优化所需要的技术思维,今天小凯seo博客和朋友们分享一下Google BERT算法更新的作用是什么,可以解决哪些问题。
谷歌搜索英文版于2019年10月25日上线BERT算法,他们的搜索引擎用上了强大的 BERT 预训练模型,可以让搜索引擎结合语境理解用户的搜索意图,甚至能理解一些不起眼的介词在搜索语句中的重要含义。有了 BERT 的加持,用户能在谷歌中搜到相关性更强的结果。下面来看看谷歌搜索算法BERT的介绍。
2019 年 10 月 25 日,Google 宣布 BERT 更新上线,可以以更接近人的方式去理解 Query(用户搜索词)的含义,从而提升搜索体验,预计影响 10% 的英文搜索。Google 称 BERT 算法是过去五年来突破最大的算法,也是 Google 搜索历史上突破最大的算法之一。
搜索的核心是理解语言。对用户查询词的理解是其中重要一部分,用户查询时用的词五花八门,可能有错字,可能有歧义,可能用户自己都不知道该查询什么词,搜索引擎都要先弄明白用户到底想搜索什么,才谈得到返回匹配的结果。搜索引擎收到查询词时,根据不同情况会做很多不同处理。比如,了解基本搜索算法的SEO肯定都知道,搜索引擎会对查询词做错别字、拼写错误之类的处理,也会对查询词做同义词、近义词、异体字的扩展,这都是对查询词的简单理解处理。
情况再复杂一点,比如查询“苹果”时,搜索引擎在没有用户搜索历史的情况下,虽然大概率是在搜索手机,但无法100%确定用户到底是想搜索水果,还是手机,还是电影,还是报纸,但查询“苹果 减肥”,搜索引擎从语义分析就能知道这里的苹果指的是水果了。
那么比如查询“新加坡 上海 机票”时,人类可以理解大概率是想找“新加坡到上海”机票,但搜索引擎很可能无法判断到底是在找“新加坡到上海”机票,还是在找“上海到新加坡”机票,因为两个查询的词在分词后是完全一样的。语义分析也失效,都是机票、旅游相关。这种正是BERT大显身手的时候了,如前所述,BERT会考虑上下文以及词之间的顺序,还知道从前向后和从后向前的顺序是不一样的。
对英文来说,查询有for、to之类的介词而且这些介词对查询意义有重大影响时,还有比较长的、对话形式的查询,BERT能够更好理解查询的上下文及真正意义。由于以前搜索引擎理解力不足,搜索用户也都被迫形成了一种以关键词为主的查询习惯。但我们生活中有问题问朋友时可不是用几个关键词来问的,而是以完整问句来问的。有了BERT这种对查询词的更好理解,用户才能以更自然、更人性的方式搜索。可能就是在这个意义上, Google认为BERT是搜索技术的一大突破。
简单来说,加入BERT后的 Google搜索引擎,能够更好地理解接近自然对话的长句子,因为它能更好地分析了解句子中单词间的关系。和传统算法不同的是,BERT在分析词语时,并不是依次从左到右或从右到左地逐词分析,而是借助 Google研发的 Transformer 模型并行分析词语在整个句子中的关系。譬如,如果搜索「math practice books for adults(给成年人的数学练习册)」,更新前的搜索返回结果会将「adults(成年人)」变为「young adults(年轻人)」,更新后则不会这样。
此外,在介词对整个句子意思影响较大的情况下,加入BERT后的理解能力也明显优于从前。搜索「2019 Brazil traveler to usa need a visa(2019 巴西旅客到美国需要签证)」,在更新前,搜索引擎没有将「to」考虑在内,更多返回了美国旅客到巴西旅行的信息。加入BERT后,「to」则没有被忽略。对于这次更新,Google副总裁 Pandu Nayak 在官方博文中称之为「代表了五年里最大的跨越,也是搜索历史上其中一个最大的改进」。目前,BERT已经应用到 Google搜索的英文版中,未来还将扩展到更多不同语言版本。