翻譯自 Learning to Hash for Big Data: A Tutorial。git
引子
大數據中的最近鄰搜索
最近鄰搜索(Nearest Neighbor Search):給定查詢點 q,返回數據庫中距離 q 最近(最類似)的點集。數據庫
大數據中的最近鄰搜索挑戰:網絡
Similarity Preserving Hashing(類似保留哈希)
讓無關圖像對應的哈希編碼儘量不一樣,讓類似圖像的哈希編碼儘量相同。框架
存儲空間需求減小。ide
使用哈希編碼來創建索引,能夠達到常數或次線性查詢時間複雜度。函數
某些狀況下線性時間的全搜索也能夠接受,由於二進制表示下的距離計算消耗很低。學習
哈希函數學習的兩個階段
- 第一類
- 投影階段(Projection Stage)(降維)
- 用實值投影函數投影
- 給定點 x,每一個投影維度 i 都和一個實值投影函數相關聯 fi(x)(好比 fi(x)=Wi^T*x
- 量化階段(Quantization Stage)
- 將實數轉化爲二進制(Turn real into binary)
- 度量學習(metric learning)和哈希學習(learning to hash)的本質區別
- 第二類
數據無關方法
哈希函數的定義和訓練數據集無關。大數據
- Locality-sensitive hashing (LSH) 位置敏感哈希 (Gionis et al., 1999; Andoni and Indyk, 2008)
- 和它的擴展 (Datar et al., 2004; Kulis and Grauman, 2009; Kulis et al., 2009)
- SIKH: 偏移不變核函數哈希(Shift invariant kernel hashing)(SIKH) (Raginsky and Lazebnik, 2009)
- MinHash (Broder et al., 1998)
- 和它的擴展 (Li and K ̈onig, 2011)
這些方法的哈希函數使用了隨機投影或者是人工構造的,因此不屬於哈希學習。編碼
數據相關方法
哈希函數是從給定的訓練數據集中學習獲得。scala
和數據無關方法相比,數據相關方法(即哈希學習)能夠在更短的二進制編碼上得到相近甚至更好的精確度。
開創性論文:(Salakhutdinov and Hinton, 2007, 2009; Torralba et al., 2008; Weiss et al., 2008)
兩個種類:
- 單模態
- 監督式方法:給定一些監督的(語義)信息,例如 pairwise 標籤 s_ij, pointwise 標籤 yi 或者 triplet 標籤 (xi, xj, xk)
- 非監督式方法
- 多模態
單模態非監督方法
沒有指示訓練點類別的標籤。
單模態監督(半監督)方法
具備類標籤或者配對(pairwise)約束。
- SSH (SPLH):半監督哈希,同時利用有標籤和無標籤數據 (Wang et al., 2010a,b)
- MLH:基於隱式結構(latent structural)SVM 框架的最小化損失哈希 (Norouzi and Fleet, 2011)
- LDAHash:基於線性區分分析(Linear discriminant analysis)的哈希 (Strecha et al., 2012)
- KSH:基於核函數(Kernel)的監督式哈希 (Liu et al., 2012)
- LFH:隱含因子模型的監督式哈希 (Zhang et al., 2014)
- FastH:使用圖割和決策樹的監督式哈希 (Lin et al., 2014)
- SDH:使用逐點(pointwise)標籤的監督式離散哈希 (Shen et al., 2015)
- COSDISH:使用 pairwise 監督的可擴展的離散哈希
基於排序的方法
監督信息是排序標籤,例如三元組 (xi, xj, xk)。
- HDML:漢明距離度量學習(metric learning)(Norouzi et al., 2012)
- OPH:順序保留哈希,近似最近鄰搜索 (Wang et al., 2013b)
- RSH:用 listwise 監督式學習哈希編碼 (Wang et al., 2013a)
- RPH:排序保留哈希,快速類似度搜索 (Wang et al., 2015)
多媒體方法
- 多來源哈希(Multi-Source)
- 跨媒體哈希(Cross-Modal Hashing)
多來源方法
- 目標是利用輔助視圖(auxiliary views)來學習比單模態哈希更好的編碼
- 假設查詢提供了全部視圖
- MFH:多特徵哈希 (Song et al., 2011)
- CH:複合哈希 (Zhang et al., 2011)
跨媒體方法
給定包含圖片或文字的查詢,返回相關的圖片或文字。
- CVH:跨視圖哈希 (Kumar and Udupa, 2011)
- MLBE:多模態隱含二進制嵌入 (Zhen and Yeung, 2012a)
- CRH:同時正則化(Co-regularized)哈希 (Zhen and Yeung, 2012b)
- IMH:媒體間哈希(Inter-media hashing)(Song et al., 2013)
- RaHH:關係感知異構(Relation-aware heterogeneous)哈希 (Ou et al., 2013)
- SCM:語義相關最大化(Semantic correlation maximization)(Zhang and Li, 2014)
- CMFH:集體矩陣分解(Collective matrix factorization)哈希 (Ding et al., 2014)
- QCH:量化相關哈希(Quantized correlation hashing)(Wu et al., 2015)
- SePH:語義保留哈希 (Lin et al., 2015b)
深度哈希
使用深度學習的哈希。
- CNNH:經過圖片表達學習的監督式哈希 (Xia et al., 2014)
- NINH:用深度神經網絡同時特徵學習和哈希編碼 (Lai et al., 2015)
- DSRH:基於深度語義排序的哈希 (Zhao et al., 2015)
- DRSCH:位可擴展(Bit-scalable)深度哈希 (Zhang et al., 2015)
- DH:深度哈希,壓縮二進制編碼學習 (Liong et al., 2015)
- 二進制編碼學習深度哈希 (Lin et al., 2015a)
- DPSH:基於特徵學習的使用 pairwise 標籤的深度監督哈希 (Li et al., 2015)
量化
量化階段和投影階段同樣重要。
- DBQ:雙位(Double-bit)量化 (Kong and Li, 2012a)
- MQ:曼哈頓(Manhattan)量化 (Kong et al., 2012)
- VBQ:可變位(Variable bit quantization)量化 (Moran et al., 2013)