白少進,白 靜,2,司慶龍,姬 卉,袁 濤
1.北方民族大學 計算機科學與工程學院,銀川 750021
2.國家民委圖形圖像智能處理實驗室,銀川 750021
隨著計算機輔助設計技術和計算機圖形學的快速發展,三維模型的數量與日俱增,三維模型的識別問題也變得日益復雜,出現了多樣化的分類需求[1-3]。現有研究主要聚焦于一般性的三維模型分類,無法滿足多樣化分類需求;而部分針對特定需求設計的分類工作也只能適應相應任務。如何構建普適性三維模型分類框架,以使其適應不同需求的分類任務具有相當的挑戰性。
深度學習技術能讓機器自動學習客觀對象的多層抽象和表示,從而理解各類復雜對象的內在含義,在計算機視覺等領域得到了廣泛應用并取得了突出成效。隨著ModelNet[4]、SHREC2015[5]等大型三維模型數據集的相繼出現,在該領域也涌現出一系列深度學習的新算法[6-17]。然而,這些深度學習模型旨在完成元類型的識別,且假定測試樣本和訓練樣本的類別相同;當遇到特定需求,往往需要額外設計特定的模塊來輔助網絡進行特征提取。如,在細粒度分類[1]中需要設計局部特征提取模塊以捕捉不同類型之間的局部差異,在零樣本學習[3]中需要設計特定的關聯模塊以實現已知類到未知類的知識遷移。隨著三維模型數量以及應用需求的不斷增加,針對每種需求設計全新的網絡無疑是耗時耗力,且十分困難的。
聚焦于以上問題,本文提出一種面向多樣化分類任務的深度集成學習模型,在傳統深度神經網絡的基礎上,加入集成模塊,對網絡初始決策進行再學習,根據任務需求的不同,使網絡具有相應特征的提取能力;并針對性地提出一種層次迭代式訓練方法,通過初始網絡-集成網絡-整體網絡的多層次訓練策略,對網絡進行迭代調優,協調網絡中各個子模塊的學習能力,使網絡學習能力進一步提升,達到最優效果,從而自適應于不同需求的分類任務中。根據以上思想,設計一種通用三維模型分類網絡,在確保分類性能的同時滿足多樣化分類需求。主要貢獻體現在以下3個方面:
(1)面向多樣化分類任務,設計了一種端到端的通用深度集成學習模型E2E-DEL(end-to-end deep ensemble learning),通過多個并行的初級學習器提取簡單特征,形成初始決策,確保網絡良好的泛化性能;通過一個集成學習器完成特征融合,形成最終決策,有效適應多樣化的分類需求。
(2)針對深度集成學習框架,提出一種層次迭代式訓練方法,通過初級學習器和集成學習器的迭代調優策略,使網絡訓練更加充分,取得最優效果。
(3)基于以上框架,以三維模型的多視圖為輸入,構建了一種端到端的深度集成學習網絡MV-DEL(multiview deep ensemble learning),應用于一般性、細粒度、零樣本三種不同類型的三維模型分類任務中,性能優異。
面向三維模型的分類種類繁多,本文根據分類粒度的不同、測試集是否為訓練中已見類別,選擇了三種典型的、有區別性的需求組成多樣化三維模型分類任務。如表1,包括:一般性三維模型分類、細粒度三維模型分類和零樣本三維模型分類。考慮到現有工作均針對某一種分類需求設計特定算法,而基于深度學習的分類取得了當前最好的性能,本章將圍繞深度學習分別介紹相關工作。

表1 三維模型多樣化分類任務Table 1 Diversified 3D model classification tasks
如圖1(a)所示,一般性三維模型分類中測試樣本屬于訓練過程中已經見過的類別,聚焦于對元類,即粗粒度大類別的識別。考慮到深度學習網絡對輸入數據的結構化要求,早期的學者們將三維模型轉化為特征向量的方式輸入網絡中,完成特征提取和分類[6]。由于在將三維模型轉換為特征向量的過程中可能造成有益信息的丟失,后續學者開始考慮采用一些更為原始的結構化表征手段表征三維模型,滿足深度學習網絡輸入要求的同時,盡可能地利用深度學習的特征自學習能力,包括基于體素的方法:3D ShapeNets[4]、VoxNet[7]等;基于點云的方法:PointNet[8]、PointNet++[9]、PointCNN[10(]point convolutional neural network)、LightPointNet[11];以及基于多視圖的方法:MVCNN[12(]multi-view convolutional neural network)及 其 后 續 版 本[16]、DeepPano[13](deep panoramic representation)、GeometryImage[14(]geometry images)、CVS[15(]convolutional neural network and voting scheme)、SeqViews2SeqLabels[17](sequential views to sequential labels)、RotationNet[18]。整體來說,適應于不同三維模型表征形式的方法互有優劣:三維模型的體素表征可以直接編碼三維模型的空間信息,但是對于硬件的要求較高;點云是直接掃描三維物體獲得,實時性較強,但伴隨著稀疏、無序的特性,相關方法仍待完善;多視圖表征將三維模型表征成為多張二維圖像,可以較好地利用二維圖像領域成熟的圖像處理技術,但如何有效地處理融合多個視圖特征提高識別準確率仍然是該類方法的一個難點。

圖1 三維模型多樣化分類任務Fig.1 Diversified 3D model classification tasks
目前,在現有數據集下,基于深度學習的一般性三維模型分類任務已經取得了相當好的分類性能。然而,不可忽視的是,該任務中:(1)不同類目標對象在視覺上差異較大,因此其對應的深度學習網絡只需要捕捉輸入模型的整體特征即可;(2)所有測試樣本在訓練過程中都已經見過,因此其對應的深度學習網絡并不需要具備額外的遷移能力。因此,當分類的要求不斷細化時,當測試時出現訓練集中未曾出現的類時,這些網絡的分類性能還需進一步評估。
如圖1(b)所示,細粒度三維模型分類中測試樣本也屬于訓練過程中已經見過的類別,但是其聚焦于完成更細粒度類別的分類。由于待識別對象為來自一個元類的子類別,其整體視覺相似度極高。因此,針對細粒度分類的網絡不僅需要提取三維模型的全局形狀特征,還需要進一步捕捉差異性的局部細節區域,這給三維模型的細粒度分類帶來了極大的挑戰。
當前,面向三維模型的細粒度分類工作極少,已發表工作只有清華大學Liu等[19]所提出FG3D-Net(finegrained 3D shape classification network)。他們開創性地構建了一個面向細粒度三維模型分類的基準數據集FG3D,并專門性地設計了一種基于層次局部視圖注意力機制的分類網絡,取得了比較理想的效果。
相應地,在二維圖像領域面向細粒度分類的研究較多。其中一類方法將分類任務分為兩個階段,首先通過特定的網絡完成局部區域的定位,然后再通過特征提取網絡提取鑒別性特征完成細粒度分類。典型工作有Ge等[20]提出的互補組件模型、Wang等[21]提出的判別性過濾學習網絡DFL-CNN(discriminative filter learning-CNN)。另一類方法采用端到端的學習機制直接學習具有鑒別性的細粒度特征完成分類。其中最具代表性的方法是雙線性網絡Bilinear CNN[22],通過特征間相乘捕獲高階統計信息學習鑒別性局部特征,取得了當時最好的分類性能。此后,針對其特征相乘計算量和存儲代價大的問題,出現了一系列改進工作,如基于低維度的雙線性池化CBP[23(]compact bilinear pooling)、基于點乘的層次雙 線 性池 化HBP[24(]hierarchical bilinear pooling)等。整體來說,在細粒度三維模型分類任務中,均需要相關的顯著區域感知模塊,網絡規模與內存消耗較大;在去掉此模塊后,整體性能隨之下降。
如圖1(c)所示,零樣本三維模型分類中測試樣本屬于訓練過程中未曾見過的類別,即該任務具有訓練類與測試類互斥的特點[25-26]。這種互斥性導致模型在訓練階段學習的知識無法直接應用于測試階段,這就要求深度學習模型不僅僅具備特征學習能力,還需具有知識遷移能力,設計難度較大。
目前,在圖像領域出現了一些零樣本深度學習模型。其中一類工作通過將語義特征和視覺特征嵌入到一個公共空間的方式建立未知類和已知類間的關聯,實現對未知類的有效識別,典型工作有Frome等[27]提出的DeViSE(deep visual-semantic embedding model)、Kodirov等[28]提出的SAE(semantic autoencoder)模型。另有一類工作通過生成網絡為未知類生成圖像特征完成分類,典型工作有Xian等[29]提出的f-CLSWGAN(feature classification Wasserstein generative adversarial network)以 及Sariyildiz等[30]提 出 的GMN(gradient matching networks)模型。
相比于二維圖像,零樣本學習在三維模型上的研究較少,僅有Cheraghian等研究小組先后發表了ZSLPC[31](zero-shot learning of 3D point cloud)、MHPC[32(]mitigating hubness problem of 3D point cloud)、TZLPC[33](transductive zero-shot learning for 3D point cloud)三篇工作。這些方法均以三維點云模型為輸入,以點云特征提取網絡為基礎,加入特定的詞向量嵌入網絡,建立未知類和已知類之間的關聯,完成零樣本分類。整體來說,在零樣本三維模型分類任務中,均需要設計額外的語義關聯模塊將已知類中的語義屬性關聯到未知類中去,網絡結構復雜,分類性能不穩定。
綜合來看,細粒度分類和零樣本分類存在其特殊性,極具挑戰性,面向三維的工作極少,而圖像領域的研究全部都是針對該任務設計專門的網絡,不存在一種通用的分類模型。研究一種適合于一般性、細粒度和零樣本三維模型分類任務的通用深度學習模型極具挑戰性。
通過分析可知,針對一般性、細粒度、零樣本分類任務組成的多樣化分類需求,擬設計的深度學習模型必須具備:(1)泛化性,即網絡能夠根據不同的任務需求學習形成不同的最終模型;(2)自適應性,即可以提取多樣化特征,并根據不同的任務需求自適應地選擇最終特征完成分類;(3)自學習性,即建立一種端到端的學習機制,自動根據任務完成學習。為此,本文將以以上三條為基本原則,設計一種通用的深度集成學習模型(見2.1節),提出深度集成損失函數(見2.2節),建立其層次式迭代訓練機制(見2.3節),支持多樣化分類。
在機器學習中,集成學習是一種構建并結合多個個體學習器來完成學習任務的學習機制。其中的個體學習器稱作“初級學習器”,負責最終融合決策的學習器稱作“集成學習器”。通過結合多個個體學習器,集成學習通常都會獲得比單一學習器顯著優越的泛化性能。
以此為啟發,為滿足多樣化分類需求,本文構建了如圖2所示的深度集成學習模型E2E-DEL:輸入三維模型,通過隨機采樣等方式構建其所對應的多個結構化輸入;通過若干個相互獨立的、并行的初級學習器提取每個隨機采樣輸入的初始特征;再通過最終的集成學習器融合多個初始特征形成最終特征;據此完成相應的分類任務。下面將分別介紹該模型的各個部分。

圖2 深度集成學習模型E2E-DELFig.2 End-to-end deep ensemble learning
2.1.1 結構化輸入
針對深度集成學習模型中的若干個初級學習器,首先應對三維模型進行數據預處理,將三維模型表征為其可接受的數據輸入形式。具體地,針對不同的三維模型表征,可設計以下幾種不同的結構化輸入:
(1)針對體素表征,可通過將三維模型旋轉至不同角度再體素化構建多體素表征,也可通過不同分辨率的體素化構建多體素表征。
(2)針對點云表征,可構建不同分辨率的多點云表征,可通過多次隨機撒點構建多點云表征。
(3)針對多視圖表征,可利用虛擬相機在以三維模型重心為中心的球面上均勻放置攝像頭采樣獲得多張二維視圖,也可以采用MVCNN[12]中多視圖構建方式在斜向上30°對應的圓上均勻放置攝像頭采樣獲得多張二維視圖。
此外,還可以考慮混合不同的三維模型表征獲得多樣化的輸入。以上三種方式均為常用的三維模型表征形式,在工程應用中可根據實際任務中三維模型的表征形式以及相關硬件環境選擇。
為方便統一表征,假定模型中的初級學習器個數為N,給定一個三維模型Mk,通過數據預處理后獲得其結構化表示Mk={mik,1≤i≤N},其中1≤k≤K,K表示三維模型總數,mik為三維模型Mk的第i個輸入,可以為以上表征中的任何一種形式。
2.1.2 初級學習器的構造
根據三維模型結構化輸入Mk的不同可選用不同類型的深度學習網絡組成初級學習器。若Mk中所包含的各個結構化輸入mik形式相同,則可以考慮構造同質初級學習器,即多個初級學習器結構相同;否則,可考慮構造異質初級學習器,即多個初級學習器結構不同。初級學習器的選擇可采用適應于結構化輸入的深度神經網絡,如基于體素表征的VoxNet、基于點云表征的PointNet、基于二維圖像的ResNet等。
針對每個初級學習器,為形成其初始決策,在特征提取層的最后加入一個初始決策層,由全連接FC和一個Softmax構成。假設待識別模型所屬類別總數為C,則FC實現從輸出特征向C維向量的映射,Softmax則將這C維向量轉換為概率值,數值大小反應了輸入模式屬于某個類的概率。具體地,針對某個三維模型的結構化表征Mk={mik,1≤i≤N},對應的初級決策可表示為,其中Skij為根據第i個初級學習器判斷三維模型Mk屬于第j類的概率。
2.1.3 集成學習器的構造
根據初級學習器獲得N個初始決策后,可進一步構造集成學習器完成綜合決策。集成學習器的構造需要考慮初級決策的可信度,根據初級決策的準確性決定使用投票法或者學習法。具體如下:
(1)投票法
投票法分為絕對多數投票法、相對多數投票法和加權投票法三種。
絕對多數投票法的公式如下所示:
其中,Dk為第k個三維模型的最終分類結果。由公式可見,絕對投票法提供了拒絕預測的選項,當且僅當某個類在各個初級學習器上的概率總和超過整體概率值的50%,判定三維模型屬于該類。這對準確性要求較高的學習任務是一個很好的機制,但有可能得不到預測結果。
相對多數投票法的公式如下所示:
式中,只需要某個類上在初級學習器上的概率總和最大,則判定三維模型屬于該類;若出現兩個或者多個類概率和相同時,隨機選擇一個即可。
加權投票法的計算公式和公式(2)類似,不同的是考慮了各個初級學習器對最終投票結果的貢獻,計算公式如下:
其中,wi表示初級學習器i的權重,可根據需求靈活設置不同初級學習器的權重,當w1=w2=…=wN=1/N時,加權投票法退化為相對多數投票法。該方法更加適應于類別相似度高,無法直接通過其他投票法獲得最終決策的情況。
(2)學習法
投票法中的集成學習器是對初級決策進行投票選擇的過程,難以根據具體學習任務建立自適應決策,更適應于單一任務。因此,為滿足多樣化分類需求,本小節將進一步設計具有自學習能力的集成學習器,可以對初級決策進行再學習使模型適應于不同的任務需求。將N個初級學習器的分類結果作為輸入,可構造如圖3所示的兩種不同集成學習器,下面將分別介紹。

圖3 不同集成方式Fig.3 Different ensemble ways
圖3(a)給出了兩種基于池化的集成學習器,分別由公式(4)和公式(5)表征如下:
其中,Dkm和Dka分別表示基于最大池化和平均池化得到的分類決策,f(?)表示全連接和softmax操作。
圖3(b)給出了基于拼接的集成學習器,由公式(6)表征如下:
其中,1≤i≤N,1≤j≤C,Dkc表示基于拼接得到的分類決策,f(?)表示全連接和softmax操作。相比基于池化的集成學習器,拼接無信息丟失,能夠更加完整地保留初級決策。
進一步地,為訓練圖2所示的深度集成學習模型,本文提出了深度集成損失函數,由初級學習器和集成學習器兩部分損失構成:
其中,Lt表示整個深度集成學習模型的損失,Lb和Le分別表示初級學習器和集成學習器的損失,α和β為對應的權重。集成學習器的損失可根據具體需求選擇不同的函數,初級學習器的損失Li可通過下式計算:
其中,Li表示第i個初級學習器的損失,旨在衡量初級學習器i的預測標簽和真實標簽之間的差異,可根據具體需求選擇相應函數;αi表示第i個初級學習器損失函數的權重,可根據其采用同質、異質學習器的具體情況作出相應設置。
整體上,初級學習器的損失同集成學習器的損失是正相關的;然而,這兩個損失函數的增長率并不完全一致,即,在訓練過程中無法保證它們同時達到極值點。為此,針對深度集成學習模型的整體架構,本文設計了一種層次迭代式訓練方法,包括以下4步。
步驟1初級學習器預訓:可根據輸入數據類型的不同選用預訓練好的網絡作為初級學習器,以保證初級學習器具有較好的初始參數,從而加快網絡的收斂速度,獲得更好的網絡泛化性能。
步驟2整體網絡初訓:根據不同網絡,設置訓練步數,利用梯度下降和反向傳播算法,當網絡基本穩定,即總損失值達到穩定值后轉入步驟3。
步驟3集成學習器調優:在整體網絡達到平穩后,固定初級學習器內部參數,即每個初級學習器內部參數不參與反向傳播,對集成學習器進行調優,只更新集成學習器內部的梯度。
步驟4初級學習器調優:當集成學習器調優結束后,固定集成學習器內部參數,即集成學習器內部參數不參與反向傳播,對初級學習器進行調優,只更新初級學習器內部的梯度。
步驟5迭代或結束:當步驟3和步驟4中均無明顯改善,總損失值達到穩定,不再繼續減小時,訓練結束;否則,轉入步驟2,再次進行調優。
本章將以深度集成學習模型E2E-DEL為原型,選擇多視圖的三維模型結構化表征形式,選擇卷積神經網絡組成初級學習器,使用全連接層構造集成學習器,最終構造多視圖深度集成學習網絡MV-DEL(multi-view deep ensemble learning),并將其應用于多樣化分類任務中。
3.1.1 網絡的構造
數據輸入:采用Su-MVCNN[12]的多視圖方法來表征三維模型,作為初級學習器的原始輸入。具體地,給定一個三維模型,在單位球斜上方30°圓周上水平、均勻放置12個虛擬相機獲得其多視圖表征為Mk={vki,1≤i≤N},N=12。
初級學習器的選擇:由于輸入數據為12張視圖,其數據屬性類似,因此采用同質初級學習器的構造方式形成對每一張視圖的初始決策。這里,可使用任何面向圖像的深度卷積神經網絡,如早期提出的AlexNet[34]、基于殘差連接的ResNet[35],或者是輕量化的MobileNet[36]。本文中,不失一般性,采用ResNet50作為同質初級學習器,并通過參數共享的方式確保視圖間特征提取的一致性。
集成學習器的構造:選用E2E-DEL中所設計的學習法完成集成學習器的構造,包括基于最大池化的集成學習器,基于平均池化的集成學習器和基于拼接的集成學習器。
3.1.2 損失函數的建立
針對每個初級學習器,選擇交叉熵Cross Entropy Loss作為損失函數,有:
其中,K為樣本數目,C為類別數目;當第k個樣本的預測標簽lk與真實標簽lk′相同時p{lk=lk′}取值為1,否則取值為0;Skj表示第k個樣本在第j維上的初級預測值。
進一步地,考慮到視圖間的同質性,設各個初級學習器的權重相同,即α1=α2=…=αN=1N,則整個初級學習器的損失函數可表示為:
針對集成學習器,選用鉸鏈損失衡量預測標簽和真實標簽之間的差異性,有:
其中,K為樣本數目,C為分類數目;δ{lk=lk′}為指示函數,當第k個樣本的預測標簽lk與真實標簽lk′相同時,取值為1,否則取值為?1;wjk表示第k個樣本在第j維上的集成決策值。
整體損失按照公式(7)計算,根據實驗,設置a=0.3,β=1.0。
3.1.3 網絡的訓練
步驟1初級學習器的預訓:采用Pytorch官方提供的在Imagenet上預訓好的ResNet50網絡作為初級學習器。
步驟2整體網絡初訓:利用隨機梯度下降SGD+牛頓動量法對網絡進行整體訓練,以確保網絡收斂速度的同時,增強網絡學習的穩定性。該階段,學習率設為1×10?4,動量所占比重設為0.9;當訓練迭代5×102步此后,網絡基本穩定,停止訓練。
步驟3集成學習器調優:為確保網絡的穩定性,更新學習率為初始學習率的1/100,并設置最大迭代次數為2×102步。若調優中,Loss趨于穩定或逐漸增大,可提前終止,轉入下一步。
步驟4初級學習器調優:此時,學習率在步驟3的基礎上再次降低10倍,并設置最大迭代次數為2×102。若調優中,Loss趨于穩定或逐漸增大,可提前終止,轉入步驟5。
步驟5迭代或結束:當步驟3和步驟4中均無明顯改善時,訓練結束;否則,固定學習率,轉步驟2,再次進行調優。
訓練中,為了增強網絡的泛化能力,在生成訓練集時隨機打亂訓練數據的排列順序,以防止訓練時單個批次中總是出現相同的訓練樣本。
如表2所示,針對一般性三維模型分類任務,本文選用PrincetonModelNet[4]作為數據基準。沿用其他分類方法系統的設置:在ModelNet10中選取3 991個模型作為訓練集,908個模型作為測試集;在ModelNet40中選取9 843個模型作為訓練集,2 468個模型作為測試集。

表2 面向一般性三維模型分類的數據集Table 2 Datasets for general 3D model classification
如表3所示,針對細粒度三維模型分類任務,本文選用Liu等[19]提出的FG3D數據集作為基準。該數據集包括三個類別的子數據集,其中Airplane數據集包含13個子類4 174個模型,Car數據集包含20個子類7 010個模型,Chair數據集包含33個子類11 124個模型。針對以上數據集,實驗中沿用Liu等給出的訓練集測試集劃分方式,詳情見表3。

表3 面向細粒度三維模型分類的數據集Table 3 Datasets for fine-rigid 3D model classification
零樣本分類任務與其他分類不同,需要劃分已知類和未知類。如表4所示,本文選用Cheraghian等人所提出的數據集劃分方式[31],將ModelNet40數據集中的30個類別作為已知類用作訓練集,另外選擇其他3個數據集ModelNet10、McGill和SHREC2015中與之互斥的10個、14個和30個類作為未知類用作測試。

表4 面向零樣本三維模型分類的數據集Table 4 Datasets for zero-shot 3D model classification
實驗的硬件環境為Intel Core i7 2600k+Tesla V100 32 GB+16 GB RAM,軟件環境為Windows 10 x64+CUDA 10.0+CuDNN 7.1+Pytorch 1.1.0+Python3.6.5+Matlab。
表5對比了不同初級學習器數目、是否采用集成學習器、不同集成學習器構造方法對網絡性能的影響。實驗中,選用傳統三維模型分類數據集ModelNet10,利用MVCNN中所給出的視圖獲取方法[12]在圓周上均勻擺放4,8,12,…,80個虛擬攝像機,獲得三維模型不同視圖數目的多視圖表征,構建包含對應數目初級學習器的多視圖深度集成學習網絡MV-DEL進行對比。表中MV-DEL1,2,3分別表示在集成網絡中采用了最大池化、平均池化、拼接集成學習器。

表5 初級學習器數目&集成方式對分類精度的影響Table 5 Effects of number of base learners and ensemble learners on classification performance
表5展示了在ModelNet10數據集中不同初級學習器數目&不同集成方式對分類精度的影響,其中SD表示標準差。如表5所示,不同初級學習器數目下網絡性能不同:當初級學習器數目從4、8逐漸增加到80,其分類性能的標準差分別為0.54、0.63、0.60、0.81,這說明不同初級學習器數目下網絡性能穩定;考慮到初級學習器數目為12時,分類性能相對優秀,計算開銷較小,因此,后文實驗中統一設置初級學習器數目為12。
縱向對比未使用集成學習器的算法MVCNN和使用了不同集成學習器的算法MV-DEL1,2,3可以發現:加入了集成學習器后,網絡分類性能均得到了提升,由此表明加入集成學習器可以提升網絡的分類性能。
此外,對比不同集成學習器對網絡性能的影響可以發現:在視圖數目較多的情況下,MV-DEL3方法的分類準確率高于MV-DEL1和MV-DEL2,這是因為相對于池化操作而言,基于拼接的集成學習方法可以更加完整地保留初始決策信息。對比兩種基于池化的方法,可以發現在7種不同初級學習器數目下,MV-DEL1勝出4次,MV-DEL2勝出兩次,且數值相差較小,即基于最大池化和平均池化的集成學習算法準確率相當。
表6對比了細粒度任務中不同集成方式對分類精度的影響,與表5中的結果類似:加入集成學習器的算法MV-DEL1,2,3分類準確率均高于未使用集成學習器的算法MVCNN;在使用了集成學習器的算法中,基于拼接的集成學習算法MV-DEL3效果最優,基于最大池化MV-DEL1和平均池化MV-DEL2的集成學習算法效果相當。

表6 不同集成方式對細粒度分類精度的影響Table 6 Effects of ensemble learners on fine-grained classification performance 單位:%
類似地,表7對比了零樣本任務中不同集成方式對分類精度的影響,與之前實驗得到了相同的結果:使用了集成學習器的算法效果均得到了提升,基于拼接的集成學習算法MV-DEL3取得了最優的分類準確率。

表7 不同集成方式對零樣本分類精度的影響Table 7 Effects of different ensemble learners on zero-shot classification performance 單位:%
為充分測試本文方法在多樣化三維模型分類任務中的分類性能與效率,本實驗選取了基于多視圖的經典三維模型分類方法MVCNN(VGG19)[12]、MVCNN(ResNet50)[12]、SeqView2SeqLabels(VAlexNet)[17]、Rotation-Net[18]、面向點云的經典三維模型分類方法PointNet[8]、專門為細粒度三維模型分類設計的方法FG3D-Net[19]、專門為零樣本三維模型分類設計的方法ZSLPC[31]和MHPC[32]作為對比方法,進行綜合對比。如表8所示,性能最優或者次優的方法分別在表中用加粗和下劃線進行標識,所有對比方法的實驗結果均來自已公開發表的論文,部分缺失數據表示為—。通過對比數據可知:

表8 三維模型多樣化分類任務的分類準確率Table 8 Classification accuracy rates of diversified 3D model classification tasks
(1)在單分類需求下效果最佳的工作在面對不同需求的分類任務時表現欠佳,泛化性不足。例如在傳統三維模型分類任務中表現最為優異的網絡RotationNet在細粒度分類任務中性能并不理想,在Airplane、Car、Chair三個數據集上較最優方法分別相差大約3.41、3.95和3.11個百分點;專門面向細粒度分類任務的FG3DNet和面向零樣本分類的ZSLPC和MHPC因無公開代碼,數據不足,無法直接評價。
(2)本文所提出的MV-DEL3在傳統三維模型數據集ModelNet10、ModelNet40上分別取得了96.23%、94.15%的分類準確率,相比于同樣是12視圖以ResNet50為基網的MVCNN(ResNet50)在ModelNet40數據集上提升了4.05個百分點,相比于同樣是12視圖表征三維模型的SeqView2SeqLabels在ModelNet10和ModelNet40數據集上分別提升了1.41個百分點和0.75個百分點,僅次于當前最優的工作RotationNet;在細粒度三維模型數據集Airplane、Chair和Car上分別取得了96.17%、79.54%、85.18%的分類精度,取得了目前最好的效果;在零樣本三維模型數據集ModelNet10取得了30.0%的分類精度,效果次優,在McGill和Shrec2015上分別取得了15.1%和6.7%的分類精度,效果最優。
(3)整體上看,由于點云具有稀疏性,點云類方法(PointNet、ZSLPC、MHPC)在參數量和推理時間兩個效率評估指標中均優于多視圖類方法(MVCNN-VGG19、
MVCNN-ResNet50、RotationNet、FG3D-Net、MV-DEL3)。在多視圖類方法中,本文方法MV-DEL3的參數量僅次于MVCNN-VGG19,推理時間與MVCNN-ResNet50相當,表明了本文通過引入深度集成學習的思想,設計的多視圖深度集成學習網絡MV-DEL在滿足了多樣化分類需求的同時,幾乎沒有計算上額外的開銷,整體規模較小,運算時間較短,是一種高效的方法。
綜上,本文方法MV-DEL3在3類任務8個數據集上取得了5個最優分類準確率,3個次優分類準確率。這充分證明了在面對三維模型多樣化分類任務時MV-DEL3具有良好的泛化性與普適性;即使是面對非常困難的細粒度與零樣本分類任務,仍然表現優異。
本文針對三維模型多樣化分類問題,提出了一種端到端的深度集成學習模型E2E-DEL,通過多個并行的初級學習器形成初始決策保證確保網絡良好的泛化性能,通過集成學習器形成自適應綜合決策確保網絡對多樣化分類任務的適應能力;基于此,本文選擇了三維模型多視圖的表征形式,設計了一種面向多視圖的深度集成學習網絡MV-DEL,應用于一般性、細粒度、零樣本三種不同類型的三維模型分類任務中。實驗結果表明:深度集成學習網絡能夠自適應于不同任務的特殊需求,學習到對應任務所需的深度模型,在面對三維模型多樣化分類任務時,具有良好的泛化性與普適性。
目前,本文提出的深度集成學習網絡還是基于同質初級學習器,即初級學習器都采用相同的網絡結構。是否可以使用不同的網絡結構組成功能各不相同的初級學習器,比如分別提取目標對象的輪廓與紋理等;甚至使用面向不同類型輸入數據的初級學習器,比如點云與多視圖的混合輸入,從而獲得更佳性能將是進一步的研究方向。