面向圖像分析應(yīng)用的海量樣本過濾方案
在圖像分析應(yīng)用中,海量圖片樣本的有效自動化過濾是一項重要的基礎(chǔ)工作。本文介紹一種基于多重算法過濾的處理方案,能夠自動提取有效圖像樣本,極大減少人工標注的工作量。
背景及問題描述
深度學習技術(shù)在計算機視覺領(lǐng)域取得了巨大的成功,其標志性事件之一就是計算機算法在Imagenet競賽中的目標識別準確率已經(jīng)超過了人類。在學術(shù)圈的創(chuàng)新成果爆發(fā)式涌現(xiàn)的同時,各大企業(yè)也利用深度學習技術(shù),推出了眾多圖像分析相關(guān)的人工智能相關(guān)產(chǎn)品及應(yīng)用系統(tǒng)。這些成果所采用的技術(shù)路線,很多都是利用海量的已標注樣本數(shù)據(jù),在深度神經(jīng)網(wǎng)絡(luò)上訓(xùn)練相應(yīng)的識別或檢測模型。就企業(yè)算法應(yīng)用而言,往往需要根據(jù)實際的應(yīng)用場景,構(gòu)建自己的訓(xùn)練樣本集,以提升算法的有效性。在深度學習大行其道的今天,能夠獲得大量高質(zhì)量標注樣本,更是搭建高效應(yīng)用算法系統(tǒng)的重要前提。一方面,深度學習與傳統(tǒng)算法相比,其突出特征之一就是提供的訓(xùn)練樣本越多,算法的精準性越高;另一方面,盡管無監(jiān)督的深度學習算法在學術(shù)領(lǐng)域也獲得了相當大的進步,但就目前而言,有監(jiān)督的深度學習算法仍然是主流,對于企業(yè)級應(yīng)用更是如此。
其中對于圖像識別類的算法應(yīng)用,通常需要獲得不同類別對象的足量樣本圖像。其樣本來源,可以有四種基本途徑:
- 實地拍攝相關(guān)物品,此類方法效率比較低,適用于類別較少,每類需要大量高質(zhì)量樣本的情況,比如目標檢測;
- 識別對象如果是商品,可以利用其商品主圖,但商品主圖經(jīng)過圖像處理,且較為單一,與實際場景不符;
- 在不同網(wǎng)站通過文本搜索或匹配獲取相關(guān)的網(wǎng)絡(luò)圖像,此類方法可以獲得大量的圖像樣本;
- 通過圖像生成的方式來獲得樣本圖像,比如近年來發(fā)展很快的生成對抗網(wǎng)絡(luò)(GAN),此類方法的前景非??春?,但目前來說在大量不同類別上的效果還有待提升。
圖1 不同渠道獲取的商品圖像樣本示例: a 擺拍,b 主圖,c 網(wǎng)絡(luò)圖像
目前而言,第三種獲取網(wǎng)絡(luò)圖像的方式是常規(guī)采用的樣本收集方案。
網(wǎng)絡(luò)來源的圖像樣本,其存在的一個主要問題是噪聲圖像非常嚴重,如果采用主題詞搜索得到待選圖像集合,里面的不相關(guān)圖像占據(jù)了很大的比例,且來源較為隨機;如果采用電商網(wǎng)站曬單圖作為待選圖像集合,里面同樣包含著發(fā)票、外包裝、聊天紀錄等大量無關(guān)圖像以及頂視圖或近視圖等不合規(guī)圖像。因此必須要對得到的圖像集進行過濾,篩查出其中的噪聲圖像。這種過濾如果用人工進行篩選則過于低效,很難滿足實際要求,應(yīng)該用算法自動篩選為主、人工校驗為輔的方式來實現(xiàn)。本文下面針對這一問題,介紹一種實用的基于多重處理的圖像樣本過濾方法。
思路及技術(shù)步驟
通過網(wǎng)絡(luò)直接得到的圖像樣本集合,一般有以下幾個特點。
- 噪聲圖像可分為:重復(fù)圖像和極相似圖像、常見噪聲圖像、無規(guī)律的雜亂噪聲圖像,各自均占有一定比例;
- 目標樣本圖像也占有一定比例,且相對于噪聲圖像而言,其類內(nèi)相似度較高。
參照以上的問題特點,可以針對性得到一些解決的思路:
- 對于多且雜的噪聲數(shù)據(jù),采取多重處理的方式來逐步篩除。噪聲數(shù)據(jù)類型比較多變,采用單一的方法很難全部加以篩除。根據(jù)其特點加以多輪的粗篩和精篩,逐批的處理不同類型的噪聲數(shù)據(jù),可以降低每個環(huán)節(jié)的技術(shù)風險,保證每個環(huán)節(jié)的有效性。
- 由于目標在樣本空間中分布較為集中,如果對待選樣本集進行無監(jiān)督聚類,目標樣本會集中在較為緊湊的聚類上。相比于噪聲圖像的無序雜亂而言,目標樣本自身的類內(nèi)差距還是比較小的,通過對大量實際數(shù)據(jù)的觀察可以印證這一點。
- 對于某一樣本,分類器返回的類別置信度可以作為樣本與該類別相關(guān)度的度量。普通聚類算法不易量化樣本點與所屬聚類的相關(guān)度,無法做更為精細的樣本篩選。相比之下利用分類器得到的類別置信度,可以作為相關(guān)度的合適度量,用來精細挑選剩余的噪聲樣本。
圖2 技術(shù)方案概要圖
根據(jù)以上的解決思路,設(shè)計出一個多重過濾的技術(shù)方案,其具體流程可分為如下幾個步驟(參見圖2):
- 圖像去重:去除重復(fù)圖像及極相似圖像;
- 常見噪聲圖像過濾:過濾掉人臉、包裝、發(fā)票等無關(guān)的常見類型噪聲圖像;
- 基于聚類的樣本挑選:在深度特征空間上進行聚類,選取合適的聚類作為目標樣本,并將其他聚類作為噪聲圖像去除;
- 基于分類的樣本篩選:利用分類器返回的置信度來評估樣本與相應(yīng)類別的相關(guān)度,進一步篩選樣本。
詳細介紹
圖像去重及常見噪聲圖像過濾
待選樣本集里含有較多的重復(fù)圖像或極相似圖像,可以通過不同的方式去重:提取圖像的直方圖特征向量,利用特征向量之間的相似性進行去重;或者構(gòu)建一個哈希表,提取圖像的簡單顏色和紋理特征,對特征量化后利用哈希表進行查詢,能夠查詢到的就是重復(fù)或極相似圖像,查詢不到的加入表中。前一種方法對于微小差異表現(xiàn)更好,后一種方法的計算性能優(yōu)勢明顯。
待選樣本集里往往會含有一些常見的噪聲圖像模式,比如人臉、紙箱外包裝、發(fā)票、聊天紀錄圖、商品或店鋪Logo圖等,占有相當高的比例。對于這些常見噪聲圖像,先提取其HOG特征,并用提前訓(xùn)練好的SVM分類器對其進行分類。為了保證精度,對于不同類的噪聲圖像,分別訓(xùn)練1vN的SVM分類器,只要圖像判別為其中任一類噪聲圖像,即將其篩出。
以上兩步,只利用了圖像的簡單特征,只能夠去除樣本集里的重復(fù)圖像和常見噪聲圖像,對于更復(fù)雜的噪聲圖像模式,需要利用更有效的圖像特征,并對于復(fù)雜類別采用無監(jiān)督聚類來挖掘。
基于聚類的樣本挑選
要利用圖像本身的豐富信息對其進行聚類,首先需要提取更為豐富的圖像特征。因此可利用深度網(wǎng)絡(luò)模型來提取圖像特征,得到的特征融合了常見的圖像基本特征,并包含了更為高階的圖像語義信息,具有更強的表現(xiàn)能力。這里借助在Imagenet數(shù)據(jù)集上訓(xùn)練得到的網(wǎng)絡(luò)模型,并利用已有的樣本集進行fine-tune,這樣模型對于特定品類的表達能力得到增強。這里對于一個圖像樣本,通過深度網(wǎng)絡(luò)得到的特征是1024維向量,進一步通過PCA降維成256維的特征向量。這樣圖像樣本集就構(gòu)成了一個特征數(shù)據(jù)空間。
接下來,在降維后的特征數(shù)據(jù)空間,利用一種基于密度的聚類算法進行聚類。該算法最突出的特點采用了一種新穎的聚類中心選擇方法,其準則可描述為:
- 聚類中心附近的點密度很大,且其密度大于其任何鄰居點的密度;
- 聚類中心和點密度比它更大的數(shù)據(jù)點,它們的距離是比較大的。
選擇了合適的聚類中心之后,再將各數(shù)據(jù)點分類到離其最近的聚類上,并根據(jù)各點距離相應(yīng)聚類中心的遠近,把它們劃分成核心數(shù)據(jù)點和邊緣數(shù)據(jù)點。
該聚類算法思路簡單,效率較高,并且對于不同的場景具有較好的魯棒性。
在所得的聚類結(jié)果中,進一步選出密度較大且半徑較為緊湊的聚類,其中的樣本作為待選的目標樣本數(shù)據(jù),而其他聚類對應(yīng)的樣本則作為噪聲樣本予以篩除。
基于分類的樣本篩選
以上聚類所得的目標樣本中,可能還含有少數(shù)的不相關(guān)樣本,需要進一步的篩選。這里利用分類器的置信度評估樣本的類別相關(guān)度,其中與所屬類別不相關(guān)或弱相關(guān)的樣本可以進一步去除。
具體方法是從目標樣本中隨機可放回的選取若干樣本,并打上新的類別標簽,作為新的訓(xùn)練樣本,對一個已有的卷積神經(jīng)網(wǎng)絡(luò)模型進行fine-tune,這個卷積神經(jīng)網(wǎng)絡(luò)模型與前面提取特征的網(wǎng)絡(luò)模型必須有一定差異(模型結(jié)構(gòu)和訓(xùn)練數(shù)據(jù)都不同)。利用這個新的模型,對目標樣本進行識別,得到其類別置信度。如果某個樣本在所屬類別上置信度很低,則將該樣本作為不相關(guān)樣本予以篩除。
經(jīng)過以上篩選之后,最終得到的目標樣本經(jīng)過人工簡單校驗,就可以作為高質(zhì)量樣本集用于訓(xùn)練和測試。
應(yīng)用效果
通過對于從網(wǎng)絡(luò)獲取的上萬類別的近500萬樣本圖像進行處理,并由人工校驗算法的篩選結(jié)果。最終所得的目標樣本,總體的類別相關(guān)度達到95%,其中對于較為熱門的類別,樣本相關(guān)度可以達到99%以上,總效率超過人工篩選百倍以上。圖3左邊是篩選得到的目標樣本,右邊是篩除掉的噪聲圖像。
圖3 樣本圖像篩選結(jié)果示例
蘇寧“智能視覺圖譜”是一個綜合性的圖像、視頻相關(guān)算法平臺,其宗旨是為公司內(nèi)外的相關(guān)業(yè)務(wù)場景提供應(yīng)用算法服務(wù)。目前所提供的算法接口包括商品識別、人臉特征分析及人臉驗證、Logo檢測、敏感圖分析、廣告敏感詞分析、圖像摳圖等,分別涉及商品內(nèi)容識別、人臉識別、目標檢測、敏感圖識別、OCR算法、圖像分割及摳圖等算法領(lǐng)域,平臺所支持的算法服務(wù)還在進一步增加中,已有算法的效果與性能也在不斷優(yōu)化,以滿足各種實際應(yīng)用場景的需要。其中較多與識別相關(guān)的算法服務(wù),都需要利用足量樣本數(shù)據(jù)訓(xùn)練高精度的分類器。上文所述技術(shù)方案已廣泛應(yīng)用于當中商品圖像識別、敏感圖識別、Logo識別等應(yīng)用算法的樣本篩選工作,極大的提升了開發(fā)效率,節(jié)省了人力成本,并為高效算法模型的訓(xùn)練提供了可靠的數(shù)據(jù)保障。以商品圖像識別類算法為例,利用以上樣本收集和過濾方式獲得***別的真實圖像樣本,以ResNet模型為架構(gòu),訓(xùn)練出高準確率的商品識別模型,并在此基礎(chǔ)上搭建了面向全品類商品的圖像檢索系統(tǒng),并廣泛應(yīng)用于商品種類識別、基于外形的商品推薦、商品圖像檢索、基于外形相似度的商品匹配等實際業(yè)務(wù)場景。
總結(jié)
在企業(yè)級深度學習圖像應(yīng)用中,海量高質(zhì)量圖像樣本的獲取,是取得優(yōu)異算法性能的重要前提。工程實踐中,在圖像樣本嚴重不足的情況下,僅僅對樣本進行數(shù)據(jù)增強,都可以在測試集上獲得幾個百分點的效果提升,如果能夠增加豐富真實的樣本數(shù)據(jù),對于相應(yīng)類別的識別率提升更是立竿見影,而且泛化性能很好,可以經(jīng)受住各種實際場景的考驗。因此樣本工程(圖像樣本的獲取和挑選)是絕對不能忽視的重要工作,而且需要長期進行下去。不過,“爬圖容易挑圖難”,即使積累了海量樣本數(shù)據(jù),卻因為缺乏有效的處理手段和標注人力而望洋興嘆,這也是經(jīng)常遇到的一種數(shù)據(jù)困境。
本文主要介紹了我們在這個問題上的一種實踐方案,其結(jié)果說明,采用多重過濾的方式,充分利用初級特征、深度特征等特征表達方式和無監(jiān)督聚類、深度分類器等分類方法,就可以從紛繁蕪雜的網(wǎng)絡(luò)圖像中,有效抽取高質(zhì)量的目標樣本。另外,我們也看到深度學習領(lǐng)域在不斷取得新的研究成果,其中無監(jiān)督式的深度學習更符合人類的認知習慣,且對樣本質(zhì)量沒有如此苛刻的要求,該領(lǐng)域理論和技術(shù)的飛速發(fā)展對企業(yè)深度學習應(yīng)用將意味著更為光明的未來。
主要參考文獻:
1. Clustering by fast search and find of density peaks, Science, 2014, 344(6191):1492-6, Alex Rodriguez and Alessandro Laio,.
2. Extracting Visual Knowledge from the Internet, Y Yao,J Zhang,XS Hua,F(xiàn) Shen,Z Tang.
3. Going deeper with convolutions[J]. arXiv preprint arXiv:1409.4842, 2014, Szegedy C, Liu W, Jia Y, et al.
4. Deep Residual Learning for Image Recognition,Computer Vision and Pattern Recognition , 2015 :770-778,K He, X Zhang, S Ren, J Sun.