前言
在无监督哈希学习领域,单层Anchor Graph Hashing(AGH)已经展现出高效的近似最近邻检索能力,而双层AGH(Two-Layer AGH)通过引入二级锚点进一步提升了哈希码的质量和检索精度。它在保持计算效率的同时,能更好地捕捉数据复杂的非线性结构,常用于更大规模或更高维的数据场景。本文将详细剖析双层AGH在测试阶段的压缩函数实现,帮助读者理解如何利用训练好的双层模型快速地将新数据映射为高质量二进制哈希码。
函数功能概述
函数名为AGH2_compress,是双层锚点图哈希算法测试阶段的封装函数。其主要职责是接收测试数据矩阵A和训练阶段生成的模型model,高效计算出对应的二进制哈希码矩阵B,并返回编码耗时elapse。
输入:
A:测试数据矩阵,每一行代表一个样本向量。model:由双层AGH训练函数(如AGH2_learn)生成的模型,包含锚点、投影矩阵、阈值等信息。
输出:
B:二进制哈希码矩阵,每一行对应一个测试样本的哈希码。elapse:编码过程耗时(秒)。