聚类算法和局部敏感哈希的区别?

简介: 聚类算法与局部敏感哈希均用于高维数据相似检索。局部敏感哈希通过哈希函数降维,速度快但精度低,适合表面特征匹配;聚类算法(如K-Means)保留高维特征,按距离划分簇,类内紧凑、类间分离,更适用于语义相似性检索,精度更高,但计算开销较大。两者权衡在于速度与准确性的取舍。

聚类算法和局部敏感哈希的区别?

检索图片和检索文章一样,我们首先需要用向量空间模型将图片表示出来,也就是将一个图片对象转化为高维空间中的一个点。这样图片检索问题就又变成了我们熟悉的高维空间的相似检索问题。

如果我们把每个图片中的像素点看作一个维度,把像素点的 RGB 值作为该维度上的值,那一张图片的维度会是百万级别的。这么高的维度,检索起来会非常复杂,我们该怎么处理呢?我们可以像提取文章关键词一样,对图片进行特征提取来压缩维度。

要想实现图片特征提取,我们有很多种深度学习的方法可以选择。比如,使用卷积神经网络(CNN)提取图片特征。这样,用一个 512 到 1024 维度的向量空间模型,我们就可以很好地描述图像了,但这依然是一个非常高的维度空间。因此,我们仍然需要使用一些近似最邻近检索技术来加速检索过程。

一种常用的近似最邻近检索方法,是使用局部敏感哈希对高维数据进行降维处理,将高维空间的点划到有限的区域中。这样,通过判断要查询的点所在的区域,我们就能快速取出这个区域的所有候选集了。

不过,在上一讲中我们也提到,局部敏感哈希由于哈希函数构造相对比较简单,往往更适合计算字面上的相似性(表面特征的相似性),而不是语义上的相似性(本质上的相似性)。这怎么理解呢?举个例子,即便是面对同一种花,不同的人在不同的地点拍出来的照片,在角度、背景、花的形状上也会有比较大的差异。也就是说,这两张图片的表面特征其实差异很大,这让我们没办法利用局部敏感哈希,来合理评估它们的相似度。

而且,局部敏感哈希其实是一种粒度很粗的非精准检索方案。以 SimHash 为例,它能将上百万的高维空间压缩到 64 位的比特位中,这自然也会损失不少的精确性。

因此,更常见的一种方案,是使用聚类算法来划分空间。和简单的局部敏感哈希算法相比,聚类算法能将空间中的点更灵活地划分成多个类,并且保留了向量的高维度,使得我们可以更准确地计算向量间的距离。好的聚类算法要保证类内的点足够接近,不同类之间的距离足够大。一种常见的聚类算法是 K-Means 算法(K- 平均算法)。

K-Means 聚类算法的思想其实很「朴素」,它将所有的点划分为 k 个类,每个类都有一个 类中心向量。在构建聚类的时候,我们希望每个类内的点都是紧密靠近类中心的。用严谨的数学语言来说,K-Means 聚类算法的优化目标是,类内的点到类中心的距离均值总和最短。因此,K-Means 聚类算法具体的计算步骤如下:

  1. 随机选择 k 个节点,作为初始的 k 个聚类的中心;
  2. 针对所有的节点,计算它们和 k 个聚类中心的距离,将节点归入离它最近的类中;
  3. 针对 k 个类,统计每个类内节点的向量均值,作为每个类的新的中心向量;
  4. 重复第 2 步和第 3 步,重新计算每个节点和新的类中心的距离,将节点再次划分到最近的类中,然后再更新类的中心节点向量。经过多次迭代,直到节点分类不再变化,或者迭代次数达到上限,我们停止算法。
    以上,就是 K-Means 聚类算法的计算过程了,那使用聚类算法代替了局部敏感哈希以后,我们该怎么进行相似检索呢?
相关文章
|
13天前
|
人工智能 安全 调度
瞭望塔丨Agentic 时代,阿里云已全栈就绪
阿里云在 Agentic AI 时代的战略蓝图是构建从底层芯片到智能体原生云、全模态模型、 模型服务及上层应用的全栈服务架构。围绕 Agent 这一核心,阿里云对其产品、API、计费、 文档、官网进行了重新设计。阿里云将自身打造成为一台能够输出“智力”与“能力”的超级计算机,这不是一次简单的技术升级,而是一场从提供算力到交付生产力的范式变迁。
|
机器学习/深度学习 存储 算法
深度学习中的稀疏注意力
深度学习中的稀疏注意力
1494 0
|
3月前
|
人工智能 运维 Kubernetes
阿里云正式发布 RCA Benchmark,业界首个面向 Agentic Ops 的根因分析开源基准体系
阿里云联合信通院、中科院软件所/计算机网络信息中心、清华大学、复旦大学、南开大学,正式开源首个面向 Agentic Ops 根因分析评估基准RCA Benchmark。通过构建数据集、评估协议与仿真环境,帮助衡量 AI Agent 故障诊断能力,为行业落地夯实底座。
1479 22
|
9月前
|
存储 弹性计算 安全
阿里云服务器租用价格:轻量应用服务器、云服务器ECS、gpu云服务器收费标准与活动价格参考
阿里云服务器租用价格参考,云服务器产品包括轻量应用服务器、云服务器ECS、gpu云服务器等,收费模式包括包年包月、按量付费和按小时收费等,不同收费模式的收费标准不一样,相同配置不同实例规格的云服务器收费标准也不一样。本文为系统整理了目前最新的阿里云服务器、轻量应用服务器和gpu云服务器租用收费标准与活动价格情况,以供参考和选择。
|
9月前
|
编解码 算法 前端开发
java后端开发学习路线+避坑指南
java后端开发学习路线+避坑指南
|
9月前
|
人工智能 安全 开发者
快速构建企业 AI 开放平台,HiMarket 重磅升级快速构建企业 AI 开放平台,HiMarket 重磅升级
HiMarket是阿里开源的AI开放平台,助力企业构建Agent/MCP/Model市场,提供统一的AI资源管理、安全治理与协作能力,支持一键部署,推动AI规模化落地。
1499 26
|
7月前
|
存储 人工智能 搜索推荐
AI Agent 记忆系统:从短期到长期的技术架构与实践
本文系统阐述AI Agent记忆系统的核心技术:短期记忆(会话级上下文管理)与长期记忆(跨会话知识沉淀)。涵盖上下文工程策略(压缩、卸载、隔离)、Record/Retrieve架构、主流框架(ADK/LangChain/AgentScope)实现差异,及Mem0等开源方案集成,并探讨MaaS、多模态记忆等前沿趋势。(239字)
12020 3
AI Agent 记忆系统:从短期到长期的技术架构与实践
|
9月前
|
存储 索引
如何使用「全量索引结合增量索引」方案?
采用“全量索引+增量索引”方案可高效处理大规模数据更新。系统周期生成不可变的全量索引,提升检索性能;实时新增数据则构建内存中的增量索引,支持快速写入。查询时合并两者结果,并通过删除列表标记已删数据,避免脏数据返回。结合Double Buffer机制,还可实现无锁访问,显著提升系统并发能力与检索效率。(238字)
|
9月前
|
数据采集 存储 机器学习/深度学习
搜索引擎的整体架构和工作过程
搜索引擎由爬虫、索引和检索三大系统构成:爬虫负责抓取网页并存储;索引系统对网页去重、分析并构建倒排索引;检索系统通过查询分析、相关性排序等技术,返回精准结果。全过程融合文本分析、机器学习与大规模计算,确保高效准确搜索。
|
9月前
|
自然语言处理 搜索推荐 索引
搜索引擎是如何完成短语检索的?
搜索引擎进行短语检索时,首先尝试将整个短语作为关键词在倒排索引中查找。若未命中,则拆分为更细粒度的词(如“极客”“时间”)分别检索,并利用位置信息索引法,通过计算关键词间的最小窗口长度判断 proximity,确保结果中词语位置接近,从而实现精准匹配。