TWI729352B - 卷積神經網路的調整方法及電子裝置 - Google Patents

卷積神經網路的調整方法及電子裝置 Download PDF

Info

Publication number
TWI729352B
TWI729352B TW108104292A TW108104292A TWI729352B TW I729352 B TWI729352 B TW I729352B TW 108104292 A TW108104292 A TW 108104292A TW 108104292 A TW108104292 A TW 108104292A TW I729352 B TWI729352 B TW I729352B
Authority
TW
Taiwan
Prior art keywords
convolutional
model
convolutional layers
layers
width
Prior art date
Application number
TW108104292A
Other languages
English (en)
Other versions
TW201935327A (zh
Inventor
林裕訓
周俊男
張智威
Original Assignee
宏達國際電子股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 宏達國際電子股份有限公司 filed Critical 宏達國際電子股份有限公司
Publication of TW201935327A publication Critical patent/TW201935327A/zh
Application granted granted Critical
Publication of TWI729352B publication Critical patent/TWI729352B/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)

Abstract

一種調整方法用以調整一卷積神經網路,該卷積神經網路之一第一模型包含複數個卷積層,該些卷積層依照一序列次序而先後排列,該調整方法包含:決定該卷積神經網路之該第一模型中該些卷積層的複數個感受野寬度;根據該些卷積層的該些感受野寬度與一輸入圖像寬度,將該第一模型中該些卷積層的複數個通道寬度減少至複數個縮減通道寬度;根據該些縮減通道寬度,形成該卷積神經網路之一第二模型的架構;以及,訓練該卷積神經網路之該第二模型。

Description

卷積神經網路的調整方法及電子裝置
本揭示文件係關於機器學習方法,更進一步而言,本揭示文件是有關於卷積神經網路的調整方法。
機器學習技術被廣泛使用在許多不同的應用領域,例如人工智慧、數據挖掘、自動駕駛等。為了解決各種不同型態的問題,發展出了許多不同種類的神經網路。在上述各種神經網路中,卷積神經網路是其中一種較熱門的神經網路。卷積神經網路經常用在解決與圖形有關的問題,例如影像物件辨識等。
在卷積神經網路中,具有各種濾波器的多個卷積層將被用來在對來源影像中進行一系列的卷積運算,藉此在來源影像中比對特徵或是由來源影像提取特徵。此外,卷積神經網路可能另外包含一些池化層或激活層,以處理輸入影像並由輸入影像中進行物件辨識。
本揭示文件提供一種調整方法,用以調整一卷積神經網路,該卷積神經網路之一第一模型包含複數個卷積層,該些卷積層依照一序列次序而先後排列,該調整方法包含:決定該卷積神經網路之該第一模型中該些卷積層的複數個感受野寬度;根據該些卷積層的該些感受野寬度與一輸入圖像寬度,將該第一模型中該些卷積層的複數個通道寬度減少至複數個縮減通道寬度;根據該些縮減通道寬度,形成該卷積神經網路之一第二模型的架構;以及,訓練該卷積神經網路之該第二模型。
本揭示文件更提供一種電子裝置,電子裝置適用於調整一卷積神經網路,該電子裝置包含資料儲存器以及處理器。資料儲存器用以儲存該卷積神經網路的一第一模型,該卷積神經網路的該第一模型包含複數個卷積層,該些卷積層依照一序列次序而先後排列。處理器與該資料儲存器偶接,該處理器用以:決定該卷積神經網路之該第一模型中該些卷積層的複數個感受野寬度;根據該些卷積層的該些感受野寬度與一輸入圖像寬度,將該第一模型中該些卷積層的複數個通道寬度減少至複數個縮減通道寬度;根據該些縮減通道寬度,形成該卷積神經網路之一第二模型的架構;以及,訓練該卷積神經網路之該第二模型。
須說明的是,上述說明以及後續詳細描述是以實施例方式例示性說明本案,並用以輔助本案所請求之發明內容的解釋與理解。
為讓本揭示內容之上述和其他目的、特徵、優點與實施例能更明顯易懂,所附符號之說明如下:
100‧‧‧電子裝置
120‧‧‧資料儲存器
140‧‧‧處理器
200‧‧‧方法
S210~S270‧‧‧操作
MD1‧‧‧第一模型
MD2‧‧‧第二模型
TD‧‧‧訓練資料
IMGnew‧‧‧新進圖像
IMGlab‧‧‧標籤
為讓本揭示內容之上述和其他目的、特徵、優點與實施例能更明顯易懂,所附圖式之說明如下:第1圖繪示根據本揭示文件一實施例中一種電子裝置的示意圖;第2圖繪示根據本揭示文件之一實施例中卷積神經網路的第一模型的示意圖;第3A圖至第3F圖分別繪示第2圖其中一個卷積層的示意圖;第4圖繪示根據本揭示文件一種調整卷積神經網路的方法的方法流程圖;第5A圖繪示第2圖的實施例中對應到一卷積層的感受野寬度以及對應到另一卷積層的感受野寬度的示意圖;第5B圖繪示於本揭示文件之一實施例中輸入圖像上的投影區域對應到在卷積輸出張量上的特徵點的示意圖;第6圖繪示根據表3所示的實施例中依照縮減通道寬度而形成之卷積神經網路的第二模型之架構的示意圖;第7圖繪示根據一實施例中第一模型當中具有數個宏區塊之分組的示意圖;第8圖繪示根據一實施例中第二模型當中具有數個宏區塊之分組的示意圖;以及第9圖繪示根據另一實施例中第二模型當中具有數個宏區塊之分組的示意圖。
以下揭示提供許多不同實施例或例證用以實施本揭示文件的不同特徵。特殊例證中的元件及配置在以下討論中被用來簡化本揭示。所討論的任何例證只用來作解說的用途,並不會以任何方式限制本揭示文件或其例證之範圍和意義。在適當的情況下,在圖示之間及相應文字說明中採用相同的標號以代表相同或是相似的元件。
請參閱第1圖,其繪示根據本揭示文件一實施例中一種電子裝置100的示意圖。電子裝置100適用於對卷積神經網路(convolution neural network,CNN)進行調整。
於一個卷積神經網路中通常包含許多個卷積層(convolution layer)。每一個卷積層可以包含許多個卷積濾波器(convolution filter)以比對及辨識圖形中與物件相關的特徵。如果卷積神經網路在每一個卷積層包含更多個卷積濾波器,可以讓物件辨識的精確度提升。於此同時,當卷積神經網路的每一個卷積層包含更多個卷積濾波器時,卷積神經網路的模型尺寸(也就是模型所占用的儲存空間容量)將隨著增加。當卷積神經網路的模型尺寸增加時,需要花費更多的時間來訓練卷積神經網路的這個模型、需要使用更多個空間來儲存卷積神經網路的這個模型、及/或此模型需要使用更多的計算時間來辨識物件。於一實施例,電子裝置100透過改變卷積神經網路的模型之架構來縮減卷積神經網路的模型尺寸。
如第1圖所示,電子裝置100包含資料儲存器 120以及處理器140。處理器140耦接資料儲存器120。於一實施例中,資料儲存器120可以利用記憶體、硬碟、快取記憶體、非暫態電腦可讀取媒體、暫存器、資料儲存陣列或其他具有相等性的資料儲存元件加以實現。於一實施例中,處理器140可以利用中央處理單元、處理電路、影像處理單元、特殊應用積體電路(application-specific integrated circuit,ASIC)或其他具有相等性的處理元件加以實現。
於一實施例中,資料儲存器120儲存了卷積神經網路的第一模型MD1。於一實施例中,第一模型MD1是卷積神經網路的一個預先訓練模型。於一實施例中,此預先訓練模型可以由公開的卷積神經網路資料庫(例如ResNet、MobileNet、SqueezeNet、ShuffleNet、DenseNet或其他相似的資料庫)進行下載而得到。預先訓練模型(即第一模型MD1)的架構包含一特定數量的卷積層,而預先訓練模型的這些卷積層具有預設數量的通道寬度(channel width)。然而,第一模型MD1不僅限於由公開的卷積神經網路資料庫下載得到。於另一實施例中,第一模型MD1可由處理器120根據儲存在資料儲存器120中的訓練資料TD進行訓練而得到。
請一併參閱第2圖,其繪示根據本揭示文件之一實施例中卷積神經網路的第一模型MD1的示意圖。於此實施例中,假設第一模型MD1具有依照一序列次序排列的12個卷積層CL0、CL1、CL2...CL11。卷積層CL0用以接收並處理輸入圖像IMGin,並藉此產生卷積輸出張量 (Tensor)CT0。卷積層CL0產生的卷積輸出張量CT0將由後續的卷積層CL1所接收,卷積層CL1用以處理卷積輸出張量CT0,並藉此產生另一個卷積輸出張量CT1。卷積層CL1產生的卷積輸出張量CT1將由後續的卷積層CL2所接收,卷積層CL2用以處理卷積輸出張量CT1,並藉此產生另一個卷積輸出張量CT2。相似地,其他依照序列次序排列的卷積層CL3~CL11用以分別產生卷積輸出張量CT3~CT11。於一實施例中,第2圖中所示的輸入圖像IMGin可以包含在資料儲存器120中的訓練資料TD中或是由訓練資料TD提供。
於第2圖所示的實施例中,第一模型MD1更包含兩個池化層PL1及PL2、全連接層FCL以及激活函式層AFL。於一些實施例中,激活函式層AFL可以包含Softmax函式層,但本揭示文件並不以此為限。於其他實施例中,激活函式層AFL可以包含Softmin函式層、Softmax2d函式層、LogSoftmax函式層、或者Adaptive Softmax函式層(例如AdaptiveLogSoftmaxWithLoss函式層)。池化層PL1及PL2可以用來降採樣(down-sample)上述卷積層所產生的卷積輸出張量,如此一來,卷積神經網路的第一模型MD1可以將局部性的區域物件特徵整合為高階的整體物件特徵。於此實施例中,池化層PL1及PL2是設定為具有核心尺寸(kernel size)2x2且步長(stride)設定為2,但本揭示文件並不以此為限。於一些其他實施例中,池化層PL1及PL2可以設定為具有不同的核心尺寸且具有不同的步長。全連接層FCL以及激活函式層AFL用以將卷積輸出張量 CT11的結果連結到其中一個特定的標籤LAB,如此一來,第一模型MD1可以對應輸入圖像IMGin相對應產生一個標籤LAB。
於一此實施例中,卷積神經網路的第一模型MD1的12個卷積層CL0~CL11所具有的通道寬度分別一定的預設數量。舉例來說,卷積層CL0~CL3各自分別具有16個不同的卷積濾波器以比對圖像特徵(即卷積層CL0~CL3在輸出通道的頻道寬度為16),卷積層CL4~CL7各自分別具有32個不同的卷積濾波器以比對圖像特徵(即卷積層CL4~CL7在輸出通道的通道寬度為32),卷積層CL8~CL11各自分別具有64個不同的卷積濾波器以比對圖像特徵(即卷積層CL8~CL11在輸出通道的通道寬度為64)。如第2圖所示,卷積層CL0~CL11當中鄰近起始端,也就是較接近輸入圖像IMGin的部分卷積層(例如卷積層CL0~CL3等)具有較低的通道寬度,以及卷積層CL0~CL11當中鄰近深入端,也就是較接近全連接層FCL的部分卷積層(例如卷積層CL8~CL11等)具有較高的通道寬度。
第一模型MD1的模型尺寸是高度相關於儲存卷積層CL0~CL11的資料所需要的儲存空間。請一併參閱第3A圖,其繪示第2圖當中的卷積層CL0的示意圖。
於第3A圖所示,卷積層CL0(其具有的通道寬度等於16)包含16個卷積濾波器F1a~F16a。卷積濾波器F1a用以與輸入圖像IMGin進行卷積計算以產生一個卷積通道輸出CCH1。卷積濾波器F2a用以與輸入圖像IMGin進 行卷積計算以產生另一個卷積通道輸出CCH2。卷積濾波器F3a用以與輸入圖像IMGin進行卷積計算以產生再一個卷積通道輸出CCH3。相似地,卷積濾波器F16a用以與輸入圖像IMGin進行卷積計算以產生再一個卷積通道輸出CCH16。這16個卷積通道輸出CCH1~CCH16整合為卷積輸出張量CT0。
在第一模型MD1中,卷積層CL0所需占用的儲存空間可依照下列方式計算:(權重參數的總數量)x(每一個權重參數的位元數)=(Cin x k2 x Cout)x DBits=(3 x 32 x 16)x DBits=432 x DBits
於上述算式中,Cin代表輸入至卷積層CL0的輸入通道的數量,k代表卷積層CL0中每一個卷積濾波器F1a~F16a的寬度/高度,k為1以上的正整數,Cout代表由卷積層CL0輸出的輸出通道的數量,DBits代表在一個卷積濾波器當中各個像素的權重參數所使用的資料位元數。
需特別注意的是,於第3A圖的實施例中,卷積濾波器F1a~F16a的尺寸是以3x3進行舉例說明。然而,卷積濾波器F1a~F16a的尺寸並不以3x3為限。於其他實施例中,卷積濾波器F1a~F16a的尺寸也可以替換為2x2、2x3、3x4、4x4或其他尺寸設置。為了說明上的簡便,其他卷積層CL1~CL11當中的各個卷積濾波器也一併以3x3的尺寸進行舉例說明,但本揭示文件並不以此為限。
請一併參閱第3B圖,其繪示第2圖當中的卷積層CL1的示意圖。於第3B圖所示,卷積層CL1同樣包含16個卷積濾波器F1b~F16b。卷積層CL1的16個卷積濾波器F1b~F16b分別用以與卷積輸出張量CT0進行卷積計算,進而產生一個卷積輸出張量CT1。
在第一模型MD1中,卷積層CL1所需占用的儲存空間可依照下列方式計算:(權重參數的總數量)x(每一個權重參數的位元數)=(Cin x k2 x Cout)x DBits=(16 x 32 x 16)x DBits=2304 x DBits
於第2圖所示的實施例中,第一模型MD1中卷積層CL2所占用的儲存空間以及第一模型MD1中另一卷積層CL3所占用的儲存空間,均相似於卷積層CL1所需占用的儲存空間。
請一併參閱第3C圖,其繪示第2圖當中的卷積層CL4的示意圖。於第3C圖所示,卷積層CL4(其具有的輸入通道的通道寬度等於16,而輸出通道的通道寬度等於32)包含32個卷積濾波器F1c~F32c。
於第2圖及第3C圖的實施例中,卷積層CL3產生的卷積輸出張量CT3經過第一模型MD1的池化層PL1降採樣成為採樣後的卷積輸出張量CT3d。於此實施例中,池化層PL1用以將卷積輸出張量CT3當中2x2個特徵點合併為採樣後的卷積輸出張量CT3d當中的一個特徵點。換句話 說,於此實施例中池化層PL1的步長(stride)設定為2,但本揭示文件並不以此為限。於此例中,採樣後的卷積輸出張量CT3d的維度將變化為高16、寬16且通道16。換句話說,採樣後的卷積輸出張量CT3d的三個維度等於16x16x16。
卷積層CL3的32個卷積濾波器F1c~F32c分別用以與採樣後的卷積輸出張量CT3d進行卷積計算,進而產生一個卷積輸出張量CT4。
在第一模型MD1中,卷積層CL4所需占用的儲存空間可依照下列方式計算:(權重參數的總數量)x(每一個權重參數的位元數)=(Cin x k2 x Cout)x DBits=(16 x 32 x 32)x DBits=4608 x DBits
請一併參閱第3D圖,其繪示第2圖當中的卷積層CL5的示意圖。於第3D圖所示,卷積層CL5(其具有的輸入通道的通道寬度等於32,而輸出通道的通道寬度等於32)包含32個卷積濾波器F1d~F32d。
在第一模型MD1中,卷積層CL5所需占用的儲存空間可依照下列方式計算:(權重參數的總數量)x(每一個權重參數的位元數)=(Cin x k2 x Cout)x DBits=(32 x 32 x 32)x DBits=9216 x DBits
於第2圖所示的實施例中,第一模型MD1中卷 積層CL6所占用的儲存空間以及第一模型MD1中另一卷積層CL7所占用的儲存空間,均相似於卷積層CL5所需占用的儲存空間。
請一併參閱第3E圖,其繪示第2圖當中的卷積層CL8的示意圖。於第3E圖所示,卷積層CL8(其具有的輸入通道的通道寬度等於32,而輸出通道的通道寬度等於64)包含64個卷積濾波器F1e~F64e。
在第一模型MD1中,卷積層CL8所需占用的儲存空間可依照下列方式計算:(權重參數的總數量)x(每一個權重參數的位元數)=(Cin x k2 x Cout)x DBits=(32 x 32 x 64)x DBits=18432 x DBits
請一併參閱第3F圖,其繪示第2圖當中的卷積層CL9的示意圖。於第3E圖所示,卷積層CL9(其具有的輸入通道的通道寬度等於64,而輸出通道的通道寬度等於64)包含64個卷積濾波器F1f~F64f。
在第一模型MD1中,卷積層CL9所需占用的儲存空間可依照下列方式計算:(權重參數的總數量)x(每一個權重參數的位元數)=(Cin x k2 x Cout)x DBits=(64 x 32 x 64)x DBits=36864 x DBits
於第2圖所示的實施例中,第一模型MD1中卷 積層CL10所占用的儲存空間以及第一模型MD1中另一卷積層CL11所占用的儲存空間,均相似於卷積層CL9所需占用的儲存空間。
於本揭示文件之一實施例中,電子裝置100透過減少卷積層CL0~CL11當中的通道寬度的方式,以調整卷積層CL0~CL11的架構,進而降低卷積神經網路的第一模型MD1的模型尺寸。
由於鄰近深入端(較靠近全連接層FCL)的卷積層CL8~CL11相較於鄰近起始端(較靠近輸入圖像IMGin)的卷積層CL0~CL3佔用了較多的儲存空間,電子裝置100採用依照反向次序減少各個卷積層的通道寬度的一種調整方法,上述反向次序與卷積層CL0~CL11先後排列的序列次序相反。換句話說,電子裝置100及調整方法將會優先降低鄰近深入端的卷積層(例如卷積層CL8~CL11)的通道寬度,隨後才可能考慮降低鄰近起始端的卷積層的通道寬度。
請一併參閱第4圖,其繪示根據本揭示文件一種調整卷積神經網路的方法200的方法流程圖。如第1圖及第4圖所示,電子裝置100的處理器140用以執行第4圖中的方法200以決定如何將卷積神經網路的第一模型MD1的架構調整為卷積神經網路的第二模型MD2。電子裝置100利用方法200以有效的降低第二模型MD2的模型尺寸(相較於第一模型MD1)並且盡可能維持卷積神經網路的第二模型MD2用來執行物件辨識時的精確度。關於如何調整卷積神經網路的架構的詳細作法將在後續實施例中完整說明。
如第4圖所示,方法200執行操作S210以決定卷積神經網路之第一模型MD1中卷積層CL0~CL11各自的感受野寬度(receptive field width)。第一模型MD1中卷積層CL0~CL11每一者可以分別具有與另一卷積層相異的感受野寬度。請進一步參閱第5A圖,其繪示第2圖的實施例中對應到卷積層CL0的感受野寬度RFW0以及對應到另一卷積層CL1的感受野寬度RFW1的示意圖。
第5A圖繪示了卷積層CL0產生的卷積輸出張量CT0的其中一個通道層以及另一卷積層CL1產生的卷積輸出張量CT1的其中一個通道層相對於輸入圖像IMGin的示意視圖。
如第5A圖所示,卷積輸出張量CT0上的一個特徵點FP0的數值是由一個3x3卷積濾波器與輸入圖像IMGin上的投影區域R0的卷積運算而得到,因此,卷積輸出張量CT0上的特徵點FP0的數值將會受到3x3大小的投影區域R0影響。於此例子中,卷積層CL0的感受野寬度RFW0將被判斷為3。
如第5A圖所示,另一個卷積輸出張量CT1上的一個特徵點FP1的數值是由一個3x3卷積濾波器與卷積輸出張量CT0上的投影區域R1a的卷積運算而得到。由於卷積輸出張量CT0是事先由3x3卷積濾波器與輸入圖像IMGin的卷積運算而產生。因此,卷積輸出張量CT1上的特徵點FP1的數值將會受到在輸入圖像IMGin上5x5大小的投影區域R1b影響。於此例子中,卷積層CL1的感受野寬度RFW1將 被判斷為5。
相似地,卷積層CL2至卷積層CL11的感受野寬度可以利用相似的方法累進計算。卷積層CL2的感受野寬度將被判斷為7。卷積層CL3的感受野寬度將被判斷為9。在經過池化層PL1的處理以及卷積層CL4的另一次卷積運算後,卷積層CL4的感受野寬度將被判斷為14。卷積層CL5的感受野寬度將被判斷為18。卷積層CL6的感受野寬度將被判斷為22。卷積層CL7的感受野寬度將被判斷為26。在經過池化層PL2的處理以及卷積層CL8的另一次卷積運算後,卷積層CL8的感受野寬度將被判斷為36。卷積層CL9的感受野寬度將被判斷為44。卷積層CL10的感受野寬度將被判斷為52。卷積層CL11的感受野寬度將被判斷為60。在操作S210中所決定的卷積層CL0~CL11各自的感受野寬度列表於後續的表1。
Figure 108104292-A0101-12-0014-1
請一併參閱第5B圖,其繪示於本揭示文件之一實施例中輸入圖像IMGin上的投影區域R2對應到在卷積輸 出張量CT1上的特徵點FP2的示意圖。如第5B圖所示,特徵點FP2是由輸入圖像IMGin上的投影區域R2內的資訊所影響。然而,如第5B圖所示,投影區域R2部分超出了輸入圖像IMGin的邊界。投影區域R2中超出輸入圖像IMGin之邊界的部分稱為填充區域PAD(padding area),填充區域PAD並未包含真實的影像資料而是被填入非有效的資料,例如”0”,在卷積運算中使用。於此例子中,特徵點FP2的計算是80%根據真實影像資料而有20%是根據填充資料。
當特徵點的計算有較高比例是基於填充資料,則此特徵點在物件辨識上的有效性便會降低。當特徵點的計算有較高比例是基於真實影像資料,則此特徵點在物件辨識上的有效性便會較高。
在操作S210決定各卷積層CL0~CL11各自的感受野寬度之後,方法200執行操作S220,藉由將上述卷積層CL0~CL11各自的感受野寬度分別與輸入圖像IMGin的圖像寬度比較,進而根據上述卷積層CL0~CL11各自的感受野寬度將第一模型MD1各卷積層CL0~CL11的通道寬度減少為複數個縮減通道寬度。
於第4圖所示之一實施例中,操作S220包含三個進一步操作S221、S222及S223。
如第4圖所示,方法200執行操作S221,透過將第一模型MD1中卷積層CL0~CL11的感受野寬度與輸入圖像IMGin的輸入圖像寬度比較,將第一模型MD1中各卷積層CL0~CL11各自分類至基礎層群組及擴增層群組兩者 其中之一。
於此實施例中,輸入圖像IMGin的尺寸被假設為32x32,換句話說,輸入圖像IMGin的輸入圖像寬度等於32。
卷積層CL0~CL11是分類基礎層群組或擴增層群組的何者是根據卷積層CL0~CL11各自的感受野寬度(3,5,7,9,14,18,22,26,36,44,52及60)分別與輸入圖像寬度”32”的比較結果而定。於表1所提出的示範性舉例中,卷積層CL0~CL7的感受野寬度(3,5,7,9,14,18,22及26)小於輸入圖像寬度,而卷積層CL8~CL11的感受野寬度(36,44,52及60)則大於輸入圖像寬度。
於表1所示的實施例中,由於卷積層CL0~CL7的感受野寬度(3,5,7,9,14,18,22及26)經比較小於輸入圖像寬度”32”,卷積層CL0~CL7被分類為基礎層群組。由於卷積層CL9~CL11的感受野寬度(44,52及60)經比較大於輸入圖像寬度”32”,卷積層CL9~CL11被分類為擴增層群組。需特別注意的是,於此實施例中卷積層CL8的感受野寬度”36”是在序列排列中第一個超過輸入圖像寬度”32”的卷積層,於表1的實施例中仍然將卷積層CL8分類至基礎層群組中,然而本揭示文件並不以此為限。
於另一實施例中,卷積層CL0~CL7的感受野寬度經比較小於輸入圖像寬度被分類為基礎層群組,並且卷積層CL8~CL11的感受野寬度經比較大於輸入圖像寬度被分類為擴增層群組。
於表1所示的實施例中,輸入圖像寬度”32”是用來當作與卷積層之感受野寬度比較時的門檻值,用來將卷積層分類至基礎層群組或擴增層群組。於此例子中,輸入圖像寬度等於卷積層之感受野寬度分類時的門檻值,但本揭示文件並不以此為限。
於另一實施例中,用來分類基礎層群組與擴增層群組的門檻值,可以設定為X%*輸入圖像寬度。也就是說,門檻值的大小正相關於輸入圖像寬度。
於一實施例中,X可設定為0至100之間的數字,但本揭示文件不以此為限。於另一實施例中,當電子裝置100及方法200欲提高卷積神經網路的辨識精確度時,X可設定為0至200之間的數字。X將會影響方法200所達到的壓縮率。當X設定為較低的數值時,更多的卷積層將被分類至擴增層群組,而較少的卷積層將被分類至基礎層群組,如此一來,將縮減較多層卷積層的通道寬度(在後續的操作S223中說明)。當X設定為較高的數值時,更多的卷積層將被分類至基礎層群組,而較少的卷積層將被分類至擴增層群組,如此一來,將縮減較少層卷積層的通道寬度(在後續的操作S223中說明)。
整體來說,較靠近深入端的卷積層較容易被分類至擴增層群組,較靠近起始端的卷積層較容易被分類至基礎層群組。
如第4圖所示,方法200執行操作S222,根據擴增層群組的部份運算量相對於基礎層群組及擴增層群組 兩者的總體運算量之間的關係,決定第一模型MD1中卷積層CL0~CL11各自的冗餘比例(redundancy ratio)。
關於操作S222中如何計算卷積層CL0~CL11各自的冗餘比例的一些細節內容列示於下列表2當中。
Figure 108104292-A0101-12-0018-2
首先,卷積層CL0~CL11每一者所進行卷積運算的浮點運算次數(flop counts)是已知且固定的數字。卷積層CL0的浮點運算次數FC0是由卷積層CL0產生卷積輸出張量CT0所需要進行的乘法與加法總次數而決定的。卷積層CL1的浮點運算次數FC1是由卷積層CL1產生卷積輸出張量CT1所需要進行的乘法與加法總次數而決定的。相似地,浮點運算次數FC2~FC11是由各個卷積層CL2~CL11產 生各自的卷積輸出張量CT2~CT11所需要進行的乘法與加法總次數而決定的。
於一實施例中,卷積神經網路的第一模型MD1更包含十二個激活層(圖中未繪示),這些激活層每一者分別排列在十二個卷積層CL0~CL11其中一者之後,也就是每一個卷積層CL0~CL11後方跟隨設置一個激活層。於一實施例中,這些激活層可以分別是線性整流單元(rectified linear unit,ReLU)。線性整流單元用以將卷積輸出張量CT0~CT11當中值為負數的資料替換為”0”並且保持值為正數的資料。於此實施例中,卷積層CL0~CL11產生的卷積輸出張量CT0~CT11經由激活層其中一者整流為複數個非零值輸出以及複數個零值輸出。然而,本揭示文件的激活層並不僅限於線性整流單元。於一些實施例中,激活層也可以選自ELU函式層、Sigmoid函式層、Softplus函式層、Tanh函式層或其他具相等性函式層的其中一者或上述函式層之組合。於操作S222當中,處理器120根據每一個卷積層CL0~CL11各自產生的卷積輸出張量CT0~CT11的輸出資料當中非零值輸出佔整體輸出(也就是非零值輸出與零值輸出兩者的總輸出數目)的比例,分別計算每一個卷積層CL0~CL11各自的有效機率。假設,在卷積輸出張量CT0的全部輸出當中非零值輸出佔了35%,在此例子中,卷積層CL0的有效浮點運算次數EFC0是卷積層CL0的原始浮點運算次數FC0及有效機率35%的乘積。換句話說,有效浮點運算次數EFC0=FC0*35%。
假設,卷積輸出張量CT1、CT2、CT3、CT4、CT5、CT6、CT7、CT8、CT9、CT10及CT11各自的全部輸出當中非零值輸出分別佔了52%、40%、36%、42%、56%、48%、51%、39%、41%、57%及52%比例。卷積層CL1的有效浮點運算次數EFC1是卷積層CL1的原始浮點運算次數FC1及有效機率52%的乘積,卷積層CL2的有效浮點運算次數EFC2是卷積層CL2的原始浮點運算次數FC2及有效機率40%的乘積,依此類推。
基於上述基礎層群組中卷積層CL0~CL8的有效浮點運算次數EFC0~EFC8以及擴增層群組中卷積層CL9~CL11的有效浮點運算次數EFC9~EFC11,處理器120執行步驟S222以決定第一模型MD1中各個卷積層CL0~CL11的冗餘比例。
首先,卷積層CL11的冗餘比例是根據擴增層群組中卷積層的部分運算量相對於一個整體運算量的比例而得到,如下:卷積層CL11的冗餘比例=(EFC9+EFC10+EFC11)/(EFC0+EFC1+EFC2...EFC10+EFC11)
換句話說,卷積層CL11的冗餘比例是由擴增層群組中卷積層CL9~CL11的有效浮點運算次數EFC9~EFC11的總和,除以全部卷積層CL0~CL11的有效浮點運算次數EFC0~EFC11的總和。於表2的實施例,計算出的卷積層CL11的冗餘比例為0.4。
接著,卷積層CL10的冗餘比例是根據擴增層群組中卷積層的部分運算量相對於一個整體運算量的比例而得到,如下:卷積層CL10的冗餘比例=(EFC9+EFC10)/(EFC0+EFC1+EFC2...EFC9+EFC10)
換句話說,卷積層CL10的冗餘比例是由擴增層群組中在卷積層CL10以前的所有有效浮點運算次數EFC9~EFC10的總和,除以在卷積層CL10以前全部卷積層CL0~CL10的有效浮點運算次數EFC0~EFC10的總和。於表2的實施例,計算出的卷積層CL11的冗餘比例為0.28。
再者,卷積層CL9的冗餘比例是根據擴增層群組中卷積層的部分運算量相對於一個整體運算量的比例而得到,如下:卷積層CL9的冗餘比例=(EFC9)/(EFC0+EFC1+EFC2...EFC8+EFC9)
換句話說,卷積層CL9的冗餘比例是由擴增層群組中在卷積層CL9以前的所有有效浮點運算次數EFC9的總和,除以在卷積層CL9以前全部卷積層CL0~CL9的有效浮點運算次數EFC0~EFC9的總和。於表2的實施例,計算出的卷積層CL9的冗餘比例為0.13。
接下來,其他卷積層CL0~CT8的冗餘比例都將計算為0,因為卷積層CL0至卷積層CT8均沒有被分類為擴增層群組。
如第4圖所示,方法200執行操作S223以將第一模型MD1當中卷積層CL0~CT11的通道寬度根據卷積層CL0~CL11各自的冗餘比例減少至縮減通道寬度。
關於操作S223中如何計算卷積層CL0~CL11各自的縮減通道寬度的一些細節內容列示於下列表3當中。
Figure 108104292-A0101-12-0022-3
於操作S223中,處理器120用以根據卷積層CL0~CL11在第一模型MD1當中原始通道寬度及各自對應的冗餘比例,計算卷積層CL0~CL11各自的縮減通道寬度。
於表3所示的實施例中,卷積層CL11的縮減通道寬度是依照下列方式計算:卷積層CL11的縮減通道寬度=(卷積層CL11的原始通道寬度)/(1+卷積層CL11的冗餘比例)=64/1.4=46
於表3所示的實施例中,卷積層CL10的縮減通道寬度是依照下列方式計算: 卷積層CL10的縮減通道寬度=(卷積層CL10的原始通道寬度)/(1+卷積層CL10的冗餘比例)=64/1.28=50
於表3所示的實施例中,卷積層CL9的縮減通道寬度是依照下列方式計算:卷積層CL9的縮減通道寬度=(卷積層CL9的原始通道寬度)/(1+卷積層CL9的冗餘比例)=64/1.13=56.637
Figure 108104292-A0101-12-0023-22
57
於表3所示的實施例中,卷積層CL0~CL8的通道寬度則不經縮減,因為這些卷積層CL0~CL8的冗餘比例計算結果為0。
於上述實施例中,當第一模型MD1中第M個卷積層的一通道寬度與第M-1個卷積層的一通道寬度同時被減少時,第M個卷積層的通道寬度被減少至低於第M-1個卷積層的通道寬度。M為正整數。舉例來說,卷積層CL11的縮減後的通道寬度減少至46,低於卷積層CL10的縮減後的通道寬度為50。
另一方面,第M個卷積層的通道寬度其減少之幅度大於第M-1個卷積層的通道寬度其減少之幅度。舉例來說,卷積層CL11的通道寬度由64縮減至46,其縮減的幅度 為28.125%;卷積層CL10的通道寬度由64縮減至50,其縮減的幅度為21.875%;卷積層CL9的通道寬度由64縮減至57,其縮減的幅度為10.9375%。卷積層CL11其通道寬度的縮減比例(28.125%)相較之下高於卷積層CL10其通道寬度的縮減比例(21.875%)。同樣地,卷積層CL10其通道寬度的縮減比例(21.875%)相較之下高於卷積層CL9其通道寬度的縮減比例(10.9375%)。
在上述實施例的電子裝置100及方法200當中,靠近深入端的卷積層的通道寬度將被縮減更多,其縮減幅度高於靠近起始端的卷積層的通道寬度的縮減幅度。靠近深入端的卷積層(例如CL9~CL11)將具有較廣的感受野寬度,如此一來相應之卷積輸出張量(CT9~CT11)將會包含較高比例的輸出資料是受到填充區域(參見第5B圖當中的填充區域PAD)影響。因此,減少靠近深入端的卷積層(例如CL9~CL11)的卷積濾波器數量對於物件辨識的精確度影響相對較小,相較於減少靠近初始端的卷積層(例如CL0~CL3)的卷積濾波器數量。另一方面,由於靠近深入端的卷積層(例如CL9~CL11)佔用了較多的資料儲存空間,因此減少靠近深入端的卷積層(例如CL9~CL11)的卷積濾波器數量有助於削減卷積神經網路其模型所占用的儲存空間容量。
於操作S250中,處理器120用以根據上述操作S223中計算得到的縮減通道寬度(如表3所示),形成卷積神經網路的第二模型MD2之架構。請一併參閱第6圖,其繪示 根據表3所示的實施例中依照縮減通道寬度而形成之卷積神經網路的第二模型MD2之架構的示意圖。如第6圖所示,在第二模型MD2中包含了十二個依照序列次序而先後排列的卷積層CL0、CL1、CL2...CL11。需要特別注意的是,在第二模型MD2當中,卷積層CL9~CL11的通道寬度已經縮減至57、50及46。
於操作S260中,處理器120用以根據儲存在資料儲存器120當中的訓練資料TD訓練調整後的第二模型MD2。由於卷積層CL9~CL11採用縮減後的通道寬度,第二模型MD2的模型尺寸(占用的儲存空間)將小於第一模型MD1的模型尺寸(占用的儲存空間)。
於操作S270中,處理器120可利用卷積神經網路的第二模型MD2處理新進圖像IMGnew。於一實施例中,處理器120可利用第二模型MD2辨識新進圖像IMGnew,並產生對應新進圖像IMGnew的標籤IMGlab,如第1圖所示。
然而,第二模型MD2並不限於用以產生新進圖像IMGnew的標籤IMGlab。於另一實施例中,處理器120可利用卷積神經網路的第二模型MD2以偵測新進圖像IMGnew當中的物件(例如人物、臉孔、動物、車輛或建築物)。於再一實施例中,處理器120可利用卷積神經網路的第二模型MD2以將新進圖像IMGnew當中的前景物件(例如人物、臉孔、動物、車輛或建築物)與新進圖像IMGnew當中的背景(例如山景、街景、室內佈置等)加以分離。
在上述實施例中,操作S222當中的冗餘比例及操作S223當中的縮減通道寬度是分別根據卷積層CL0~CL11每一者分別決定及計算。然而,本揭示文件並不以此為限。於另一實施例中,卷積層CL0~CL11可以被分組為幾個不同的宏區塊(macroblock),而冗餘比例的計算可以基於單個宏區塊作為一個計算單位,如此一來可以加速並簡化冗餘比例以及縮減通道寬度的計算過程。
請一併參閱第7圖、第8圖以及後續的表4。第7圖繪示根據一實施例中第一模型MD1當中具有數個宏區塊MB0~MB2之分組的示意圖。第8圖繪示根據一實施例中第二模型MD1當中具有數個宏區塊MB0~MB2之分組的示意圖。表4表列記載於一實施例中有關如何計算宏區塊MB0~MB2的縮減通道寬度的相關內容。
如第7圖所示,第一模型MD1包含依照序列次序先後排列的卷積層CL0~CL3、池化層PL1、卷積層CL4~CL7、池化層PL2以及卷積層CL8~CL11。其中,卷積層CL0~CL3被分組為宏區塊MB0,卷積層CL4~CL7被分組為另一宏區塊MB1,卷積層CL8~CL11被分組為另一宏區塊MB2。
於此實施例中,當單一宏區塊中任一個卷積層屬於擴增層群組時,第4圖的操作S223對針對此宏區塊的整體減少宏區塊中所有卷積層的通道寬度。
基於表4的實施例,宏區塊MB0當中的卷積層CL0~CL3均屬於基礎層群組,宏區塊MB1當中的卷積層 CL4~CL7也均屬於基礎層群組。宏區塊MB0與宏區塊MB1當中的通道寬度將不變動。
宏區塊MB2當中的卷積層CL9~CL11是屬於擴增層群組。因此,宏區塊MB2的通道寬度將被調整為46。有關宏區塊MB2的縮減通道寬度的計算過程,可以參照先前表3的實施例中有關卷積層CL11的縮減通道寬度的計算方式。
Figure 108104292-A0101-12-0027-4
請一併參閱第9圖以及後續的表5。第9圖繪示根據另一實施例中第二模型MD1當中具有數個宏區塊MB0~MB2之分組的示意圖。表5表列記載於一實施例中有關如何計算宏區塊MB0~MB2的縮減通道寬度的相關內容。
基於表5的實施例,假設宏區塊MB1當中的卷積層CL6~CL7也均屬於擴增層群組,宏區塊MB2當中的卷積層CL9~CL11是屬於擴增層群組。此外,表5的實施例假 設宏區塊MB0當中的卷積層CL0~CL3均屬於基礎層群組,宏區塊MB1當中的卷積層CL4~CL5也屬於基礎層群組。
Figure 108104292-A0101-12-0028-5
在表5及第9圖的實施例中,當宏區塊MB2中的通道寬度與宏區塊MB1中的通道寬度同時被減少時,宏區塊MB2中的通道寬度其減少之幅度大於宏區塊MB1中的該些通道寬度其減少之幅度。於表5所示的實施例中,宏區塊MB2的通道寬度減少37.5%,而宏區塊MB1的通道寬度則減少12.5%。
在上述電子裝置100及方法200的實施例中,靠近深入端的宏區塊的通道寬度將被縮減更多,其縮減幅度高於靠近起始端的宏區塊的通道寬度的縮減幅度。減少靠近深入端的宏區塊的卷積濾波器數量對於物件辨識的精確度影響相對較小,相較於減少靠近初始端的宏區塊的卷積濾波器 數量。另一方面,減少靠近深入端的宏區塊的卷積濾波器數量有助於削減卷積神經網路其模型所占用的儲存空間容量。
雖然本發明之實施例已揭露如上,然其並非用以限定本發明,任何熟習此技藝者,在不脫離本發明之精神和範圍內,當可做些許之更動與潤飾,因此本發明之保護範圍當以後附之申請專利範圍所界定為準。
200‧‧‧方法
S210~S270‧‧‧操作

Claims (22)

  1. 一種調整方法,用以調整一卷積神經網路,該卷積神經網路之一第一模型包含複數個卷積層,該些卷積層依照一序列次序而先後排列,該調整方法包含:決定該卷積神經網路之該第一模型中該些卷積層的複數個感受野寬度;根據該些卷積層的該些感受野寬度與一輸入圖像寬度,將該第一模型中該些卷積層的複數個通道寬度減少至複數個縮減通道寬度;根據該些縮減通道寬度,形成該卷積神經網路之一第二模型的架構;以及訓練該卷積神經網路之該第二模型。
  2. 如請求項1所述之調整方法,其中將該第一模型中該些卷積層的該些通道寬度減少至該些縮減通道寬度之步驟,包含:透過將該第一模型中該些卷積層的該些感受野寬度與正相關於該輸入圖像寬度的一門檻值比較,將該第一模型中該些卷積層各自分類至一基礎層群組及一擴增層群組兩者其中之一;根據該擴增層群組的一部份運算量相對於該基礎層群組及該擴增層群組兩者的一總體運算量的關係,決定該第一模型中該些卷積層的複數個冗餘比例;以及根據該些卷積層的該些冗餘比例,將該第一模型中該 些卷積層的該些通道寬度減少至該些縮減通道寬度。
  3. 如請求項2所述之調整方法,其中將該第一模型中該些卷積層各自分類之步驟,包含:對應於該第一模型中該些卷積層其中一第一者所具有的一感受野寬度低於正相關於該輸入圖像寬度的該門檻值,將該些卷積層其中該第一者分類為該基礎層群組其中之一;以及對應於該第一模型中該些卷積層其中一第二者所具有的一感受野寬度超過正相關於該輸入圖像寬度的該門檻值,將該些卷積層其中該第二者分類為該擴增層群組其中之一。
  4. 如請求項2所述之調整方法,其中該卷積神經網路更包含複數個激活層,該些激活層每一者是排列該些卷積層其中一者之後,該些卷積層每一者所產生的一卷積輸出張量(tensor)經由該些激活層其中一者整流為複數個非零值輸出以及複數個零值輸出,其中決定該第一模型中該些卷積層的該些冗餘比例的步驟包含:對於該些卷積層每一者根據該些非零值輸出所佔的比例分別計算一有效機率;以及對於該些卷積層每一者分別計算一有效浮點運算次數,該有效浮點運算次數是根據該有效機率與一原始浮點運算次數的乘積而定。
  5. 如請求項2所述之調整方法,其中該卷積神經網路的該第一模型更包含複數個第一卷積層、一池化層以及複數個第二卷積層依照該序列次序而先後排列,其中減少該第一模型中該些卷積層的該些通道寬度的步驟包含:將該些第一卷積層分組為一第一宏區塊(macroblock),並將該些第二卷積層分組為一第二宏區塊;對應於該些第二卷積層中任一者被分組為該擴增層群組,減少該第二宏區塊中該些第二卷積層的複數個通道寬度;以及對應於該些第一卷積層中任一者被分組為該擴增層群組,減少該第一宏區塊中該些第一卷積層的複數個通道寬度。
  6. 如請求項5所述之調整方法,其中該第二宏區塊中的該些通道寬度與該第一宏區塊中的該些通道寬度同時被減少時,該第二宏區塊中的該些通道寬度其減少之幅度大於該第一宏區塊中的該些通道寬度其減少之幅度。
  7. 如請求項1所述之調整方法,其中該第一模型為該卷積神經網路的一預先訓練模型,該預先訓練模 型所包含的該些卷積層具有之一預設數量的通道寬度,該調整方法形成的該第二模型具有一縮減數量的通道寬度,該縮減數量低於或等於該預設數量。
  8. 如請求項1所述之調整方法,其中該些卷積層的該些通道寬度對應於該些卷積層每一者所包含的複數個卷積濾波器的數量。
  9. 如請求項1所述之調整方法,其中該第一模型包含依照該序列次序而先後排列的M個卷積層,M為一正整數,當該第一模型中第M個卷積層的一通道寬度與第M-1個卷積層的一通道寬度同時被減少時,該第M個卷積層的該通道寬度其減少之幅度大於該第M-1個卷積層的該通道寬度其減少之幅度。
  10. 如請求項1所述之調整方法,其中該些卷積層其中一者的一感受野寬度是根據在一輸入圖像上一投影區域所決定,該輸入圖像上該投影區域內的像素共同影響其中一個卷積層所產生的一卷積輸出張量之單一特徵點。
  11. 如請求項1所述之調整方法,其中該卷積神經網路之該第二模型用以辨識一新進圖像,並且該第二模型更用以產生對應該新進圖像的一標籤、偵測該新進 圖像中的一物件、或分離該新進圖像中的一前景物件與一背景。
  12. 一種電子裝置,適用於調整一卷積神經網路,該電子裝置包含:一資料儲存器,用以儲存該卷積神經網路的一第一模型,該卷積神經網路的該第一模型包含複數個卷積層,該些卷積層依照一序列次序而先後排列;一處理器,與該資料儲存器偶接,該處理器用以:決定該卷積神經網路之該第一模型中該些卷積層的複數個感受野寬度;根據該些卷積層的該些感受野寬度與一輸入圖像寬度,將該第一模型中該些卷積層的複數個通道寬度減少至複數個縮減通道寬度;根據該些縮減通道寬度,形成該卷積神經網路之一第二模型的架構;以及訓練該卷積神經網路之該第二模型。
  13. 如請求項12所述之電子裝置,其中該處理器用以將該第一模型中該些卷積層的該些通道寬度減少至該些縮減通道寬度時,該處理器是透過:藉由將該第一模型中該些卷積層的該些感受野寬度與正相關於該輸入圖像寬度的一門檻值比較,將該第一模型中該些卷積層各自分類至一基礎層群組及一擴增層群組兩 者其中之一;根據該擴增層群組的一部份運算量相對於該基礎層群組及該擴增層群組兩者的一總體運算量的關係,決定該第一模型中該些卷積層的複數個冗餘比例;以及根據該些卷積層的該些冗餘比例,將該第一模型中該些卷積層的該些通道寬度減少至該些縮減通道寬度。
  14. 如請求項13所述之電子裝置,其中對應於該第一模型中該些卷積層其中一第一者所具有的一感受野寬度低於正相關於該輸入圖像寬度的該門檻值,該處理器將該些卷積層其中該第一者分類為該基礎層群組其中之一,以及對應於該第一模型中該些卷積層其中一第二者所具有的一感受野寬度超過正相關於該輸入圖像寬度的該門檻值,該處理器將該些卷積層其中該第二者分類為該擴增層群組其中之一。
  15. 如請求項13所述之電子裝置,其中該卷積神經網路更包含複數個激活層,該些激活層每一者是排列該些卷積層其中一者之後,該些卷積層每一者所產生的一卷積輸出張量(tensor)經由該些激活層其中一者整流為複數個非零值輸出以及複數個零值輸出,其中該處理器用以決定該第一模型中該些卷積層的該些冗餘比例時,該處理器是透過: 對於該些激活層每一者根據該些非零值輸出所佔的比例分別計算一有效機率;以及對於該些激活層每一者分別計算一有效浮點運算次數,該有效浮點運算次數是根據該有效機率與一原始浮點運算次數的乘積而定。
  16. 如請求項13所述之電子裝置,其中該卷積神經網路之該第一模型更包含複數個第一卷積層、一池化層以及複數個第二卷積層依照該序列次序而先後排列,其中該處理器用以減少該第一模型中該些卷積層的該些通道寬度時,該處理器是透過:將該些第一卷積層分組為一第一宏區塊,並將該些第二卷積層分組為一第二宏區塊;對應於該些第二卷積層中任一者屬於該擴增層群組時,減少該第二宏區塊中該些第二卷積層的複數個通道寬度;以及對應於該些第一卷積層中任一者屬於該擴增層群組時,減少該第一宏區塊中該些第一卷積層的複數個通道寬度。
  17. 如請求項16所述之電子裝置,其中該第二宏區塊中的該些通道寬度與該第一宏區塊中的該些通道寬度同時被減少時,該第二宏區塊中的該些通道寬度其減少之幅度大於該第一宏區塊中的該些通道寬度其減少之幅度。
  18. 如請求項12所述之電子裝置,其中該第一模型為該卷積神經網路的一預先訓練模型,該預先訓練模型所包含的該些卷積層具有之一預設數量的通道寬度,該調整方法形成的該第二模型具有一縮減數量的通道寬度,該縮減數量低於或等於該預設數量。
  19. 如請求項12所述之電子裝置,其中該些卷積層的該些通道寬度對應於該些卷積層每一者所包含的複數個卷積濾波器的數量。
  20. 如請求項12所述之電子裝置,其中該第一模型包含依照該序列次序而先後排列的M個卷積層,M為一正整數,當該第一模型中第M個卷積層的一通道寬度與第M-1個卷積層的一通道寬度同時被減少時,該第M個卷積層的該通道寬度其減少之幅度大於該第M-1個卷積層的該通道寬度其減少之幅度。
  21. 如請求項12所述之電子裝置,其中該些卷積層其中一者的一感受野寬度是根據在一輸入圖像上一投影區域所決定,該輸入圖像上該投影區域內的像素共同影響其中一個卷積層所產生的一卷積輸出張量之單一特徵點。
  22. 如請求項12所述之電子裝置,其中該處理器使用該卷積神經網路之該第二模型以辨識一新進圖像,並且該處理器更使用該第二模型以產生對應該新進圖像的一標籤、偵測該新進圖像中的一物件、或分離該新進圖像中的一前景物件與一背景。
TW108104292A 2018-02-09 2019-02-01 卷積神經網路的調整方法及電子裝置 TWI729352B (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201862628311P 2018-02-09 2018-02-09
US62/628,311 2018-02-09
US201862672596P 2018-05-17 2018-05-17
US62/672,596 2018-05-17
US201862727570P 2018-09-06 2018-09-06
US62/727,570 2018-09-06

Publications (2)

Publication Number Publication Date
TW201935327A TW201935327A (zh) 2019-09-01
TWI729352B true TWI729352B (zh) 2021-06-01

Family

ID=65365875

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108104292A TWI729352B (zh) 2018-02-09 2019-02-01 卷積神經網路的調整方法及電子裝置

Country Status (4)

Country Link
US (1) US11379716B2 (zh)
EP (1) EP3537347A1 (zh)
CN (1) CN110135553B (zh)
TW (1) TWI729352B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11861035B2 (en) * 2019-05-16 2024-01-02 International Business Machines Corporation Separating public and private knowledge in AI
TWI765336B (zh) * 2019-10-08 2022-05-21 國立清華大學 適用於卷積神經網路之記憶體優化實現之區塊式推論方法及其系統
KR20210062477A (ko) * 2019-11-21 2021-05-31 삼성전자주식회사 전자 장치 및 그 제어 방법
US20220092735A1 (en) * 2019-11-21 2022-03-24 Samsung Electronics Co., Ltd. Electronic apparatus and controlling method thereof
CN110909794B (zh) * 2019-11-22 2022-09-13 乐鑫信息科技(上海)股份有限公司 一种适用于嵌入式设备的目标检测系统
CN110929805B (zh) * 2019-12-05 2023-11-10 上海肇观电子科技有限公司 神经网络的训练方法、目标检测方法及设备、电路和介质
CN111476346B (zh) * 2020-02-28 2022-11-29 之江实验室 一种基于牛顿共轭梯度法的深度学习网络架构
CN113516224A (zh) * 2020-04-09 2021-10-19 深圳云天励飞技术有限公司 神经网络的优化方法及装置、电子设备及存储介质
US20210383534A1 (en) * 2020-06-03 2021-12-09 GE Precision Healthcare LLC System and methods for image segmentation and classification using reduced depth convolutional neural networks
WO2021248433A1 (en) * 2020-06-12 2021-12-16 Moffett Technologies Co., Limited Method and system for dual-sparse convolution processing and parallelization
CN112051980B (zh) * 2020-10-13 2022-06-21 浙江大学 一种基于牛顿迭代法的非线性激活函数计算装置
TWI768517B (zh) * 2020-10-21 2022-06-21 國立政治大學 影像品質提昇方法及使用該方法的影像處理裝置
US11972348B2 (en) * 2020-10-30 2024-04-30 Apple Inc. Texture unit circuit in neural network processor
CN113537232B (zh) * 2021-05-31 2023-08-22 大连民族大学 双通道交互时间卷积网络、近景视频动作分割方法、计算机系统和介质
CN114593919B (zh) * 2022-03-28 2023-11-17 青岛理工大学 一种新型的滚动轴承故障诊断方法及其系统
CN115994909B (zh) * 2023-03-23 2023-06-02 中铁电气化局集团有限公司 基于图像工业算法的接触网接触故障检测方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170169313A1 (en) * 2015-12-14 2017-06-15 Samsung Electronics Co., Ltd. Image processing apparatus and method based on deep learning and neural network learning
US20170270653A1 (en) * 2016-03-15 2017-09-21 International Business Machines Corporation Retinal image quality assessment, error identification and automatic quality correction
CN107341548A (zh) * 2017-06-26 2017-11-10 北京深度奇点科技有限公司 一种数据处理方法、装置及电子设备
CN107392314A (zh) * 2017-06-30 2017-11-24 天津大学 一种基于确定性丢弃连接的深层卷积神经网络方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10332028B2 (en) * 2015-08-25 2019-06-25 Qualcomm Incorporated Method for improving performance of a trained machine learning model
WO2018033137A1 (zh) * 2016-08-19 2018-02-22 北京市商汤科技开发有限公司 在视频图像中展示业务对象的方法、装置和电子设备
US10909451B2 (en) * 2016-09-01 2021-02-02 International Business Machines Corporation Apparatus and method for learning a model corresponding to time-series input data
US11157814B2 (en) * 2016-11-15 2021-10-26 Google Llc Efficient convolutional neural networks and techniques to reduce associated computational costs
US10361712B2 (en) * 2017-03-14 2019-07-23 International Business Machines Corporation Non-binary context mixing compressor/decompressor
CN106971174B (zh) * 2017-04-24 2020-05-22 华南理工大学 一种cnn模型、cnn训练方法以及基于cnn的静脉识别方法
US11093832B2 (en) * 2017-10-19 2021-08-17 International Business Machines Corporation Pruning redundant neurons and kernels of deep convolutional neural networks
CN107729994B (zh) 2017-11-28 2020-05-26 南京地平线机器人技术有限公司 执行卷积神经网络中的卷积层的运算的方法和装置
US11176439B2 (en) * 2017-12-01 2021-11-16 International Business Machines Corporation Convolutional neural network with sparse and complementary kernels
US11631004B2 (en) * 2018-03-28 2023-04-18 Intel Corporation Channel pruning of a convolutional network based on gradient descent optimization

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170169313A1 (en) * 2015-12-14 2017-06-15 Samsung Electronics Co., Ltd. Image processing apparatus and method based on deep learning and neural network learning
US20170270653A1 (en) * 2016-03-15 2017-09-21 International Business Machines Corporation Retinal image quality assessment, error identification and automatic quality correction
CN107341548A (zh) * 2017-06-26 2017-11-10 北京深度奇点科技有限公司 一种数据处理方法、装置及电子设备
CN107392314A (zh) * 2017-06-30 2017-11-24 天津大学 一种基于确定性丢弃连接的深层卷积神经网络方法

Also Published As

Publication number Publication date
TW201935327A (zh) 2019-09-01
US20190251433A1 (en) 2019-08-15
CN110135553A (zh) 2019-08-16
CN110135553B (zh) 2021-09-03
US11379716B2 (en) 2022-07-05
EP3537347A1 (en) 2019-09-11

Similar Documents

Publication Publication Date Title
TWI729352B (zh) 卷積神經網路的調整方法及電子裝置
CN110059710B (zh) 用于利用卷积神经网络进行图像分类的装置和方法
Zhang et al. A deeply supervised image fusion network for change detection in high resolution bi-temporal remote sensing images
WO2019144575A1 (zh) 一种快速行人检测方法及装置
Wang et al. FE-YOLOv5: Feature enhancement network based on YOLOv5 for small object detection
CN106897739B (zh) 一种基于卷积神经网络的电网设备分类方法
CN113486726A (zh) 一种基于改进卷积神经网络的轨道交通障碍物检测方法
US20170147868A1 (en) A method and a system for face verification
Hu et al. Learning hybrid convolutional features for edge detection
CN114972976B (zh) 基于频域自注意力机制的夜间目标检测、训练方法及装置
CN109948457B (zh) 基于卷积神经网络和cuda加速的实时目标识别方法
CN113393457B (zh) 一种结合残差密集块与位置注意力的无锚框目标检测方法
CN111160225B (zh) 基于深度学习的人体解析方法和装置
Chawan et al. Distracted driver detection and classification
CN115273244A (zh) 基于图神经网络的人体动作识别方法和系统
Zhang et al. Crowd counting based on attention-guided multi-scale fusion networks
Salem et al. Semantic image inpainting using self-learning encoder-decoder and adversarial loss
Aldhaheri et al. MACC Net: Multi-task attention crowd counting network
CN114612709A (zh) 图像金字塔特征指导的多尺度目标检测方法
Liang et al. Mask-guided multiscale feature aggregation network for hand gesture recognition
Mohamed et al. Data augmentation for deep learning algorithms that perform driver drowsiness detection
CN112084371A (zh) 一种电影多标签分类方法、装置、电子设备以及存储介质
CN115713769A (zh) 文本检测模型的训练方法、装置、计算机设备和存储介质
Hussain et al. Image Segmentation for Autonomous Driving Using U-Net Inception
CN112541469B (zh) 基于自适应分类的人群计数方法及系统