AGI 与未来 AI
现代生成式人工智能应用中的向量数据库角色
为了让大规模的生成式人工智能应用有效地工作,它需要一个好的系统来处理大量的数据。其中一个重要的系统就是向量数据库。这个数据库的特点是能够处理多种类型的数据,如文本、声音、图片和视频,以数字向量的形式表示。
什么是向量数据库?
向量数据库是一种专门设计的存储系统,用于高效地处理高维向量。这些向量可以被认为是多维空间中的点,通常代表更复杂数据的嵌入或压缩表示,如图像、文本或声音。
向量数据库允许在这些向量中进行快速的相似性搜索,从而可以快速检索出大量数据集中最相似的项。
传统数据库与向量数据库
向量数据库:
- 处理高维数据: 向量数据库专门设计用于管理和存储高维数据。这种能力对于机器学习应用尤其有用,因为数据点(如图像或文本)可以在多维空间中表示为向量。
- 优化相似性搜索: 向量数据库的一个突出特点是其能够进行相似性搜索。与根据精确匹配查询数据不同,这些数据库允许用户检索与给定查询“相似”的数据,使其对于图像或文本检索等任务至关重要。
- 可扩展性: 随着人工智能和机器学习应用的不断增长,它们处理的数据量也在增加。向量数据库被设计为可扩展的,确保它们可以处理大量数据而不会损害性能。
传统数据库:
- 结构化数据存储: 传统数据库,如关系数据库,旨在存储结构化数据。这意味着数据被组织成预定义的表、行和列,确保数据完整性和一致性。
- 优化CRUD操作: 传统数据库主要针对CRUD(创建、读取、更新、删除)操作进行优化。这种设计使其能够高效地执行数据创建、读取、更新和删除操作,使其适用于从Web服务到企业软件的广泛应用。
- 固定模式: 许多传统数据库的一个特征是其固定模式。一旦数据库结构被定义,修改它可能会很复杂且耗时。这种刚性确保了数据一致性,但可能不如现代数据库的无模式或动态模式那么灵活。
传统数据库通常难以处理嵌入的复杂性,这是向量数据库可以解决的挑战。
向量表示
向量数据库的核心概念是使用数字向量来表示各种形式的数据。让我们以图像为例。当你看到一张猫的图片时,对于机器来说,它可以被转换成一个独特的512维向量,如下所示:
[0.23, 0.54, 0.32, …, 0.12, 0.45, 0.90]
使用向量数据库,生成式人工智能应用可以做更多的事情。它可以根据含义查找信息,并长时间记住事物。有趣的是,这种方法不仅限于图像。具有语境和语义含义的文本数据也可以转换为向量形式。
生成式人工智能和向量数据库的需求
生成式人工智能通常涉及嵌入。例如,在自然语言处理(NLP)中,词嵌入将单词或句子转换为捕捉语义含义的向量。当生成类似人类的文本时,模型需要快速比较和检索相关的嵌入,以确保生成的文本保持语境含义。
同样,在图像或声音生成中,嵌入在编码模式和特征方面发挥着至关重要的作用。为了使这些模型能够最佳地运行,它们需要一个允许瞬间检索相似向量的数据库,使向量数据库成为生成式人工智能谜题的必备组成部分。
创建自然语言的嵌入通常涉及使用预训练模型,如:
- GPT-3和GPT-4: OpenAI的GPT-3(生成式预训练转换器3)在NLP社区中是一个具有里程碑意义的模型,拥有175亿个参数。其后续模型GPT-4拥有更多的参数,继续推动了生成高质量嵌入的边界。这些模型是在多样化的数据集上训练的,使其能够创建捕捉广泛语言细微差别的嵌入。
- BERT及其变体: BERT(来自Transformer的双向编码器表示)是Google的一个重要模型,已经有多个更新和变体,如RoBERTa和DistillBERT。BERT的双向训练方式,既可以正向也可以反向读取文本,特别适合于理解单词周围的语境。
- ELECTRA: 一个更近期的模型,效率高,性能与GPT-3和BERT相当,但需要的计算资源较少。 ELECTRA 在预训练过程中区分真实和虚假数据,有助于生成更精细的嵌入。
理解上述过程:
首先,使用嵌入模型将所需内容转换为向量嵌入。一旦生成,这些嵌入就会存储在向量数据库中。为了方便追踪和相关性,这些存储的嵌入保持了与原始内容的链接或引用。
稍后,当用户或系统向应用程序提出问题时,相同的嵌入模型就会被激活。它将该查询转换为对应的嵌入。然后,这些新形成的嵌入会在向量数据库中搜索,寻找相似的向量表示。被识别为匹配的嵌入与其原始内容直接关联,确保用户的查询得到相关和准确的结果。
向量数据库新秀的增长资金
随着人工智能的日益流行,许多公司正在向向量数据库投入更多资金,以使其算法更好、更快。这可以从最近对向量数据库初创公司如Pinecone、Chroma DB和Weviate的投资中看出。
像Microsoft这样的大公司也拥有自己的工具。例如,Azure Cognitive Search允许企业使用向量数据库创建人工智能工具。
Oracle最近宣布了其Database 23c的新功能,引入了集成向量数据库。名为“AI向量搜索”,它将具有新的数据类型、索引和搜索工具,以向量形式存储和搜索数据,如文档和图像。它支持检索增强生成(RAG),它将大型语言模型与业务数据结合起来,以回答语言问题而不共享私人数据。
向量数据库的主要考虑因素
距离度量
相似性搜索的有效性取决于所选择的距离度量。常见的度量包括欧几里得距离和余弦相似度,每种都适用于不同类型的向量分布。
索引
鉴于向量的高维性,传统的索引方法不适用。向量数据库使用诸如分层导航小世界(HNSW)图或Annoy树等技术,允许高效地分割向量空间并进行快速的最近邻搜索。

Annoy树(来源)
Annoy是一种使用二叉搜索树的方法。它多次分割数据空间,并且只查看其中的一部分来找到最近的邻居。

分层导航小世界(HNSW)图(来源)
HNSW图另一方面,则像网络一样。它们以特殊的方式连接数据点,以加快搜索速度。这些图有助于快速找到数据中的最近点。
可扩展性
随着数据集的增长,维持快速检索时间的挑战也随之增长。分布式系统、GPU加速和优化的内存管理是向量数据库解决可扩展性的方法之一。
向量数据库的角色:影响和机会
1. 切割边缘生成式人工智能模型的训练数据: 生成式人工智能模型,如DALL-E和GPT-3,使用大量数据进行训练。这些数据通常包括从图像、文本、代码和其他领域中提取的向量。向量数据库仔细管理和维护这些数据集,使人工智能模型能够通过识别向量中的模式和关系来吸收和分析世界的知识。
2. 提高少样本学习: 少样本学习是一种人工智能训练技术,模型使用有限的数据进行训练。向量数据库通过维护强大的向量索引来增强这种方法。当模型仅暴露于少量向量(例如几张鸟的图像)时,它可以快速推断出更广泛的概念(例如鸟),方法是识别这些向量之间的相似性和关系。
3. 提高推荐系统: 推荐系统使用向量数据库来建议与用户偏好密切相关的内容。通过分析用户的行为、个人资料和查询,提取出反映其兴趣的向量。然后系统扫描向量数据库以找到与这些兴趣向量相似的内容向量,确保推荐的准确性。
4. 语义信息检索: 传统搜索方法依赖于精确的关键词匹配。然而,向量数据库使系统能够根据语义相似性来理解和检索内容。这意味着搜索变得更加直观,关注于查询的潜在含义,而不仅仅是匹配单词。例如,当用户输入查询时,相应的向量与数据库中的向量进行比较,以找到与查询意图相符的内容,而不仅仅是其措辞。
5. 多模态搜索: 多模态搜索是一种将来自多个来源的数据(如文本、图像、音频和视频)集成在一起的技术。向量数据库作为这种方法的骨干,允许对不同模态的向量进行综合分析。这导致了一个全面的搜索体验,用户可以根据单个查询从多个来源检索信息,从而获得更丰富的见解和更全面的结果。
结论
人工智能世界正在迅速变化。它影响了许多行业,带来了好处和新问题。生成式人工智能的快速进步凸显了向量数据库在管理和分析多维数据中的关键作用。
这些专门的存储系统能够高效地处理来自各种数据形式的高维向量,如图像、文本或声音,是现代人工智能应用(尤其是相似性搜索)中至关重要的组成部分。















