前言
在无监督哈希方法中,Binary Reconstructive Embedding(BRE)是一种经典的基于重构误差最小化的算法。它通过学习一组二进制嵌入,使得数据在汉明空间中的距离能够尽可能保留原始欧氏空间的结构,同时最小化二进制码对原始数据的重构误差。这种方法在保持简单高效的同时,取得了良好的近似最近邻检索性能。本文将深入解析BRE算法在测试阶段的压缩函数实现,帮助读者理解如何利用训练好的模型快速地将新样本映射为二进制哈希码。
函数功能概述
函数名为BRE_compress,是BRE算法测试阶段的封装函数。其主要任务是接收测试数据矩阵A和训练阶段生成的模型model,高效计算出对应的二进制哈希码矩阵B,并返回整个编码过程的耗时elapse。
输入:
A:测试数据矩阵,每一行代表一个样本向量。model:由训练函数(如BRE_learn)生成的模型,包含投影相关矩阵和索引信息。
输出:
B:二进制哈希码矩阵(逻辑型或0/1),每行对应一个样本的哈希码。elapse:编码耗时(秒)。