h1_key

當(dāng)前位置:首頁(yè) >新聞資訊 > 技術(shù)文章>詳析卷積神經(jīng)網(wǎng)絡(luò)CNN的特性和應(yīng)用
詳析卷積神經(jīng)網(wǎng)絡(luò)CNN的特性和應(yīng)用
2023-03-30 578次

 一、神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過(guò)程

  前文中討論的CIFAR網(wǎng)絡(luò)由不同層的神經(jīng)元組成。如圖1所示,32 × 32像素的圖像數(shù)據(jù)被呈現(xiàn)給網(wǎng)絡(luò)并通過(guò)網(wǎng)絡(luò)層傳遞。CNN處理過(guò)程的第一步就是提取待區(qū)分對(duì)象的特性和結(jié)構(gòu),這需要借助濾波器矩陣實(shí)現(xiàn)。設(shè)計(jì)人員對(duì)CIFAR網(wǎng)絡(luò)進(jìn)行建模后,由于最初無(wú)法確定這些濾波器矩陣,因此這個(gè)階段的網(wǎng)絡(luò)無(wú)法檢測(cè)模式和對(duì)象。

  為此,首先需要確定濾波器矩陣的所有參數(shù),以最大限度地提高檢測(cè)對(duì)象的精度或最大限度地減少損失函數(shù)。這個(gè)過(guò)程就稱(chēng)為神經(jīng)網(wǎng)絡(luò)訓(xùn)練。前文所描述的常見(jiàn)應(yīng)用在開(kāi)發(fā)和測(cè)試期間只需對(duì)網(wǎng)絡(luò)進(jìn)行一次訓(xùn)練就可以使用,無(wú)需再調(diào)整參數(shù)。如果系統(tǒng)對(duì)熟悉的對(duì)象進(jìn)行分類(lèi),則無(wú)需額外訓(xùn)練;當(dāng)系統(tǒng)需要對(duì)全新的對(duì)象進(jìn)行分類(lèi)時(shí),才需要額外進(jìn)行訓(xùn)練。

  進(jìn)行網(wǎng)絡(luò)訓(xùn)練需要使用訓(xùn)練數(shù)據(jù)集,并使用類(lèi)似的一組測(cè)試數(shù)據(jù)集來(lái)測(cè)試網(wǎng)絡(luò)的精度。例如CIFAR-10網(wǎng)絡(luò)數(shù)據(jù)集為十個(gè)對(duì)象類(lèi)的圖像集合:飛機(jī)、汽車(chē)、鳥(niǎo)、貓、鹿、狗、青蛙、馬、輪船和卡車(chē)。我們必須在訓(xùn)練CNN之前對(duì)這些圖像進(jìn)行命名,這也是人工智能應(yīng)用開(kāi)發(fā)過(guò)程中最為復(fù)雜的部分。本文討論的訓(xùn)練過(guò)程采用反向傳播的原理,即向網(wǎng)絡(luò)連續(xù)展示大量圖像,并且每次都同時(shí)傳送一個(gè)目標(biāo)值。本例的目標(biāo)值為圖像中相關(guān)的對(duì)象類(lèi)。在每次顯示圖像時(shí),濾波器矩陣都會(huì)被優(yōu)化,這樣對(duì)象類(lèi)的目標(biāo)值就會(huì)和實(shí)際值相匹配。完成此過(guò)程的網(wǎng)絡(luò)就能夠檢測(cè)出訓(xùn)練期間從未看到過(guò)的圖像中的對(duì)象。

  

 

1.CIFAR CNN架構(gòu)


  

 

2.由前向傳播和反向傳播組成的訓(xùn)練循環(huán)

 

  二、過(guò)擬合和欠擬合

在神經(jīng)網(wǎng)絡(luò)的建模過(guò)程中經(jīng)常會(huì)出現(xiàn)的問(wèn)題是:神經(jīng)網(wǎng)絡(luò)應(yīng)該有多少層,或者是神經(jīng)網(wǎng)絡(luò)的濾波器矩陣應(yīng)該有多大。回答這個(gè)問(wèn)題并非易事,因此討論網(wǎng)絡(luò)的過(guò)擬合和欠擬合至關(guān)重要。過(guò)擬合由模型過(guò)于復(fù)雜以及參數(shù)過(guò)多而導(dǎo)致。我們可以通過(guò)比較訓(xùn)練數(shù)據(jù)集和測(cè)試數(shù)據(jù)集的損失來(lái)確定預(yù)測(cè)模型與訓(xùn)練數(shù)據(jù)集的擬合程度。如果訓(xùn)練期間損失較低并且在向網(wǎng)絡(luò)呈現(xiàn)從未顯示過(guò)的測(cè)試數(shù)據(jù)時(shí)損失過(guò)度增加,這就強(qiáng)烈表明網(wǎng)絡(luò)已經(jīng)記住了訓(xùn)練數(shù)據(jù)而不是在實(shí)施模式識(shí)別。此類(lèi)情況主要發(fā)生在網(wǎng)絡(luò)的參數(shù)存儲(chǔ)空間過(guò)大或者網(wǎng)絡(luò)的卷積層過(guò)多的時(shí)候。這種情況下應(yīng)當(dāng)縮小網(wǎng)絡(luò)規(guī)模。

 

 三、損失函數(shù)和訓(xùn)練算法

  學(xué)習(xí)分兩個(gè)步驟進(jìn)行。第一步,向網(wǎng)絡(luò)展示圖像,然后由神經(jīng)元網(wǎng)絡(luò)處理這些圖像生成一個(gè)輸出矢量。輸出矢量的最大值表示檢測(cè)到的對(duì)象類(lèi),例如示例中的"狗",該值不一定是正確的。這一步稱(chēng)為前向傳播。

  目標(biāo)值與輸出時(shí)產(chǎn)生的實(shí)際值之間的差值稱(chēng)為損失,相關(guān)函數(shù)則稱(chēng)為損失函數(shù)。網(wǎng)絡(luò)的所有要素和參數(shù)均包含在損失函數(shù)中。神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)過(guò)程旨在以最小化損失函數(shù)的方式定義這些參數(shù)。這種最小化可通過(guò)反向傳播的過(guò)程實(shí)現(xiàn)。在反向傳播的過(guò)程中,輸出產(chǎn)生的偏置(損失 = 目標(biāo)值-實(shí)際值)通過(guò)網(wǎng)絡(luò)的各層反饋,直至達(dá)到網(wǎng)絡(luò)的起始層。

因此,前向傳播和反向傳播在訓(xùn)練過(guò)程中產(chǎn)生了一個(gè)可以逐步確定濾波器矩陣參數(shù)的循環(huán)。這種循環(huán)過(guò)程會(huì)不斷重復(fù),直至損失值降至一定程度以下。

 

  四、優(yōu)化算法、梯度和梯度下降法

  為說(shuō)明訓(xùn)練過(guò)程,圖3顯示了一個(gè)包含x和y兩個(gè)參數(shù)的損失函數(shù)的示例,這里z軸對(duì)應(yīng)于損失。如果我們仔細(xì)查看該損失函數(shù)的三維函數(shù)圖,我們就會(huì)發(fā)現(xiàn)這個(gè)函數(shù)有一個(gè)全局最小值和一個(gè)局部最小值。

  目前,有大量數(shù)值優(yōu)化算法可用于確定權(quán)重和偏置。其中,梯度下降法最為簡(jiǎn)單。梯度下降法的理念是使用梯度算子在逐步訓(xùn)練的過(guò)程中找到一條通向全局最小值的路徑,該路徑的起點(diǎn)從損失函數(shù)中隨機(jī)選擇。梯度算子是一個(gè)數(shù)學(xué)運(yùn)算符,它會(huì)在損失函數(shù)的每個(gè)點(diǎn)生成一個(gè)梯度矢量。該矢量的方向指向函數(shù)值變化最大的方向,幅度對(duì)應(yīng)于函數(shù)值的變化程度。在圖3的函數(shù)中,右下角(紅色箭頭處)由于表面平坦,因此梯度矢量的幅度較小。而接近峰值時(shí)的情況則完全不同。此處矢量(綠色箭頭)的方向急劇向下,并且由于此處高低差明顯,梯度矢量的幅度也較大。

  

 

  圖3.使用梯度下降法確定到最小值的不同路徑


  因此我們可以利用梯度下降法從任意選定的起點(diǎn)開(kāi)始以迭代的方式尋找下降至山谷的最陡峭路徑。這意味著優(yōu)化算法會(huì)在起點(diǎn)計(jì)算梯度,并沿最陡峭的下降方向前進(jìn)一小步。之后算法會(huì)重新計(jì)算該點(diǎn)的梯度,繼續(xù)尋找創(chuàng)建一條從起點(diǎn)到山谷的路徑。這種方法的問(wèn)題在于起點(diǎn)并非是提前定義的,而是隨機(jī)選擇的。在我們的三維地圖中,某些細(xì)心的讀者會(huì)將起點(diǎn)置于函數(shù)圖左側(cè)的某個(gè)位置,以確保路徑的終點(diǎn)為全局最小值(如藍(lán)色路徑所示)。其他兩個(gè)路徑(黃色和橙色)要么非常長(zhǎng),要么終點(diǎn)位于局部最小值。但是,算法必須對(duì)成千上萬(wàn)個(gè)參數(shù)進(jìn)行優(yōu)化,顯然起點(diǎn)的選擇不可能每次都碰巧正確。在具體實(shí)踐中,這種方法用處不大。因?yàn)樗x擇的起點(diǎn)可能會(huì)導(dǎo)致路徑(即訓(xùn)練時(shí)間)較長(zhǎng),或者目標(biāo)點(diǎn)并不位于全局最小值,導(dǎo)致網(wǎng)絡(luò)的精度下降。

  因此,為避免上述問(wèn)題,過(guò)去幾年已開(kāi)發(fā)出大量可作為替代的優(yōu)化算法。一些替代的方法包括隨機(jī)梯度下降法、動(dòng)量法、AdaGrad方法、RMSProp方法、Adam方法等。鑒于每種算法都有其特定的優(yōu)缺點(diǎn),實(shí)踐中具體使用的算法將由網(wǎng)絡(luò)開(kāi)發(fā)人員決定。


  五、訓(xùn)練數(shù)據(jù)

  在訓(xùn)練過(guò)程中,我們會(huì)向網(wǎng)絡(luò)提供標(biāo)有正確對(duì)象類(lèi)的圖像,如汽車(chē)、輪船等。本例使用了已有的 CIFAR-10 dataset。當(dāng)然,在具體實(shí)踐中,人工智能可能會(huì)用于識(shí)別貓、狗和汽車(chē)之外的領(lǐng)域。這可能需要開(kāi)發(fā)新應(yīng)用,例如檢測(cè)制造過(guò)程中螺釘?shù)馁|(zhì)量必須使用能夠區(qū)分好壞螺釘?shù)挠?xùn)練數(shù)據(jù)對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。創(chuàng)建此類(lèi)數(shù)據(jù)集極其耗時(shí)費(fèi)力,往往是開(kāi)發(fā)人工智能應(yīng)用過(guò)程中成本最高的一步。編譯完成的數(shù)據(jù)集分為訓(xùn)練數(shù)據(jù)集和測(cè)試數(shù)據(jù)集。訓(xùn)練數(shù)據(jù)集用于訓(xùn)練,而測(cè)試數(shù)據(jù)則用于在開(kāi)發(fā)過(guò)程的最后檢查訓(xùn)練好的網(wǎng)絡(luò)的功能。

 

  • XILINX賽靈思 XC7K160T-2FBG484E
  • 賽靈思(XILINX)作為行業(yè)的領(lǐng)軍企業(yè),其推出的 XC7K160T-2FBG484E 更是一款備受矚目的產(chǎn)品。XC7K160T-2FBG484E 屬于賽靈思 7 系列 FPGA(現(xiàn)場(chǎng)可編程門(mén)陣列),具有強(qiáng)大的性能和豐富的功能。
    2024-09-25 89次
  • XILINX賽靈思 XCKU085-2FLVA1517E
  • 賽靈思(XILINX)作為全球領(lǐng)先的可編程邏輯器件供應(yīng)商,其推出的 XCKU085-2FLVA1517E 以卓越的性能和豐富的功能,成為眾多電子工程師和設(shè)計(jì)師的首選。XCKU085-2FLVA1517E 屬于賽靈思 UltraScale 架構(gòu)系列產(chǎn)品,采用先進(jìn)的 20 納米工藝技術(shù)制造。這一工藝不僅帶來(lái)了更高的性能,還實(shí)現(xiàn)了更低的功耗,為各種復(fù)雜的電子系統(tǒng)設(shè)計(jì)提供了理想的解決方案。
    2024-09-25 73次
  • XILINX賽靈思 XCKU060-1FFVA1517C
  • 賽靈思(XILINX)作為全球領(lǐng)先的可編程邏輯解決方案供應(yīng)商,其 XCKU060-1FFVA1517C 更是一款備受矚目的產(chǎn)品。XCKU060-1FFVA1517C 屬于賽靈思 UltraScale 架構(gòu)系列,采用了先進(jìn)的 16 納米 FinFET 工藝技術(shù)。這一工藝帶來(lái)了諸多優(yōu)勢(shì),如更高的性能、更低的功耗以及更小的芯片尺寸。
    2024-09-25 81次
  • XILINX賽靈思 XCKU060-2FFVA1517E
  • 賽靈思(XILINX)作為行業(yè)的領(lǐng)軍企業(yè),其推出的 XCKU060-2FFVA1517E 更是一款備受矚目的產(chǎn)品。XCKU060-2FFVA1517E 屬于賽靈思 UltraScale 架構(gòu)系列的 FPGA(現(xiàn)場(chǎng)可編程門(mén)陣列)。它融合了先進(jìn)的技術(shù)和強(qiáng)大的性能,為各種復(fù)雜的應(yīng)用場(chǎng)景提供了高度靈活且可靠的解決方案。
    2024-09-25 68次
  • XILINX賽靈思 XC7Z035-3FFG676E
  • 賽靈思(XILINX)作為全球領(lǐng)先的可編程邏輯解決方案供應(yīng)商,其 XC7Z035-3FFG676E 更是一款備受矚目的產(chǎn)品。XC7Z035-3FFG676E 屬于賽靈思 Zynq - 7000 系列,該系列將處理器系統(tǒng)(PS)和可編程邏輯(PL)完美結(jié)合,為用戶提供了高度靈活的解決方案。這款器件采用了先進(jìn)的 28 納米工藝技術(shù),在性能、功耗和成本之間實(shí)現(xiàn)了出色的平衡。
    2024-09-25 68次

    萬(wàn)聯(lián)芯微信公眾號(hào)

    元器件現(xiàn)貨+BOM配單+PCBA制造平臺(tái)
    關(guān)注公眾號(hào),優(yōu)惠活動(dòng)早知道!
    10s
    溫馨提示:
    訂單商品問(wèn)題請(qǐng)移至我的售后服務(wù)提交售后申請(qǐng),其他需投訴問(wèn)題可移至我的投訴提交,我們將在第一時(shí)間給您答復(fù)
    返回頂部