補充材料在https://openaccess.thecvf.com/content_ICCV_2019/supplemental/Revaud_Learning_With_Average_ICCV_2019_supplemental.pdf
Learning with Average Precision: Training Image Retrieval with a Listwise Loss
Abstract
圖像檢索可以被表述為一個排序問題,其目標是通過降低與查詢的相似性來對數據庫圖像進行排序。最近的深度圖像檢索模型通過利用排序定制損失函數,效果已經超過了傳統方法,但重要的理論和實踐問題仍然存在。首先,它們不是直接優化全局排序,而是最小化基本損失的上限,這並不一定會得到最佳的mean average precision(mAP)。其次,這些方法需要大量的工程努力才能發揮良好的作用,例如,特殊的預訓練和難負樣本采樣。在本文中,我們建議通過利用最近在listwise loss公式上的進展,直接優化全局mAP。使用histogram binning approximation,可以區分AP,從而用於端到端學習。與現有的損失相比,該方法在每次迭代時同時考慮數千張圖像,並消除了使用特殊技巧的需要。它還在許多標准檢索基准上得到了最新效果。模型可見https://europe.naverlabs.com/Deep-Image-Retrieval/.
1. Introduction
圖像檢索包括查找大型數據庫中包含相關內容的所有圖像。這里的相關性是在實例級定義的,檢索通常包括用與查詢中相同的對象實例對數據庫圖像進行排序。這項重要的技術為一些流行的應用程序,如基於圖像的物品識別(例如,時尚物品[12,35,60]或產品[53])和自動個人照片[19]組織提供了基礎。
大多數實例檢索方法依賴於計算圖像簽名,這些簽名對於視點變化和其他類型的噪聲是健壯的。有趣的是,由深度學習模型提取的簽名最近的表現優於基於關鍵點的傳統方法[16,17,46]。這種良好的性能是由於深度模型能夠利用一組非常適合排序問題的損失函數。與以前用於檢索的成功率較低的分類損失相比[3,4,47],基於排序的函數直接對最終任務進行優化,強制執行類內區分和更細粒度的實例級圖像表征[17]。到目前為止,排序損失可以考慮圖像對 [45], triplets [17], quadruplets [10], or n-tuples [52]。它們的共同原則是子采樣一組小樣本圖像,驗證它們局部是否符合排序目標,如果不符合則進行小的模型更新,重復這些步驟直到模型收斂。
盡管它們很有效,但重要的理論和實踐問題仍然存在。特別地,它已經表明,這些排名損失是一個稱為本質損失[34]的量的上界,而本質損失[34]又是一個標准檢索度量的上界,如mean average precision(mAP)[33]。因此,優化這些排名損失並不能保證得到同樣優化mAP的結果。因此,沒有理論保證這些方法在實際系統中產生良好的性能。也許是出於這個原因,要獲得好的結果需要很多技巧,比如分類預訓練[1,17],組合多重損失[9,11],以及使用復雜的硬負樣本挖掘策略[14,20,37,38]。這些工程啟發式算法涉及到額外的超參數,而且實現和調優都非常復雜[24,58]。
在本文中,我們研究了一種新的排序損失,它通過直接優化mAP來解決這些問題(見圖1)。它不是一次只考慮幾張圖片,而是同時優化成千上萬張圖片的全局排序。這實際上使前面提到的技巧變得沒有必要,同時又提高了性能。具體來說,我們利用了listwise loss函數的最新進展,該函數允許使用柱狀圖binning[23,24,58]重新制定AP。AP通常是非光滑的,不可微的,不能在基於梯度的框架中直接優化。然而,直方圖binning(或soft-binning)是可微的,可以用來替代AP中不可微的排序操作,使其服從於深度學習。He等人[24]最近在基於該技術的patch驗證、patch檢索和圖像匹配方面取得了突出的成果。
在這項工作中,我們遵循相同的路徑,並提出了一種直接為mAP優化的圖像檢索方法。為了達到這個目的,我們訓練了大量的高分辨率圖像,這些圖像通常會大大超過GPU的內存。因此,我們引入了一個優化方案,使訓練可行的任意批大小,圖像分辨率和網絡深度。綜上所述,我們作出了三大貢獻:
- 我們首次提出了一種利用listwise排序損失直接優化mAP的圖像檢索方法。它依賴於一個專門的優化方案,可以處理任意圖像分辨率和網絡深度的超大批處理數據。
- 通過對損失的ceteris paribus分析,我們展示了在編碼工作量、訓練預算和最終性能方面使用listwise損失的許多好處。
- 對於可比的訓練集和網絡,我們的表現超過了最先進的結果。
本文組織如下:第2節討論相關工作,第3節描述提出的方法,第4節提出實驗研究,第5節提出我們的結論。
2. Related work
早期的實例檢索工作依賴於局部patch描述符(例如,SIFT[36]),使用bag-of-words表征[13]或更精細的方案進行聚合[15,18,55,29],以獲得圖像級的簽名,然后可以相互比較,以找到它們的最接近匹配。最近,利用CNN提取的圖像特征已經成為一種替代方法。雖然最初的工作使用了從預先訓練分類的現成網絡中提取的神經元激活[3,4,45,47,56],但后來的研究表明,可以使用siamese網絡以端到端方式專門為實例檢索任務訓練網絡[17,46]。關鍵是利用優化排名的損失函數而不是分類的損失函數。這類方法代表了使用全局表征進行圖像檢索的最新技術[17,46]。
圖像檢索確實可以看作是一個學習排序問題[6,8,34,57]。在這個框架中,任務是確定訓練集中的元素應該以何種(部分)順序出現。采用度量學習和適當的排序損失相結合的方法求解。圖像檢索中的大多數工作都考慮了pairwise(例如contrastive[45])或tuplewise(例如triplet-based[16,50],基於n-tuple-based[52])的損失函數,我們稱其為局部損失函數,因為它們在計算梯度之前作用於固定且有限數量的例子。對於這種損失,訓練包括對隨機且困難的成對或三個一幅圖像進行重復采樣,計算損失,並反向傳播其梯度。然而,一些研究[14,24,27,40,48]指出,適當地優化局部損失可能是一項具有挑戰性的任務,原因有幾個:首先,它需要一些特殊的預先操作,如分類的預訓練模型[1,17]、要結合幾種損失[9,11],並通過挖掘hard或semi-hard的負樣本來偏置圖像對的采樣[14,20,37,38]。除了不平凡之外[21,51,59],挖掘困難的例子通常是很費時的。到目前為止,另一個被忽視的主要問題是局部損失函數只優化真實排序損失的上界[34,58]。因此,沒有理論保證損失的最小值實際上對應於真實排名損失的最小值。
在本文中,我們采用不同的方法直接優化mean average precision (mAP)度量。雖然AP是一個非光滑且不可微的函數,但He等人[23,24]最近表明,它可以根據[58]中提出的直方圖binning(也用於[7])的可微逼近來逼近。這種方法與基於局部損失的方法有根本不同。在[34]中,使用直方圖近似來映射的方法叫做listwise,因為loss函數同時取一個數量不定(可能很大)的例子,共同優化它們的排名。He等人引入的AP損失[23]是特別定制的,用於處理在圖像哈希環境中自然發生的與漢明距離相關的得分關系。有趣的是,同樣的公式在[24]的patch匹配和檢索中也被證明是成功的。然而,它們的關聯感知公式提出了重要的收斂問題,並需要幾種近似才能在實踐中使用。相比之下,我們提出了一個簡單的公式的AP損失是穩定的,表現更好。我們將其應用於圖像檢索,這是一個相當不同的任務,因為它涉及到具有顯著的雜亂背景、大視點變化和更深的網絡等影響的高分辨率的圖像。
除了[23,24]之外,文獻中還提出了幾種可替代得公式,以便直接優化AP[5,22,24,26,39,54,61]。Yue等人[61]提出在使用線性支持向量機的結構化學習框架下,通過[22]損失增廣推理問題來優化AP。Song等人[54]隨后將該框架擴展到與非線性模型一起工作。然而,兩種工作都假設在結構化支持向量機公式中損失增廣推理中的推理問題能夠被有效地解決。此外,他們的技術需要使用動態編程的方法,這需要改變優化算法本身,使其通用的應用復雜化。直到最近,AP損失才被用於任意學習算法訓練的深度神經網絡的一般情況[24,26]。Henderson和Ferrari[26]直接對AP進行優化,用於目標檢測,He等[24]對patch驗證、檢索和圖像匹配進行優化。
在圖像檢索方面,必須清除額外的障礙。直接優化mAP確實會帶來內存問題,因為在訓練和測試時通常使用高分辨率圖像和非常深的網絡[16,45]。為了解決這個問題,智能多階段反向傳播方法已經被開發用於圖像triplets[17]的情況下,我們表明,在我們的設置中,可以利用稍微更精細的算法來實現同樣的目標。
3. Method
本節將介紹基於AP的訓練損失的數學框架以及我們針對高分辨率圖像所采用的適應訓練程序。
3.1. Definitions
我們首先定義下面公式的數學標識。表示圖像空間,
表示C維空間的單位超平面,即
。使用深度前向網絡
抽取圖像embedding,其中
表示網絡中可學習的參數。我們假設
配備了L2歸一化輸出模塊,所以embedding
有着單位范數。這兩個圖像的相似度能夠自然地在embedding空間,使用cosine相似度來評估:
我們的目標是對每個給定的查詢圖像,訓練參數
去排序其與來自一個大小為N的數據集
的每張圖的相似度。通過我們網絡的一個前向傳播來計算關於所有圖像的embedding,每個數據庫項與查詢圖像的相似度
使用等式(1)在embedding空間中被有效測量,其中
。然后數據庫圖像根據他們的相似度反向排序。讓
表示排序函數,其中
是第i高的
值的索引。經過擴展,
表示數據庫索引的排序列表。排序
的質量能夠根據ground-truth圖像相關性來進行評估,在
中表示為
,其中如果數據庫中的圖像
與查詢圖像
相關,則
為1;否則為0。
排序評價是用信息檢索(IR)指標之一進行的,如mAP, F-score和discounted cumulative gain。在實踐中(盡管存在一些缺點[32]),當ground truth標簽是二進制的時候,AP已經成為IR事實上的標准度量。與召回率或F-score等其他排名指標相比,AP不依賴於閾值、排名位置或相關圖像的數量,因此使用起來更簡單,更善於針對不同的查詢進行泛化。我們可以將AP寫成帶有和
的函數:
其中是排序k個圖像的精確度,即在排序的前k位中與查詢圖像q相關的項的比例,如下:
表示的是從排序k-1到k的增量召回(incremental recall),即在排序k個圖像中發現的總
相關項的比例,如下:
其中表示指示函數
3.2. Learning with average precision
理想情況下,的參數應該使用隨機優化來訓練,這樣能夠在訓練集中最大化AP。對於原始AP公式來說這是不靈活的,因為使用了指示函數
。具體來說,函數
在
時有導數,在
時導數沒定義。因此該導數沒有為優化提供信息。
受直方圖[58]的listwise loss啟發,最近提出了一種計算AP的替代方法,並應用於描述符哈希[23]和patch匹配[24]的任務。關鍵是通過對AP進行松弛訓練,通過將hard賦值替換為函數
來獲得AP,函數
的導數可以向后傳播,它將soft賦值相似度值到固定數量的桶中。在這一節中,為了簡單起見,我們幾乎在任何地方都將可微的函數稱為可微的。
Quantization function. 對於一個給定的正整數M,我們將間隔[-1,1]分區成M-1個等量的間隔,每個大小為且(從左到右)被bin中心
限制,其中
。在等式(2)中,我們在
中每k個排序中評估精確度和增量召回。我們松弛訓練的第一步是在每個bin中計算:
第二步是使用soft賦值作為指示函數的替代函數。與[23]相似,我們定義函數為,每個
是集中在bm的三角核且寬度為
,即:
是一個x的soft binning,當
時趨近指示函數
,同時對於x可微:
通過擴展標識,是
中的一個向量,用於指示到bin
的
的soft 賦值。
因此,的量化
是指示函數的一個平滑的替代。它允許我們重計算精確度和增量召回的近似值來作為量化函數,如之前等式(3)和(4)所示那樣。因此,對於每個bin m,量化精確度
和增量召回
可計算為:
最后的量化平均精確度,表示為,這是一個關於
的平滑函數,如下:
Training procedure. 訓練過程和損失都定義如下。表示標簽為
的一個batch的圖像,然后
是它們相關的描述符。在每個訓練迭代中,我們計算每個batch的平均
。對於該目標,我們考慮batch圖像的每個圖像為潛在的查詢圖像,並將其與其他batch圖像比較。對於查詢圖像
的相似度分數被定義為
,即與圖像
的相似度。同時,用
表示相關的二進制ground-truth,其中
。我們計算量化mAP,使用
表示,對於batch數據如下表示:
因為我們想要在訓練集中最大化mAP,所以很自然地將損失定義為
3.3. Training for high-resolution images
He等人[24]已經表明,在patch檢索的情況下,對於大batch size的patch可以達到最佳性能。在圖像檢索中,同樣的方法不能直接應用。實際上,批處理占用的內存要比patch占用的內存大幾個數量級,這使得反向傳播在任意數量的gpu上都很難處理。這是因為(i)通常用高分辨率圖像訓練網絡,(ii)實際使用的網絡要大得多(ResNet-101有大約44M的參數,而[24]中使用的L2-Net僅有大約26K的參數)。在訓練和測試[17]時,使用高分辨率圖像進行訓練對於取得良好的性能是至關重要的。通常,輸入到網絡的訓練圖像分辨率約為1Mpix(與[24]中的51×51 patch相比)。
通過利用鏈式法則(chain-rule),我們設計了一個多階段的反向傳播,解決了這個內存問題,並允許訓練一個有着任意深度、任意圖像分辨率和batch size的網絡,且不近似損失。該算法如圖2所示,分為三個階段。
在第一階段,我們計算一個batch的所有圖像的描述符,丟棄內存中的中間張量(在評估模式下進行該操作,即設置net.eval(),因為這里不需要后向傳播。我看代碼,感覺這個中間參數是即輸入的圖像數據,即圖像輸入網絡得到描述符后,就將其從內存中刪除,即del img,因為第三步中還要再算一遍並存儲)。在第二階段,我們計算分數矩陣S (等式1)和損失
,並計算損失關於描述符的梯度
。換句話說,我們在進入網絡之前停止反向傳播(即這里就是得到描述符的梯度,沒有更新網絡參數)。由於所考慮的所有張量都是緊湊的(描述符、分數矩陣),這個操作只消耗很少的內存。在最后一個階段,我們重新計算圖像描述符,這次存儲中間張量(即輸入圖像img不從內存刪除)。由於此操作(即網絡計算描述符的操作)占用大量內存,因此我們將逐個圖像執行此操作。給定圖像
的描述符di,以及描述符的梯度
,我們就能夠繼續網絡的后向傳播了(可見這里就是將計算損失梯度和梯度后向傳播更新兩步拆開了,第二階段得到的描述符的梯度對應的就是第三階段計算的描述符,因為網絡沒有變化,所以描述符還是相同的,所以梯度和描述符是對應的。第二階段的作用就是能夠計算每個圖像與其他batch_size-1個圖像的相似度和損失,然后用於第三階段去更新參數)。然后累積每張圖像的梯度,最后用來更新網絡權重(就是一張張圖像地去更新網絡參數,求得的關於參數的梯度一張張加起來,等所有圖像都更新后再將累積的更新梯度用來更新網絡參數,而不是一張圖計算后就更新)。多階段后向傳播的偽碼可在補充材料中找到。
4. Experimental results
我們首先討論實驗中使用的不同數據集。然后我們在這些數據集上報告了實驗結果,研究了提出的方法的關鍵參數,並與目前的研究狀況進行了比較。
4.1. Datasets
Landmarks. 原始的地標數據集[4]包含213,678張圖像,分成672個類。然而,由於這個數據集是通過查詢搜索引擎半自動創建的,因此它包含大量錯誤標記的圖像。在[16]中,Gordo等人提出了一種自動清理流程來清理該數據集以用於他們的檢索模型,並將清理后的數據集公開。這個Landmarks-clean數據集包含42,410張圖像和586個地標,我們在所有實驗中都使用這個版本來訓練我們的模型。
Oxford and Paris Revisited. Radenović等人最近修訂了Oxford [42] 和Paris [43] 建築數據集,更正了注釋錯誤,增加他們的大小,為他們提供新的評估協議[44]。Revisited Oxford (ROxford)和Revisited Paris (RParis)數據集分別包含4,993和6,322張圖片,每一張圖片都有70張圖片作為查詢(例如圖3的查詢樣本)。這些圖像進一步根據識別所描述的地標的難度進行標記。然后這些標簽被用來為這些數據集確定三種評估協議:簡單,中等和困難。可以選擇的是,可以向每個數據集添加一組100萬張干擾圖像(R1M),以使任務更加真實。由於這些新數據集本質上是原始Oxford和Paris數據集的更新版本,具有相同的特征但更可靠的ground-truth,我們在我們的實驗中使用這些重新修訂的版本。
4.2. Implementation details and parameter study
我們使用隨機梯度和Adam[31]在公共Landmarks-clean數據集[16]上訓練我們的網絡。在所有的實驗中,我們使用預先在ImageNet[49]上訓練的ResNet-101[25]作為主干。我們附加了一個generalized-mean(GeM)層[46],它最近被證明比R-MAC池更有效[17,56]。GeM的能量是通過沿其他權重的反向傳播來訓練的。除非另有說明,我們使用以下參數:我們設置權重衰減為10−6,並應用標准數據增強方法(例如,顏色抖動、隨機縮放、旋轉和裁剪)。訓練圖像裁剪成800×800的固定大小,在測試時,我們將原始圖像(未縮放、未扭曲)輸入網絡。我們在測試時嘗試使用多種尺度,但沒有觀察到任何顯著的改善。由於我們在單一尺度上操作,這本質上使我們的描述符提取比最先進的方法快3倍[17,44],對於一個可比的網絡骨干。根據不同的實驗研究,討論了其他參數的選擇。
Learning rate. 我們發現,不導致分歧的最高學習率會得到最好的結果。我們使用從10-4開始的線性衰減率,在200次迭代后下降到0。
Batch size. 正如[24]指出的那樣,我們發現更大的batch size會產生更好的結果(見圖5)。在4096之后,性能會達到飽和,訓練速度也會顯著減慢。在隨后的所有實驗中,我們使用B = 4096。
Class sampling. 我們通過從每個數據集類中隨機采樣圖像來構建每個batch(因此所有類都在單個batch中出現)。我們也嘗試了對類進行抽樣,但沒有觀察到任何差異(見圖6)。由於數據集不平衡,某些類在batch級別經常被過度表示。為了平衡這種情況,我們在等式12)中引入一個權重,以平等地對batch中的所有類進行加權。我們訓練了有和沒有這個(加權)選項的兩個模型,結果如圖7所示。類權重在mAP上的提升約為+2%,顯示了這種平衡的重要性。
Tie-aware AP. 在[23]中,一個關聯感知(tie-aware)的mAPQ損失版本被開發用於對整數值漢明距離進行排序的特定情況。[24]對實數值歐幾里得距離使用相同版本的AP。我們使用簡化的關聯感知AP損失(參見[23]的附錄F.1)來訓練模型,除了原始的mAPQ損失外,還用mAPT表示。我們寫的mAPT類似於等式(11),但用一個更精確的近似代替精度:
圖8顯示了mAP上的絕對差值。我們發現,直接由AP定義推導出來的mAPQ損失始終比關聯感知公式的表現好,差距雖小,但非常顯著。這可能是由於在實際實現中使用的關聯感知公式實際上是理論關聯感知AP的近似值(參見[23]中的附錄)。我們在隨后的所有實驗中都使用了mAPQ損失。
Score quantization.我們的mAPQ損失取決於等式(7)中量化bin M的數量。我們在圖4中繪制了不同M值下的性能。與之前的研究結果一致[24,58],該參數對性能的影響很小。在所有其他實驗中,我們使用M = 20量化bins。
Descriptor whitening. 因為這是一種常見的做法[28,44],我們在評價之前白化我們的描述符。首先,我們從地標數據集中提取的描述符學習PCA。然后,我們使用它來歸一化化每個基准數據集的描述符。在[28]中,我們使用平方根的主成分分析。我們在隨后的所有實驗中都使用了白化。
4.3. Ceteris paribus analysis
在本節中,我們將更詳細地研究使用提議的listwise損失相對於最先進的損失的好處。為此,我們將我們的方法中提出的mAPQ損失替換為[17]中描述的triplet損失(TL)和hard negative mining(HNM)(即一個batch使用64個triplets)。然后我們對模型進行重新訓練,保持管道的一致性,並分別重新調整所有超參數,如學習率和權值衰減。收斂后的性能如表1的前兩行所示。我們實現的triplet損失,表示為“GeM (TL-64)”,與[17]效果相當或更好,這可能是由於從R-MAC切換到GeM池化方法[46]。更重要的是,我們觀察到在使用提議的mAPQ損失(效果優化高達3% mAP)時,即使沒有采用hard negative mining方案,也有顯著的改進。我們強調,使用更大的batches(即在更新模型之前看到更多的triplets)進行訓練,如GeM (TL-512)和GeM (TL-1024),並不能提高性能,如表1所示。注意,TL-1024對應於每個模型更新看到1024×3 = 3072個圖像,這大致相當於我們的mAPQ損失的一個batch size B = 4096。這表明mAPQ損失的良好性能不僅僅是因為使用了更大的訓練batches。
我們也在表1中顯示每個方法相對於基本實現的訓練工作(后向和前向傳播的數量,更新的數量,總訓練時間)以及超參數的數量和額外的代碼行數(更多的細節見補充材料)。正如可以觀察到的,我們的方法導致的權重更新比使用局部損失時要少得多。它還會顯著減少前向和后向傳遞。這支持了我們的主張,即同時考慮所有圖像的列表損失是更有效的。總的來說,我們的模型的訓練速度是triplet損失的三倍。
這些方法還可以根據所涉及的工程量進行比較。例如,hard negative mining很容易需要數百個額外的行,並附帶許多額外的超參數。相比之下,提出的backprop方法的PyTorch代碼僅僅多了5行的代碼,AP損失本身可以在10行內實現,且我們的方法只需要2個超參數(bins的數量和batch size B),有安全的defaults和對變化不是很敏感。
4.4. Comparison with the state of the art
現在我們將通過我們的模型得到的結果與最先進的結果進行比較。表2的上半部分總結了4.1節中列出的數據集在沒有查詢擴展情況下的最佳性能方法的性能。我們使用[44]的標識,因為這有助於我們闡明每種方法的重要點。主要來說,就是將generalized-mean pooling [46]用GeM表示,R-MAC池[56]用R-MAC表示。用於訓練模型的損失函數類型為:contrastive損失用(CL)表示,triplet損失用(TL)表示,mAPQ損失用(AP)表示,如果不使用損失(即現成的特征)用(O)表示。
總的來說,我們的模型在大多數數據集和協議上的性能比最先進的水平高出1%到5%。例如,我們的模型比ROxford和RParis的hard協議[46]的最佳報告結果領先4個百分點以上。這是值得注意的,因為我們的模型在測試時使用單一尺度(即原始測試圖像),而其他方法通過匯集在幾個尺度上計算的圖像描述符來提高性能。此外,我們的網絡不經過任何特殊的預訓練步驟(我們用ImageNet-trained初始化我們的網絡),這也是與大多數先進的競爭對手不同的點。根據經驗,我們觀察到mAPQ的損失使這些訓練前的階段變得過時。最后,訓練時間也大大減少:在一個P40 GPU上從零開始訓練我們的模型需要幾個小時。我們的模型將在接受后公開供下載。
我們還在表2的底部使用查詢擴展(QE)並報告結果,這是文獻[2,17,44,46]中的常見做法。我們使用了α-weighted版本[46],即α= 2和k = 10的最近鄰。在8個協議中,我們的QE模型在6個協議中優於其他同樣使用QE的方法。我們注意到,我們的結果與Noh等人[41]提出的基於局部描述符的方法相當。盡管我們的方法依賴於全局描述符(因此缺乏任何幾何驗證),但在沒有額外干擾的情況下,它仍然比它在ROxford和RParis數據集上表現更好。
5. Conclusion
在本文中,我們提出了一種應用於圖像檢索任務的排序損失。我們直接優化mAP的可微寬松版本,我們稱之為mAPQ。與用於此任務的標准損失函數相比,mAPQ不需要對圖像樣本進行昂貴的挖掘或仔細的預訓練。此外,我們使用多階段優化方案有效地訓練我們的模型,該方案允許我們在任意批大小的高分辨率圖像上學習模型,並在多個基准中獲得最先進的結果。我們相信我們的發現可以通過展示目標度量中優化的好處來指導更好的圖像檢索模型的發展。我們的工作還鼓勵了對實例級以外的圖像檢索的探索,因為我們利用了一種度量,這種度量可以同時從任意大小的排序列表中學習,而不是依賴於本地排序。