访谈
Dr. Ram Sriharsha, Pinecone 的工程副总裁 – 采访系列

Dr. Ram Sriharsha 是 Pinecone 的工程和研发副总裁。
在加入 Pinecone 之前,Ram 曾在 Yahoo、Databricks 和 Splunk 担任过副总裁职位。在 Yahoo,他既是首席软件工程师,又是研究科学家;在 Databricks,他是统一分析平台的产品和工程负责人,专注于基因组学;在 Splunk 的三年里,他担任了多个角色,包括高级首席科学家、工程副总裁和杰出工程师。
Pinecone 是一个完全托管的向量数据库,使得将向量搜索添加到生产应用程序中变得容易。它结合了向量搜索库、过滤等功能以及分布式基础设施,以提供高性能和可靠性,无论规模大小。
您最初是什么时候被机器学习吸引的?
高维统计、学习理论和类似的话题吸引了我进入机器学习领域。它们在数学上是明确定义的,可以被推理,并提供了关于学习的含义以及如何设计高效算法的基本见解。
之前您是 Splunk 的工程副总裁,Splunk 是一个帮助将数据转化为可观察性、IT、安全等方面的行动的数据平台。您从这段经历中得到了什么关键的收获?
我直到加入 Splunk 才意识到企业搜索的用例有多么多样:人们使用 Splunk 进行日志分析、可观察性分析和安全分析等众多用例。这些用例中有一个共同点,即检测非结构化数据中的相似事件或非常不相似(或异常)事件。这是一个很难解决的问题,传统的搜索方法在处理这种数据时并不具有可扩展性。在 Splunk 的期间,我启动了有关如何使用机器学习(和深度学习)进行日志挖掘、安全分析等方面的研究。通过这项工作,我意识到向量嵌入和向量搜索将成为这些领域新方法的基本原语。
您能为我们描述一下什么是向量搜索吗?
在传统搜索(也称为关键词搜索)中,您正在寻找查询和文档(可以是推文、网页文档、法律文档等)之间的关键词匹配。为此,您将查询拆分为其令牌,检索包含给定令牌的文档,并合并和排名以确定给定查询的最相关文档。
当然,主要问题是,要获得相关结果,您的查询必须在文档中有关键词匹配。传统搜索的一个经典问题是:如果您搜索“pop”,您将匹配“pop music”,但不会匹配“soda”等,因为“pop”和包含“soda”的文档之间没有关键词重叠,尽管我们知道,在美国的许多地区,“pop”和“soda”在口语中是同义的。
在向量搜索中,您首先将查询和文档转换为某个高维空间中的向量。通常,这是通过将文本传递给像 OpenAI 的 LLM 或其他语言模型这样的深度学习模型来完成的。结果是浮点数组,可以被认为是某个高维空间中的向量。
核心思想是,这个高维空间中的相邻向量在语义上也是相似的。回到我们关于“soda”和“pop”的例子,如果模型是在正确的语料库上训练的,它很可能会认为“pop”和“soda”在语义上是相似的,因此相应的嵌入将在嵌入空间中彼此接近。如果是这样,那么检索给定查询的附近文档就变成了在这个高维空间中搜索对应查询向量的最近邻的问题。
您能描述一下向量数据库是什么以及它如何使构建高性能向量搜索应用程序成为可能吗?
向量数据库存储、索引和管理这些嵌入(或向量)。向量数据库解决的主要挑战是:
- 构建向量上的高效搜索索引以回答最近邻查询
- 构建高效的辅助索引和数据结构以支持查询过滤。例如,假设您只想在语料库的子集上进行搜索,您应该能够利用现有的搜索索引而无需重新构建它
支持高效更新,并保持数据和搜索索引的新鲜、一致、持久等。
Pinecone 中使用了哪些不同类型的机器学习算法?
我们通常在近似最近邻搜索算法上工作,并开发新的算法,以便以尽可能低的成本高效地更新、查询和处理大量数据。
我们还致力于开发将密集和稀疏检索相结合以提高搜索相关性的算法。
构建可扩展搜索的挑战是什么?
虽然近似最近邻搜索已经被研究了几十年,但我们相信仍有很多东西有待发现。
特别是,当谈到设计大规模最近邻搜索时,具有成本效益、在大规模上执行高效过滤或设计支持高容量更新和通常保持索引新鲜的算法,都是今天的挑战性问题。
向量数据库技术可以用于哪些不同类型的用例?
向量数据库的用例范围正在迅速增长。除了在语义搜索中的应用外,我们还看到它被用于图像搜索、图像检索、生成式 AI、安全分析等。
您对搜索的未来有什么展望?
我认为搜索的未来将由 AI 驱动,我不认为这是在很远的未来。在那个未来,我预计向量数据库将成为一个核心原语。我们喜欢把向量数据库看作是 AI 的长期记忆(或外部知识库)。
感谢这次精彩的采访,希望了解更多的读者可以访问 Pinecone。












