基于正则相似度学习的位可扩展深度哈希算法用于图像检索和人物重识别哈希算法原理解析,如何利用函数预测博彩走势
2026-01-08哈希算法,SHA256,哈希函数,加密哈希,哈希预测/哈希算法是博彩游戏公平性的核心,本文详细解析 SHA256 哈希函数的运作原理,并提供如何通过哈希技术进行博彩预测的方法!
是两个关键的步骤。之前大部分深度学习的方法这两个步骤是相互分开的,同时输出的哈希码的长度是预先设置好的。这样就会忽略掉不同长度的哈希码分别代表的意义,同时也限制整个模型的灵活性(不同长度的哈希码训练不同的模型)。为解决上述两个问题,本文中提出了一种可以生成bit-scalable的哈希码。在本文中,作者把学习当做正则化相似学习(regularized similarity learning);同时把训练数据分为一批三元组样本,每个三元组中包含两个具有相同label图像和一个不同label的图像,对于每个三元组,在汉明空间,我们最大化了匹配图像对和不匹配图像对的边缘;此外,利用来同时学习特征提取和哈希函数的生成。更重要的在于,输入的哈希码每一位权重不一样,这样就可以通过截断不太重要的bit进行控制哈希码的长度。实验结果在公开基准数据集是,同时在人物重识别方面也取得了期待的结果;同时也通过位可扩展哈希码采用较短的bit长度保证了图像特征的区别能力。
哈希码的长度问题:较短的哈希码适用于计算能力受限的情况(移动设备),较长的哈希码适用于追求更高的准确性。之前的工作在解决上述问题时,通常采用对于不同长度的哈希码都进行存储。这样会消耗大量的计算和存储资源。对于位可扩展的哈希码之前的方法也有过介绍,通常利用重要性下降的方式进行哈希码的排序,即前面的bit比后面的bit更加重要。这样的方法要很难设计映射的特征空间,而且当减缩位数时性能会很差。
(1)对以前基于三元组的相对相似度比较(hamming space)进行了扩展,增加了正则项(由最近提出的拉普拉斯稀疏编码,2015TPAMI);对于每个三元组的样本(三元组中包含两个具有相同label图像和一个不同label的图像)的哈希学习作为最大化样本中匹配和不匹配相对距离,在汉明空间中保证邻接关系。
(2)采用CNN来进行提取,采用了fc和tanh-like layer来输出哈希码;采用element-wise layer来进行产生哈希码的权值,从而生成位可扩展哈希。
(3)为了解决大规模图像的存储问题,采用一种批处理的模式(batch-process fashion)。即在每轮学习中,从训练集中随机选择子集(150-200)构建三元组样本;然后采用SGD进行参数学习。因为每张图片可能存在若干个三元组样本中,我们对每张图片的偏导数进行计算从而代替三元组样本的偏导数,从而减少代价。
我们利用加权汉明亲和度来度量两个哈希码之间的不相似度,加权汉明亲和度表示为两个哈希码之间一致性的线性组合:
上述定义的带权的哈希码可以有如下优点:(1)根据不同bit的不同权重可以产生更加有效的哈希码;(2)根据不同情况,可以截断不太重要的hash bit,从而灵活的产生不同的长度的哈希码;(3)加权得到汉明距离后续计算可以简化成跟普通汉明一样。
我们将训练图像组织成三元组样本,并将哈希学习问题作为正则化相似度学习问题提出。每个三元组包含三个图像,其中只有两个具有相同的标签,另一个具有不同的标签。我们定义了一个嵌入汉明空间的Max-Margin项来最大化匹配对和错匹配对之间的边界,类似于[2]中的细粒度图像相似度模型。直观上,这个术语保证了学习到的哈希代码能够根据标注的语义保持图像的排序顺序。
除了保持图像的排序,我们还鼓励使用学习到的哈希码强调图像在原始外观空间中的邻接关系。因此,我们定义以下正则化术语:
二进制哈希的明显优势在于bit-wise的XOR或者是采用lookup table的方式进行哈希码之间距离的衡量。在本文中,我们采用LUT快速返回哈希码之间的加权亲和度。假设L为哈希码长度,构建lookup table的长度为,等于两个哈希码XOR后的所有结果的总数。在检索阶段,哈希权重都已经训练好,所以每个异或结果的加权汉明亲和力可以提前计算,然后存储在lookup table中,基于此方法,ranking list 通过table lookup搜索进行返回。
尽管此方法可以提高搜索效率,不过当l过大的时候,可能导致存储爆炸。因此可以采用将哈希码划分为等长的部分(本文总中part = 8),每一部分都关联定长的子表,总体的哈希亲和度是所有子表的和。
整个网络架构包括10层,其中卷积-池化6层,卷积激活函数采用ReLu,池化采用平均池化,一层池化32filter,二层池化64filter,三层池化128filter,size5*5,stride = 2,池化size2*2,stride=1.最后四层包括两个标准的fc,输出哈希码的类似切线的层和一个元素相关的连接层用于权衡每个哈希码位。第一个fc是512,第二个fc是哈希码的长度。
本节中作者主要进行网络参数学习的优化。主要对公式(14)进行偏导数求解,得到公式(15)。
求偏导数。其中第一项是要计算基于三元组的梯度,而第二项是基于每张图像的梯度,因此作者提出把两种偏导数都归结于每张图像的梯度上,并进行了推导证明。
在实际训练过程中,采用batch-process fashion。在每一轮中,仅仅一小组三元组产生而且送入网络。对于该小组的三元组的产生如果采用随机的方式是不可靠的,这样可能会导致图像在三元组的上分布是分散的,因此会产生极少的质量不高的数据。为解决该问题,本文采取了一种有效的三元组产生策略。首先,选择,从随机选择的O个图像中K个类别;然后对于每个图像I,构建一定数目的三元组,在每个三元组中图像label是不同与I的label而且是从其他剩余类别中选择的。用该方法产生的三元组是相对比较集中化的,因此我们可以学习到更改的pairwise lable的信息。更重要的是,由于每一迭代中来类别和图像是随机选择的,因此当迭代次数足够多的时候,将会产生所有的可能性。在本实验中,作者设置K=10,O=20.
为了证明我们的公式,我们实现了我们的框架的一个简化变体,即DSCH,通过去除拉普拉斯正则项。请注意,DRSCH和DSCH都没有图2中所示的元素层次,而是直接输出指定长度的二进制哈希码。为了分析端到端框架的不同组件的有效性,我们进一步删除了tanhlike层,以评估它们对最终结果的影响。该模型的输出是连续的,算法根据欧氏距离返回排序列表。表I∼IV显示了不同数据集中排名度量的结果。DRSCH和DSCH的位可扩展版本分别用BS-DRSCH和BS-DSCH表示。
图3(a)为不同哈希位长度(从8位到64位)在汉明距离2范围内的精度曲线(b)报告了Precision@500对于不同的代码长度。图3(c)说明了在MNIST上使用64位二进制码的Precision@k。表一列出了不同编码长度的MAP结果。我们的DRSCH和DSCH在所有情况下都优于其他所有方法。特别是,DRSCH在所有编码长度下都比传统方法至少有10%的增益,这证明了联合优化比经典的级联方案(即特征提取后加哈希)的好处。原始CNN特征(没有tanh-like层)的性能也在表I中提供,表明我们的哈希函数与深度特征表示是一致的。
所有实验均在PC机上进行,PC使用NVIDIA Tesla K40 GPU, Intel Core i7-3960X 3.30GHZ CPU, 24GB内存。为了简单起见,我们分别用大写字母“F”、“H”和“S”表示特征提取、哈希码生成和图像搜索。对于所有的实验,我们假设数据库中的每张图像都已经用二进制哈希码表示。这样,特征提取和哈希码生成的耗时主要是由查询图像引起的。自向前传播神经网络只需要一系列的
矩阵乘法和卷积操作,可以有效地计算与GPU(图形处理器)的实现,很明显,我们DRSCH时相对缓慢的竞争方法忽略特征提取的时间成本。相比之下,当考虑到特征提取时,效率将是我们的端到端框架的一个明显优势。实际上,对于传统的级联方法,计算通用特征需要花费99%的测试时间(512维Gist特征)。在这种情况下,我们基于CNN的哈希比那些级联的更有效。请注意,级联方法是作为MNIST数据集的特征在原始像素上执行的,这使得它们比我们的DRSCH略有效率。
标准图像检索基准上显示出非常有前景的结果,不仅在检索精度方面优于最新水平,而且大大提高了不同长度哈希比现有方法的灵活性。我们打算沿着几个有趣的方向来扩展这项工作。第一个是通过利用图像的更多语义(例如多个属性)来改进我们的框架。另一个是在框架中引入反馈学习,使其在实践中更加强大。
全连接层和tanh-like层来输出哈希码,同时设计了一个元素层次来权衡哈希码,从而生成位可扩展哈希。实验表明,在公开标准数据集上DRSCH取得了非常好的结果,采用较短的哈希码长度也能保证图像特征的区别能力。


