政府權(quán)利
以美國政府合同編號upside下的政府支持來進行本發(fā)明。該政府在本發(fā)明中具有特定權(quán)利。
相關(guān)申請的交叉引用
本申請是2015年3月24日提交的美國臨時申請no.62/137665的非臨時專利申請,該美國臨時申請的全部內(nèi)容通過引用并入于此。
本申請也是2015年4月30日提交的美國臨時申請no.62/155355的非臨時專利申請,該美國臨時申請的全部內(nèi)容通過引用并入于此。
發(fā)明背景
(1)技術(shù)領(lǐng)域
本發(fā)明總體上涉及識別系統(tǒng),并且更具體地說,涉及可以被用于多維信號處理流水線中的模塊,以通過利用多個分層特征信道自適應地提取信息來識別信號類別。
(2)
背景技術(shù):
深度學習是機器學習的一個分支,其嘗試通過利用具有復雜結(jié)構(gòu)的多個處理層來模型化數(shù)據(jù)中的高級抽象。深度學習可以實現(xiàn)用于信號識別。這種深度學習方法的示例包括:卷積網(wǎng)絡(luò)(參見并入的參考文獻列表,參考文獻no.1)、hmax模型(參見參考文獻no.2)、以及分層的自動編碼器(hierarchyofauto-encoder)。這些方法的關(guān)鍵缺點是,它們需要高數(shù)值精度來存儲無數(shù)的權(quán)重并處理無數(shù)的單元活動。情況就是這樣,因為在精度較低的情況下,增量和批量學習模式中的權(quán)重更新都不太可能被登記,與權(quán)重的量化級之間的間隔相比其相對較小。基本上,深度學習方法需要最小比特數(shù),來調(diào)整權(quán)重并實現(xiàn)合理的識別性能。盡管如此,這種最小比特數(shù)甚至可能在流水線深度增加時并且隨著輸入尺寸增加而阻礙滿足高能量和吞吐量挑戰(zhàn)。因此,挑戰(zhàn)是以低精度學習權(quán)重,同時單元活動以低精度表示和處理。
在多層處理架構(gòu)中處理以很少比特來登記小權(quán)重更新的問題的一個眾所周知的技術(shù)是概率舍入方法(probabilisticroundingmethod)(參見參考文獻no.3)。在概率舍入方法中,每個權(quán)重變化(如通過任何監(jiān)督或非監(jiān)督方法計算的)首先被校正,并按照權(quán)重的量化級之間的間隔進行比例化,然后與0和1之間的均勻隨機數(shù)進行比較。如果該隨機數(shù)相對較小,則將該特定權(quán)重更新成沿初始權(quán)重變化方向的相鄰量化級。盡管能夠處理小權(quán)重更新,但根據(jù)數(shù)據(jù)集,這種方法甚至需要至少5-10比特,以允許“隨著精度降低至6比特而性能逐漸劣化”。
因此,盡管有低精度權(quán)重和活動,仍持續(xù)需要實現(xiàn)針對多維信號處理流水線的高識別性能的系統(tǒng)。
技術(shù)實現(xiàn)要素:
描述了一種用于深度學習的稀疏推理模塊(sparseinferencemodule)。在各個實施方式中,所述稀疏推理模塊包括存儲器和一個或更多個處理器。在所述存儲器具有編碼的可執(zhí)行指令,使得在執(zhí)行時,所述一個或更多個處理器執(zhí)行多個操作,如接收數(shù)據(jù)并且針對多個圖案模板匹配所述數(shù)據(jù),以生成針對所述多個圖案模板中的每個圖案模板的匹配度值;稀疏化所述匹配度值,使得僅提供滿足標準的那些匹配度值,以供進一步處理為稀疏特征矢量,而其它失敗的匹配度值被壓制成零;以及利用所述稀疏特征矢量自選參與高級分類的信道。
在另一方面,所述數(shù)據(jù)包括靜止圖像信息、視頻信息、以及音頻信息中的至少一種。
在又一方面,所述信道的自選有助于對靜止圖像信息、視頻信息以及音頻信息中的至少一種的分類。
另外,所述標準需要所述匹配度值高于閾值限度。
在另一方面,所述標準需要所述匹配度值處于固定量的最高匹配度值之內(nèi)。
在另一方面,描述了一種利用稀疏學習模塊的深度學習系統(tǒng)。在這點上,所述深度學習系統(tǒng)包括多個分層特征信道層,每個特征信道層都具有一組過濾器,該組過濾器過濾在所述特征信道中接收的數(shù)據(jù);多個稀疏推理模塊,其中,在每個特征信道層內(nèi)都電子地駐留稀疏推理模塊;并且其中,一個或更多個所述稀疏推理模塊被配置成,接收數(shù)據(jù)并且針對多個圖案模板匹配所述數(shù)據(jù),以生成針對所述多個圖案模板中的每個圖案模板的匹配度值,并且稀疏化所述匹配度值,使得僅提供滿足標準的那些匹配度值,以供進一步處理為稀疏特征矢量,而其它失敗的匹配度值被壓制成零,以及利用所述稀疏特征矢量自選參與高級分類的信道。
另外,所述深度學習系統(tǒng)是卷積神經(jīng)網(wǎng)絡(luò)(cnn),并且所述多個分層特征信道層包括第一匹配層和第二匹配層。所述深度學習系統(tǒng)還包括:第一池化層(poolinglayer),該第一池化層電子地位于所述第一匹配層與所述第二匹配層之間;和第二池化層,該第二池化層位于所述第二匹配層的下游。
在另一方面,所述第一特征匹配層包括:一組過濾器、壓縮非線性模塊、以及稀疏推理模塊。所述第二特征匹配層包括:一組過濾器、壓縮非線性模塊、以及稀疏推理模塊。所述第一池化層包括池化模塊和稀疏推理模塊,并且所述第二池化層包括池化模塊和稀疏推理模塊。
在另一方面,所述稀疏學習模塊還跨每個所述特征信道層中的空間位置而操作。
最后,本發(fā)明還包括一種計算機程序產(chǎn)品和計算機實現(xiàn)方法。所述計算機程序產(chǎn)品包括計算機可讀指令,該計算機可讀指令存儲在非暫時性計算機可讀介質(zhì)上,其可通過具有一個或更多個處理器的計算機執(zhí)行,使得在執(zhí)行所述指令時,所述一個或更多個處理器執(zhí)行本文列出的操作。另選的是,所述計算機實現(xiàn)方法包括使計算機執(zhí)行這種指令并且執(zhí)行所得操作的動作。
附圖說明
本專利或申請文件包含按顏色實施的至少一個附圖。具有彩圖的本專利或?qū)@暾埞珗蟮母北驹谡埱蟛⒅Ц侗匦栀M用時由相應機構(gòu)提供。
根據(jù)下面結(jié)合參照附圖對本發(fā)明各個方面的詳細描述,本發(fā)明的目的、特征以及優(yōu)點將更清楚,其中:
圖1是描繪根據(jù)本發(fā)明各個實施方式的系統(tǒng)的組件的框圖;
圖2是具體實施本發(fā)明的一方面的計算機程序產(chǎn)品的例示圖;
圖3是描繪操作中的稀疏推理模塊的流程圖;
圖4是描繪稀疏推理模塊內(nèi)的稀疏化處理的例示圖,據(jù)此,匹配度值的最大子集(topsubset)可以免于被切割;
圖5是描繪用于基于卷積神經(jīng)網(wǎng)絡(luò)(cnn)的識別系統(tǒng)的例示性流水線的、從圖像芯片(il)至類別層(cl)的框圖的例示圖;
圖6是描繪將稀疏推理模塊應用于常規(guī)cnn的每一層(如圖5所描繪的)的例示圖;
圖7是描繪稀疏推理模塊如何通過有規(guī)律的監(jiān)督訓練來自動向下選擇所描繪的cnn的每個層中的有用特征信道數(shù)的例示圖;以及
圖8是描繪與稀疏推理模塊組合的概率舍入的性能的圖表。
具體實施方式
本發(fā)明總體上涉及識別系統(tǒng),并且更具體地說,涉及可以用于多維信號處理流水線中的模塊,以通過利用多個分層特征信道自適應地提取信息來識別信號類別。呈現(xiàn)以下描述以使本領(lǐng)域普通技術(shù)人員能夠制造和使用本發(fā)明,并將其并入特定應用的背景中。各種修改例以及不同應用方面的多種用途對于本領(lǐng)域技術(shù)人員來說是顯而易見的,并且本文定義的一般原理可以應用于廣泛的方面。因此,本發(fā)明不旨在限于所呈現(xiàn)的方面,而是符合與本文所公開原理和新穎特征相一致的最廣范圍。
在下面的詳細描述中,闡述了許多具體細節(jié),以便提供對本發(fā)明的更詳盡理解。然而,本領(lǐng)域技術(shù)人員應當明白,本發(fā)明可以在不必受限于這些具體細節(jié)的情況下來實踐。在其它情況下,公知結(jié)構(gòu)和裝置按框圖形式而不是按細節(jié)示出,以便避免模糊本發(fā)明。
將讀者的注意引向與本說明書同時提交的所有文件和文檔,并且這些文件和文檔可以利本說明書開放以供公眾查閱,所有這些文件和文檔的內(nèi)容通過引用并入于此。本說明書中公開的所有功能(包括任何所附權(quán)利要求、摘要以及繪圖)可以用服務(wù)相同、等同或相似目的的另選特征來代替,除非另外加以明確規(guī)定。因此,除非另外加以明確規(guī)定。所公開的每個特征僅僅是通用系列的等同或相似特征中的一個例子。
而且,權(quán)利要求書中沒有明確陳述“用于執(zhí)行指定功能的裝置”或“用于執(zhí)行特定功能的步驟”的任何部件不被解釋為如在35u.s.c.section112,paragraph6中指定的“裝置”或“步驟”條款。特別地講,在本文的權(quán)利要求書中使用“…的步驟”或“……的動作”不旨在援引35u.s.c.112,paragraph6的規(guī)定。
在詳細描述本發(fā)明之前,首先提供了引用參考文獻的列表。接下來,提供了對本發(fā)明各個主要方面的描述。隨后,介紹向讀者提供了對本發(fā)明的一般理解。最后,提供本發(fā)明各個實施方式的具體細節(jié)以取得對具體方面的理解。
(1)所引用的參考文獻列表
貫穿本申請引用以下參考文獻。為了清楚和方便起見,這些參考文獻在此被列為讀者的中心資源。下列參考文獻通過引用并入于此,就像在此完全陳述的一樣。這些參考文獻通過參照如下對應文獻參考號而在本申請中加以引用。
1.pierresermanet、davideigen、xiangzhang、michaelmathieu、robfergus以及yannlecun:overfeat:integratedrecognition,localizationanddetectionusingconvolutionalnetworks,internationalconferenceonlearningrepresentations(iclr2014),cbls。
2.serre、t.,oliva、a.,&poggio,t.(2007).afeedforwardarchitectureaccountsforrapidcategorization.proceedingsofthenationalacademyofsciences,104(15),6424-6429。
3.hoehfeld、m.,&fahlman、s.e.(1992).learningwithlimitednumericalprecisionusingthecascade-correlationlearningalgorithm.ieeetransactionsonneuralnetworks,3(4),602-611。
4.r.kasturi、d.goldgof、p.soundararajan、v.manohar、j.garofolo、r.bowers、m.boonstra、v.korzhova、以及j.zhang,“frameworkforperformanceevaluationofface,text,andvehicledetectionandtrackinginvideo:data,metrics,andprotocol,”ieeetpami,vol.31,2009。
(2)主要方面
本發(fā)明的各個實施方式包括三個“主要”方面。首先是具有稀疏推理模塊的系統(tǒng),該稀疏推理模塊可以用于多維信號處理流水線中,以通過利用多個分層特征信道自適應地提取信息來識別信號類別。該系統(tǒng)通常采用計算機系統(tǒng)操作軟件的形式或采用“硬編碼”指令集的形式。該系統(tǒng)可以并入提供不同功能的各種各樣的裝置中。第二個主要方面是通常采用軟件的形式的一種方法,其利用數(shù)據(jù)處理系統(tǒng)(計算機)進行操作。第三個主要方面是計算機程序產(chǎn)品。該計算機程序產(chǎn)品通常表示存儲在諸如光學存儲裝置(例如,光盤(cd)或數(shù)字萬用盤(dvd))或諸如軟盤或磁帶這樣的磁存儲裝置的非暫時性計算機可讀介質(zhì)上的計算機可讀指令。計算機可讀介質(zhì)的其它非限制例包括:硬盤、只讀存儲器(rom)、以及閃存型存儲器。這些方面將在下面進行更詳細描述。
圖1中提供了描繪本發(fā)明的系統(tǒng)(即,計算機系統(tǒng)100)的示例的框圖。計算機系統(tǒng)100被配置成執(zhí)行與程序或算法相關(guān)聯(lián)的計算、處理、操作和/或功能。在一個方面,本文討論的某些處理和步驟被實現(xiàn)為駐留在計算機可讀存儲器單元內(nèi)并由計算機系統(tǒng)100的一個或更多個處理器執(zhí)行的一系列指令(例如,軟件程序)。在執(zhí)行時,該指令使計算機系統(tǒng)100執(zhí)行特定動作并展現(xiàn)特定行為,如本文所描述的。
計算機系統(tǒng)100可以包括被配置成傳送信息的地址/數(shù)據(jù)總線102。另外,一個或更多個數(shù)據(jù)處理單元(如處理器104(或多個處理器)與地址/數(shù)據(jù)總線102聯(lián)接。處理器104被配置成處理信息和指令。在一方面,處理器104是微處理器?;蛘?,處理器104可以是不同類型的處理器(如并行處理器),或現(xiàn)場可編程門陣列。
計算機系統(tǒng)100被配置成利用一個或更多個數(shù)據(jù)存儲單元。計算機系統(tǒng)100可以包括與地址/數(shù)據(jù)總線102聯(lián)接的易失性存儲器單元106(例如,隨機存取存儲器(“ram”)、靜態(tài)ram、動態(tài)ram等),其中,易失性存儲器單元106被配置成存儲用于處理器104的信息和指令。計算機系統(tǒng)100還可以包括與地址/數(shù)據(jù)總線102聯(lián)接的非易失性存儲器單元108(例如,只讀存儲器(“rom”)、可編程rom(“prom”)、可擦除可編程rom(“eprom”)、電可擦除可編程rom(“eeprom”)、閃速存儲器等),其中,非易失性存儲器單元108被配置成存儲用于處理器104的靜態(tài)信息和指令。另選的是,計算機系統(tǒng)100可以執(zhí)行從諸如“云”計算中的在線數(shù)據(jù)存儲單元檢索的指令。在一方面,計算機系統(tǒng)100還可以包括與地址/數(shù)據(jù)總線102聯(lián)接的一個或更多個接口,如接口110。所述一個或更多個接口被配置成使得計算機系統(tǒng)100能夠與其它電子裝置和計算機系統(tǒng)連接。由所述一個或更多個接口實現(xiàn)的通信接口可以包括有線(例如,串行電纜、調(diào)制解調(diào)器、網(wǎng)絡(luò)適配器等)和/或無線(例如,無線調(diào)制解調(diào)器、無線網(wǎng)絡(luò)適配器等)通信技術(shù)。
在一個方面,計算機系統(tǒng)100可以包括與地址/數(shù)據(jù)總線102聯(lián)接的輸入裝置112,其中,輸入裝置112被配置成將信息和命令選擇傳送至處理器100。根據(jù)一個方面,輸入裝置112是字母數(shù)字混編輸入裝置(如鍵盤),其可以包括字母數(shù)字混編鍵和/或功能鍵。另選的是,輸入裝置112可以是除字母數(shù)字混編輸入裝置之外的其它輸入裝置,如傳感器或用于捕獲信號的其它裝置,或者,在又一方面,輸入裝置112可以是識別系統(tǒng)流水線中的另一模塊。在一方面,計算機系統(tǒng)100可以包括與地址/數(shù)據(jù)總線102聯(lián)接的光標控制裝置114,其中,光標控制裝置114被配置成將用戶輸入信息和/或命令選擇傳送至處理器100。在一方面,光標控制裝置114利用諸如鼠標器、軌跡球、軌跡板、光學跟蹤裝置或觸摸屏這樣的裝置來實現(xiàn)。前述盡管如此,但在一方面,諸如響應于使用與輸入裝置112相關(guān)聯(lián)的特殊鍵和鍵序列命令,光標控制裝置114經(jīng)由來自輸入裝置112的輸入而被引導和/或激活。在另選方面,光標控制裝置114被配置成通過話音命令指引或引導。
在一方面,計算機系統(tǒng)100還可以包括一個或更多個可選計算機可用數(shù)據(jù)存儲裝置,如與地址/數(shù)據(jù)總線102聯(lián)接的存儲裝置116。存儲裝置116被配置成存儲信息和/或計算機可執(zhí)行指令。在一個方面,存儲裝置116是諸如磁或光盤驅(qū)動器(例如,硬盤驅(qū)動器(“hdd”)、軟盤、光盤只讀存儲器(“cd-rom”)、數(shù)字萬用盤(“dvd”))的存儲裝置。依據(jù)一個方面,顯示裝置118與地址/數(shù)據(jù)總線102聯(lián)接,其中,顯示裝置118被配置成顯示視頻和/或圖形。在一方面,顯示裝置118可以包括:陰極射線管(“crt”)、液晶顯示器(“l(fā)cd”)、場發(fā)射顯示器(“fed”)、等離子體顯示器,或適于顯示視頻和/或圖形圖像以及用戶可識別的字母數(shù)字混編字符的任何其它顯示裝置。
本文所呈現(xiàn)的計算機系統(tǒng)100是根據(jù)一方面的示例計算環(huán)境。然而,計算機系統(tǒng)100的非限制例并不嚴格受限于作為計算機系統(tǒng)。例如,一個方面提供了計算機系統(tǒng)100表示可以根據(jù)本文所述各個方面使用的一類數(shù)據(jù)處理分析。此外,還可以實現(xiàn)其它計算系統(tǒng)。實際上,本技術(shù)的精神和范圍不限于任何單一數(shù)據(jù)處理環(huán)境。因此,在一方面,使用通過計算機執(zhí)行的諸如程序模塊之類的計算機可執(zhí)行指令來控制或?qū)崿F(xiàn)本技術(shù)的各個方面的一個或更多個操作。在一個實現(xiàn)中,這樣的程序模塊包括被設(shè)置成執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、和/或數(shù)據(jù)結(jié)構(gòu)。另外,一方面提供了本技術(shù)的一個或更多個方面通過利用一個或更多個分布式計算環(huán)境來實現(xiàn),如其中任務(wù)由通過通信網(wǎng)絡(luò)鏈接的遠程處理裝置執(zhí)行,或者如其中各種程序模塊位于包括存儲器-存儲裝置的本地和遠程計算機存儲介質(zhì)中。
圖2中描繪了具體實施本發(fā)明的計算機程序產(chǎn)品(即,存儲裝置)的例示圖。該計算機程序產(chǎn)品被描繪為軟盤200或諸如cd或dvd這樣的光盤202。然而,如先前提到,該計算機程序產(chǎn)品通常表示存儲在任何兼容的非暫時性計算機可讀介質(zhì)上的計算機可讀指令。如關(guān)于本發(fā)明所使用的術(shù)語“指令”通常指示要在計算機上執(zhí)行的一組操作,并且可以表示整個程序的片段或單個分離軟件模塊?!爸噶睢钡姆窍拗菩允纠ㄓ嬎銠C程序代碼(源或目標代碼)和“硬編碼”電子裝置(即,編碼到計算機芯片中的計算機操作)。該“指令”被存儲在任何非暫時性計算機可讀介質(zhì)上,如存儲在計算機的存儲器中或軟盤、cd-rom以及閃存驅(qū)動器上。無論如何,這些指令被編碼在非暫時性計算機可讀介質(zhì)上。
(3)介紹
本公開提供了一種獨特的系統(tǒng)和方法,其使用稀疏推理模塊來實現(xiàn)多維信號處理流水線的高識別性能,而不管有低精度權(quán)重和活動。該系統(tǒng)適用于對任意信號模式(例如,音頻、圖像、視頻)操作的任何深度學習架構(gòu),以通過利用多個分層特征信道自適應地提取信息來識別它們的類別。該系統(tǒng)通過競爭性處理,在深度學習網(wǎng)絡(luò)(例如,卷積神經(jīng)網(wǎng)絡(luò)、hmax模型)中的特征匹配和池化層兩者上操作,該競爭性處理利用k-wta(獲勝者取得全部)的原理,在處理層級中的每個層處生成針對各個輸入數(shù)據(jù)子集的稀疏特征矢量。這個原理靈感來自于大腦中的局部回路,其中,被調(diào)諧以響應來自上游區(qū)域的傳入信號中的不同模式的神經(jīng)元利用中間神經(jīng)元而彼此抑制,使得僅最大程度激活的那些免于該壓制閾值。這種稀化處理也使得伴隨精度降低的概率學習成為可能,從而使得模式識別適用于節(jié)能硬件實現(xiàn)。
該系統(tǒng)服務(wù)兩個關(guān)鍵目標:(a)標識為了處理給定數(shù)據(jù)集以供模式識別是足夠且必要的特征信道子集,和(b)確保針對其網(wǎng)絡(luò)中的節(jié)點和節(jié)點活動本身之間的連接權(quán)重僅可以按低數(shù)值精度進行表示和處理的情況的最佳識別性能。這兩個目標對于深入學習架構(gòu)的實際實現(xiàn)起著至關(guān)重要的作用,這是本領(lǐng)域的現(xiàn)狀,因為需要巨大處理和內(nèi)存需求來實現(xiàn)非常深的處理層網(wǎng)絡(luò),其通常需要解決針對合理大小的輸入流的復雜模式識別問題。例如,公知的overfeat架構(gòu)(參見參考文獻no.1)使用11層(8個特征匹配,和3個max池化),并且信道數(shù)在不同層從96至1024變動,以響應大小為231x231的輸入圖像,在1000個對象類別中進行識別。數(shù)值精度越大導致尺寸、權(quán)重、范圍以及功率要求越大,這些阻礙了在移動和飛行平臺(如移動電話、自主導航機器人和無人機(uav))上實際現(xiàn)實世界部署這些現(xiàn)狀深度學習引擎。
該稀疏推理模塊還可以有益于固定應用,如監(jiān)控攝像機,因為其提出了構(gòu)建超低功率和高吞吐量識別系統(tǒng)的一般方法。該系統(tǒng)還可以被用于許多汽車和航空航天應用,包括汽車、飛機以及uav,其中,模式識別起著關(guān)鍵作用。例如,該系統(tǒng)可以被用于:(a)針對自動駕駛汽車標識道路上的固定和移動物體,和(b)識別來自飛機的大量實時數(shù)據(jù)的預測模式,用于維護或其他事項的智能調(diào)度。下面提供了該系統(tǒng)及其稀疏推理模塊的具體細節(jié)。
(4)各個實施方式的具體細節(jié)
如上所述,本公開提供了一種系統(tǒng)和方法,其使用稀疏推理模塊來實現(xiàn)多維信號處理流水線的高識別性能。該系統(tǒng)對包括多個特征信道的深度學習架構(gòu)進行操作,以稀疏化層次結(jié)構(gòu)中的每個層處的特征矢量(例如,匹配度值)。換句話說,該特征矢量在層次結(jié)構(gòu)中的每個層處被“稀疏化”,這意味著僅滿足一標準(“獲勝者”)的那些值被允許作為稀疏特征矢量而繼續(xù)進行,而其它失敗的值被壓制成零。作為一非限制例,該標準包括固定數(shù)量的值,如最大10%等,或者超出一值的那些(其可以自適應地確定)。
例如,并且如圖3所示,諸如圖像芯片301內(nèi)的接收場300中的數(shù)據(jù),與稀疏推理模塊304中的多個模式模板302匹配,以確定特定模式模板302與接受場300中的數(shù)據(jù)之間的匹配度。所得到的匹配度值306被稀疏化308,使得僅滿足一標準(例如,最大)的值(在該示例中,k=2)的子集被傳遞到下一級??梢允褂萌魏魏线m的技術(shù)來確定匹配度。作為一非限制例,可以利用卷積(或點積)來確定匹配度。另一個例子包括:如在3/10/2014提交的并且題名為“methodtoperformconvolutionsbetweenarbitraryvectorsusingweaklycoupledoscillatorclusters,”的美國專利申請14/202200中描述的振蕩器同步化和處理,其全部內(nèi)容通過引用并入于此。
深度學習網(wǎng)絡(luò)包括特征匹配和池化層的級聯(lián)階段,以生成高級多信道表述,其有助于簡單線性可分離的分類成各種類別。每個特征匹配層中的單元推斷不同學習模式(基于特征信道)與其局部化接收場內(nèi)的上游層中的活動之間的匹配度。
稀疏推理模塊的方法(其應當在訓練和測試兩者期間應用)在跨共享空間接收場的特征信道的各組單元中的每一組內(nèi),引入遍布該流水線的顯式競爭。在具有相同空間接收場的每個這樣的單元集內(nèi),該操作確保僅給定部分的具有最大活動的單元(如最大10%或任何其它預定量,或者具有超過一預定閾值的值的那些單元)能夠?qū)⑺鼈兊男盘杺鞑ブ辽疃葘W習網(wǎng)絡(luò)中的下一層。未選擇單元的輸出活動被壓制至零。
圖4提供了這種方法如何工作的另一例示圖。當該方法跨空間和深度學習架構(gòu)中的每一層應用時,創(chuàng)建稀疏分布表述(例如,特征信道)401,據(jù)此,匹配度值402的最大子集400可以免于被切割。對于視覺刺激,這符合以下前提:在每個空間位置,至多有可以毫不含糊地呈現(xiàn)的少數(shù)特征;即,每個位置處的各種特征檢測器在它們之間競爭,使得跨越空間實現(xiàn)合適的刺激表述。
在深度學習網(wǎng)絡(luò)中每層處的稀疏推理模塊,在概率舍入以低數(shù)值精度應用于權(quán)重時是關(guān)鍵的,因為其將權(quán)重更新限制成僅輸入和輸出神經(jīng)元具有“信號”活動的那些投影,其沒有被壓制成零。在沒有稀疏化的情況下,由于在幾乎所有投影中從一個量化級別跳到另一量化級別的“噪音”,因而權(quán)重不會朝著最小化最終分類層處的最小二乘方而穩(wěn)定化。因此,該系統(tǒng)和方法不僅有用于降低任何深度學習流水線的能耗,而且對于任何學習來說,關(guān)鍵是,首先發(fā)生何時學習權(quán)重并且僅按低精度存儲。
(4.1)具體示例實現(xiàn)
稀疏推理模塊可以應用于例如卷積神經(jīng)網(wǎng)絡(luò)(cnn:convolutionneuralnetwork),以證明盡管貫穿流水線的權(quán)重的數(shù)值精度低(<6比特),但識別能力未被削弱的益處。圖5描繪了示例cnn,其包括大小為64×64像素(或任何其它合適大小)的輸入層500(即,圖像塊(patch)),其在該示例中登記圖像芯片的灰度級圖像;每個皆具有20個特征信道的交替特征匹配層(502、504)和池化層(506、508)的兩個級聯(lián)級;以及6個類別單元的輸出類別層510。在這個示例中,第一特征匹配層502包括二十個60×60像素圖,第一池化層506包括二十個20×20像素圖,第二特征匹配層504包括二十個16×16像素圖,以及第二池化層508包括二十個6×6像素圖。第二特征匹配層504中的每個圖接收來自第一池化層506中的所有特征信道的輸入。兩個池化層506和508都通過計算20個圖中的每個圖中的3×3像素未交疊空間窗口的平均值,來對其輸入匹配層(即,分別為502和504)進行子采樣。匹配層502和504與池化層506和508之間的s形(sigmoidal)非線性有助于全局地抑制噪聲并且還限制單元活動。
換句話說,cnn接收圖像塊作為輸入層500。在第一特征匹配層502中,圖像塊與一組過濾器進行卷積,以生成對應的一組特征圖。每個過濾器還具有相關(guān)聯(lián)的偏置項,并且卷積輸出通常穿過壓縮非線性模塊,如s形?!皟?nèi)核”是指卷積步驟中使用的過濾器。在這個示例中,5×5像素是第一特征匹配層502中的每個內(nèi)核的大小(在該特定實現(xiàn)中)。所得到的卷積輸出被提供給第一池化層506,其利用平均池化(即,輸入中的像素塊被平均化,以在輸出中生成單個像素的池化模塊)來下采樣卷積輸出。在這個示例中,3×3像素是用于平均化的鄰域的大小(對于該特定實現(xiàn)來說,總共9個像素)。這發(fā)生于每個特定信道內(nèi)。第一池化層506輸出在第二特征匹配層504中被接收,其中,它們與在跨特征信道操作的一組過濾器進行卷積,以生成對應的一組較高級別的特征圖。如在第一特征匹配層502中,每組過濾器還具有相關(guān)聯(lián)的偏置項,并且卷積輸出穿過壓縮非線性模塊,如s形。然后,第二池化層508執(zhí)行與第一池化層506相同的操作;然而,該操作發(fā)生在每個特征信道內(nèi)(與第二特征匹配層504不同)。類別層510將來自第二池化層508的池化分層輸出映射至針對各個類別的神經(jīng)元(例如,六個神經(jīng)元)編碼。換句話說,類別層510具有用于每個識別類別(例如,汽車、卡車、公共汽車等)的一個輸出神經(jīng)元。類別層(例如,分類器)510提供對該類別層中的輸入的最終分類,其中最高活動被認為是輸入圖像的分類。
在這個示例中的cnn以錯誤反向傳播來訓練達一個歷元(epoch),其包括:從由針對stanfordtower數(shù)據(jù)集的訓練序列的、基于光譜突起的對象檢測前端檢測的盒子中隨機采樣的100000個示例。所提出的例子展示了跨所有序列的6個類別的基本評分(rate)(“汽車”、“卡車”、“公共汽車”、“人”、“騎車人”以及“背景”):分別為11.15%、0.14%、0.44%、19.34%、8.93%以及60%。經(jīng)訓練的cnn針對10000個盒子的代表子集進行評估,其隨機從通過針對stanfordtower數(shù)據(jù)集測試序列的前端檢測的那些隨機采樣,這粗略維持了正在考慮的類別的基本評分。為了評估,使用稱作加權(quán)歸一化多目標閾值化檢測準確度(wnmotda:weightednormalizedmultipleobjectthresholdeddetectionaccuracy)的指標(參見參考文獻no.4)。wnmotda得分定義如下:
1.首先跨所有圖像芯片,針對5個對象類別(“汽車”、“卡車”、“公共汽車”、“人”、“騎車人”)中的每個計算歸一化多對象閾值化檢測準確度(nmotda)得分:
nmotda利用關(guān)聯(lián)成本cm和cfa來懲罰未命中和虛假警報(每個都設(shè)置成值1),其根據(jù)該類別的地面真實實例的數(shù)量進行歸一化。nmotda得分范圍從-∞到1。當系統(tǒng)不做任何事情時,它們?yōu)?;即,未命中給定類別的所有對象,并且沒有虛假警報。對象錯誤分類被認為針對是地面真實類別的未命中,但不是系統(tǒng)輸出類別的虛假警報。然而,被錯誤分類為5個對象類別之一的“背景”圖像芯片被視為虛假警報。
2.然后利用它們在測試集中的歸一化頻率fi(0與1之間),根據(jù)跨5個對象類別的nmotda得分的加權(quán)平均來計算單個性能得分:
wnmotda=∑fi·nmotdai
然后,利用4位的精度來量化特征匹配層502和504中的學習權(quán)重,并將其硬布線成稱作“非稀疏goldcnn”的cnn新版本中。
本發(fā)明通過將稀疏化處理或稀疏推理模塊添加到上述每個層中,來改進典型的cnn或其他深度學習處理,使得每個層的輸出是通過稀疏化處理的一組“活動”或數(shù)值,從而改進每層的結(jié)果輸出。因此,在根據(jù)本發(fā)明的原理的各種實施方式中,上述每個層(參照圖5)并入如圖3描繪的稀疏推理模塊304。這在圖6中進一步闡明,其描繪了并入稀疏推理模塊304的稀疏cnn流的高級示意圖。因此,稀疏推理模塊接著被應用于常規(guī)cnn(參見圖6),并且為每個層中的稀疏化提供與上述相同的訓練,其中參數(shù)k=10%。在這個步驟中,該權(quán)重仍作為常規(guī)cnn,以雙倍精度來學習。雖然每層中的所有20個特征信道被采用于常規(guī)cnn,但在訓練期間應用稀疏推理模塊逐漸自選每一層中的、專門參與圖像芯片高級分類的信道子集。
為了進一步理解,圖6描繪了稀疏cnn流的高級示意圖,示出了稀疏推理模塊304如何并入各個層中以改進相關(guān)輸出。在這種情況下,第一特征匹配層601包括過濾器組600和隨后的壓縮非線性模塊602(如s形)。獨特地,特征匹配層601還包括稀疏推理模塊304。另外,第一池化層605包括池化模塊604(其利用平均池化來對卷積輸出下采樣)和稀疏推理模塊304。第二特征匹配層603接著包括一過濾器組600、隨后的壓縮非線性模塊602,以及稀疏推理模塊304。最后,第二池化層607包括池化模塊604和稀疏推理模塊304,并且輸出提供給類別層612(例如,分類器),其可以利用用于分類的地面真實(gt:groundtruth)注釋來指配標簽610。如圖6中清楚地描繪的,稀疏推理模塊304可以被并入任何多維信號處理流水線,其針對任意信號模式(例如,音頻、圖像、視頻)操作,以通過利用多個分層特征信道自適應地提取信息來識別它們的類別。
圖7加亮顯示稀疏推理模塊的屬性,其導致自選每層中的、專門參與圖像芯片的高級分類信道子集。圖7例示了針對第一匹配層601的該屬性。一旦完成了歷元訓練,再次利用4位的精度來量化第一匹配層601和第二匹配層603中的權(quán)重,并將其硬布線成剛才稱作“goldcnn”的另一cnn新版本。針對“非稀疏goldcnn”或者“goldcnn”的訓練包括:僅以非常低的雙精度學習從最終池化層607至輸出類別層612的投影的權(quán)重的學習。用于表示類別層612權(quán)重的比特數(shù)以一為步距從3至12改變,并且概率舍入接通或斷開。貫穿這些新流水線中的單元活動以3比特來量化。
換句話說,圖7描繪了第一特征匹配層601中的20個特征圖700中的單元活動,其由利用20個不同過濾器卷積一圖像而得出,其中每個像素被稱為一單元。每個單元都是特征信道內(nèi)的位置。通過利用特定特征內(nèi)核/過濾器來卷積圖像塊701獲取的單元活動導致對應的特征圖。換句話說,如果在圖像塊702上操作有20個特征內(nèi)核,則將獲取20個功能圖700,或20個特征信道中的活動圖。色標尺704描繪單元活化(cellactivation)。在各個實施方式中,單元活化是卷積、添加偏置項、應用非線性、以及跨給定層中的每個位置處的特征信道稀疏化的結(jié)果。單元活化繼續(xù)成為后續(xù)層的輸入。
應注意到,在該示例中,選擇了20個特征信道。然而,所選信道的數(shù)量是基于希望特征數(shù)的任意選擇。采用推理模塊的另一個結(jié)果是自動修剪每個階段的特征信道的數(shù)量,而不會影響整體分類性能。
圖8示出了cnn的各個方面對于測試集的性能的影響。模擬結(jié)果清楚地表明,goldcnn800(其由本發(fā)明驅(qū)動,如包括稀疏推理模塊)在具有概率舍入的非常低的數(shù)值精度(即,3或4比特)下,在wnmotda得分方面勝過常規(guī)cnn802(即,沒有稀疏推理模塊)大約50%。
最后,雖然本發(fā)明已經(jīng)根據(jù)幾個實施方式進行了描述,但本領(lǐng)域普通技術(shù)人員應當容易地認識到本發(fā)明在其它環(huán)境中可以具有其它應用。應注意到,許多實施方式和實施都是可以的。而且,所附的權(quán)利要求書絕不是旨在將本發(fā)明的范圍限制成上述具體實施方式。另外,“用于…的裝置(means)”的任何陳述都旨在喚起對部件和權(quán)利要求的裝置加功能的解讀,而不具體使用陳述“用于…的裝置(means)”的任何部件不是旨在被解讀為裝置加功能組件,即使權(quán)利要求以其它方式包括了單詞“裝置(means)”。而且,雖然已經(jīng)按特定次序陳述了特定的方法步驟,但該方法步驟可以按任何希望次序發(fā)生并且落入本發(fā)明的范圍內(nèi)。