欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種神經(jīng)網(wǎng)絡訓練方法及裝置與流程

文檔序號:11323873閱讀:672來源:國知局
一種神經(jīng)網(wǎng)絡訓練方法及裝置與流程

本發(fā)明涉及計算機視覺領域,特別涉及一種神經(jīng)網(wǎng)絡訓練方法及裝置。



背景技術(shù):

近幾年來,深度神經(jīng)網(wǎng)絡在計算機視覺領域的各類應用中取得了巨大的成功,如圖像分類、目標檢測、圖像分割等。但深度神經(jīng)網(wǎng)絡的模型往往包含大量的模型參數(shù),計算量大、處理速度慢,無法在一些低功耗、低計算能力的設備(如嵌入式設備、集成設備等)上進行實時計算。

基于前述問題,最近提出了很多深度神經(jīng)網(wǎng)絡加速算法,如網(wǎng)絡剪枝、網(wǎng)絡權(quán)重量化以及網(wǎng)絡知識蒸餾等方法。

除了基于神經(jīng)元的網(wǎng)絡剪枝外,其他網(wǎng)絡剪枝方法、網(wǎng)絡權(quán)重量化方法雖然能夠有效地減少神經(jīng)網(wǎng)絡的網(wǎng)絡參數(shù),但并不能利用現(xiàn)有的深度學習框架以及設備進行加速。而網(wǎng)絡知識蒸餾方法由于其利用性能優(yōu)良的教師網(wǎng)絡(即teachernetwork,教師網(wǎng)絡的網(wǎng)絡參數(shù)量大、性能優(yōu)良、計算速度慢)提供的額外信息直接訓練計算速度快但性能較差的學生網(wǎng)絡(即studentnetwork,學生網(wǎng)絡計算速度快、性能較差、網(wǎng)絡參數(shù)量小),能夠直接利用現(xiàn)有框架取得實際加速效果,因此知識蒸餾方法成為目前較為常用的網(wǎng)絡加速方法。

目前網(wǎng)絡知識蒸餾方法主要包括三種,分別是2014年hinton等人發(fā)表的論文“distillingtheknowledgeinaneuralnetwork”中提出的knowledgedistill(簡稱kd)方法,2015年romero等人發(fā)表的論文“fitnets:hintsforthindeepnets”提出的fitnets,以及2016年sergey發(fā)表的論文“payingmoreattentiontoattention:improvingtheperformanceofconvolutionalneuralnetworksviaattentiontransfer”提出的attentiontransfer(簡稱at)方法。

將教師網(wǎng)絡用t表示,學生網(wǎng)絡用s表示。在kd中,學生網(wǎng)絡的目標函數(shù)如公式(1)所示:

式(1)中,表示cross-entropy(交叉熵)損失函數(shù),ytrue為訓練標簽,ps=softmax(ls)為學生網(wǎng)絡s的分類概率,lt、ls分別為網(wǎng)絡t與網(wǎng)絡s在softmax之前的輸出值(稱為logits),τ為一個設定值(稱為temperature),λ為遷移損失的權(quán)重。

由于上式(1)的第二項kd采用了教師網(wǎng)絡輸出概率的分布來指導學生網(wǎng)絡,在分類問題上能夠有效的提高學生網(wǎng)絡的性能。

與kd不同,fitnet采用了匹配中間特征的方法來將教師網(wǎng)絡的知識遷移到學生網(wǎng)絡中,學生網(wǎng)絡的目標函數(shù)如以下公式(2)所示:

式(2)中,以及分別表示教師網(wǎng)絡以及學生網(wǎng)絡某一層的特征圖(featuremap),ct與cs分別表示ft與fs的通道數(shù)(channel),h與w則為特征圖的高和寬,ft與fs的特征圖的寬高一致,若兩者的特征圖不一致需要通過簡單的差值算法以使兩者的特征圖寬高一致,為一個核大小為1×1的卷積,輸入通道個數(shù)為s,輸出通道個數(shù)為t來使得ft與的通道數(shù)匹配。

fitnet通過匹配教師網(wǎng)絡和學生網(wǎng)絡的中間層特征,將教師網(wǎng)絡中間層特征的特定知識遷移到學生網(wǎng)絡,從而提升學生網(wǎng)絡的性能。

at與fitnet的方案原理較為相似,at交教師網(wǎng)絡中的注意力圖(即attentionmap)的知識遷移到學生網(wǎng)絡以提高學生網(wǎng)絡的性能,學生網(wǎng)絡的目標函數(shù)如以下公式(3)所示:

式(3)中,為一個規(guī)范化的注意力圖映射函數(shù),其中一種最簡單的定義如以下公式(4)所示:

式(4)中,表示f第k個通道的向量化的特征圖。

現(xiàn)有技術(shù)存在的技術(shù)缺陷為:kd只能應用于擁有softmax層的分類任務中而無法適用于回歸任務,而且在類別數(shù)較少時其提供給學生網(wǎng)絡的指導信息較弱。fitnet直接匹配中間層特征的約束太過嚴格,使得無法與kd等其他方法有效地結(jié)合來訓練得到性能優(yōu)良的學生網(wǎng)絡。at訓練得到的學生網(wǎng)絡性能較差。綜上所述,采用現(xiàn)有的知識遷移方式訓練得到的學生網(wǎng)絡無法兼顧較大適用范圍與精確性。

相關術(shù)語解釋:

教師網(wǎng)絡(teachernetwork):知識遷移過程中用以為學生網(wǎng)絡提供更加準確的監(jiān)督信息的高性能神經(jīng)網(wǎng)絡。

學生網(wǎng)絡(studentnetwork):計算速度快但性能較差的適合部署到對實時性要求較高的實際應用場景中的單個神經(jīng)網(wǎng)絡,學生網(wǎng)絡相比于教師網(wǎng)絡,具有更大的運算吞吐量和更少的模型參數(shù)。



技術(shù)實現(xiàn)要素:

本發(fā)明實施例提供一種神經(jīng)網(wǎng)絡訓練方法及裝置,以解決現(xiàn)有知識遷移方式訓練得到的學生網(wǎng)絡無法兼顧較大適用范圍與精確性的技術(shù)問題。

本發(fā)明實施例,一方面提供一種神經(jīng)網(wǎng)絡訓練方法,該方法包括:

選取一個與學生網(wǎng)絡實現(xiàn)相同功能的教師網(wǎng)絡;

基于匹配同一訓練樣本數(shù)據(jù)對應的第一中間層特征與第二中間層特征的分布來迭代訓練所述學生網(wǎng)絡得到目標網(wǎng)絡,以實現(xiàn)將所述教師網(wǎng)絡的中間層特征的知識遷移到所述學生網(wǎng)絡,其中:所述第一中間層特征為所述訓練樣本數(shù)據(jù)輸入教師網(wǎng)絡后從教師網(wǎng)絡的第一特定網(wǎng)絡層輸出的特征圖,所述第二中間層特征為所述訓練樣本數(shù)據(jù)輸入學生網(wǎng)絡后從學生網(wǎng)絡的第二特定網(wǎng)絡層輸出的特征圖。

本發(fā)明實施例,另一方面提供一種神經(jīng)網(wǎng)絡訓練裝置,該裝置包括:

選取單元,用于選取一個與學生網(wǎng)絡實現(xiàn)相同功能的教師網(wǎng)絡;

訓練單元,用于基于匹配同一訓練樣本數(shù)據(jù)對應的第一中間層特征與第二中間層特征的分布來迭代訓練所述學生網(wǎng)絡得到目標網(wǎng)絡,以實現(xiàn)將所述教師網(wǎng)絡的中間層特征的知識遷移到所述學生網(wǎng)絡,其中:所述第一中間層特征為所述訓練樣本數(shù)據(jù)輸入教師網(wǎng)絡后從教師網(wǎng)絡的第一特定網(wǎng)絡層輸出的特征圖,所述第二中間層特征為所述訓練樣本數(shù)據(jù)輸入學生網(wǎng)絡后從學生網(wǎng)絡的第二特定網(wǎng)絡層輸出的特征圖。

本發(fā)明實施例提供的神經(jīng)網(wǎng)絡訓練方案,一方面,匹配教師網(wǎng)絡和學生網(wǎng)絡的中間層特征,因此訓練得到的學生網(wǎng)絡的適用范圍更廣,不局限于分類模型還可適用于回歸模型;另一方面,匹配教師網(wǎng)絡的中間層特征與學生網(wǎng)絡的中間層特征的分布,與現(xiàn)有技術(shù)直接匹配中間層所有特征的方式相比約束不嚴格,可以與其他方法有效結(jié)合來進一步提高學生網(wǎng)絡的性能,從而提高學生網(wǎng)絡的準確性。

附圖說明

附圖用來提供對本發(fā)明的進一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明的實施例一起用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的限制。

圖1為本發(fā)明實施例中神經(jīng)網(wǎng)絡訓練方法的流程圖;

圖2為本發(fā)明實施例中對學生網(wǎng)絡進行迭代訓練得到目標網(wǎng)絡的流程圖;

圖3為本發(fā)明實施例中神經(jīng)網(wǎng)絡訓練裝置的結(jié)構(gòu)示意圖;

圖4為本發(fā)明實施例中訓練單元的結(jié)構(gòu)示意圖。

具體實施方式

為了使本技術(shù)領域的人員更好地理解本發(fā)明中的技術(shù)方案,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應當屬于本發(fā)明保護的范圍。

實施例一

參見圖1,為本發(fā)明實施例中神經(jīng)網(wǎng)絡訓練方法的流程圖,該方法包括:

步驟101、選取一個與學生網(wǎng)絡實現(xiàn)相同功能的教師網(wǎng)絡。

實現(xiàn)的功能如圖像分類、目標檢測、圖像分割等。教師網(wǎng)絡性能優(yōu)良、準確率高,但是相對學生網(wǎng)絡其結(jié)構(gòu)復雜、參數(shù)權(quán)重較多、計算速度較慢。學生網(wǎng)絡計算速度快、性能一般或者較差、網(wǎng)絡結(jié)構(gòu)簡單。可以在預先設置的神經(jīng)網(wǎng)絡模型的集合中選取一個與學生網(wǎng)絡實現(xiàn)的功能相同且性能優(yōu)良的網(wǎng)絡作為教師網(wǎng)絡。

步驟102、基于匹配同一訓練樣本數(shù)據(jù)對應的第一中間層特征與第二中間層特征的分布來迭代訓練所述學生網(wǎng)絡得到目標網(wǎng)絡,以實現(xiàn)將所述教師網(wǎng)絡的中間層特征的知識遷移到所述學生網(wǎng)絡。

其中:所述第一中間層特征為所述訓練樣本數(shù)據(jù)輸入教師網(wǎng)絡后從教師網(wǎng)絡的第一特定網(wǎng)絡層輸出的特征圖,所述第二中間層特征為所述訓練樣本數(shù)據(jù)輸入學生網(wǎng)絡后從學生網(wǎng)絡的第二特定網(wǎng)絡層輸出的特征圖。

本發(fā)明實施例中,將訓練樣本數(shù)據(jù)輸入教師網(wǎng)絡后,從教師網(wǎng)絡的第一特定網(wǎng)絡層輸出的特征圖統(tǒng)稱為第一中間層特征;將訓練樣本數(shù)據(jù)輸入學生網(wǎng)絡后,從學生網(wǎng)絡的第二特定網(wǎng)絡層輸出的特征圖統(tǒng)稱為第二中間層特征。

優(yōu)選地,本發(fā)明實施例中第一特定網(wǎng)絡層為所述教師網(wǎng)絡中的一個中間網(wǎng)絡層或者為最后一個網(wǎng)絡層。

優(yōu)選地,本發(fā)明實施例中第二特定網(wǎng)絡層為所述學生網(wǎng)絡中的一個中間網(wǎng)絡層或者為最后一個網(wǎng)絡層。

優(yōu)選地,前述步驟102,具體可通過如圖2所示的方法實現(xiàn),該方法包括:

步驟102a、構(gòu)建所述學生網(wǎng)絡的目標函數(shù),所述目標函數(shù)包含任務損失函數(shù)和距離損失函數(shù),其中距離損失函數(shù)為用于衡量同一訓練樣本數(shù)據(jù)對應的第一中間層特征和第二中間層特征的分布距離的函數(shù)。

本發(fā)明實施例中,任務損失函數(shù)的表達式與學生網(wǎng)絡所要實現(xiàn)的任務相關,例如學生網(wǎng)絡實現(xiàn)的任務為分類任務時,則任務損失函數(shù)的表達式為交叉熵損失函數(shù);還例如學生網(wǎng)絡實現(xiàn)的任務為回歸任務時,則任務損失函數(shù)的表達式為距離損失函數(shù)。

步驟102b、采用所述訓練樣本數(shù)據(jù)對所述學生網(wǎng)絡進行迭代訓練。

步驟102c、當?shù)柧毚螖?shù)達到閾值或者所述目標函數(shù)滿足預置的收斂條件時,得到所述目標網(wǎng)絡。

優(yōu)選地,本發(fā)明實施例中,步驟102b中,每一次迭代訓練用到的訓練樣本數(shù)據(jù)不同,所述步驟102b具體實現(xiàn)可如下:

對所述學生網(wǎng)絡進行多次以下的迭代訓練(以下稱為本次迭代訓練,將用于本次迭代訓練的訓練樣本數(shù)據(jù)稱為當前訓練樣本數(shù)據(jù),本次迭代訓練包括以下步驟a、步驟b和步驟c):

步驟a、將當前訓練樣本數(shù)據(jù)分別輸入所述教師網(wǎng)絡和學生網(wǎng)絡,得到當前訓練樣本數(shù)據(jù)對應的第一中間層特征和第二中間層特征;

步驟b、根據(jù)所述當前訓練樣本數(shù)據(jù)及其對應的第一中間層特征和第二中間層特征,計算所述目標函數(shù)的取值,并根據(jù)所述目標函數(shù)的取值調(diào)整所述學生網(wǎng)絡的權(quán)重;

步驟c、基于調(diào)整權(quán)重后的學生網(wǎng)絡進行下一次迭代訓練。

優(yōu)選地,在前述步驟b中,根據(jù)所述目標函數(shù)的取值調(diào)整所述學生網(wǎng)絡的權(quán)重,具體實現(xiàn)可如下:采用梯度下降優(yōu)化算法根據(jù)所述目標函數(shù)的取值調(diào)整所述學生網(wǎng)絡的權(quán)重。

優(yōu)選地,在一個具體實例中,所述學生網(wǎng)絡的目標函數(shù)可如下公式(5):

式(5)中,為交叉熵損失函數(shù),為距離損失函數(shù),λ為預置的常數(shù),ft為訓練樣本數(shù)據(jù)輸入教師網(wǎng)絡后從教師網(wǎng)絡的第一特定網(wǎng)絡層輸出的特征圖(即第一中間層特征),fs為訓練樣本數(shù)據(jù)輸入學生網(wǎng)絡后從學生網(wǎng)絡的第二特征網(wǎng)絡層輸出的特征圖(即第二中間層特征),ytrue為訓練樣本數(shù)據(jù)的真實標簽,ps為學生網(wǎng)絡的分類概率。

其中,ct為ft的通道數(shù),cs為fs的通道數(shù),h與w則為ft與fs的高和寬。本發(fā)明實施例中ft與fs的尺寸一致。

優(yōu)選地,在前述步驟a與步驟b之間還包括:判斷ft與fs的高是否相同,若不相同則將兩者之中取值較大的高作為前述h;以及判斷ft與fs的寬是否相同,若不相同則將兩者之中取值較大的寬作為前述w;采用預置的插值算法將ft與fs的尺寸調(diào)整為h與w。

優(yōu)選地,本發(fā)明實施例中目標函數(shù)中的具體可如下公式(6):

式(6)中,k(·,·)為預置的核函數(shù),ct為ft的通道數(shù),cs為fs的通道數(shù),為ft中第i個通道的向量化特征圖,為ft中第i'個通道的向量化特征圖,為fs第j個通道的向量化特征圖,為fs第j'個通道的向量化特征圖。

優(yōu)選地,所述k(·,·)為預置的線性核函數(shù)、多項式核函數(shù)、高斯核函數(shù)或者多個高斯核函數(shù)的組合等,本申請不做嚴格限定,本領域技術(shù)人員可以根據(jù)實際需要進行靈活設置。

具體實例如下:k(·,·)為下式(7)所示的線性核函數(shù);還或者k(·,·)為下式(8)所示的多項式核函數(shù);還或者k(·,·)為下式(9)所示的高斯核函數(shù)。

k(x,y)=xty式(7)

k(x,y)=(xty+c)d式(8)

實施例二

基于前述實施例一提供的神經(jīng)網(wǎng)絡訓練方法的相同構(gòu)思,本發(fā)明實施例二還提供一種神經(jīng)網(wǎng)絡訓練裝置,該裝置的結(jié)構(gòu)如圖3所述,包括選取單元31和訓練單元32,其中:

選取單元31,用于選取一個與學生網(wǎng)絡實現(xiàn)相同功能的教師網(wǎng)絡。

實現(xiàn)的功能如圖像分類、目標檢測、圖像分割等。教師網(wǎng)絡性能優(yōu)良、準確率高,但是相對學生網(wǎng)絡其結(jié)構(gòu)復雜、參數(shù)權(quán)重較多、計算速度較慢。學生網(wǎng)絡計算速度快、性能一般或者較差、網(wǎng)絡結(jié)構(gòu)簡單??梢栽陬A先設置的神經(jīng)網(wǎng)絡模型的集合中選取一個與學生網(wǎng)絡實現(xiàn)的功能相同且性能優(yōu)良的網(wǎng)絡作為教師網(wǎng)絡。

本發(fā)明實施例中,將訓練樣本數(shù)據(jù)輸入教師網(wǎng)絡后,從教師網(wǎng)絡的第一特定網(wǎng)絡層輸出的特征圖統(tǒng)稱為第一中間層特征;將訓練樣本數(shù)據(jù)輸入學生網(wǎng)絡后,從學生網(wǎng)絡的第二特定網(wǎng)絡層輸出的特征圖統(tǒng)稱為第二中間層特征。

訓練單元32,用于基于匹配同一訓練樣本數(shù)據(jù)對應的第一中間層特征與第二中間層特征的分布來迭代訓練所述學生網(wǎng)絡得到目標網(wǎng)絡,以實現(xiàn)將所述教師網(wǎng)絡的中間層特征的知識遷移到所述學生網(wǎng)絡,其中:所述第一中間層特征為所述訓練樣本數(shù)據(jù)輸入教師網(wǎng)絡后從教師網(wǎng)絡的第一特定網(wǎng)絡層輸出的特征圖,所述第二中間層特征為所述訓練樣本數(shù)據(jù)輸入學生網(wǎng)絡后從學生網(wǎng)絡的第二特定網(wǎng)絡層輸出的特征圖。

優(yōu)選地,第一特定網(wǎng)絡層為所述教師網(wǎng)絡中的一個中間網(wǎng)絡層或最后一個網(wǎng)絡層;和/或,所述第二特定網(wǎng)絡層為所述學生網(wǎng)絡中的一個中間網(wǎng)絡層或最后一個網(wǎng)絡層。

優(yōu)選地,訓練單元32的結(jié)構(gòu)如圖4所示,包括構(gòu)建模塊321、訓練模塊322和確定模塊323,其中:

構(gòu)建模塊321,用于構(gòu)建所述學生網(wǎng)絡的目標函數(shù),所述目標函數(shù)包含任務損失函數(shù)和用于衡量同一訓練樣本數(shù)據(jù)對應的第一中間層特征和第二中間層特征的分布距離的距離損失函數(shù);

本發(fā)明實施例中,任務損失函數(shù)的表達式與學生網(wǎng)絡所要實現(xiàn)的任務相關,例如學生網(wǎng)絡實現(xiàn)的任務為分類任務時,則任務損失函數(shù)的表達式為交叉熵損失函數(shù);還例如學生網(wǎng)絡實現(xiàn)的任務為回歸任務時,則任務損失函數(shù)的表達式為距離損失函數(shù)。

訓練模塊322,用于采用所述訓練樣本數(shù)據(jù)對所述學生網(wǎng)絡進行迭代訓練;

確定模塊323,用于當?shù)柧毮K迭代訓練次數(shù)達到閾值或者所述目標函數(shù)滿足預置的收斂條件時,得到所述目標網(wǎng)絡。

優(yōu)選地,所述訓練模塊322具體用于:

對所述學生網(wǎng)絡進行多次以下的迭代訓練(以下稱為本次迭代訓練,將用于本次迭代訓練的訓練樣本數(shù)據(jù)稱為當前訓練樣本數(shù)據(jù),本次迭代訓練包括以下步驟a、步驟b和步驟c):

步驟a、將用于本次迭代訓練的當前訓練樣本數(shù)據(jù)分別輸入所述教師網(wǎng)絡和學生網(wǎng)絡,得到當前訓練樣本數(shù)據(jù)對應的第一中間層特征和第二中間層特征;

步驟b、根據(jù)所述當前訓練樣本數(shù)據(jù)及其對應的第一中間層特征和第二中間層特征,計算所述目標函數(shù)的取值,并根據(jù)所述目標函數(shù)的取值調(diào)整所述學生網(wǎng)絡的權(quán)重;

步驟c、基于調(diào)整權(quán)重后的學生網(wǎng)絡進行下一次迭代訓練。

優(yōu)選地,在前述步驟b中,根據(jù)所述目標函數(shù)的取值調(diào)整所述學生網(wǎng)絡的權(quán)重,具體實現(xiàn)可如下:采用梯度下降優(yōu)化算法根據(jù)所述目標函數(shù)的取值調(diào)整所述學生網(wǎng)絡的權(quán)重。

優(yōu)選地,所述構(gòu)建模塊321構(gòu)建的目標函數(shù)可如前述公式(5),距離損失函數(shù)的表達式可如前述公式(6),在此不在贅述。

本發(fā)明實施例提供的神經(jīng)網(wǎng)絡訓練方案,一方面,匹配教師網(wǎng)絡和學生網(wǎng)絡的中間層特征,因此訓練得到的學生網(wǎng)絡的適用范圍更廣,不局限于分類模型還可適用于回歸模型;另一方面,匹配教師網(wǎng)絡的中間層特征與學生網(wǎng)絡的中間層特征的分布,與現(xiàn)有技術(shù)直接匹配中間層所有特征的方式相比約束不嚴格,可以與其他方法有效結(jié)合來進一步提高學生網(wǎng)絡的性能,從而提高學生網(wǎng)絡的準確性。

以上是本發(fā)明的核心思想,為了使本技術(shù)領域的人員更好地理解本發(fā)明實施例中的技術(shù)方案,并使本發(fā)明實施例的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖對本發(fā)明實施例中技術(shù)方案作進一步詳細的說明。

顯然,本領域的技術(shù)人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
大冶市| 犍为县| 萍乡市| 揭东县| 九寨沟县| 色达县| 芦溪县| 湖北省| 剑川县| 八宿县| 崇文区| 威海市| 唐河县| 宁德市| 镇江市| 大厂| 东方市| 双峰县| 苏尼特左旗| 鄢陵县| 古交市| 永定县| 万宁市| 呼图壁县| 修文县| 卢氏县| 谢通门县| 阳高县| 安多县| 广汉市| 濮阳市| 定陶县| 云霄县| 盈江县| 株洲市| 静安区| 灵石县| 荣昌县| 朔州市| 三台县| 龙川县|