• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于點(diǎn)對(duì)相似度的深度非松弛哈希算法

      2021-06-20 10:11:02汪海龍肖創(chuàng)柏
      自動(dòng)化學(xué)報(bào) 2021年5期
      關(guān)鍵詞:哈希范數(shù)檢索

      汪海龍 禹 晶 肖創(chuàng)柏

      近年來,隨著計(jì)算機(jī)軟件和硬件技術(shù)的發(fā)展,圖像、視頻等數(shù)據(jù)的維度和數(shù)量不斷增加,為了解決海量的高維數(shù)據(jù)的存儲(chǔ)和檢索問題,研究學(xué)者提出了將高維數(shù)據(jù)投影到低維二值空間的哈希學(xué)習(xí)方法.哈希學(xué)習(xí)方法是一種在保持圖像或視頻等高維數(shù)據(jù)間相似性的條件下,通過哈希函數(shù)或函數(shù)簇將高維空間的數(shù)據(jù)投影到低維漢明空間的二值編碼的機(jī)器學(xué)習(xí)方法.通過哈希學(xué)習(xí)方法對(duì)數(shù)據(jù)建立索引,提高圖像等高維數(shù)據(jù)的檢索效率,并節(jié)省存儲(chǔ)空間.現(xiàn)有的哈希方法大致可以分為兩類:數(shù)據(jù)獨(dú)立的方法和數(shù)據(jù)依賴的方法[1].

      數(shù)據(jù)獨(dú)立的方法使用隨機(jī)投影來構(gòu)造哈希函數(shù).局部敏感哈希(Locality sensitive hashing,LSH)算法[2-4]于1998 年由Indyk 等提出,該算法在原始空間中使用隨機(jī)線性投影將距離近的數(shù)據(jù)投影到相似的二值編碼中.該算法的哈希函數(shù)簡單易實(shí)現(xiàn),計(jì)算速度快,但準(zhǔn)確率不高.核化局部敏感哈希(Kernelized locality-sensitive hashing,KLSH)算法[5]對(duì)LSH 算法提出了改進(jìn),KLSH 在核空間中隨機(jī)構(gòu)造哈希函數(shù),不需要考慮原始空間的數(shù)據(jù)分布,可以選擇任意核函數(shù)作為相似性度量函數(shù).但由于核函數(shù)的引入,很大程度上增加了計(jì)算復(fù)雜度.數(shù)據(jù)獨(dú)立的方法雖然簡單易實(shí)現(xiàn),但是由于這類方法不使用訓(xùn)練數(shù)據(jù)訓(xùn)練模型,所以需要很長的哈希碼才能達(dá)到較高的準(zhǔn)確率.數(shù)據(jù)依賴的方法使用訓(xùn)練數(shù)據(jù)來學(xué)習(xí)將高維數(shù)據(jù)投影為低維二值編碼的哈希函數(shù).如同一般的機(jī)器學(xué)習(xí)方法,數(shù)據(jù)依賴的方法可以分為非監(jiān)督型方法和監(jiān)督型方法.

      非監(jiān)督型哈希學(xué)習(xí)方法是在數(shù)據(jù)沒有類別信息或不利用類別信息情況下,根據(jù)某種距離度量檢索最近鄰數(shù)據(jù)的方法.譜哈希(Spectral hashing,SH)算法[6]是一種典型的非監(jiān)督哈希算法,其采用主成分分析(Principal component analysis,PCA)算法[7]獲取圖像數(shù)據(jù)的各個(gè)主成分方向,并計(jì)算所有的解析特征函數(shù)(Analytical eigenfunction),然后使用符號(hào)函數(shù)將這些解析特征函數(shù)的值量化為二值編碼.由于在實(shí)際情況中很難同時(shí)滿足譜哈希的兩個(gè)約束條件,即假設(shè)從多維均勻分布的空間中采樣數(shù)據(jù)以及不同維度上的哈希編碼之間相互獨(dú)立,因此譜哈希的使用受到一定限制.迭代量化哈希(Iterative quantization,ITQ)算法[8]將數(shù)據(jù)投影到中心為零(Zero-centered)的二值超立方體(Binary hypercube)的頂點(diǎn),使得投影后的數(shù)據(jù)與原數(shù)據(jù)之間的量化誤差能夠最小化,并使用一種簡單有效的交替最小化(Alternating minimization)方法求解目標(biāo)函數(shù).與SH 算法相比,ITQ 算法不僅應(yīng)用范圍更廣,而且經(jīng)實(shí)驗(yàn)驗(yàn)證ITQ 算法的檢索效果更好.

      監(jiān)督型哈希學(xué)習(xí)方法是指將圖像或其他高維數(shù)據(jù)的類別標(biāo)簽用于估計(jì)二值編碼模型的輸出,在迭代過程中不斷利用圖像的標(biāo)簽信息計(jì)算實(shí)際輸出與預(yù)期輸出之間的誤差反饋給模型,不斷調(diào)整模型參數(shù)的方法.由于監(jiān)督型哈希方法利用了數(shù)據(jù)的標(biāo)簽信息,一般情況,監(jiān)督型哈希方法的效果比非監(jiān)督性哈希方法的效果好.2011 年,Norouzi 等提出了最小損失哈希(Minimal loss hashing,MLH)算法[9],這是一種典型的監(jiān)督型哈希學(xué)習(xí)算法,該算法通過結(jié)構(gòu)化支撐向量機(jī)(Structural support vector machine,Structural SVM)建立損失函數(shù),由于損失函數(shù)不連續(xù)且非凸,難以直接求解,該算法通過構(gòu)造并最小化損失函數(shù)的上界來求解損失函數(shù).基于核的監(jiān)督哈希(Kernel-based supervised hashing,KSH)算法[10]采用核的形式來構(gòu)造哈希函數(shù),使得其泛化可以處理非線性可分的問題,并且,不同于MLH 算法的是,KSH 算法不直接通過最小化哈希碼之間的漢明距離來學(xué)習(xí)哈希函數(shù),而是通過最小化哈希碼的內(nèi)積,使問題變得更簡單,更容易求解.2015 年,Shen 等[11]提出了監(jiān)督型離散哈希(Supervised discrete hashing,SDH)算法,該算法使用Lagrange 乘子法將離散約束問題松弛為凸優(yōu)化問題,在求解階段使用循環(huán)坐標(biāo)下降法(Cyclic coordinate descent,DCC)求解目標(biāo)函數(shù),即每次迭代固定其他的哈希位,只將一個(gè)哈希位作為變量求解,SDH 算法在保持準(zhǔn)確率的同時(shí),提高了算法的效率.

      上述傳統(tǒng)的哈希學(xué)習(xí)方法在提取圖像特征時(shí)采用手工設(shè)計(jì)特征,例如梯度方向直方圖(Histogram of oriented gradient,HOG)、尺度不變特征變換(Scale invariant feature transform,SIFT)等,不同場(chǎng)景的圖像使用相同的手工設(shè)計(jì)特征在一定程度上影響了哈希學(xué)習(xí)算法的性能,單一的特征導(dǎo)致檢索準(zhǔn)確率不高.近年來,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional neural network,CNN)[12-13]在計(jì)算機(jī)視覺領(lǐng)域成為主要的特征學(xué)習(xí)工具,在圖像分類[14]、目標(biāo)檢測(cè)[15-16]等方向得到廣泛應(yīng)用.目前許多學(xué)者也嘗試將CNN 用于哈希學(xué)習(xí)方法中,陸續(xù)出現(xiàn)了一些深度哈希學(xué)習(xí)方法.

      2014 年,Xia 等[17]提出了卷積神經(jīng)網(wǎng)絡(luò)哈希(Convolutional neural network hashing,CNNH)算法,該算法利用深層框架來學(xué)習(xí)圖像的特征,然后以此特征學(xué)習(xí)哈希函數(shù).這是一種兩階段哈希學(xué)習(xí)算法,第1 階段通過對(duì)相似度矩陣進(jìn)行分解,預(yù)生成樣本的二值編碼;第2 階段將樣本數(shù)據(jù)輸入CNN,使用卷積層提取圖像特征,通過最小化網(wǎng)絡(luò)輸出值與第1 階段預(yù)編碼之間的誤差,獲得樣本的哈希碼.CNNH 相對(duì)于非深度哈希學(xué)習(xí)算法在準(zhǔn)確率上有明顯的提高,然而也存在明顯的問題,第1 階段中相似度矩陣分解是一個(gè)非凸優(yōu)化問題,分解過程中需要大量的松弛方法,導(dǎo)致準(zhǔn)確率會(huì)受到很大的影響;第2 階段僅利用了CNN 自動(dòng)提取圖像特征,沒有參與第1 階段的計(jì)算.基于監(jiān)督型深度哈希的快速圖像檢索(Deep supervised hashing for fast image retrieval,DSH)算法[18]利用成對(duì)的圖像和圖像的標(biāo)簽作為網(wǎng)絡(luò)的輸入進(jìn)行訓(xùn)練,并聯(lián)合使用對(duì)比損失函數(shù)(Contrastive loss)與哈希碼的?1范數(shù)正則項(xiàng)作為網(wǎng)絡(luò)的損失函數(shù),以此約束哈希碼,使輸出在漢明空間的哈希碼更加多樣化,避免了兩階段哈希算法中第1 階段不能利用CNN 網(wǎng)絡(luò),以及使用sigmoid 函數(shù)導(dǎo)致網(wǎng)絡(luò)收斂速度過慢的問題.2016年,Li 等[19]提出了基于標(biāo)簽對(duì)的監(jiān)督型深度哈希特征學(xué)習(xí)(Feature learning based deep supervised hashing with pairwise labels,DPSH)算法,該算法通過圖像的類別標(biāo)簽構(gòu)造圖像的標(biāo)簽對(duì)矩陣,根據(jù)圖像的標(biāo)簽對(duì)構(gòu)建交叉熵?fù)p失函數(shù),以此衡量深度卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練的損失,使用基于Lagrange 乘子法的松弛優(yōu)化方法,對(duì)約束條件進(jìn)行松弛,去掉符號(hào)函數(shù)的約束條件,解決離散約束問題.但是由于該算法使用Lagrange 乘子,某些哈希位會(huì)被過度松弛,導(dǎo)致相似點(diǎn)對(duì)之間的語義信息保留不完整.連續(xù)深度哈希學(xué)習(xí)(Deep learning to hash by continuation,HashNet)算法[20]也使用圖像的標(biāo)簽對(duì)構(gòu)建目標(biāo)損失函數(shù),該算法在目標(biāo)函數(shù)構(gòu)造過程中引入加權(quán)似然函數(shù),有效地解決了相似點(diǎn)對(duì)數(shù)據(jù)不平衡問題,同時(shí)在網(wǎng)絡(luò)的輸出端使用尺度雙曲正切函數(shù)(Scaled tanh function)對(duì)網(wǎng)絡(luò)輸出進(jìn)行閾值化,并在迭代過程中,不斷增大尺度系數(shù),使其逼近符號(hào)函數(shù)的功能.從實(shí)驗(yàn)結(jié)果來看,與傳統(tǒng)的哈希學(xué)習(xí)方法相比,監(jiān)督型深度哈希學(xué)習(xí)方法在準(zhǔn)確率方面明顯勝過傳統(tǒng)的方法.

      本文提出了一種基于點(diǎn)對(duì)相似度的深度非松弛哈希(Deep non-relaxing hashing based on point pair similarity,DNRH)算法,該算法使用交叉熵保持相似點(diǎn)對(duì)之間的語義相似性,在卷積神經(jīng)網(wǎng)絡(luò)的輸出端使用一種軟閾值函數(shù)閾值化網(wǎng)絡(luò)輸出得到準(zhǔn)哈希碼,并使用?1范數(shù)約束輸出端的準(zhǔn)哈希碼,使得準(zhǔn)哈希碼的絕對(duì)值逼近1,避免了Lagrange 乘子的松弛求解對(duì)模型準(zhǔn)確率的影響.本文利用卷積神經(jīng)網(wǎng)絡(luò)提取圖像的特征表示并學(xué)習(xí)哈希函數(shù)生成哈希碼,這樣就避免了相似度矩陣分解的不準(zhǔn)確對(duì)后續(xù)量化過程的影響.綜上所述,本文的主要貢獻(xiàn)歸納如下:

      1)在損失函數(shù)中引入?1范數(shù)約束輸出端的準(zhǔn)哈希碼,通過正則項(xiàng)約束準(zhǔn)哈希碼,使其各哈希位的絕對(duì)值逼近1.

      2)為了減小量化誤差,在CNN 的輸出端使用軟閾值函數(shù),使輸出的準(zhǔn)哈希碼非線性地接近-1或1.在模型外部使用符號(hào)函數(shù)sgn(·),將準(zhǔn)哈希碼量化為二值哈希碼.

      本文后續(xù)結(jié)構(gòu)組織如下:第1 節(jié)介紹本文算法的背景,第2 節(jié)描述本文算法的模型、求解以及網(wǎng)絡(luò)結(jié)構(gòu),第3 節(jié)通過實(shí)驗(yàn)驗(yàn)證本文算法的性能,第4 節(jié)為全文結(jié)論.

      1 背景

      1.1 問題描述

      在監(jiān)督型哈希學(xué)習(xí)中,每一個(gè)數(shù)據(jù)樣本都有一個(gè)標(biāo)簽,樣本的標(biāo)簽矩陣為其中,yi∈{0,1}C,C 為樣本的總類別數(shù).每一個(gè)樣本數(shù)據(jù)xi對(duì)應(yīng)一個(gè)yi,當(dāng)樣本xi屬于第c 類時(shí),yi的第c 位為1,其他位均為0.通過樣本的標(biāo)簽矩陣Y,可以定義樣本之間的相似度矩陣S ∈{0,1}n×n,對(duì)于任意兩個(gè)樣本xi與xj,若xi與xj屬于同一類別,則sij=1,否則,sij=0.

      1.2 交叉熵?fù)p失函數(shù)

      對(duì)于任意兩個(gè)長度相等的哈希碼bi和bj,將這兩個(gè)哈希碼的相似度φij用它們的內(nèi)積定義為

      內(nèi)積越大,相似度越大,使用sigmoid 函數(shù)對(duì)相似度φij進(jìn)行非線性閾值化,將其范圍規(guī)范化到區(qū)間(0,1),可得

      基于哈希碼相似度的度量,Li 等[19]和Zhang等[21]利用交叉熵?fù)p失函數(shù)保持點(diǎn)對(duì)之間的相似度,圖像點(diǎn)對(duì)的哈希碼與相似度之間的似然p(sij|B)定義為

      式中,sij表示樣本對(duì)之間的相似度,B 表示樣本數(shù)據(jù)對(duì)應(yīng)的哈希碼.由該似然函數(shù)表明,當(dāng)哈希碼bi與bj越相似,即σ(φij)越大,對(duì)應(yīng)的似然函數(shù)p(sij|B)就越大;當(dāng)哈希碼bi與bj越不相似,即1-σ(φij)越大,對(duì)應(yīng)的似然函數(shù)p(sij|B)仍越大.極大似然估計(jì)可表示為

      對(duì)式(4)中極大似然估計(jì)的目標(biāo)函數(shù)取負(fù)對(duì)數(shù)即是交叉熵?fù)p失函數(shù),可表示為

      于是將極大似然估計(jì)轉(zhuǎn)換為最小化交叉熵?fù)p失函數(shù),建立如下的約束最優(yōu)化問題:

      式中,W 表示全連接層的神經(jīng)元參數(shù),W 表示偏移量,θ 表示網(wǎng)絡(luò)卷積層的參數(shù)集合,bi表示二值哈希碼,bi中每一位量化到離散值-1 或1,φ(·)表示網(wǎng)絡(luò)提取的圖像特征,sgn(·)為符號(hào)函數(shù),若x >0,則sgn(·)=1;否則sgn(·)=-1.

      由于符號(hào)函數(shù)不連續(xù),上述問題是一個(gè)離散的最優(yōu)化問題,很難求解.為了求解上述問題,Li 等[19]使用基于Lagrange 乘子法的松弛優(yōu)化方法,對(duì)約束條件進(jìn)行松弛,簡化約束條件中符號(hào)函數(shù)的離散約束,使其成為凸優(yōu)化問題,其目標(biāo)函數(shù)為

      其中,ui表示網(wǎng)絡(luò)的直接輸出結(jié)果.該方法在每一次迭代過程中使用符號(hào)函數(shù)量化生成bi,這樣會(huì)出現(xiàn)大量不可忽略的損失,導(dǎo)致某些特征對(duì)應(yīng)哈希位的約束變?nèi)?使得計(jì)算結(jié)果不準(zhǔn)確,這也是使用Lagrange 乘子法對(duì)約束條件松弛導(dǎo)致某些哈希碼過度松弛的問題.

      2 深度非松弛哈希算法

      2.1 模型的建立

      本文利用深度卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練樣本數(shù)據(jù),利用交叉熵保持樣本對(duì)之間的語義相似性,為了減少網(wǎng)絡(luò)輸出的準(zhǔn)哈希碼的量化誤差,本文使用Liu等[18]提出的?1范數(shù)對(duì)網(wǎng)絡(luò)輸出的準(zhǔn)哈希碼的分布進(jìn)行約束

      該正則項(xiàng)旨在使準(zhǔn)哈希碼bi的各個(gè)哈希位逼近兩個(gè)離散值-1 或1,即bi中每一位的絕對(duì)值越接近1時(shí),損失越小.

      在迭代過程中直接使用網(wǎng)絡(luò)的輸出作為準(zhǔn)哈希碼有很大概率過度偏離-1 或1,這樣將增大式(8)中J2(B)的損失值,盡管符號(hào)函數(shù)能夠很好地對(duì)其進(jìn)行量化,然而符號(hào)函數(shù)不可導(dǎo).相對(duì)于符號(hào)函數(shù)的離散編碼,雙曲正切函數(shù)能夠使準(zhǔn)哈希碼的各哈希位非線性地接近-1 或1,且具有連續(xù)無限可導(dǎo)的良好性質(zhì),其形式為

      Cao 等[20]使用尺度雙曲正切函數(shù)tanh(βx)閾值化網(wǎng)絡(luò)輸出值為準(zhǔn)哈希碼,其中β 為尺度系數(shù),控制函數(shù)值逼近1 或-1 的速度.類似地,在雙曲正切函數(shù)的基礎(chǔ)上,本文使用如下形式的函數(shù):

      式中,η 控制閾值函數(shù)的斜率,本文中稱其為軟閾值函數(shù).

      與HashNet 算法[20]不同的是,HashNet 算法在訓(xùn)練的過程中,逐漸增大閾值函數(shù)的尺度系數(shù),隨著迭代次數(shù)的增加,閾值函數(shù)不斷逼近并最終收斂至符號(hào)函數(shù),而本文的算法中軟閾值系數(shù)η 為模型參數(shù),通過實(shí)驗(yàn)獲取最優(yōu)參數(shù)后,在每次迭代中,η保持不變,這樣將簡化模型并使模型快速收斂.本文在網(wǎng)絡(luò)輸出端使用式(10)的軟閾值函數(shù),離散約束問題就轉(zhuǎn)化為可導(dǎo)損失函數(shù)對(duì)模型參數(shù)求導(dǎo)的問題.在迭代過程中,軟閾值函數(shù)將網(wǎng)絡(luò)輸出的結(jié)果平滑地非線性映射到(-1,1)之間,并且將大部分哈希位閾值化到-1和1 兩個(gè)值附近.圖1 給出一維空間soft(x)函數(shù)的曲線,隨著η 的增大,軟閾值函數(shù)soft(x)的函數(shù)值更加迅速地集中靠近離散值-1 或1.

      圖1 soft(x)的函數(shù)曲線Fig.1 The function curve of the soft(x)

      結(jié)合式(5)的交叉熵?fù)p失函數(shù)和式(8)的正則項(xiàng),并在卷積網(wǎng)絡(luò)輸出端使用式(10)的軟閾值函數(shù)soft(x),本文建立如下目標(biāo)函數(shù):

      式中,n 表示樣本數(shù),sij∈{0,1}表示樣本i和樣本j 是否相似,λ 表示正則項(xiàng)系數(shù),soft(·)表示軟閾值函數(shù),對(duì)向量逐元素運(yùn)算,η 表示軟閾值函數(shù)的控制參數(shù),bi表示前向網(wǎng)絡(luò)輸出的準(zhǔn)哈希碼,φij表示兩個(gè)哈希碼之間的相似度.目標(biāo)函數(shù)中,第1 項(xiàng)為語義保真項(xiàng),第2 項(xiàng)為準(zhǔn)哈希碼的正則項(xiàng).在本文的網(wǎng)絡(luò)模型輸出端使用soft(·),輸出結(jié)果bi將迅速逼近-1和1 這兩個(gè)值,使得?1范數(shù)正則項(xiàng)損失減小,同時(shí)加快網(wǎng)絡(luò)收斂的速度.網(wǎng)絡(luò)經(jīng)過訓(xùn)練后,在網(wǎng)絡(luò)模型外部使用符號(hào)函數(shù)將準(zhǔn)哈希碼量化為二值哈希碼.

      2.2 參數(shù)學(xué)習(xí)

      參數(shù)變量W和W 通過神經(jīng)網(wǎng)絡(luò)的反向傳播(Back propagation,BP)求解,在每一次迭代中,通過隨機(jī)梯度下降算法(Stochastic gradient descent,SGD)更新W和W.目標(biāo)函數(shù)用兩項(xiàng)之和表示為J=J1+λJ2,其中,

      1)對(duì)準(zhǔn)哈希碼bi求偏導(dǎo)

      第1 項(xiàng)J1對(duì)bi求偏導(dǎo),可得:

      第2 項(xiàng)J2對(duì)bi求偏導(dǎo),可得:

      結(jié)合式(12)和式(13)可得損失函數(shù)J 對(duì)bi的偏導(dǎo)數(shù)為

      2)對(duì)參數(shù)W 求偏導(dǎo)

      設(shè)zzzi=WTφ(xi;θ)+W,損失函數(shù)J 對(duì)W 求偏導(dǎo),根據(jù)鏈?zhǔn)角髮?dǎo)法則可推導(dǎo)出:

      其中,diag{·}表示主對(duì)角線上為向量元素的對(duì)角矩陣,soft′(x)=(2ηe-ηx)/(1+e-ηx)2,對(duì)向量逐元素運(yùn)算.

      因此,可得損失函數(shù)J 對(duì)W 的偏導(dǎo)數(shù)為

      其中,⊙為哈達(dá)瑪積(Hadamard product).

      3)對(duì)偏移量W 求偏導(dǎo)

      損失函數(shù)J 對(duì)W 求偏導(dǎo),根據(jù)鏈?zhǔn)角髮?dǎo)法則可得:

      其中,Il∈Rl×l為單位矩陣.

      因此,可得損失函數(shù)J 對(duì)W 的偏導(dǎo)數(shù):

      由以上求解過程可知,損失函數(shù)可導(dǎo),即反向傳播的過程偏導(dǎo)數(shù)存在,網(wǎng)絡(luò)模型經(jīng)過一定迭代能夠收斂.

      2.3 網(wǎng)絡(luò)結(jié)構(gòu)與參數(shù)

      本文采用AlexNet 網(wǎng)絡(luò)模型作為深度哈希學(xué)習(xí)的基礎(chǔ)模型,AlexNet 模型一共分為8 層,5 個(gè)卷積層和3 個(gè)全連接層[12].在每一個(gè)卷積層中使用線性整流函數(shù)(Rectified linear unit,ReLU)作為激勵(lì)函數(shù)以及局部響應(yīng)歸一化(Local response normalization,LRN)處理數(shù)據(jù),然后經(jīng)過下采樣(Pooling),自動(dòng)提取圖像的特征表示,再經(jīng)過全連接層輸出結(jié)果.本文使用的AlexNet 網(wǎng)絡(luò)模型及參數(shù)如圖2 所示,第1,3,5,6,7 層為卷積層.卷積層均使用保留邊界的滑動(dòng)方式,第1和第3 層使用的卷積核的尺寸分別為11×11和5×5,其他3 個(gè)卷積核的尺寸為3×3,第1 層的滑動(dòng)步長水平垂直方向均為2,其他4 個(gè)卷積層的滑動(dòng)步長水平垂直方向均為1.第2,4,8 層為下采樣層,使用非保留邊界的滑動(dòng)方式,窗口尺寸為3×3,滑動(dòng)步長水平和垂直方向均為2,后三層為全連接層,輸出端使用軟閾值函數(shù)閾值化輸出為準(zhǔn)哈希碼.

      圖2 本文算法使用的網(wǎng)絡(luò)模型Fig.2 The network model of our algorithm

      2.4 算法流程

      算法1 給出了本文算法的偽代碼,輸入數(shù)據(jù)為一定格式的圖像,通過CNN 的卷積層和池化層提取圖像的特征表示,將圖像的特征表示輸入CNN 全連接層后使用軟閾值函數(shù)得到圖像的準(zhǔn)哈希碼.根據(jù)目標(biāo)函數(shù),使用反向傳播算法更新參數(shù)W和W,通過指定次數(shù)的迭代訓(xùn)練完成模型,最后,在訓(xùn)練完成的模型外部使用符號(hào)函數(shù),對(duì)圖像的準(zhǔn)哈希碼量化輸出二值哈希碼.

      算法1.深度非松弛哈希學(xué)習(xí)算法(DNRH)

      3 實(shí)驗(yàn)結(jié)果與分析

      3.1 在CIFAR-10和NUS-WIDE 上的實(shí)驗(yàn)

      將本文提出的算法與各種流行的哈希學(xué)習(xí)算法進(jìn)行比較,其中包括2 個(gè)非監(jiān)督哈希學(xué)習(xí)算法SH[6]和ITQ[8],4 個(gè)監(jiān)督型非深度哈希學(xué)習(xí)算法MLH[9]、KSH[10]、SDH[11]和BRE[22],以及6 個(gè)監(jiān)督型深度哈希學(xué)習(xí)算法CNNH[17]、FP-CNNH[23]、NINH[24]、DHN[25]、DSH[18]和DPSH[19].在6 個(gè)非深度哈希學(xué)習(xí)算法中從圖像中提取512 維的GIST 特征向量作為哈希函數(shù)的輸入.本文的DNRH 算法和其他6個(gè)深度哈希學(xué)習(xí)算法CNNH、DHN、FP-CNNH、NINH、DSH、DPSH 根據(jù)圖像的尺寸使用AlexNet網(wǎng)絡(luò)卷積層自動(dòng)提取一定維度的圖像特征作為哈希函數(shù)的輸入,生成哈希碼.

      為了將本文提出的DNRH 算法與上述哈希學(xué)習(xí)算法的性能比較,實(shí)驗(yàn)中,本文選取CIFAR-10[26]和NUS-WIDE[27]兩個(gè)公開的數(shù)據(jù)集.在這兩個(gè)數(shù)據(jù)集上訓(xùn)練模型并進(jìn)行測(cè)試.CIFAR-10 由60 000幅32×32 像素的RGB 彩色圖像構(gòu)成,共包含飛機(jī)、汽車、鳥、貓、鹿、狗、青蛙、馬、船和卡車10 個(gè)類別[26].其中50 000 幅作為訓(xùn)練數(shù)據(jù),10 000 幅作為測(cè)試數(shù)據(jù).NUS-WIDE 數(shù)據(jù)集是由新加坡國立大學(xué)媒體搜索實(shí)驗(yàn)室創(chuàng)建的網(wǎng)絡(luò)圖像數(shù)據(jù)集,共有5 018個(gè)標(biāo)簽,81 個(gè)類別,將近270 000 幅來源于網(wǎng)絡(luò)的圖像.與CIFAR-10 不同的是,NUS-WIDE 數(shù)據(jù)集中某一幅圖像可能賦予一個(gè)或者多個(gè)標(biāo)簽,在本文實(shí)驗(yàn)中,主要抽取動(dòng)物、建筑、植物、夕陽、人、天空、云、水、草、窗戶、湖、樹、汽車、沙灘、鳥、狗、馬、雪、花、海洋、馬路21 個(gè)常用的類別[27]用于實(shí)驗(yàn),每個(gè)類別中至少包括5 000 幅圖像.

      在實(shí)驗(yàn)階段,在CIFAR-10 數(shù)據(jù)集中,本文隨機(jī)從每一個(gè)類別中抽取500 幅圖像作為訓(xùn)練數(shù)據(jù),100 幅圖像作為測(cè)試數(shù)據(jù),一共5 000 幅圖像組成訓(xùn)練集,1 000 幅圖像組成測(cè)試集.在NUS-WIDE數(shù)據(jù)集中,隨機(jī)從每一個(gè)類別選出500 幅圖像作為訓(xùn)練數(shù)據(jù),100 幅圖像作為測(cè)試數(shù)據(jù).一共10 500幅圖像組成訓(xùn)練集,2 100 幅圖像組成測(cè)試集.在NUS-WIDE 數(shù)據(jù)集上直接使用AlexNet 網(wǎng)絡(luò)模型,將每幅圖像調(diào)整為224 × 224 像素的尺寸以適應(yīng)AlexNet 網(wǎng)絡(luò)模型的輸入.為了驗(yàn)證算法的魯棒性,本文在CIFAR-10和NUS-WIDE 兩個(gè)數(shù)據(jù)集上?1范數(shù)正則項(xiàng)系數(shù)λ 均設(shè)置為0.05,軟閾值函數(shù)控制參數(shù)η 均設(shè)置為12.

      為了避免實(shí)驗(yàn)誤差以及隨機(jī)性,在評(píng)價(jià)哈希學(xué)習(xí)算法的有效性上,本文采用平均準(zhǔn)確率(Mean average precision,MAP)[28]作為檢索圖像的評(píng)價(jià)指標(biāo).選取一定長度的哈希碼后,在測(cè)試集中,選取一部分圖像作為待檢索的樣本,依次計(jì)算待檢索的圖像與數(shù)據(jù)集中其他圖像的漢明距離,根據(jù)漢明距離將圖像排序并計(jì)算排序列表中與待檢索圖像類別相同的圖像數(shù)量與檢索圖像總數(shù)之間的比值,作為準(zhǔn)確率.

      表1 比較了CIFAR-10 數(shù)據(jù)集上本文的DNRH算法與現(xiàn)有的哈希學(xué)習(xí)算法的MAP.從表1 可以觀察到,在4 種長度的哈希碼上,本文的DNRH 算法的平均準(zhǔn)確率均明顯高于其他所有算法.通過比較CNNH、DHN、FP-CNNH、NINH、DPSH、DSH和DNRH 等7 個(gè)深度哈希算法以及其他6 個(gè)非深度哈希算法的MAP 可知,深度哈希算法高于非深度哈希算法的平均準(zhǔn)確率,這表明使用CNN 模型的深度哈希學(xué)習(xí)算法自動(dòng)提取圖像特征表示比傳統(tǒng)手工提取圖像特征表示具有更好的性能.對(duì)于12 bit的哈希碼,所有算法的檢索準(zhǔn)確率相對(duì)偏低,隨著哈希碼長度的增加,所有算法檢索準(zhǔn)確率都逐漸提高,哈希碼長度為48 bit 時(shí),所有算法的檢索準(zhǔn)確率達(dá)到了最高.相比于48 bit 以下的哈希碼,使用48 bit的哈希碼可以存儲(chǔ)更多的圖像特征,在檢索時(shí),可以利用更多的圖像特征,取得更高的準(zhǔn)確率.

      表1 各種算法在CIFAR-10 上的MAPTable 1 The MAP of different algorithms on CIFAR-10

      NUS-WIDE 數(shù)據(jù)集的圖像相對(duì)于CIFAR-10數(shù)據(jù)集的圖像具有更高的像素,更完整的圖像細(xì)節(jié),更貼近實(shí)際應(yīng)用中的圖像.在NUS-WIDE 數(shù)據(jù)集中,一幅圖像可能包含多個(gè)標(biāo)簽,在檢索過程中,只要檢索到的圖像與待檢索圖像包含有相同的標(biāo)簽,就判定為正確檢索.表2 比較了在NUS-WIDE數(shù)據(jù)集上本文的DNRH 算法與現(xiàn)有的哈希學(xué)習(xí)算法在不同長度哈希碼上的平均準(zhǔn)確率.由于NUSWIDE 數(shù)據(jù)集的圖像數(shù)量很大,在該數(shù)據(jù)集上,本文用每個(gè)測(cè)試樣本檢索返回的前5 000 個(gè)樣本計(jì)算MAP.在相同長度的哈希碼上,本文DNRH 算法在12 bit、24 bit、32 bit、48 bit 上的平均準(zhǔn)確率分別為0.769、0.792、0.804、0.814,均高于其他的哈希學(xué)習(xí)算法,證明了本文的算法的普適性.其中,對(duì)于DPSH 算法,本文仍然使用在CIFAR-10 數(shù)據(jù)集上實(shí)驗(yàn)的Lagrange 乘子η=10,并在各種算法使用相同的訓(xùn)練集和測(cè)試集的設(shè)置下,在NUS-WIDE數(shù)據(jù)集上重新運(yùn)行作者提供的代碼,計(jì)算其平均準(zhǔn)確率.隨著哈希碼長度的增加,幾乎所有算法的平均檢索準(zhǔn)確率都有一定程度的提高,尤其SDH 算法,48 bit 的哈希碼對(duì)應(yīng)的平均準(zhǔn)確率相對(duì)于12 bit 的哈希碼的平均準(zhǔn)確率提高了近7%,表明更多的哈希位能夠表示更多的圖像特征,提高檢索準(zhǔn)確率.

      表2 各種算法在NUS-WIDE 上的MAPTable 2 The MAP of different algorithms on NUS-WIDE

      3.2 ?1 范數(shù)和軟閾值函數(shù)的約束效果

      在本文提出的DNRH 算法中,軟閾值函數(shù)的作用是在模型的前向計(jì)算中直接閾值化網(wǎng)絡(luò)輸出端的結(jié)果,而?1范數(shù)作為目標(biāo)函數(shù)的正則項(xiàng)在模型的反向傳播中約束準(zhǔn)哈希碼,使準(zhǔn)哈希碼各個(gè)位的絕對(duì)值逼近1,這兩個(gè)模塊的作用均為約束準(zhǔn)哈希碼.為了驗(yàn)證聯(lián)合使用?1范數(shù)和軟閾值函數(shù)的約束性能,本文在CIFAR-10 數(shù)據(jù)集上分別對(duì)?1范數(shù)正則項(xiàng)獨(dú)立約束、軟閾值函數(shù)獨(dú)立約束以及?1范數(shù)和軟閾值函數(shù)聯(lián)合約束進(jìn)行了實(shí)驗(yàn).

      表3 列出了在4 種長度的哈希碼上,不同模型對(duì)應(yīng)的平均準(zhǔn)確率,其中,“交叉熵+軟閾值”表示使用式(5)的損失函數(shù),并在網(wǎng)絡(luò)的輸出端使用軟閾值函數(shù)的模型,“交叉熵+?1范數(shù)”表示使用式(11)的損失函數(shù),并略去約束條件,即在網(wǎng)絡(luò)的輸出端不使用軟閾值函數(shù)的模型,“交叉熵+?1范數(shù)+軟閾值”表示本文的DNRH 算法模型,即聯(lián)合使用?1范數(shù)和軟閾值函數(shù).觀察表3 可知,“交叉熵+?1范數(shù)”和“交叉熵+軟閾值”這兩個(gè)模型的平均準(zhǔn)確率明顯低于DPSH 算法,表明單獨(dú)使用?1范數(shù)和軟閾值函數(shù)的效果并不如以Lagrange 乘子松弛求解的DPSH 算法.而聯(lián)合使用?1范數(shù)和軟閾值函數(shù)(交叉熵+?1范數(shù)+軟閾值)在4 種長度哈希碼長度上,其MAP 相比于單獨(dú)使用其中一個(gè)模塊均提高了近10%,并且高于DPSH 算法.因此可得出結(jié)論,聯(lián)合使用?1范數(shù)和軟閾值函數(shù)能夠更好地約束哈希碼,提升算法性能.

      表3 ?1 范數(shù)和軟閾值函數(shù)約束在CIFAR-10 上的MAPTable 3 The MAP of ?1-norm and soft threshold function constraint on CIFAR-10

      3.3 參數(shù)影響的分析

      3.3.1 正則項(xiàng)系數(shù)λ 對(duì)準(zhǔn)哈希碼分布的影響

      為了檢驗(yàn)?1范數(shù)正則項(xiàng)對(duì)全連接層輸出的準(zhǔn)哈希碼的約束能力,本文在CIFAR-10 數(shù)據(jù)集上對(duì)輸出的準(zhǔn)哈希碼的分布情況進(jìn)行了統(tǒng)計(jì).統(tǒng)計(jì)準(zhǔn)哈希碼中每一位的絕對(duì)值相對(duì)于1 的距離分別在區(qū)間[0,0.1),[0.1,0.2),[0.2,0.3),[0.3,0.4)的概率,如圖3 所示,不同顏色表示不同的分布區(qū)間,橫軸表示正則項(xiàng)系數(shù)λ,縱軸表示哈希位落在不同區(qū)間的概率.

      從圖3 中準(zhǔn)哈希碼各哈希位的分布情況可以看出,隨著λ 的增大,準(zhǔn)哈希碼各哈希位的絕對(duì)值更集中靠近1,尤其在不使用?1范數(shù)(λ=0)約束的情況下,準(zhǔn)哈希碼的哈希位在0~0.4 之間分布相對(duì)均勻,這樣在最后的量化過程中損失會(huì)增加,導(dǎo)致結(jié)果不準(zhǔn)確.在目標(biāo)函數(shù)中,語義保真項(xiàng)用于保持點(diǎn)對(duì)之間的相似性,?1范數(shù)正則項(xiàng)用于約束準(zhǔn)哈希碼的分布,正則項(xiàng)系數(shù)λ 過大將過分增大?1范數(shù)正則項(xiàng)的比重,從而減小語義保真項(xiàng)的作用,影響分類效果.由此可以看出,適當(dāng)?shù)?1范數(shù)正則項(xiàng)對(duì)準(zhǔn)哈希碼的分布有很好的約束作用.

      圖3 不同正則項(xiàng)系數(shù)λ 下準(zhǔn)哈希碼的分布Fig.3 The distribution of hash code with different regularization coefficient λ

      3.3.2 正則項(xiàng)系數(shù)λ 對(duì)準(zhǔn)確率的影響

      正則項(xiàng)系數(shù)λ 的取值,不僅影響模型輸出的準(zhǔn)哈希碼各哈希位的分布,而且影響本文的DNRH 算法訓(xùn)練模型的準(zhǔn)確率.表4 給出了哈希碼的長度取48 時(shí),在CIFAR-10和NUS-WIDE 數(shù)據(jù)集上λ 取不同值時(shí)的平均準(zhǔn)確率.

      表4 λ 的不同取值對(duì)應(yīng)的MAPTable 4 The MAP on different λ

      從表4 可以看出,在兩個(gè)數(shù)據(jù)集上λ 的取值對(duì)MAP 的影響分布相同.當(dāng)λ=0.05 時(shí),測(cè)試集上的檢索效果最好,λ 取值過小或過大都會(huì)對(duì)檢索的MAP 造成影響.分析其原因可知,λ 值過小,目標(biāo)函數(shù)對(duì)準(zhǔn)哈希碼分布的約束變?nèi)?模型輸出的準(zhǔn)哈希碼的部分哈希位將過度偏離-1 或1,造成最終量化為哈希碼時(shí)損失增大;λ 的取值過大將造成目標(biāo)函數(shù)中語義保真項(xiàng)的比重減小,由于該約束項(xiàng)的作用是保持圖像之間的相似語義,減小該約束項(xiàng)的比重會(huì)造成相同類別之間的距離增大或者不同類別之間的距離減小,即圖像之間的相似性約束變?nèi)?使得檢索效果變差.

      3.3.3 軟閾值函數(shù)控制參數(shù)η 對(duì)準(zhǔn)哈希碼分布的影響

      為了驗(yàn)證軟閾值函數(shù)對(duì)準(zhǔn)哈希碼的閾值化效果,本文在NUS-WIDE 數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),統(tǒng)計(jì)軟閾值函數(shù)控制參數(shù)η 取不同值時(shí),模型輸出的準(zhǔn)哈希碼的分布情況.同樣統(tǒng)計(jì)準(zhǔn)哈希碼中每一位的絕對(duì)值相對(duì)于1 的距離分別在區(qū)間[0,0.1),[0.1,0.2),[0.2,0.3),[0.3,0.4)的概率,如圖4 所示,橫軸表示軟閾值函數(shù)控制參數(shù)η 的取值,縱軸表示哈希位落在不同區(qū)間的概率.

      圖4 參數(shù)η 取不同值時(shí)準(zhǔn)哈希碼的分布Fig.4 The distribution of hash code with different η

      由圖4 可以看出,η 的取值越大,準(zhǔn)哈希碼的各哈希位的越逼近1 或-1,尤其在η=20 時(shí),準(zhǔn)哈希碼誤差在0.1 以內(nèi)的比例達(dá)到了90%,但是η 的取值過大也會(huì)帶來嚴(yán)重的問題,當(dāng)η=20 時(shí),在模型的訓(xùn)練過程中,損失函數(shù)始終振蕩難以收斂,這是因?yàn)楫?dāng)η 取值過大時(shí),軟閾值函數(shù)趨于不可導(dǎo).為了在模型訓(xùn)練中使損失平穩(wěn)收斂,并且使準(zhǔn)哈希碼絕對(duì)值逼近1,經(jīng)過多次實(shí)驗(yàn),本文中η 的取值為12.

      4 結(jié)論

      本文提出了一種基于點(diǎn)對(duì)相似度的深度非松弛哈希學(xué)習(xí)算法,該算法通過CNN 自動(dòng)提取圖像特征,在目標(biāo)函數(shù)中使用交叉熵保持相似點(diǎn)對(duì)之間的語義相似性,在CNN 輸出端使用可導(dǎo)的軟閾值函數(shù)代替?zhèn)鹘y(tǒng)方法中的符號(hào)函數(shù),使準(zhǔn)哈希碼非線性地接近-1 或1.并在損失函數(shù)中引入?1范數(shù)約束輸出的準(zhǔn)哈希碼,使得準(zhǔn)哈希碼逼近二值編碼.最終在訓(xùn)練好的模型外部使用符號(hào)函數(shù),將準(zhǔn)哈希碼量化為二值哈希碼.在公開數(shù)據(jù)集(CIFAR-10、NUSWIDE)上的實(shí)驗(yàn)驗(yàn)證了本文提出的DNRH 算法優(yōu)于其他哈希學(xué)習(xí)算法,取得了令人滿意的效果.

      猜你喜歡
      哈希范數(shù)檢索
      2019年第4-6期便捷檢索目錄
      基于加權(quán)核范數(shù)與范數(shù)的魯棒主成分分析
      矩陣酉不變范數(shù)H?lder不等式及其應(yīng)用
      專利檢索中“語義”的表現(xiàn)
      專利代理(2016年1期)2016-05-17 06:14:36
      基于OpenCV與均值哈希算法的人臉相似識(shí)別系統(tǒng)
      基于維度分解的哈希多維快速流分類算法
      一類具有準(zhǔn)齊次核的Hilbert型奇異重積分算子的范數(shù)及應(yīng)用
      基于同態(tài)哈希函數(shù)的云數(shù)據(jù)完整性驗(yàn)證算法
      一種基于Bigram二級(jí)哈希的中文索引結(jié)構(gòu)
      國際標(biāo)準(zhǔn)檢索
      清涧县| 高安市| 新郑市| 虎林市| 晋江市| 无锡市| 炉霍县| 天水市| 高唐县| 衡阳市| 商河县| 佛教| 繁昌县| 浙江省| 衡阳县| 绥宁县| 宁陵县| 嘉义县| 顺昌县| 天镇县| 玉门市| 厦门市| 邵武市| 拉萨市| 兰考县| 临沭县| 汉川市| 德保县| 新宁县| 广河县| 五原县| 会泽县| 太仓市| 竹山县| 凤阳县| 堆龙德庆县| 天柱县| 土默特左旗| 三穗县| 定州市| 巢湖市|