Abstract
針對大規模的圖像檢索問題,論文提出了一個高效的ITQ算法。該算法先將中心化后的數據映射到超立方體的頂點上,再通過優化過程尋找一個旋轉矩陣,使得數據點經過旋轉后,與超立方體的頂點數據具有最小的量化誤差。ITQ算法涉及到了multi-class spectral clustering(不懂)以及Orthogonal Procrustes problem,且可以通過PCA(無監督)或CCA(監督)的方法事先對數據進行降維。該方法的實驗結果優於大部分start-of-the-art方法。
1. Introduction
一個高效的二值編碼學習方法應具有以下特點:(1)碼長足夠短,內存才不會占用過大;(2)應該具有局部敏感性,即原始空間相似的兩個數據點在二值空間也應具有較近的漢明距離;(3)學習和查詢過程效率也足夠高。
在很多哈希方法中,初始的操作都是對數據進行PCA降維。但是每個特征維度所具備的方差是不同的,高方差的特征方向往往具有更多的信息,如果對所有方向都進行相同的編碼(亦或要求向量間正交),那么算法有時會具有更差的表現。SSH算法通過放松對hash函數的正交限制得到了不錯的表現,而在ITQ算法中並沒有顯式得對hash函數添加正交限制。算法初始也是進行PCA降維,然后隨機初始化一個旋轉矩陣,通過最小化量化誤差的過程尋找到矩陣矩陣\(R^*\),從而得到最終的映射函數。
2. Unsupervised Code Learning
接下來對文章用到的符號表示進行聲明:
\(X∈R^{n*d}\),為數據矩陣,並且對其進行中心化預處理0
\(B = sgn(XW)\),W為映射函數,sgn為符號函數,B表示X經過映射后的數據,在二值超立方體上的映射的數據。
令\(V = XW\),算法的目標是最小化量化誤差\(||sgn(V) - V||\),並令\(W^*\)表示最優解。假設R為旋轉矩陣,因為旋轉矩陣只改變方向不改變映射關系,因此\(W = W^* R\)依然為算法的最優解。據此可得到量化損失函數為:
在實驗中,發現對旋轉矩陣R進行隨機初始化,可以得到不錯的效果。接下來,我們利用ITQ算法進行k(通常為50)次迭代,迭代過程分為兩個步驟:
固定R,對B進行更新
通過對\(Q(B,R)\)公式的推導,我們得到最小化\(Q(B,R)\)的過程等同於最大化\(tr(BR^TV^T) = \sum_{i=1}^n \sum_{j=1}^cB_{ij}V^*_{ij}\),其中\(V^* = VR\)。顯然,因為B的取值只有-1和1,為使得該式最大,應使得V為正值時對應的B為1,V為負值時對應的B為-1。此外,對原始數據\(X\)的尺度進行改變不會影響到B或R的最優值,因此我們實現對數據進行中心化處理對實驗結果沒有影響。
固定B,對R進行更新
在此情況下,目標公式(1)就變成了典型的Orthogonal Procrustes problem,該問題的求解過程可以參考wiki百科。在本文中,利用SVD分解,使得\(B^TV = S\Omega S^T\),再令\(R = SS^T\),便可求解。
3. Evaluation of Unsupervised Code Learning
數據集
-
CIFAR:包括64800個數據,11類。
-
Tiny image dataset:包括580000個數據,分別對應388個Internet search key words。是以二進制文件形式存儲的,每個數據文件包括圖片本身、與圖片相關的元數據(文件名,使用的搜索引擎,排名等)、每個圖片的Gist描述符。
評估方案
- 第一個評估方法使用歐幾里得近鄰。在該方法中沒有用到類標簽的信息。對於每一個查詢點,將其與其他數據點的距離進行升序排序,對於距離最近的前50個數據點,只要距離小於一個事先設定的闕值,便認為查詢的結果是正確的,否則即為錯誤的查詢結果。然后通過計算錯誤和正確的比例來得到精度和召回率。
- 第二個評估方法使用類標簽。對每個查詢點,得到對應top500的圖像數據,然后通過計算top500中類標簽和查詢點相同所占的比例得到精度,再結合數據集中和查詢點標簽相同的所有數據點的數量得到召回率。
論文比較了PCA-RR、PCA-ITQ等與其他baseline方法在兩種評估尺度下的表現:
在CIFAR下的實驗結果表明,在兩種評估方案下,PCA-ITQ算法的表現基本都優於其他baseline。除了在256-bits時,SKLSH在第一種量度下的表現最好,但是SKLSH在第二種量度下的表現卻很差。由此可以看出基於PCA的方法可以很好得保留原始數據的語義一致性。
顯然,無監督學習的方法(目標函數直接對距離進行優化)在第一種評估尺度下表現優於監督學習的方法,而在第二種評估尺度下,監督學習有效得利用了類標簽的信息,因此表現普遍優於無監督學習方法。因此實驗結果表明,歐式距離更近並不等同於更一致的語義信息。
4. Leveraging Label Information
RR和ITQ可以利用任何基於正交的投影方法。PCA利用一種無監督的方法進行降維,而CCA結合了數據中的標簽進行,進行有監督得降維,從而得到了更好的實驗結果。
因為CIFAR的類標簽時人為標注的,較為“clean”,而Tiny image dataset的數據是互聯網自動產生的,較為“noisy”。從實驗結果可以看出,利用clean數據訓練的CCA-ITQ具有最優的表現,而利用noisy數據訓練的CCA-ITQ同樣也比PCA-ITQ得到了很大的提升。