Page 133 - 《软件学报》2026年第3期
P. 133

1096                                                       软件学报  2026  年第  37  卷第  3  期



                 10.   tempRes = SearchAtLayer(v, ep, M, efConstruction, l)
                 11.   area_mean_dist = getAreaAvgDistance(v, l) // 计算区域邻居平均距离, 以感知局部区域密度
                 12.   if (area_mean_dist < β·global_mean_dist[l]) then: // 对致密区域的节点, 实施双重剪枝的邻居选择策略
                 13.    C_original = getNeighborsByHeuristic(efConstruction, 1)
                 14.    C_alpha = getNeighborsByHeuristic(efConstruction, α)
                 15.    for v i  in C_original do: // 将原生规则所选的枢纽节点合并入最终候选邻居集
                 16.     if |v i .neighbors| ≥ M/2 then:
                 17.      H = H ∪ {v i }
                 18.    C_final = C_alpha ∪ H
                 19.  else: // 对未处于致密区域的节点, 仅实施原生剪枝规则
                 20.    C_final = getNeighborsByHeuristic(efConstruction, 1)
                 21.  end if
                 22.  for v i  in v.neighbors do: // 为新建立的邻居构建反向连接
                 23.   reConnection(v i , v)
                 24.   getNeighborsByHeuristic(efConstruction, α)
                 25.  end for
                 26.  ep = getClosest(tempRes, 1) // 更新下一层的入口点
                 27. end for
                 28. if (level > maxLayer) then: // 设置新的全局入口点
                 29.  maxLayer = level
                 30.  enterPoint = v
                 31. end if
                 32. end

                    ● 开销分析. 本算法在设计上严格控制了开销. 在存储开销方面, 额外存储空间仅包含各层级图结构的全局平
                 均距离   global_mean_dist[level], 其空间复杂度为  O(1), 对系统整体存储需求的影响可忽略不计. 在计算复杂度方
                 面, 主要开销来自     getAreaAvgDistance 函数, 而通过合理地设置    efConstruction  和  M  参数, 可以有效控制图结构的
                 规模, 从而将该计算的时间复杂度控制在可接受范围内. 根据多个数据集上的实验观察, 被识别为致密区域并经过
                 剪枝优化的节点占比较低 (仅为数据集的              0.5%–2%). 因此, 该优化方法引入的额外计算开销非常小, 得以维持
                 HNSW  索引对数级别的插入复杂度.
                    本节详细阐述了一种基于图结构局部调整的自适应细粒度剪枝策略, 通过识别与修复的闭环机制, 有效缓解
                 了因过度剪枝导致的局部拓扑结构稀疏和召回率退化问题. 该策略能够动态地适应局部数据分布的变化: 在数据
                 致密区域通过放宽剪枝条件主动保留了关键的导航连接; 而在其他区域则仍实施原生                            HNSW  剪枝规则.

                  4   实验分析

                  4.1   实验设置

                    ● 实验数据集. 为了全面评估本文方法的效果, 我们在多个公开数据集 (详见表                       2) 上开展实验. GIST1M 包含
                 100  万个  960  维  GIST  描述符  [41] , 这些描述符是基于一组感知维度从原始图像中提取的低维向量数据. MSong              涵
                 盖  100  万首西方流行音乐的音频特征 (节奏、响度、淡入淡出时间等), 适用于音乐推荐系统研究. Enron                       包含安然
                 公司内部   150  名用户数据, 其中大多数是高层管理人员, 涵盖约             50  万封真实电子邮件及其元数据, 适用于文本分
                 析与社交网络研究, 数据维度较高 (1 369). 此外, 局部本征维度 (local intrinsic dimensionality, LID) 是衡量数据局部
   128   129   130   131   132   133   134   135   136   137   138