王苑錚 范意興 陳 薇 張儒清 郭嘉豐
WANG Yuanzheng1,2, FAN Yixing1,2, CHEN Wei1,2, ZHANG Ruqing1,2, GUO Jiafeng1,2
實體檢索是為了從大規(guī)模的實體庫中找到與查詢相關的實體[1],是很多自然語言處理任務的基礎,如文本數(shù)據(jù)分析[2]、事實抽取與驗證[3]、問答系統(tǒng)[4-7]、信息檢索[8-11]、推薦系統(tǒng)[12]等.不同于常規(guī)的文檔檢索任務,實體檢索任務的查詢是一個帶上下文的實體提及(Entity Mention),而實體庫除了可以是無結構的實體描述文檔,也可以是結構化、半結構化的知識圖譜,并且查詢與實體間的“相關性”通常是明確的,即二者是否指代同一實體,而不是模糊的語義相似性,因此一個查詢通常只有一個目標實體.當實體庫規(guī)模很大時,為了能正確、高效檢索目標實體,通常需要采用多階段檢索,其中包含召回階段和至少一個重排序階段.召回階段是從完整實體庫中篩選少數(shù)候選實體,要求高召回率和高效率.
近年來,基于稠密向量表示的實體檢索模型被廣泛應用于召回階段.在稠密向量檢索模型中,查詢與實體首先被獨立編碼為稠密語義向量,之后在稠密向量空間中通過簡單的相似度函數(shù)(如點乘、余弦、L2),利用K最近鄰(KNearest Neighbor,KNN)或近似近鄰(Approximate Nearest Neighbor,ANN)召回與查詢向量最接近的候選實體.稠密向量檢索模型優(yōu)點如下.1)稠密向量可有效建模查詢與實體的語義相似性,召回率高于傳統(tǒng)精確匹配模型;2)模型中的實體向量可離線計算好后再使用向量索引,可提高在線檢索的效率.
為了有效建模查詢與文檔的語義,當前的稠密向量通常是高維的,導致巨大的計算開銷,消耗大量存儲空間.一方面,稠密向量通常是高維的浮點數(shù)向量,導致計算向量相似度時,浮點運算開銷很大,往往需要昂貴的GPU等設備;另一方面,存儲高維稠密的實體向量需要大量空間.例如:對于英文維基的500萬實體,如果使用1 024維32位浮點向量存儲,需要23 GB的空間,難以部署在存儲受限的小型設備上.因此,壓縮高維稠密向量、加快向量相似度計算,是稠密向量檢索亟需解決的問題.
為了解決壓縮高維稠密向量、加快向量相似度計算的問題,本文分析3個當前較優(yōu)的稠密向量檢索模型——BLINK[13]、LUKE(Language Understanding with Knowledge-Based Embeddings)[14]、MGAD(Multi-granularity Alignments Based Distillation)[15]的實體向量,發(fā)現(xiàn)高維空間中的實體向量分布具有“絕對稀疏、相對稠密” 的特點.絕對稀疏體現(xiàn)在每個象限幾乎不超過一個實體,說明高維向量存在信息冗余.相對稠密體現(xiàn)在相似實體分布在更近的象限里,即向量各維度的正負號更相似,說明象限正負號是一種精煉、可體現(xiàn)相似度的語義特征.
基于上述特點,本文提出二值化的實體檢索方法(簡稱二值檢索),實現(xiàn)壓縮與加速.具體而言,先利用符號函數(shù)(sign)提取向量各維度的正負號,代替原本的高維浮點數(shù)向量,實現(xiàn)二值化壓縮.再使用漢明距離,檢索最近鄰的二值化實體向量,使用布爾運算代替浮點運算,實現(xiàn)相似度計算的加速.
對二值檢索的有效性進行理論分析和實驗驗證.在理論上,當滿足一定前提時,二值檢索等價于乘積量化(Product Quantization,PQ)檢索[16],此時相比浮點值模型,召回的候選實體列表大概率保序,可保證較優(yōu)的檢索性能.首先在實體檢索的AIDA數(shù)據(jù)集[17]上進行實驗,以二值化后效果最優(yōu)的MGAD為例,發(fā)現(xiàn)召回率損失較少,可大幅壓縮實體向量的存儲空間,加速向量相似度計算.進一步,對實體向量的定性、定量分析性實驗驗證方法和理論的正確性.此外,若模型不滿足理論前提導致檢索性能損失較大,可通過隨機升維旋轉(zhuǎn)改善性能.
為了平衡性能與效率,實體檢索通常分為召回和重排序兩個階段.在召回階段,傳統(tǒng)方法是基于BM25[13]或?qū)嶓w別名表[18]的啟發(fā)式檢索方法.然而此類方法依賴于實體名與查詢的精確匹配,當無法精確匹配時,召回率較低.近年來,神經(jīng)網(wǎng)絡被應用于實體檢索任務,取得比啟發(fā)式方法更優(yōu)的檢索性能.在召回階段,常用基于稠密向量的檢索模型.此類模型將查詢、實體獨立編碼為稠密向量,再通過簡單的向量相似度函數(shù)(如點積、L2),使用精確K近鄰或近似K近鄰算法召回K個最相似的實體.
基于稠密向量的檢索模型按實體向量的表示方式不同,大致可分為3類:基于描述的方法、基于上下文的方法、混合式方法.基于描述的方法以BLINK為代表,使用BERT(Bidirectional Encoder Representa-tions from Transformers)[19]將實體描述文本直接編碼為向量.基于上下文的方法以LUKE為代表,從海量上下文中利用實體與其它單詞、實體的共現(xiàn)關系,抽取實體的分布語義向量.混合式方法以MGAD為代表,利用分布語義模型LUKE蒸餾實體描述編碼器,得到的實體向量同時具備描述和上下文的語義.
BLINK、LUKE、MGAD為當前性能較優(yōu)的三個稠密向量實體檢索方法,分別適合在實體描述豐富、實體上下文豐富、實體描述和實體上下文都豐富的場景下訓練實體向量.相比傳統(tǒng)方法,稠密向量模型的語義匹配能力更強,召回率更高,但缺點是時間復雜度和空間復雜度也更高.
二值檢索是使用0、1或±1的離散二值向量表示查詢與實體,然后使用漢明相似度檢索的方法,在圖像檢索和文本檢索中都有應用.按照訓練方式劃分,二值檢索可分為兩類:聯(lián)合優(yōu)化方法和后處理方法.在聯(lián)合優(yōu)化方法中,二值化是與向量的學習過程一起訓練的,以文本檢索任務的BPR(Binary Passage Retriever)[20]為代表.BPR在訓練過程中,使用可微的tanh函數(shù)近似sign函數(shù),訓練接近二值向量的浮點值向量,在推斷時直接使用sign函數(shù)二值化.后處理方法直接使用其它模型訓練好的浮點值向量,對浮點向量進行一些簡單變換后再二值化,以圖像檢索任務的HE-WGC(Hamming Embedding and Weak Geometric Consistency)[21]和ITQ(Iterative Quantiza-tion)[22]為代表.在使用sign函數(shù)二值化前,HE-WGC對稠密向量進行隨機旋轉(zhuǎn),ITQ通過迭代計算將稠密向量旋轉(zhuǎn)至量化誤差最小的方向上,但是兩者并未給出理論上的解釋.在這兩類二值檢索方法中,聯(lián)合優(yōu)化方法的檢索效果更優(yōu),但訓練代價高昂.后處理方法的檢索效果略差于聯(lián)合優(yōu)化方法,但不需要重新訓練模型,可直接在訓練好的模型上應用,泛用性更好.
本節(jié)首先形式化介紹基于稠密向量的召回階段實體檢索,再介紹針對稠密向量的二值化實體檢索.在實體召回階段,給定一個帶上下文的實體提及作為查詢q,目的是從一個大型實體庫E={e1,e2, …,eN}中,召回K個候選實體子集{e1,e2, …,eK},K?N.
基于稠密向量的實體檢索模型結構如圖1所示,首先使用兩個獨立的編碼器將查詢、實體分別編碼為稠密向量,再召回與查詢向量最相似的K個候選實體.
圖1 基于稠密向量的實體檢索模型結構圖
對于查詢q和實體e,對應的稠密向量分別為:
vq=f(q),ve=g(e),
其中f、g表示兩個互相獨立的編碼器.以BLINK為例,f、g都采用BERT,將文本編碼為向量.關于查詢、實體編碼器的更多細節(jié),請參考BLINK、LUKE、MGAD的相關文獻[13-15].
召回過程是利用KNN召回與查詢向量vq相似度最大或距離最小的K個候選實體.記s(·,·)為計算2個向量相似度的函數(shù),KNN召回過程形式化表述為
常用的相似度函數(shù)s(·,·)有點乘相似度、余弦相似度、L2相似度(L2距離取反)等.本文與BLINK、LUKE、MGAD一樣,采用點乘相似度.
稠密向量檢索模型可利用神經(jīng)網(wǎng)絡建模vq、ve的語義相似性,因此召回率超過傳統(tǒng)的精確匹配模型.但是,由于vq、ve通常都是高維浮點值向量,且ve需要預先計算并存儲,當實體數(shù)量很多時,大規(guī)模浮點向量的存儲及相似度計算的開銷很大.為了解決該問題,本文提出二值化的實體檢索方法.
二值化的實體檢索方法(簡稱二值檢索)簡化使用浮點值的稠密向量實體檢索(簡稱浮點值檢索),可壓縮向量存儲空間,加快相似度計算.二值檢索示意圖如圖2所示.
圖2 二值檢索示意圖
對于n維浮點值向量vq∈Rn,ve∈Rn,首先利用符號函數(shù)
獲取每個浮點值的正負號,得到n維二值向量
bq∈{1,-1}n,be∈{1,-1}n.
假設原本每個浮點值需要使用mbit表示(m通常為32或64),而±1使用1 bit即可表示,因此存儲n維浮點向量需要n×mbit,而二值向量只需要nbit,二值化可將存儲壓縮至1/m.
之后可利用漢明相似度sHam計算二值向量bq、be的相似度.定義漢明距離H(b1,b2)為b1∈{1,-1}n,b2∈{1,-1}n中不相同的bit的數(shù)量,則二值向量的漢明相似度sHam、L2相似度sL2、點乘相似度sdot、余弦相似度scos四者都可從漢明距離H計算得到,即
(1)
容易看出,4個相似度是等價的,因此實踐中使用漢明相似度即可.對于現(xiàn)代CPU,漢明距離H可僅用兩條指令計算:
H(b1,b2)=POPCOUNT(XOR(b1,b2)),
其中,XOR為按位異或,POPCOUNT(·)為統(tǒng)計值為1的bit數(shù)量.這兩條指令都是簡單的布爾運算,計算速度快于復雜的浮點運算.
本節(jié)從理論上分析使用二值檢索代替浮點檢索的可行性.首先,當稠密向量滿足前提條件“各維度是均值為0的對稱分布”時,二值化檢索等價于一種特殊的PQ檢索[16].當滿足此前提時,漢明相似度與L2相似度大概率保序,因此相比浮點值檢索,二值檢索的性能損失不大.
首先介紹PQ檢索的原理.PQ檢索首先將高維向量空間劃分為多個低維子空間,對每個子空間上的實體向量集合通過K-means聚類生成k個聚類中心,使用每個子空間上最近的聚類中心代替原本的實體向量(稱為量化).之后分別在每個子空間上,使用查詢向量到實體聚類中心的距離,最后組合這些子空間上的距離,得到一個查詢向量到實體向量的近似距離(稱為量化距離),其中最重要的是K-means聚類與量化距離的計算.
給定n維實體向量的集合{ve}?Rn,先將ve切分為多段獨立的m維子向量的笛卡爾積:
其中,d(·,·)為某種距離函數(shù),如L2距離,ci為使用K-means聚類后的第i個聚類中心.
當各維度是均值為0的對稱分布時,sign函數(shù)二值化等價于m=1,k=2的K-means聚類量化.這種K-means聚類的結果如圖3所示.記左右兩半的均值為±μ,則{c1,c2}=±μ就是K-means收斂時的聚類中心.若使用符號函數(shù)sign代替量化函數(shù)Q,則等價于指定聚類中心{c1,c2}=±1,此時左右兩簇的劃分結果,與以±μ為聚類中心是相同的.
圖3 m=1,k=2的K-means聚類結果
當滿足可使用sign函數(shù)代替量化函數(shù)Q的條件時,漢明距離與對稱的量化距離等價.對稱的量化距離dQ,即對查詢向量vq、實體向量ve都量化后計算的距離定義為
當Q(·)為sign函數(shù),距離d(·,·)為L2距離時,由式(1)有dQ=2H,H為漢明距離,因此dQ與漢明距離等價.
本節(jié)將從理論上分析漢明相似度與L2相似度在Rn上大概率是保序的,所以二值檢索與浮點值的檢索性能相差不大.
若滿足
(2)
或
l1=L2(x,y1),l2=L2(x,y2),
記漢明距離
h1=H(x,y1),h2=H(x,y2).
由于漢明距離等于漢明相似度取反(L2距離同理),于是條件(2)等價于
P(l1≥l2|h1
(3)
利用條件概率,
P(l1≥l2|h1
P(h1
(4)
說明條件(3)成立.
對于漢明距離,給定x、y1,假設滿足h1
對于L2距離,能滿足條件l1≥l2的點y2必須落在以x為球心、|x-y1|為半徑的球里.以圖4的二維空間為例,相比無限的二維空間,落在球內(nèi)的概率趨近于0,因此有
圖4 P(l1≥l2)→0示意圖
P(l1≥l2)→0.
回到式(4),由于左邊
P(h1
右邊
P(h1
于是必須有
P(l1≥l2|h1
式(4)得證,因此漢明相似度到L2相似度大概率保序.
本節(jié)通過實驗驗證sign函數(shù)+漢明距離的二值檢索方案可在檢索性能損失不大時,壓縮實體向量存儲,加快相似度計算.
在實體鏈接的基準數(shù)據(jù)集AIDA[17]上進行實驗.除了BLINK、LUKE、MGAD,還對比如下2個傳統(tǒng)的啟發(fā)式檢索模型:1)Alias Table[18],可預先通過維基百科錨文本收集;2)BM25,使用實體名稱構建索引[13].
每個基于稠密向量的模型分為浮點值、二值化兩種版本.浮點值模型是按官方超參數(shù)在AIDA-train數(shù)據(jù)集上微調(diào)的原版模型,采用點乘相似度.二值化模型直接使用sign函數(shù)對浮點值模型的稠密向量二值化,并使用漢明相似度檢索,該過程不需要訓練.為公平起見,所有模型的實體庫統(tǒng)一限定為LUKE編碼的約50萬英文維基實體.
在AIDA-testB數(shù)據(jù)集上測試模型的檢索性能、計算速度、存儲空間.檢索性能指標包括:MRR(Mean Reciprocal Rank)、Recall@K(K=1,10,30,100),后者簡記為R@K.
實驗平臺的硬件配置如下:Intel(R)Xeon(R)Gold 5117 CPU @ 2.00 GHz,Tesla K80 GPU,12 GB顯存.
各模型檢索性能如表1所示,其中-b表示二值檢索.由表可觀察到,MGAD、BLINK、LUKE的浮點值模型效果優(yōu)于Alias Table和BM25,這顯示稠密向量模型強大的語義匹配能力,并且在3種稠密向量中,使用上下文語義的MGAD和LUKE,效果優(yōu)于完全使用實體描述編碼稠密向量的BLINK.由表還可發(fā)現(xiàn),二值化的BLINK和MGAD都可以保持較高的召回率,其中MGAD在R@10上只損失0.8%,BLINK在R@30上只損失0.9%,這兩個模型二值化后依然性能優(yōu)于啟發(fā)式方法,且二值化MGAD性能甚至優(yōu)于浮點值BLINK.但是,二值化的LUKE性能下降非常嚴重,甚至差于啟發(fā)式檢索.總之,對于部分神經(jīng)檢索模型,二值化檢索可保持較高的檢索性能.
表1 各模型檢索性能對比
對于維度最高且二值檢索性能最優(yōu)的MGAD,在AIDA數(shù)據(jù)集上測試其實體向量的存儲空間及相似度計算速度,結果如表2所示.對于32位浮點的實體向量,二值化存儲可減至1/32,在CPU+內(nèi)存的配置下,相似度計算可加速約1.5倍,甚至快于GPU+顯存的浮點值模型.因此二值檢索可大幅壓縮存儲、加快計算,適合在低資源設備上部署.
表2 AIDA數(shù)據(jù)集上MGAD的效率
4.2.1 定性分析
本節(jié)定性分析BLINK、LUKE、MGAD這3個稠密向量檢索模型中實體向量的分布特點,以及如何利用這些特點實現(xiàn)二值化檢索.
分析三者預訓練好的實體向量.三者的實體都來自英文維基,但編碼的實體數(shù)量不同,最少的LUKE只編碼最高頻約10%實體,最多的BLINK編碼全部實體.此外3種實體向量的維度不同,BLINK為1 024維,MGAD為1 024維,LUKE為256維.本文發(fā)現(xiàn)如下2個特點,并基于這2個特點提出二值檢索方法.
特點1實體向量分布在互不相同的象限里
使用sign函數(shù)提取浮點向量v每維的正負符號,得到n維±1向量b,表示v在n維直角坐標系中所在的象限(n維空間有2n個象限).統(tǒng)計每個模型的實體向量分布在多少個象限里,統(tǒng)計結果如表3所示,表中all表示全量英文維基實體,top表示最高頻的約10%實體.由表可發(fā)現(xiàn):1)盡管3個模型編碼實體向量的方法不同,但對于高頻實體,每個實體向量都分布在不同象限里;2)對于編碼全部實體的BLINK,只有很少的情況下多個實體會出現(xiàn)在同個象限里,即每個象限里幾乎最多只有一個實體.
表3 各模型的實體數(shù)量和向量象限數(shù)量
本文發(fā)現(xiàn),只有在實體描述過于相似的情況下,才會出現(xiàn)一個象限中不止一個實體的現(xiàn)象.具體而言,這種實體可細分為3類:1)維基消歧頁;2)只有名字沒有描述;3)使用一套描述模板批量編寫的實體.這3類罕見情況屬于實體庫的噪聲.此外,實體向量確實都分布在互不相同的象限里,且高維空間本身的象限數(shù)遠多于實體數(shù).例如:256維的LUKE共有2256≈1077個象限,遠多于全量英文維基實體數(shù)(約106),而對于1 024維的BLINK和MGAD,其21024≈10308個象限甚至遠超過全宇宙的原子數(shù)(約1080).因此對于這些高維稠密向量檢索模型,即使每個象限只有一個實體,容量依然足夠大.
該特點說明使用浮點數(shù)的稠密向量存在大量信息冗余,僅保留象限(通過sign函數(shù)得到的二值向量)就可代替原本的浮點向量,從而壓縮存儲空間.
特點2語義相似的實體向量所在象限也更近
進一步分析發(fā)現(xiàn),語義相近的實體會分布在更近的象限里(如象限(1,-1,1)離(-1,-1,1)更近,離(-1,1,1)更遠).下面通過一個可視化的例子加以說明.
本文選擇兩個實體:Java(programming language)和Switzerland,并從MGAD的浮點實體向量中分別選擇3個離它們距離最近的實體向量,得到兩組實體:
{Python(programming language), Java(software platform), Lua(programming language)},
{Switzerland football team,Swiss people,Switzerland in
the Roman era}.
可看出,每個實體都和自己組內(nèi)的實體語義更相似,和另一組實體的語義較遠.
再將這兩組實體向量二值化,可視化效果如圖5所示,圖中每行表示一個1 024維的二值化實體向量(深灰色為1,淺灰色為-1),每列的維度一一對應.±1在各維度上的分布產(chǎn)生“條紋”,2個二值向量的條紋越相似,漢明距離也越小,即象限離得越近.由圖可看出,組內(nèi)語義較近的實體,向量更相似(漢明相似度更大,象限更近),組間語義較遠的實體,向量更不相似(漢明相似度更小,象限更遠).
圖5 語義相似實體向量二值化的可視化效果
基于此特點,可使用計算速度更快的漢明相似度,衡量二值化后實體之間的語義相似度,從而替換原本的浮點值相似度.
4.2.2 定量分析
首先驗證各模型是否滿足二值化的理論前提,即“各維度是均值為0的對稱分布”,發(fā)現(xiàn)對稱分布基本成立(呈現(xiàn)為單峰對稱分布),但均值為0并不總成立.各模型各維度的均值(去除超過±0.15的值)如圖6所示.由圖可發(fā)現(xiàn),只有部分維度的均值在0附近(圖中±0.025內(nèi)),這些維度與理論較符合.考慮到高維向量本身的冗余性,及二值化的MGAD與BLINK召回性能并不差,本文認為,只要“均值接近0的維度足夠多”,就能抵消其余維度的負面影響.
再驗證依據(jù)理論推導的結論,即相似度的保序性.隨機采樣1 000個實體,使用第1種相似度召回k近鄰后,計算有多少鄰居在第2種相似度上保序.取k=3、10、100,并測試漢明相似度(簡記為Ham)、L2相似度(簡記為L2)、余弦相似度(簡記為cos)、點乘相似度(簡記為dot),保序性的實驗結果如表4所示.由表可發(fā)現(xiàn),相似度保序的概率
表4 各模型相似度的保序概率
MGAD > BLINK > LUKE,
該排序與圖6中均值接近0的維度數(shù)量排序以及表5中二值化后的性能損失排序是一致的.此外以保序性最好的MGAD為例,還可發(fā)現(xiàn)除了漢明相似度到L2相似度之外,漢明相似度到余弦相似度、點乘相似度也是大概率保序的,反之余弦相似度、點乘相似度到漢明相似度也大概率保序.
表5 各模型二值化后的性能損失
圖6 各模型的各維度均值
由此通過實驗驗證理論的正確性,得到一個更寬松的結論:當各維度是對稱分布時,只要有足夠多維度的均值接近0,漢明相似度就大概率與L2相似度、余弦相似度、點乘相似度保序,從而保證二值檢索性能損失不大.進一步地,均值接近0的維度越多,保序性越優(yōu),檢索性能損失越小.
從4.1節(jié)和4.2節(jié)實驗中發(fā)現(xiàn),LUKE由于不能較好滿足“有足夠多的維度均值接近0”的理論前提,導致二值化后相似度保序性較差,因此二值檢索效果不佳.受HE-WGC在圖像檢索任務中應用隨機旋轉(zhuǎn)的啟發(fā),發(fā)現(xiàn)對稠密向量隨機升維旋轉(zhuǎn),可以讓更多維度均值接近0,提高二值檢索性能.
給定向量v∈Rn,隨機升維旋轉(zhuǎn)即對v右乘一個隨機正交陣M∈Rn×m,其中m≥n(當m=n時只旋轉(zhuǎn)不升維).旋轉(zhuǎn)可保證稠密向量的內(nèi)積相似度、L2相似度、點乘相似度都不變,而隨機的升維可讓各維度均值更接近0(作為對比,雖然中心化也能令均值為0,但這是一種平移變換,無法保證點乘相似度、余弦相似度不變).具體而言,設稠密向量集合的均值向量為μ,隨機升維旋轉(zhuǎn)不改變μ的模長,且變換后的μ均勻分布在半徑為|μ|的m維球面上,即
(5)
維度m越大,μi的期望越接近0.
本節(jié)通過實驗驗證隨機升維旋轉(zhuǎn)確實可改善LUKE的二值化檢索性能,具體結果如表6所示,表中b-R×n表示維度乘以n倍的隨機升維旋轉(zhuǎn)并二值化.除了浮點值模型以外,其它行的數(shù)值是相對浮點值模型的性能損失.由表可發(fā)現(xiàn):1)即使不升維,只隨機旋轉(zhuǎn)(b-R×1),也可提高二值檢索性能;2)升維的倍數(shù)越大,二值化檢索效果越接近浮點值LUKE,升維16倍時各項指標損失不到1%,已非常接近浮點值模型(由于二值化可壓縮至1/32,即使升維16倍,總存儲空間依然能減半).
表6 對LUKE隨機升維旋轉(zhuǎn)后的二值檢索效果
圖7 LUKE隨機升維旋轉(zhuǎn)后均值分布
圖8 期望的理論值與統(tǒng)計值
對于基于稠密向量的實體檢索模型,它們的實體向量普遍具有2個特點:1)絕大多數(shù)象限中不超過一個向量;2)語義相近實體向量分布在更接近的象限中.因此本文提出二值化的實體檢索方法.使用sign函數(shù)+漢明相似度對實體向量進行二值檢索.對于BLINK和MGAD,該二值檢索方法可保持較高召回率、壓縮實體向量存儲、加快相似度計算.從理論上分析二值檢索方法在一定前提下的正確性.而對于二值檢索效果不佳的LUKE,可通過隨機升維旋轉(zhuǎn)使其更符合理論前提,從而提高檢索性能.今后將嘗試建立更精細的二值檢索理論,此外會聯(lián)合優(yōu)化二值化與稠密向量學習過程,得到更好的二值化表示.