作者 | Zhi Gao 編輯 | 唐里 本篇文章是AI 科技評(píng)論 AAAI 2020 論文系列解讀第 01 篇 本文對(duì)北京理工大學(xué)、阿里文娛摩酷實(shí)驗(yàn)室合作的論文《RevisitingBilinear Pooling: A coding Perspective》進(jìn)行解讀,該論文發(fā)表在AAAI 2020,本文首先證明了常用的特征融合方法——雙線性池化是一種編碼-池化的形式。從編碼的角度,我們提出了分解的雙線性編碼來融合特征。與原始的雙線性池化相比,我們的方法可以生成更加緊致和判別的表示。 一、研究動(dòng)機(jī) 在各種計(jì)算機(jī)視覺及人工智能任務(wù)中,特征融合是一個(gè)不可或缺的模塊。例如,在圖1(a) 的人工智能解說球賽的應(yīng)用中,當(dāng)觀眾提問“圖中穿黃色球衣的球員是誰?”時(shí),模型需要將圖像特征和文本特征融合成一個(gè)全局表示,分類器對(duì)全局表示進(jìn)行分類,得到答案。對(duì)于圖1(b) 中的細(xì)粒度鳥類識(shí)別應(yīng)用,通常的做法是首先對(duì)圖像提取局部特征,之后將局部特征融合成全局表示并進(jìn)行分類。因此,特征融合及其生成的全局表示直接影響了模型在計(jì)算機(jī)視覺和人工智能任務(wù)上的性能。 圖1 (a) 人工智能解說球賽 圖1 (b) 細(xì)粒度鳥類識(shí)別 常見的特征融合方法包括詞袋模型 (BoW),Vector of Locally Aggregated Descriptor (VLAD) 模型和Fisher Vector (FV) 模型等。最近的研究顯示,雙線性池化 (BilinearPooling) 是一個(gè)更有效的特征融合方法,它已經(jīng)被廣泛應(yīng)用于各種計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)任務(wù) [1-4]。雙線性池化通過建模特征的高階統(tǒng)計(jì)信息來捕獲特征之間的關(guān)系,進(jìn)而生成具有表達(dá)力的全局表示。然而,雙線性池化仍然存在兩個(gè)問題。第一,雙線性池化生成的表示含有大量的信息冗余(redundancy)。第二,雙線性池化具有突發(fā)性(burstiness)的問題,降低了表示的判別力。 在這篇論文中,作者首先證明了雙線性池化是一個(gè)基于相似性的編碼—池化框架。從這個(gè)新的角度,作者分析了雙線性池化中冗余和突發(fā)性問題的本質(zhì),并提出了分解的雙線性編碼來生成緊湊且有判別力的表示。 二、方法 2.1雙線性池化的編碼—池化框架 雙線性池化方法[1]的形式是 其中是雙線性池化生成的矩陣表示,將Z向量化得到z作為全局表示。在本文中,作者證明了雙線性池化是一個(gè)基于相似性的編碼—池化框架。全局表示z可以寫成 其中, B是字典,雙線性池化計(jì)算雙線性特征和字典元的內(nèi)積相似度。由相似度構(gòu)成的編碼通過一個(gè)求和池化 (SumPooling) 聚合成全局表示z。 在上述的編碼—池化框架下,有三個(gè)的性質(zhì)影響了雙線性池化的性能: (1)雙線性特征是秩為1的矩陣,含有大量的信息冗余; (2)字典B由輸入的雙線性特征決定。因此對(duì)不同的輸入進(jìn)行編碼所使用的字典不同; (3)將雙線性池化用于多模態(tài)任務(wù)時(shí),字典元共線,這影響了表示z的判別力。 2.2 分解的雙線性編碼 從編碼的角度,作者提出了分解的雙線性編碼(FBC)融合特征。作者將基于相似性的編碼替換成為稀疏編碼 (Sparse Coding),激活盡可能少的字典元并保持盡可能多的信息。與原始的雙線性池化相比,分解的雙線性編碼學(xué)習(xí)一個(gè)全局字典進(jìn)行編碼,提高了z的判別力。 對(duì)高維的雙線性特征直接編碼很容易引入大量的參數(shù)。為了避免這個(gè)問題,作者將字典元進(jìn)行分解,通過最小化如下目標(biāo)函數(shù)獲得編碼 其中每一個(gè)字典元被分解成了兩個(gè)矩陣和的乘積,矩陣分解的秩遠(yuǎn)小于雙線性特征的維度。通過LASSO算法和參數(shù)替換策略,上式可以解得 其中和是替換后的參數(shù)。作者使用最大值池化(Max Pooling)將獲得的編碼聚合成全局表示z 分解的雙線性編碼與原始的雙線性池化相比,減少了大量的內(nèi)存消耗。例如在視覺問答任務(wù)中,文本特征的維度p=1024,視覺特征的維度q=2048,答案有3000個(gè)類別。使用雙線性編碼需要存儲(chǔ)個(gè)參數(shù)。如果首先計(jì)算雙線性特征,并使用非分解的編碼方案,其中字典元的個(gè)數(shù)k=1000,則需要存儲(chǔ)的參數(shù)量為。與這兩種方案相比,分解的雙線性編碼不需要直接計(jì)算高維的雙線性特征,且字典元的空間復(fù)雜度由減少為。在具體實(shí)施中,矩陣分解的秩被設(shè)置為r=5,因此分解的雙線性編碼只需要存儲(chǔ),約等于個(gè)參數(shù),減少了模型的參數(shù)量。 分解的雙線性編碼可以比較靈活地應(yīng)用到各種視覺任務(wù)中。例如,圖像分類和視覺問答任務(wù),網(wǎng)絡(luò)結(jié)構(gòu)如圖2(a) 和圖2(b)所示。分解的雙線性編碼的模塊結(jié)構(gòu)如圖2(c)所示。 三、實(shí)驗(yàn) 3.1 性能比較 這篇論文在圖像分類數(shù)據(jù)集DTD、 Indoor、 MINC、 CUB和視覺問答任務(wù)的VQA 2.0數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如表1和表2所示,分解的雙線性編碼與已有的基于高階統(tǒng)計(jì)信息的方法進(jìn)行了比較。實(shí)驗(yàn)結(jié)果顯示,在這兩個(gè)任務(wù)中,分解的雙線性編碼可以生成緊湊且有判別力的全局表示。 表1在圖像分類數(shù)據(jù)集上各方法的比較結(jié)果 表2在視覺問答數(shù)據(jù)集上各方法的比較結(jié)果 3.2可視化 在論文中,作者可視化了雙線性池化和分解的雙線性編碼的特征分布,如圖3所示。與雙線性池化相比,分解的雙線性編碼產(chǎn)生的特征更具有判別力,特征分布具有更小的類內(nèi)散度和更大的類間散度。 四、總結(jié) 這篇論文證明了雙線性池化是一種基于相似性的編碼—池化框架,并從編碼的角度提出了一種分解的雙線性編碼方法。分解的雙線性編碼可以解決雙線性池化的冗余問題并生成緊湊的表示。分解的雙線性編碼避免了對(duì)高維雙線性特征的顯式計(jì)算,并且將所需參數(shù)的空間復(fù)雜度從降低為。同時(shí),分解的雙線性編碼可以克服突發(fā)性問題。實(shí)驗(yàn)顯示,與基于高階統(tǒng)計(jì)信息的方法相比,分解的雙線性編碼生成的表示更有判別力,在圖像分類和視覺問答任務(wù)上的性能超過了一些最新的方法。 參考文獻(xiàn) [1] Lin,T.-Y.; RoyChowdhury, A.; and Maji, S. Bilinear cnn models for fine-grainedvisual recognition. In Proceedings of the IEEE International Conference onComputer Vision (ICCV), 1449– 1457, 2015. [2] Gao, Y.;Beijbom, O.; Zhang, N.; and Darrell, T. Compact bilinear pooling. InProceedings of the IEEE Conference on Computer Vision and Pattern Recognition(CVPR), 2016, 317–326. [3] Fukui, A.;Park, D. H.; Yang, D.; Rohrbach, A.; Darrell, T.; and Rohrbach, M. Multimodal compactbilinear pooling for visual question answering and visual grounding. arXivpreprint arXiv:1606.01847. [4] Li, Y.;Wang, N.; Liu, J.; and Hou, X. Factorized bilinear models for imagerecognition. In Proceedings of the IEEE International Conference on ComputerVision (ICCV), 2017, 2079–2087. |
|