搜索中的机器学习指南:关键术语、概念和算法
已发表: 2022-05-02谈到机器学习,搜索中的每个人都应该知道一些广泛的概念和术语。 我们都应该知道机器学习在哪里使用,以及存在的不同类型的机器学习。
继续阅读以更好地了解机器学习如何影响搜索、搜索引擎在做什么以及如何识别工作中的机器学习。 让我们从几个定义开始。 然后我们将进入机器学习算法和模型。
机器学习术语
以下是一些重要的机器学习术语的定义,其中大部分将在本文的某个时间点进行讨论。 这并不打算成为每个机器学习术语的综合词汇表。 如果你想要,谷歌在这里提供了一个很好的。
- 算法:对数据运行以产生输出的数学过程。 针对不同的机器学习问题有不同类型的算法。
- 人工智能 (AI) :一个计算机科学领域,专注于为计算机配备复制或受人类智能启发的技能或能力。
- 语料库:书面文本的集合。 通常以某种方式组织。
- 实体:独特的、单一的、定义明确的和可区分的事物或概念。 你可以粗略地把它想象成一个名词,尽管它比这更广泛一些。 特定的红色色调将是一个实体。 它是独一无二的吗?没有其他东西完全像它,它定义明确(想想十六进制代码)并且它是可区分的,因为你可以将它与任何其他颜色区分开来。
- 机器学习:人工智能的一个领域,专注于创建算法、模型和系统来执行任务,并且通常在没有明确编程的情况下改进自己来执行该任务。
- 模型:模型经常与算法混淆。 区别可能会变得模糊(除非您是机器学习工程师)。 本质上,不同之处在于,算法只是一个产生输出值的公式,而模型是该算法在针对特定任务进行训练后产生的结果的表示。 因此,当我们说“BERT 模型”时,我们指的是已经为特定 NLP 任务训练的 BERT(哪个任务和模型大小将决定哪个特定 BERT 模型)。
- 自然语言处理 (NLP):描述处理基于语言的信息以完成任务的工作领域的通用术语。
- 神经网络:一种模型架构,从大脑中汲取灵感,包括一个输入层(信号进入的地方——在人类中,你可能认为它是当物体被触摸时发送到大脑的信号)),一些隐藏层(提供许多不同的路径,可以调整输入以产生输出)和输出层。 信号进入,测试多个不同的“路径”以产生输出层,并被编程为趋向于更好的输出条件。 在视觉上它可以表示为:

人工智能与机器学习:有什么区别?
我们经常听到人工智能和机器学习这两个词可以互换使用。 它们并不完全相同。
人工智能是使机器模仿智能的领域,而机器学习是追求无需为任务明确编程即可学习的系统。
在视觉上,你可以这样想:

谷歌的机器学习相关算法
所有主要的搜索引擎都以一种或多种方式使用机器学习。 事实上,微软正在取得一些重大突破。 像 Facebook 这样的社交网络也是如此,通过 Meta AI 和 WebFormer 等模型。
但我们这里的重点是搜索引擎优化。 虽然 Bing 是一个搜索引擎,在美国拥有 6.61% 的市场份额,但我们不会在本文中关注它,因为我们会探索流行且重要的搜索相关技术。
谷歌使用了大量的机器学习算法。 您、我或任何 Google 工程师都无法全部了解。 最重要的是,许多只是搜索的无名英雄,我们不需要完全探索它们,因为它们只是让其他系统更好地工作。
对于上下文,这些将包括算法和模型,例如:
- 谷歌 FLAN——它只是加快了学习从一个领域到另一个领域的转移,并降低了计算成本。 值得注意的是:在机器学习中,域不是指网站,而是指它完成的任务或任务集群,例如自然语言处理 (NLP) 中的情感分析或计算机视觉 (CV) 中的对象检测。
- V-MoE——这个模型的唯一工作是允许用更少的资源训练大型视觉模型。 正是这样的发展通过扩展技术上可以完成的工作来实现进步。
- 子伪标签——该系统改进了视频中的动作识别,协助各种与视频相关的理解和任务。
这些都不会直接影响排名或布局。 但它们会影响 Google 的成功程度。
那么现在让我们来看看谷歌排名所涉及的核心算法和模型。
RankBrain
这就是一切的开始,将机器学习引入谷歌的算法。
RankBrain 算法于 2015 年推出,应用于谷歌以前从未见过的查询(占其中的 15%)。 到 2016 年 6 月,它已扩展到包括所有查询。
继 Hummingbird 和知识图谱等巨大进步之后,RankBrain 帮助 Google 从将世界视为字符串(关键字以及单词和字符集)扩展到事物(实体)。 例如,在此之前,谷歌基本上会将我居住的城市(维多利亚,BC)视为两个经常同时出现的词,但也经常单独出现,并且当它们出现时可以但并不总是意味着不同的东西。
在 RankBrain 之后,他们将不列颠哥伦比亚省的 Victoria 视为一个实体——也许是机器 ID (/m/07ypt)——因此,即使他们只点击“Victoria”这个词,如果他们能够建立上下文,他们也会将其视为与维多利亚,不列颠哥伦比亚省。
有了这个,他们“看到”的不仅仅是关键字和意义,只有我们的大脑才能做到。 毕竟,当您阅读“我附近的披萨”时,您是否理解三个单独的单词,或者您的脑海中是否有披萨的视觉,以及您所在位置的了解?
简而言之,RankBrain 帮助算法将它们的信号应用于事物而不是关键字。
BERT
BERT (来自转换器的双向编码器表示)。
随着 2019 年将 BERT 模型引入谷歌的算法,谷歌从对概念的单向理解转变为双向理解。
这不是一个平凡的变化。
谷歌在 2018 年宣布开源 BERT 模型时所包含的视觉效果有助于描绘这幅画:

无需详细了解令牌和转换器在机器学习中的工作方式,我们的需求只需查看三个图像和箭头,并考虑在 BERT 版本中,每个单词如何从任一单词中获取信息就足够了方,包括那些多话远。
以前,模型只能从一个方向的单词中应用洞察力,现在它们可以基于两个方向的单词获得上下文理解。
一个简单的例子可能是“汽车是红色的”。
只有在 BERT 被正确理解为红色是汽车的颜色之后,因为在此之前红色这个词出现在汽车一词之后,并且该信息没有被发回。
顺便说一句,如果您想使用 BERT,GitHub 上提供了各种模型。
拉美达
LaMDA 尚未在野外部署,并于 2021 年 5 月在 Google I/O 上首次宣布。
澄清一下,当我写“尚未部署”时,我的意思是“据我所知”。 毕竟,我们是在将 RankBrain 部署到算法中几个月后才发现它的。 也就是说,当它出现时,它将是革命性的。
LaMDA 是一种会话语言模型,它似乎打破了当前的最新技术。
LaMDA 的重点主要有两方面:
- 提高谈话的合理性和特异性。 本质上,是为了确保聊天中的回复是合理且具体的。 例如,对于大多数问题,“我不知道”的回答是合理的,但并不具体。 另一方面,回答诸如“你好吗?”之类的问题。 也就是说,“我喜欢下雨天吃鸭汤。 这很像放风筝。” 非常具体但几乎不合理。
LaMDA 有助于解决这两个问题。 - 当我们交流时,很少是线性对话。 当我们考虑讨论可能从哪里开始和结束时,即使它是关于单个主题的(例如,“为什么我们的流量本周下降了?”),我们通常会讨论我们不会讨论的不同主题预计进去。
任何使用过聊天机器人的人都知道他们在这些情况下非常糟糕。 他们不能很好地适应,也不能很好地将过去的信息带入未来(反之亦然)。
LaMDA 进一步解决了这个问题。
来自 Google 的示例对话是:


我们可以看到它的适应能力远远好于人们对聊天机器人的期望。
我看到 LaMDA 正在 Google Assistant 中实现。 但是,如果我们考虑一下,理解查询流如何在单个级别上工作的增强功能肯定有助于定制搜索结果布局,以及向用户展示其他主题和查询。
基本上,我很确定我们会看到受 LaMDA 启发的技术渗透到搜索的非聊天领域。
凯尔姆
上面,当我们讨论 RankBrain 时,我们谈到了机器 ID 和实体。 那么,2021 年 5 月宣布的 KELM 将其提升到了一个全新的水平。
KELM 诞生于减少搜索中的偏见和有害信息的努力。 因为它基于可信信息(Wikidata),所以可以很好地用于此目的。
KELM 更像是一个数据集,而不是一个模型。 基本上,它是机器学习模型的训练数据。 对于我们的目的而言,更有趣的是,它告诉我们 Google 对数据采取的方法。
简而言之,谷歌取了英文维基数据知识图谱,它是三元组(主体实体、关系、对象实体(汽车、颜色、红色)的集合,并将其转化为各种实体子图并对其进行语言化。这在中最容易解释一个图像:

在这张图片中,我们看到:
- 三元组描述了个人关系。
- 实体子图映射与中心实体相关的多个三元组。
- 实体子图的文本版本。
- 正确的句子。
然后,其他模型可以使用它来帮助训练它们识别事实并过滤有害信息。
谷歌已经开源了这个语料库,它可以在 GitHub 上找到。 如果您想了解更多信息,查看他们的描述将帮助您了解它的工作原理及其结构。
妈妈
MUM 也在 2021 年 5 月的 Google I/O 上宣布。
虽然它具有革命性,但描述起来却看似简单。
MUM代表多任务统一模型,它是多模式的。 这意味着它“理解”不同的内容格式,如测试、图像、视频等。这使它能够从多种模式中获取信息并做出响应。
旁白:这不是 MultiModel 架构的第一次使用。 它于 2017 年由 Google 首次提出。
此外,由于 MUM 在事物中而不是字符串中起作用,因此它可以跨语言收集信息,然后以用户自己的方式提供答案。 这为信息访问的巨大改进打开了大门,特别是对于那些说互联网上不支持的语言的人来说,但即使是说英语的人也会直接受益。
Google 使用的示例是一位想要攀登富士山的徒步旅行者。 一些最好的提示和信息可能是用日语编写的,用户完全无法使用,因为即使他们可以翻译,他们也不知道如何显示它。
MUM 的一个重要说明是模型不仅可以理解内容,而且可以生成内容。 因此,与其被动地向用户发送结果,它可以促进从多个来源收集数据并提供反馈(页面、语音等)本身。
对于包括我自己在内的许多人来说,这也可能是这项技术的一个令人担忧的方面。
在其他地方使用机器学习
我们只涉及了一些您可能听说过的关键算法,我相信这些算法对自然搜索产生了重大影响。 但这远不是使用机器学习的全部。
例如,我们也可以问:
- 在广告中,是什么驱动了自动出价策略和广告自动化背后的系统?
- 在新闻中,系统如何知道如何对故事进行分组?
- 在图像中,系统如何识别特定对象和对象类型?
- 在电子邮件中,系统如何过滤垃圾邮件?
- 在翻译中,系统如何处理学习新单词和短语?
- 在视频中,系统如何知道接下来要推荐哪些视频?
所有这些问题以及数百甚至数千个问题都有相同的答案:
机器学习。
机器学习算法和模型的类型
现在让我们来看看机器学习算法和模型的两个监督级别——监督学习和非监督学习。 了解我们正在研究的算法类型以及在哪里寻找它们很重要。
监督学习
简而言之,通过监督学习,算法得到了完全标记的训练和测试数据。
也就是说,有人已经通过标记数千(或数百万)个示例的努力来训练基于可靠数据的模型。 例如,在x张穿红衬衫的人的照片中标记红衬衫。
监督学习在分类和回归问题中很有用。 分类问题相当简单。 确定某物是否属于某个组。
一个简单的例子是谷歌照片。

谷歌已经对我进行了分类,以及阶段。 他们没有手动标记这些图片。 但是该模型将在阶段的手动标记数据上进行训练。 任何使用过 Google 照片的人都知道,他们会定期要求您确认照片和照片中的人物。 我们是手动贴标机。
曾经使用过 ReCAPTCHA 吗? 猜猜你在做什么? 这是正确的。 你经常帮助训练机器学习模型。
另一方面,回归问题处理需要将一组输入映射到输出值的问题。
一个简单的例子是考虑一个估算房屋售价的系统,输入平方英尺、卧室数量、浴室数量、与海洋的距离等。
您能想到任何其他可能携带大量特征/信号然后需要为相关实体(/站点)分配值的系统吗?
虽然肯定更复杂并且包含大量用于各种功能的单独算法,但回归可能是驱动搜索核心功能的算法类型之一。
我怀疑我们正在转向半监督模型——在某些阶段进行手动标记(认为质量评估者),系统收集的信号确定用户对用于调整和制作模型的结果集的满意度.
无监督学习
在无监督学习中,系统被赋予一组未标记的数据,并让系统自行决定如何处理它。
没有指定最终目标。 系统可以将相似的项目聚集在一起,寻找异常值,找到相互关系等。
当您拥有大量数据并且您不能或不知道应该如何使用它时,就会使用无监督学习。
一个很好的例子可能是谷歌新闻。
谷歌聚集了类似的新闻故事,并且还显示了以前不存在的新闻故事(因此,它们是新闻)。
这些任务最好由主要(但不限于)无监督模型执行。 模型已经“看到”了之前的聚类或表面化的成功或不成功,但无法将其完全应用于当前数据,这些数据没有标记(就像之前的新闻一样)并做出决策。
这是机器学习的一个非常重要的领域,因为它与搜索相关,尤其是随着事物的扩展。
谷歌翻译是另一个很好的例子。 不是过去存在的一对一翻译,系统被训练来理解英语中的单词x等于西班牙语中的单词y ,而是寻找两者使用模式的新技术,通过半- 监督学习(一些有标签的数据,很多没有)和无监督学习,将一种语言翻译成一种完全未知的(对系统而言)语言。
我们在上面的 MUM 中看到了这一点,但它存在于其他论文和模型中。
只是开始
希望这为机器学习及其在搜索中的使用方式提供了基准。
我未来的文章将不仅仅是关于如何以及在哪里可以找到机器学习(尽管有些文章会)。 我们还将深入研究机器学习的实际应用,您可以利用这些应用成为更好的 SEO。 不用担心,在这些情况下,我会为您完成编码,并且通常会提供易于使用的 Google Colab 来跟随,帮助您回答一些重要的 SEO 和业务问题。
例如,您可以使用直接机器学习模型来加深您对网站、内容、流量等的理解。 我的下一篇文章将告诉你如何。 预告片:时间序列预测。
本文中表达的观点是客座作者的观点,不一定是 Search Engine Land。 工作人员作者在这里列出。
