TWI746987B - 卷積神經網路系統 - Google Patents

卷積神經網路系統 Download PDF

Info

Publication number
TWI746987B
TWI746987B TW108118527A TW108118527A TWI746987B TW I746987 B TWI746987 B TW I746987B TW 108118527 A TW108118527 A TW 108118527A TW 108118527 A TW108118527 A TW 108118527A TW I746987 B TWI746987 B TW I746987B
Authority
TW
Taiwan
Prior art keywords
neural network
convolutional neural
network system
layer
stage
Prior art date
Application number
TW108118527A
Other languages
English (en)
Other versions
TW202044130A (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 奇景光電股份有限公司
Priority to TW108118527A priority Critical patent/TWI746987B/zh
Publication of TW202044130A publication Critical patent/TW202044130A/zh
Application granted granted Critical
Publication of TWI746987B publication Critical patent/TWI746987B/zh

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

一種卷積神經網路方法包含:決定一暫時緩衝層,其位於卷積神經網路系統的第一層與最終層之間;於第一階段,從卷積神經網路系統的第一層至暫時緩衝層,根據該暫時緩衝層之前層級的部分輸入資料,執行卷積操作以產生一特徵圖線;及於第二階段,從卷積神經網路系統的暫時緩衝層至最終層,執行卷積操作以產生一特徵圖。

Description

卷積神經網路系統
本發明係有關一種神經網路,特別是關於一種二階段基於線之特徵圖(line-based feature map)的卷積神經網路(CNN)方法與系統。
卷積神經網路(convolutional neural network, CNN)是深層神經網路的一種,其使用卷積層對輸入進行過濾,以獲得有用訊息。卷積層的過濾器可根據所學習的參數進行修改,以萃取得到特定工作的最有用訊息。卷積神經網路通常可適用於分類、偵測與辨識,例如影像分類、醫學影像分析及影像/視訊辨識。
卷積神經網路的卷積操作包含模型權重(model weighting)與特徵圖(feature map)之間的相乘-相加操作,是一種資料密集(data-intensive)運算。於硬體的實施方面,大量的特徵圖資料需要緩衝於記憶體(例如靜態隨機存取記憶體)當中,以確保卷積神經網路的硬體加速器可即時取得特徵圖資料,以進行下一層級的卷積操作。由於特徵圖的大小正比於輸入影像尺寸,因此對於較大尺寸的輸入影像,則需要更多的靜態隨機存取記憶體。
單次偵測器(single shot detector, SSD),例如you only look once單次偵測器,由於其高圖框率(frame rate)與高效能,因此有愈來愈普遍的趨勢,且勝過傳統基於滑動式視窗(sliding-window-based)偵測器。於傳統具單次偵測器的卷積神經網路,硬體加速器需要三倍於特徵圖大小的靜態隨機存取記憶體,以確保於最壞情況下可正確儲存特徵圖。因此,傳統具單次偵測器的卷積神經網路需要非常多的靜態隨機存取記憶體,才能維持其高圖框率與高效能。
因此亟需提出一種新穎的卷積神經網路方法與系統,其需求較少記憶體且不會犧牲圖框率與效能。
鑑於上述,本發明實施例的目的之一在於提出一種二階段基於線之特徵圖的卷積神經網路(CNN)方法與系統,可大量降低所需記憶體。
根據本發明實施例,卷積神經網路方法包含以下步驟。決定一暫時緩衝層,其位於卷積神經網路系統的第一層與最終層之間。於第一階段,從卷積神經網路系統的第一層至暫時緩衝層,根據暫時緩衝層之前層級的部分輸入資料,執行卷積操作以產生一特徵圖線。於第二階段,從卷積神經網路系統的暫時緩衝層至最終層,執行卷積操作以產生一特徵圖。
第一圖顯示本發明實施例之二階段卷積神經網路(CNN)方法100的流程圖。第二A圖顯示本發明實施例之基於線之特徵圖(line-based feature map)的卷積神經網路(CNN)系統200的方塊圖。
在本實施例中,卷積神經網路系統200可包含處理器21,用以執行卷積神經網路相關的(或卷積)操作。本實施例之卷積神經網路系統200可包含記憶體22,用以儲存處理器21所產生的特徵圖。記憶體22可為揮發性記憶體(例如靜態隨機存取記憶體(SRAM))。記憶體22可儲存指令,供處理器21執行。本實施例之卷積神經網路系統200可包含感測器23,例如相機,用以擷取輸入資料(例如影像資料),供處理器21處理。
第二B圖顯示第二A圖之記憶體22的配置。在本實施例中,記憶體22可分割為以下區段(section):第一階段部分特徵圖緩衝器(以下簡稱第一階段緩衝器)221、暫時(temporary)緩衝層區段(以下簡稱暫時區段)222、第二階段特徵圖緩衝器(以下簡稱第二階段緩衝器)223,及用以儲存指令的指令區段224。
於步驟11,使用離線(offline)最佳化器(optimizer)以決定暫時緩衝層,該暫時緩衝層位於卷積神經網路系統200的第一層與最終層之間。一般來說,卷積神經網路系統200的所有層級當中,具有最小資料量(包含高、寬與通道數)的層級即決定為暫時緩衝層。
接著,於步驟12,流程進入第一階段,處理器21(例如卷積神經網路硬體加速器)從卷積神經網路系統200的第一層至暫時緩衝層執行卷積操作。根據本實施例的特徵之一,處理器21可根據暫時緩衝層之前層級的部分輸入資料,以產生(或輸出)特徵圖線(feature map line),其中部分輸入資料可儲存於第一階段緩衝器221。部分輸入資料相應產生的特徵圖線一行行地儲存於暫時區段222。值得注意的是,執行第一階段的卷積操作所需時間相同於傳統(基於訊框)卷積神經網路方法所需時間,然而所需記憶空間則遠小於傳統(基於訊框)卷積神經網路方法所需記憶空間。
第三圖顯示暫時緩衝層(例如第M層)的特徵圖線(標示為點狀區域)及暫時緩衝層之前層級(例如第M-1層與第M-2層)的部分輸入資料(標示為斜線區域),其儲存於第一階段緩衝器221。在此例子中,濾波器(filter)的尺寸為3x3。
第M-1層的部分輸入資料可包含相應於特徵圖線的一條線,及其上、下各一條(水平)線。類似的情形,第M-2層的部分輸入資料可包含相應於特徵圖線的一條線,及其上、下各二條線。換句話說,層級的序號愈小,則該層級的部分輸入資料愈多。如果於層級之間執行降取樣(down-sampling),則相應於特徵圖線的上、下線的數目需乘以降取樣比例(down-sampling ratio)。一般來說,若濾波器的尺寸為(2n+1)x(2n+1),第M-P層的部分輸入資料可包含相應於特徵圖線的一條線,及其上、下各nxP條線,其中暫時緩衝層位於第M層,P為小於M的正整數。
當整個輸入資料已處理且暫時區段222已填滿特徵圖線,則流程進入步驟13的第二階段,處理器21(例如卷積神經網路硬體加速器)從卷積神經網路系統200的暫時緩衝層至最終層執行卷積操作,係以(傳統)層至層(layer-to-layer)方式執行(而非如第一階段之線至線(line-by-line)方式)。在本說明書中,層至層方式係指傳統卷積神經網路系統(從暫時緩衝層至最終層)以傳統方式執行卷積操作。其中,根據處理器21所取得的整個輸入資料,處理器21產生(或輸出)特徵圖(而非特徵圖線)。所產生的特徵圖可儲存於第二階段緩衝器223。值得注意的是,位於暫時緩衝層之後層級的特徵圖尺寸一般較位於暫時緩衝層之前層級的特徵圖尺寸來得小。
上述實施例可適用於單次偵測器(single shot detector, SSD),例如you only look once單次偵測器。第四圖例示本發明實施例之卷積神經網路系統。在一實施例中,靜態隨機存取記憶體(SRAM)的第一階段緩衝器221之尺寸為174K,暫時區段222的尺寸為48K,且第二階段緩衝器223的尺寸為48K。傳統(基於訊框的)卷積神經網路系統所需靜態隨機存取記憶體(SRAM)的尺寸為3*520K。因此,本發明實施例之基於線的卷積神經網路系統可減少大約80%的靜態隨機存取記憶體(SRAM)。
以上所述僅為本發明之較佳實施例而已,並非用以限定本發明之申請專利範圍;凡其它未脫離發明所揭示之精神下所完成之等效改變或修飾,均應包含在下述之申請專利範圍內。
100:二階段卷積神經網路方法 11:決定暫時緩衝層 12:(第一階段)根據第一層至暫時緩衝層的部分輸入資料以產生特徵圖線 13:(第二階段)從暫時緩衝層至最終層產生特徵圖 200:卷積神經網路系統 21:處理器 22:記憶體 221:第一階段緩衝器 222:暫時區段 223:第二階段緩衝器 224:指令區段 23:感測器
第一圖顯示本發明實施例之二階段卷積神經網路(CNN)方法的流程圖。 第二A圖顯示本發明實施例之基於線之特徵圖的卷積神經網路(CNN)系統的方塊圖。 第二B圖顯示第二A圖之記憶體的配置。 第三圖顯示暫時緩衝層的特徵圖線及暫時緩衝層之前層級的部分輸入資料。 第四圖例示本發明實施例之卷積神經網路系統。
100:二階段卷積神經網路方法
11:決定暫時緩衝層
12:(第一階段)根據第一層至暫時緩衝層的部分輸入資料以產生特徵圖線
13:(第二階段)從暫時緩衝層至最終層產生特徵圖

Claims (10)

  1. 一種卷積神經網路系統,包含:一處理器,用以執行卷積操作;一感測器,用以擷取輸入資料,供該處理器處理;一記憶體,用以儲存指令,供該處理器執行;其中該處理器執行以下步驟:決定一暫時緩衝層,其位於該卷積神經網路系統的第一層與最終層之間;於第一階段,從該卷積神經網路系統的第一層至該暫時緩衝層,根據該暫時緩衝層之前層級的部分輸入資料,執行卷積操作以產生一特徵圖線;及於第二階段,從該卷積神經網路系統的該暫時緩衝層至最終層,執行卷積操作以產生一特徵圖。
  2. 根據申請專利範圍第1項所述之卷積神經網路系統,其中該卷積神經網路系統的該第一層與該最終層之間包含複數層級,其中具有最小資料量的層級即決定為該暫時緩衝層。
  3. 根據申請專利範圍第1項所述之卷積神經網路系統,其中該記憶體分割為以下區段:一第一階段緩衝器,用以儲存該部分輸入資料;一暫時區段,用以儲存第一階段所產生的該特徵圖線;及一第二階段緩衝器,用以儲存第二階段所產生的該特徵圖。
  4. 根據申請專利範圍第3項所述之卷積神經網路系統,其中該記憶體的暫時區段已填滿時,則進入第二階段。
  5. 根據申請專利範圍第1項所述之卷積神經網路系統,其中該記憶體包含靜態隨機存取記憶體。
  6. 根據申請專利範圍第1項所述之卷積神經網路系統,其中該感測器包含一相機。
  7. 根據申請專利範圍第1項所述之卷積神經網路系統,其中於該第一階段,層級的序號愈小,則該層級的部分輸入資料愈多。
  8. 根據申請專利範圍第1項所述之卷積神經網路系統,其中於該第一階段,若濾波器的尺寸為(2n+1)x(2n+1),第M-P層的部分輸入資料包含相應於該特徵圖線的一條線,及其上、下各nxP條線,其中該暫時緩衝層位於第M層,P為小於M的正整數。
  9. 根據申請專利範圍第1項所述之卷積神經網路系統,其中該第二階段係以層至層方式執行。
  10. 根據申請專利範圍第1項所述之卷積神經網路系統,其中該卷積神經網路系統包含一單次偵測器。
TW108118527A 2019-05-29 2019-05-29 卷積神經網路系統 TWI746987B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW108118527A TWI746987B (zh) 2019-05-29 2019-05-29 卷積神經網路系統

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108118527A TWI746987B (zh) 2019-05-29 2019-05-29 卷積神經網路系統

Publications (2)

Publication Number Publication Date
TW202044130A TW202044130A (zh) 2020-12-01
TWI746987B true TWI746987B (zh) 2021-11-21

Family

ID=74668186

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108118527A TWI746987B (zh) 2019-05-29 2019-05-29 卷積神經網路系統

Country Status (1)

Country Link
TW (1) TWI746987B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201824098A (zh) * 2016-12-22 2018-07-01 三星電子股份有限公司 訓練深層學習分類網路之系統和方法
CN109034183A (zh) * 2018-06-07 2018-12-18 北京飞搜科技有限公司 一种目标检测方法、装置及设备
CN109101994A (zh) * 2018-07-05 2018-12-28 北京致远慧图科技有限公司 一种卷积神经网络迁移方法、装置、电子设备及存储介质
CN109800712A (zh) * 2019-01-21 2019-05-24 成都快眼科技有限公司 一种基于深度卷积神经网络的车辆检测计数方法及设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201824098A (zh) * 2016-12-22 2018-07-01 三星電子股份有限公司 訓練深層學習分類網路之系統和方法
CN109034183A (zh) * 2018-06-07 2018-12-18 北京飞搜科技有限公司 一种目标检测方法、装置及设备
CN109101994A (zh) * 2018-07-05 2018-12-28 北京致远慧图科技有限公司 一种卷积神经网络迁移方法、装置、电子设备及存储介质
CN109800712A (zh) * 2019-01-21 2019-05-24 成都快眼科技有限公司 一种基于深度卷积神经网络的车辆检测计数方法及设备

Also Published As

Publication number Publication date
TW202044130A (zh) 2020-12-01

Similar Documents

Publication Publication Date Title
US11250591B2 (en) Target detection method, system, and non-volatile storage medium
US10360494B2 (en) Convolutional neural network (CNN) system based on resolution-limited small-scale CNN modules
US10769485B2 (en) Framebuffer-less system and method of convolutional neural network
WO2021018199A1 (zh) 一种基于卷积神经网络的图像处理方法及装置
KR102578209B1 (ko) 영상 처리 방법과 장치
KR102034659B1 (ko) 컨볼루션 뉴럴 네트워크를 위한 하드웨어 가속기 및 컨볼루션 연산량 감소 방법
KR102070956B1 (ko) 영상 처리 장치 및 방법
US11967040B2 (en) Information processing apparatus, control method thereof, imaging device, and storage medium
US20140376882A1 (en) Computing device with video analyzing function and video analyzing method
US10853694B2 (en) Processing input data in a convolutional neural network
WO2019008951A1 (ja) 畳み込みニューラルネットワーク
JP2016115248A (ja) 演算処理装置
CN111310759A (zh) 双模式协作的目标检测抑制优化方法及设备
US10789481B2 (en) Video data processing
WO2022152104A1 (zh) 动作识别模型的训练方法及装置、动作识别方法及装置
JP6970827B2 (ja) 演算処理装置
TWI746987B (zh) 卷積神經網路系統
US11514312B2 (en) Computer vision optimisation for small value changes
US11544523B2 (en) Convolutional neural network method and system
KR102086042B1 (ko) 영상 처리 장치 및 방법
US9818045B2 (en) Apparatus and method for detecting a feature in an image
US20190347538A1 (en) Neural network with frozen nodes
CN115019148A (zh) 一种目标检测方法
CN114943729A (zh) 一种高分辨率细胞图像的细胞计数方法及系统
US10878592B2 (en) Video data processing