王海寬
(晉城職業(yè)技術(shù)學(xué)院,山西 晉城 048026)
目前在深度學(xué)習(xí)的計(jì)算機(jī)視覺(jué)之下,在對(duì)圖像進(jìn)行識(shí)別的時(shí)候往往采取檢測(cè)、對(duì)比和分類(lèi)的方式展開(kāi)。在檢測(cè)的時(shí)候,一方面要保證物體上具有十分清晰的標(biāo)簽,另一方面,要求采取合適的方式將物體具體位置標(biāo)注清楚,以簡(jiǎn)單的操作來(lái)避免在后期處理期間出現(xiàn)大量人力資源和物力資源消耗。就某些實(shí)際場(chǎng)景而言,例如在自動(dòng)駕駛環(huán)境下,需要對(duì)過(guò)往的行人和行駛的車(chē)輛作出檢測(cè),明確目標(biāo)所在位置?;谟?jì)算機(jī)視覺(jué)領(lǐng)域任務(wù)不同,在解釋弱監(jiān)督學(xué)習(xí)時(shí)也有所不同,基本上分為以下兩種:第一種是對(duì)于圖像中所出現(xiàn)的物體進(jìn)行標(biāo)明;第二種是模型在學(xué)習(xí)的過(guò)程當(dāng)中,僅僅是將物體存在的相關(guān)信息提供給設(shè)備,而不必將物體真實(shí)出現(xiàn)的位置提供給設(shè)備。詳細(xì)地說(shuō),便是識(shí)別算法僅僅需要將目標(biāo)視域下的物體數(shù)量和類(lèi)別作出感應(yīng)即可。基于此種數(shù)據(jù)集所獲得的模型可以順利地推斷出全新的數(shù)據(jù)信息,直接將目標(biāo)的數(shù)量和種類(lèi)計(jì)算得出。
當(dāng)神經(jīng)網(wǎng)絡(luò)加深時(shí),則表明神經(jīng)網(wǎng)絡(luò)在表示具有復(fù)雜性的特征時(shí),會(huì)表現(xiàn)出更好的能力。但是,若只是將網(wǎng)絡(luò)的深度采取加深處理,也會(huì)在一定程度上導(dǎo)致在反向傳播的算法之中發(fā)生梯度傳播的異常現(xiàn)象,最終得到的結(jié)果是訓(xùn)練的神經(jīng)網(wǎng)絡(luò)失去效果。若是想要解決這種問(wèn)題,那么靈活性地運(yùn)用BatchNormalization方法或者是權(quán)重初始化的方法便是最好的解決方案。但是,即使是有了這兩種方法,若是持續(xù)加深網(wǎng)絡(luò)深度,模型訓(xùn)練結(jié)果的準(zhǔn)確性也不會(huì)再次被提升,甚至準(zhǔn)確率出現(xiàn)不同程度的下降,這種現(xiàn)象為訓(xùn)練準(zhǔn)確率下降。根據(jù)退化結(jié)果顯示,想要對(duì)深層模型展開(kāi)合理化的訓(xùn)練,面臨較大的困難。于是ResNet為解決出現(xiàn)的深度學(xué)習(xí)模型退化的問(wèn)題,提出了殘差學(xué)習(xí)法。
將輸入的數(shù)據(jù)假設(shè)為x,普遍情況下神經(jīng)網(wǎng)絡(luò)在學(xué)習(xí)映射H(x)的過(guò)程中,需要借助于幾個(gè)不同的堆疊層。ResNet學(xué)習(xí)的內(nèi)容是神經(jīng)網(wǎng)絡(luò)模型映射與輸出時(shí)所產(chǎn)生的殘差,即:
將公式1.1變換形式,得到的結(jié)果如下所示:
盡管在計(jì)算的環(huán)節(jié)之中,這兩種方法表示的內(nèi)容呈等價(jià)形式,但是通過(guò)實(shí)際的試驗(yàn)結(jié)果得知,在訓(xùn)練的時(shí)候,運(yùn)用殘差學(xué)習(xí)更加容易。ResNet的殘差學(xué)習(xí)法在研究的時(shí)候,通過(guò)使用幾個(gè)不同的堆疊殘差模塊表示出來(lái),可以把殘差結(jié)果的形式轉(zhuǎn)化成為以下方式:
y=F(x,{Wi})+x (公式1.3)
在公式1.3當(dāng)中,F(xiàn)(x,{Wi})所表示的含義主要是需要進(jìn)行學(xué)習(xí)的殘差映射。
通過(guò)圖1可以得知,殘差映射的結(jié)構(gòu)總共有兩層,可以對(duì)其表示如下:
圖1 學(xué)習(xí)殘差結(jié)構(gòu)圖
公式1.4中,a所表示的含義為Relu激活函數(shù)。在圖1.1之中,總共劃分成為兩層,在實(shí)現(xiàn)ResNet殘差學(xué)習(xí)的時(shí)候,大量的選擇運(yùn)用了兩層殘差結(jié)構(gòu)或者是三層殘差結(jié)構(gòu),但是在實(shí)際ResNet殘差學(xué)習(xí)過(guò)程中,卻沒(méi)有對(duì)數(shù)量的限制問(wèn)題。若是僅僅有一層的時(shí)候,那么殘差結(jié)構(gòu)將會(huì)類(lèi)比為一個(gè)線(xiàn)性層,所以在分析環(huán)節(jié),已經(jīng)不再有必要可用單層殘差結(jié)構(gòu)。
F(x)+x在ResNet殘差學(xué)習(xí)實(shí)現(xiàn),需要通過(guò)連接shortcut元素和相加逐元素,將其相加以后,獲得的結(jié)果將會(huì)在下一個(gè)Relu激活函數(shù)中被使用。從本質(zhì)上而言,shortcut連接所實(shí)現(xiàn)的功能是恒等映射(Indentity Map)在模型當(dāng)中輸入的x值。倘若是情況相對(duì)比較計(jì)算,那么獲得的殘差F(x)結(jié)果將會(huì)為零,從而導(dǎo)致整個(gè)殘差模塊只能夠完成一次恒等映射。這種現(xiàn)象是受神經(jīng)網(wǎng)絡(luò)直接決定的。假如x與F(x)所處的維度存在差異,那么在促使兩個(gè)數(shù)值的維度相同的時(shí)候,可以借助于公式1.5:
但是通過(guò)ResNet殘差學(xué)習(xí)的試驗(yàn)結(jié)果可以得到,在解決退化的問(wèn)題中,運(yùn)用恒等映射具有積極作用,同時(shí)還相對(duì)比較簡(jiǎn)單,在計(jì)算的時(shí)候,復(fù)雜度低且計(jì)算量不高。ResNet殘差學(xué)習(xí)結(jié)構(gòu)能夠?yàn)樯疃葘W(xué)習(xí)模型退化的問(wèn)題提供解決方案。ResNet殘差學(xué)習(xí)模型在ImageNet數(shù)據(jù)集之上,最深能夠達(dá)到152層,并且擁有相對(duì)較高的準(zhǔn)確率。
損失函數(shù)(Loss Function)衡量模型所表現(xiàn)出的含義為選擇樣本X標(biāo)簽y和預(yù)測(cè)值Y之間的差異化程度,其中X的取值為{x1,x2,……,xn},y的取值為{y1,y2,……,yn},Y的取值為{Y1,Y2,……,Yn},損失函數(shù)模型差異程度的結(jié)果記作L(Y,y)。經(jīng)過(guò)計(jì)算得知,損失函數(shù)所獲得的結(jié)果為非負(fù)數(shù),函數(shù)結(jié)果的幅值和預(yù)測(cè)的準(zhǔn)確度兩者之間呈現(xiàn)出負(fù)相關(guān)關(guān)系。在分析損失函數(shù)的時(shí)候,最為常用的類(lèi)型基本上可以分為以下幾種。
第一,0-1損失函數(shù)(0-1 Loss Function),其表現(xiàn)形式如下所示:
第二,平方損失函數(shù)(Quadratic Loss Function),其表現(xiàn)形式如下所示:
第三,絕對(duì)損失函數(shù)(Absolute Loss Function),其表現(xiàn)形式如下所示:
第四,對(duì)數(shù)損失函數(shù)(Logarithmic Loss Function),其表現(xiàn)形式如下所示:
以計(jì)算機(jī)視覺(jué)所特定的任務(wù)作為出發(fā)點(diǎn),在實(shí)施任務(wù)的時(shí)候要以特定編碼方式作為依據(jù),進(jìn)而能夠快速且準(zhǔn)確地得到損失函數(shù)的標(biāo)簽y。
在機(jī)器的學(xué)習(xí)環(huán)節(jié),一般情況下在實(shí)現(xiàn)某個(gè)特定任務(wù)的時(shí)候,需要對(duì)單個(gè)模型展開(kāi)優(yōu)化和設(shè)計(jì),比如想要實(shí)現(xiàn)圖像分類(lèi)任務(wù),可以通過(guò)CNN設(shè)計(jì)實(shí)現(xiàn)目標(biāo)。大多數(shù)情況下,為了切實(shí)保障設(shè)計(jì)與學(xué)習(xí)環(huán)節(jié)獲得良好的效果,提升結(jié)果的準(zhǔn)確度。另外,在對(duì)預(yù)測(cè)結(jié)果實(shí)施優(yōu)化期間,還可選擇應(yīng)用集成學(xué)習(xí)(Ensemble Leaning)的策略,從而實(shí)現(xiàn)優(yōu)化的目標(biāo)。在保證其他任務(wù)環(huán)節(jié)處理妥帖的時(shí)候,使用遷移學(xué)習(xí)法(Transfer Leaning)快速獲取模型。利用多任務(wù)識(shí)別(Multi-Task Leaning)對(duì)不同任務(wù)共性和相似展開(kāi)識(shí)別的能力,完成對(duì)不同的任務(wù)進(jìn)行學(xué)習(xí)的目的,完成訓(xùn)練的模型具備處理多種任務(wù)的能力。
在深度學(xué)習(xí)的領(lǐng)域當(dāng)中,多任務(wù)學(xué)習(xí)需要以相關(guān)指標(biāo)作為依據(jù),劃分成兩個(gè)層面。第一種是隱含層的硬件參數(shù)共享(Hard Parameters Sharing),第二種是隱含層的軟件參數(shù)共享(Soft Parameters Sharing)。神經(jīng)網(wǎng)絡(luò)中,硬參數(shù)共享是使用較為頻繁的方法,這種方法的使用能夠?qū)崿F(xiàn)對(duì)不同操作任務(wù)實(shí)施共享權(quán)重的目的,在任務(wù)之中完成對(duì)于不同輸出層的添加工作。[1]在軟參數(shù)共享當(dāng)中,所有的任務(wù)都具有獨(dú)特的參數(shù)和模型,但是在實(shí)際的運(yùn)用環(huán)節(jié),會(huì)因?yàn)椴糠执胧┑氖褂冒l(fā)現(xiàn)參數(shù)之間存在的相似性。
構(gòu)建的模型,其主要目標(biāo)是將圖像之中所出現(xiàn)目標(biāo)的不同種類(lèi)、種類(lèi)的不同數(shù)量展開(kāi)快速識(shí)別。就識(shí)別目標(biāo)種類(lèi)的時(shí)候,是分類(lèi)標(biāo)簽的過(guò)程,識(shí)別目標(biāo)數(shù)量,則是屬于回歸性質(zhì)的問(wèn)題。[2]
訓(xùn)練和推斷深度神經(jīng)網(wǎng)絡(luò)的時(shí)候,CPU所具備的計(jì)算結(jié)構(gòu)是多核且并行的,流處理器的數(shù)量在普遍情況下能夠達(dá)到數(shù)千個(gè),在深度學(xué)習(xí)的環(huán)節(jié)之中,可以實(shí)現(xiàn)矩陣計(jì)算的優(yōu)化目標(biāo),表現(xiàn)出良好的可行性。[3]
行為識(shí)別模型在構(gòu)建的時(shí)候,其訓(xùn)練集則是運(yùn)用了開(kāi)源的MERL Shopping Dataset,并且構(gòu)建完成的模型可以在便利店中進(jìn)行使用,通過(guò)觀察獲得模型的良好表現(xiàn)結(jié)果。[4]
MERL Shopping Dataset的組成是106段大約有兩分鐘時(shí)間長(zhǎng)度的視頻,三部分分別為訓(xùn)練集部分、驗(yàn)證集部分、測(cè)試集部分。利用MERL Shopping Dataset嚴(yán)格劃分了數(shù)據(jù)集,為后期的對(duì)比效果獲取提供便利。另外對(duì)訓(xùn)練完好的模型投放進(jìn)入真實(shí)的環(huán)境下展開(kāi)實(shí)驗(yàn),MERL Shopping Dataset能夠?qū)υ诒憷甑恼鎸?shí)環(huán)境中展開(kāi)購(gòu)物活動(dòng)的試驗(yàn)人員,參與到試驗(yàn)活動(dòng)的相關(guān)人員,在每做出一個(gè)動(dòng)作的時(shí)候,形成細(xì)粒度(Fine-Grained),試驗(yàn)人員會(huì)在識(shí)別的范圍之內(nèi)作出五種不同的動(dòng)作,數(shù)據(jù)集便通過(guò)使用對(duì)起始幀和結(jié)束幀展開(kāi)標(biāo)準(zhǔn)的方式,對(duì)識(shí)別單位之內(nèi)的人員所表現(xiàn)出來(lái)的動(dòng)作基本類(lèi)別作出相應(yīng)的分析與識(shí)別。在本文的分析過(guò)程中,需要標(biāo)注好試驗(yàn)活動(dòng)參與人員的每個(gè)動(dòng)作,將他們的活動(dòng)行為間隔定義為episode。
就識(shí)別物體運(yùn)動(dòng)的行為而言,將運(yùn)動(dòng)信息提取完成具有至關(guān)重要的作用,在組織識(shí)別任務(wù)期間,光流法是最為有效的措施之一。這種方法基本原理是光流在運(yùn)動(dòng)期間,運(yùn)動(dòng)目標(biāo)外表保持穩(wěn)定。[5-6]FlowNet是自文獻(xiàn)資料查閱中,最早通過(guò)使用網(wǎng)絡(luò)端對(duì)端得到光流算法的,但是其實(shí)現(xiàn)的效果和具有的優(yōu)勢(shì),仍舊沒(méi)有達(dá)到傳統(tǒng)算法效果和優(yōu)勢(shì)。深化研究FlowNet研究,效果獲得了顯著提升,但是其仍舊只能在小位移的物體運(yùn)動(dòng)活動(dòng)中具有合理性。就本次研究所使用的數(shù)據(jù)集而言,后期研究得到的FlowNet所得到的效果如圖2所示:
圖2 FlowNet光流運(yùn)動(dòng)信息
識(shí)別物體行為的模型構(gòu)建是基于雙流神經(jīng)網(wǎng)絡(luò),VGG-16卷積層部分被運(yùn)用在時(shí)序流和空域流兩個(gè)部分的基礎(chǔ)網(wǎng)絡(luò)工作之中。在訓(xùn)練的時(shí)候,是將空域流和時(shí)間流分離的,但是可全部運(yùn)用交叉熵?fù)p失函數(shù)完成數(shù)據(jù)分析。在測(cè)試時(shí)序流和空域流期間,兩者的網(wǎng)絡(luò)運(yùn)行狀態(tài)處于并行狀態(tài),利用Softmax實(shí)現(xiàn)五維向量輸出,得到的結(jié)果表示六個(gè)不同類(lèi)別的置信度。本文在探究中所選擇的方式是遲融合,相加時(shí)序流和空域流兩部分網(wǎng)絡(luò)所輸出的五維向量,最終所得到的預(yù)測(cè)結(jié)果是兩部分相加結(jié)果的最大值。
在對(duì)測(cè)試結(jié)果展開(kāi)統(tǒng)計(jì)的時(shí)候,將所有的episode劃分成多個(gè)segment,所有的segment構(gòu)成全部是呈連續(xù)狀態(tài)的6幀圖像,倘若最后的episode幀數(shù)不能夠被6整除的時(shí)候,那么處于最后一段的segment將會(huì)從前面部分的segment當(dāng)中取出幾幀具有重疊現(xiàn)象的圖像,以此來(lái)湊滿(mǎn)6幀。本文在探究活動(dòng)中通過(guò)使用投票的方式對(duì)構(gòu)建的模型準(zhǔn)確率情況展開(kāi)評(píng)估,利用某段episode當(dāng)中的所有segment作為投票的依據(jù),并獲得最終的結(jié)果。
在識(shí)別物體行為的時(shí)候,其基本模型框架如圖3所示。
圖3 識(shí)別物體行為的模型框架圖
識(shí)別物體行為的模型在應(yīng)用以后,獲得的結(jié)果如表1所示:
表1 識(shí)別物體行為的模型實(shí)驗(yàn)結(jié)果表
對(duì)于物體的識(shí)別是人工智能發(fā)展的結(jié)果之一,在識(shí)別物體的領(lǐng)域中,相對(duì)而言具有新穎性和創(chuàng)新性。在識(shí)別物體時(shí)運(yùn)用物體識(shí)別技術(shù),可以借助于運(yùn)用弱監(jiān)督學(xué)習(xí)的方法展開(kāi)學(xué)習(xí)訓(xùn)練,提升物體識(shí)別系統(tǒng)在識(shí)別物品種類(lèi)和數(shù)量時(shí)的精確性,進(jìn)而有效地將視頻數(shù)據(jù)作出分類(lèi),達(dá)到識(shí)別物體的目的。