向量搜索的秘诀:训练嵌入模型

微调嵌入模型可以澄清企业语义、业务指标和排名相关性,以便用户在发出提示之前进行了解。

译自 The Secret Sauce for Vector Search: Training Embedding Models,作者 Jelani Harper。

为了充分利用生成式机器学习模型 的无数优势,各组织纷纷将数据嵌入到各种形式的向量相似性搜索中。许多组织专注于提示工程,以获得最佳的即席问答、自然语言搜索和数据摘要结果。

一些组织关注提示增强技术,例如检索增强生成 (RAG) 和多代理架构方法。大多数组织专注于分块策略,以确保其嵌入足够全面。

然而,很少有组织真正重视可能对这些生成式 AI 努力取得成功影响最大的因素——这或许可以解释为什么尽管对这项技术进行了大量的调整,但实际部署的 mission-critical 用例仍然很少。

Marqo 首席执行官 Tom Hamer 称,“向量相似性搜索的质量取决于向量嵌入的质量。” 优化结果需要对创建嵌入并(通常)执行基于嵌入的搜索的模型进行微调或训练。然而,大多数组织将嵌入过程视为理所当然,而没有关注更常被讨论的关于提示、架构和安全性的问题。

据 Marqo 首席技术官 Jesse Clark 称,使用通用嵌入模型(例如 OpenAI 或 Google 提供的模型)的组织,其搜索结果可能比使用不支持摘要或语义搜索的关键字搜索算法 BM25 的结果更差。

然而,通过利用旨在微调嵌入模型的解决方案(可以在几小时或几分钟内完成训练,具体取决于训练数据集的大小),组织可以使基于嵌入的搜索的效率翻倍。微调使模型熟悉业务领域的上下文和特定任务,教会它业务指标,引入搜索相关性的排名概念,并定义首次遇到的命名法。

通用嵌入模型问题

通用嵌入模型通常在可能与组织用例无关的通用数据集上进行训练。当嵌入产品名称或内部企业术语等内容时,它们缺乏语义澄清来理解这些数据在组织特定上下文中的含义。

因此,当组织使用这些模型嵌入其数据时,会出现问题,因为“对于许多搜索应用程序来说,不仅仅是与组织拥有的文档或提供的查询相关的通用自由文本,”Clark 说。“模型没有见过这种类型的查询模式;它没有见过这种类型的文档语言。因此,它的表现远不如基准测试中报告的结果。”

基准测试 对于通用嵌入模型来说可能是具有欺骗性的,因为用于基准测试的数据可能与组织的特定需求无关。Clark 回忆起与使用这种模型进行产品搜索的客户合作的经历。在生产环境中,“它比之前使用的关键字系统差了大约 50%,从商业角度来看,这是灾难性的,”Clark 说。

微调嵌入模型

组织通过使用与其部署最相关的自身数据重新训练某些参数来微调嵌入模型。对于语义搜索或产品推荐,“最好的数据类型是用户之前搜索过并与之交互过的内容,”Clark 评论道。“我们利用这些关系为这些嵌入模型提供良好的数据,因此它们是从该业务的已知正面示例中反向工作的。”

Marqo Cloud 是一个基于 API 的平台,用于访问语言模型、微调嵌入模型以及使用其向量搜索引擎实现 AI 检索。它提供了根据可用训练数据量微调模型的最佳实践,这对于引入排名概念 以增强搜索结果相关性至关重要。例如,在为牛仔裤等商品构建电子商务搜索系统时,如果有一条牛仔裤被购买了多次,而另一条牛仔裤被购买的次数少得多,那么商品流行度的这一指标可以输入到模型的参数中。

“因此,使用基于查询或购买的历史数据,甚至包括发生的量,意味着嵌入模型正在学习如何将查询映射到产品,并了解哪些产品更受欢迎,”克拉克提到。组织可以使用其数据中反映的任何其他业务指标执行相同的操作。

数据验证,模型评估

在微调嵌入模型之前,组织必须验证其训练数据以确保其可靠性。Marqo 的数据验证功能会评估完整性等因素,因为否则,“通常这些东西可能是静默值,”克拉克解释道。“有人可能不知道该值实际上是缺失的,并且模型可能会在空白处进行训练,例如,而不是一个词。”其他验证功能涉及格式。除了仔细检查文本以确保一致性以便正确解码外,Marqo 还将格式化技术应用于图像数据,这对于多模态用例至关重要。

图像 处理 功能(如调整大小和统一格式化数据)是优化模型对这些训练数据的摄取所必需的。除了促进这些优势外,Marqo Cloud 还允许组织“在 Marqo 中使用该模型,并且对这些输入执行完全相同的处理,因此当您在搜索中使用模型时,模型在 Marqo 中看到的与训练时相同类型的数据,”克拉克说。该平台还具有评估阶段,其中,一旦模型经过微调,组织就可以上传评估数据以评估经过训练的模型的性能与未经训练的模型的性能。

持续学习系统

为生成式 AI 用例训练向量化企业数据的模型的需求远非短暂。这是使用几乎任何形式的统计 AI 的现实。“向量搜索仍然是一个具有机器学习模型的机器学习系统,我们对机器学习系统的了解是它们确实需要重新训练,”克拉克说。“节奏会有所不同,但如果您想保持性能,这是不可避免的。”

为此,Marqo 的基于 API 的方法及其自动执行训练数据验证、微调嵌入模型和在部署之前评估模型的核心方面的功能,为在克拉克称之为“持续学习系统”中操作这些模型提供了一个良性循环。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注