TWI789042B - 具有平均量化機制的神經網路建構方法及裝置 - Google Patents

具有平均量化機制的神經網路建構方法及裝置 Download PDF

Info

Publication number
TWI789042B
TWI789042B TW110136791A TW110136791A TWI789042B TW I789042 B TWI789042 B TW I789042B TW 110136791 A TW110136791 A TW 110136791A TW 110136791 A TW110136791 A TW 110136791A TW I789042 B TWI789042 B TW I789042B
Authority
TW
Taiwan
Prior art keywords
neural network
weight combination
loss function
network
regularization
Prior art date
Application number
TW110136791A
Other languages
English (en)
Other versions
TW202316323A (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 TW110136791A priority Critical patent/TWI789042B/zh
Priority to US17/830,827 priority patent/US20230114610A1/en
Application granted granted Critical
Publication of TWI789042B publication Critical patent/TWI789042B/zh
Publication of TW202316323A publication Critical patent/TW202316323A/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/04Architecture, e.g. interconnection topology
    • G06N3/0495Quantised networks; Sparse networks; Compressed networks
    • 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/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Feedback Control In General (AREA)
  • Earth Drilling (AREA)
  • On-Site Construction Work That Accompanies The Preparation And Application Of Concrete (AREA)
  • Paper (AREA)

Abstract

一種具有平均量化機制的神經網路建構方法,包含:擷取神經網路的各複數網路層包含的權重組合; 依據所有網路層的權重組合以及複數目標值產生損失函數;對應各網路層,計算權重組合之吉尼係數,並將所有網路層的吉尼係數累加為正則化修正項;使損失函數以及修正項合併為正則化損失函數,以對神經網路根據正則化損失函數進行訓練,產生各網路層的訓練後權重組合;以及對各網路層的訓練後權重組合進行量化,以產生在各網路層包含量化權重組合的量化神經網路。

Description

具有平均量化機制的神經網路建構方法及裝置
本發明是關於神經網路技術,尤其是關於一種具有平均量化機制的神經網路建構方法及裝置。
深度學習是機器學習的分支,以人工神經網路為架構,對資料進行表徵學習的演算法。近年來由於大數據分析(Big Data Analytics)與人工智慧(AI)技術的推波助瀾,使得深度學習技術藉由嵌入式系統實現的應用愈來愈多。
由於硬體難以實現小數運算,神經網路的小數權重往往需要經由量化而成為整數。然而,在量化的過程中往往會造成精確度的下降,進而使整體神經網路的精確度下降。
鑑於先前技術的問題,本發明之一目的在於提供一種具有平均量化機制的神經網路建構方法及裝置,以改善先前技術。
本發明包含一種具有平均量化機制的神經網路建構方法,包含:擷取神經網路的各複數網路層包含的權重組合;依據所有網路層的權重組合以及複數目標值產生損失函數(loss function);對應各網路層,計算權重組合之吉尼係數(Gini coefficient),並將所有網路層的吉尼係數累加為正則化(regularization)修正項;使損失函數以及修正項合併為正則化損失函數,以對神經網路根據正則化損失函數進行訓練,產生各網路層的訓練後權重組合;以及對各網路層的訓練後權重組合進行量化,以產生在各網路層包含量化權重組合的量化神經網路。
本發明更包含一種具有平均量化機制的神經網路建構裝置,包含:儲存電路,配置以儲存電腦可執行指令;以及處理電路,配置以擷取並執行電腦可執行指令,以執行神經網路建構方法,包含:擷取神經網路的各複數網路層包含的權重組合;依據所有網路層的權重組合以及複數目標值產生損失函數;對應各網路層,計算權重組合之吉尼係數,並將所有網路層的吉尼係數累加為正則化修正項;使損失函數以及修正項合併為正則化損失函數,以對神經網路根據正則化損失函數進行訓練,產生各網路層的訓練後權重組合;以及對各網路層的訓練後權重組合進行量化,以產生在各網路層包含量化權重組合的量化神經網路。
有關本案的特徵、實作與功效,茲配合圖式作較佳實施例詳細說明如下。
本發明之一目的在於提供一種具有平均量化機制的神經網路建構方法及裝置,透過吉尼係數的使用,使損失函數反映出權重間的分布狀況,進而使神經網路的訓練過程將權重的分布平均化而提高量化精確度。
請參照圖1。圖1顯示本發明之一實施例中,一種具有平均量化機制的神經網路建構裝置100的方塊圖。神經網路建構裝置100包含:儲存電路110以及處理電路120。
儲存電路110可為任何配置以儲存資料的儲存裝置,例如,但不限於隨機存取記憶體(random access memory;RAM)、唯讀記憶體(read only memory;ROM)或硬碟。需注意的是,儲存電路110在不同實施例中,可僅包含單一個上述的儲存裝置,或是包含多個上述的儲存裝置,以儲存不同類型的資料。於一實施例中,儲存電路110配置以儲存電腦可執行指令115。
處理電路120電性耦接於儲存電路110。於一實施例中,處理電路120可配置以自儲存電路110擷取並執行電腦可執行指令115。電腦可執行指令115包含例如,但不限於儲存電路110或其他硬體模組的韌體/驅動程式(firmware/driver)與相關指令,以存取儲存電路110的訊號或資料進行運算,執行神經網路建構裝置100的功能。
以下將針對神經網路建構裝置100的運作進行更詳細的說明。
首先,處理電路120擷取神經網路的各複數網路層包含的權重組合。於一實施例中,神經網路的相關資料亦可儲存於儲存電路110中,並由處理電路120擷取。
請同時參照圖2。圖2顯示本發明一實施例中,一個神經網路200的示意圖。
神經網路200包含網路層L 1~L 4。其中,網路層L 1為輸入層,網路層L N為輸出層,而網路層L 2~L 3為隱藏層。各網路層L 1~L 4包含一個權重組合,且此權重組合包含複數小數權重。在圖2中,每個小數權重是以一個圓形區塊繪示。因此,網路層L 1~L 4分別包含的權重的數目為3、4、4及1個。
在神經網路200尚未進行訓練前,各網路層的權重組合包含的權重可為亂數產生。在一個數值範例中,網路層L 1的權重組合包含三個權重的數值分別為0.4、0.7及0.2。網路層L 2的權重組合包含四個權重的數值分別為0.1、0.1、0.1以及0.1。網路層L 3的權重組合包含四個權重的數值分別為0.4、0.2、0.3以及0.1。網路層L 4的權重組合包含一個權重的數值為0.5。
須注意的是,在不同的應用情境中,神經網路可視需要而包含不同數目的網路層,且每個網路層亦可包含不同數目的權重。本發明並不限於圖2所繪示的數目。
接著,處理電路120依據所有網路層的權重組合以及複數目標值產生損失函數。
於一實施例中,以神經網路200為例,神經網路200在自輸入層(網路層L 1)接收訓練輸入值後,將根據所有網路層L 1~L N的權重組合進行卷積運算,並在輸出層(網路層L N)產生預測值。損失函數是用以計算預測值與目標值間的差異,進而做為衡量神經網路200的學習結果的好壞。於一實施例中,由於預測值與所有網路層L 1~L N的權重組合相關,在將所有網路層L 1~L N的權重組合以θ表示,且目標值以Y表示後,可進一步將損失函數表示為與θ以及Y相關的函數:
Figure 02_image001
須注意的是,根據不同的應用,處理電路120可採用不同形式的損失函數。本發明並不限於特定形式的損失函數。
處理電路120對應各網路層,計算權重組合之吉尼係數,並將所有網路層的吉尼係數累加為正則化修正項。其中,吉尼係數是用以對權重組合中的權重進行排序(例如自小至大),並計算累積百分比,其計算結果表示權重組合中的權重的分布狀況。
請參照圖3A以及圖3B。圖3A顯示本發明一實施例中,網路層L 2的權重組合的百分比累積示意圖。圖3B顯示本發明一實施例中,網路層L 3的權重組合的百分比累積示意圖。其中,橫軸表示權重的累積個數,縱軸表示權重的累積百分比。其中,最大累積百分比的結果是以1(亦即100%)表示。
如圖3A所示,網路層L 2包含的權重組合中的四個權重自小至大排序為0.1、0.1、0.1以及0.1,並對應橫軸上標註為1~4的位置依序在縱軸上累加為0.25、0.5、0.75以及1(分別對應25%、50%、75%以及100%),並對應於可連成一條直線線段LS1的四個點P1~P4。
由於網路層L 2包含的權重組合中的四個權重完全相等,分布完全均等。因此,圖3A的直線線段LS1即對應於分布完全均等的狀況,網路層L 2包含的權重組合的吉尼係數為0。
如圖3B所示,網路層L 3包含的權重組合中的四個權重自小至大排序為0.1、0.2、0.3以及0.4,並對應橫軸上標註為1~4的位置依序在縱軸上累加為0.1、0.3、0.6以及1.0(分別對應10%、30%、60%以及100%),並對應於可連成一條折線線段LS2的四個點Q1~Q4。
由於網路層L 3包含的權重組合中的四個權重完全不同,因此分布相當不均等。在將圖3A的直線線段LS1以虛線繪製於圖3B後,折線線段LS2均位於直線線段LS1下方。網路層L 3包含的權重組合的吉尼係數即為折線線段LS2以及直線線段LS1之間的面積。
由上述可知,吉尼係數在權重組合之分布愈不平均時具有愈大的值,且在權重組合之分布愈平均時具有愈小的值。
因此,處理電路120在使所有網路層的權重組合對應的吉尼係數累加後,將產生正則化修正項。於一實施例中,正則化修正項可表示為與所有網路層L 1~L N的權重組合θ相關的函數:
Figure 02_image003
。其中,
Figure 02_image005
表示第i個網路層的權重組合對應的吉尼係數。
再來,處理電路120使損失函數以及修正項合併為正則化損失函數,以對神經網路根據正則化損失函數進行訓練,產生各網路層的訓練後權重組合。
由於損失函數表示為
Figure 02_image001
,且正則化修正項表示為
Figure 02_image007
,因此正則化損失函數將可表示為兩者的結合:
Figure 02_image009
於一實施例中,正則化修正項
Figure 02_image007
可選擇性地與數量級修正參數
Figure 02_image011
相乘,並
Figure 02_image013
表示為以使正則化修正項
Figure 02_image007
與損失函數
Figure 02_image001
具有相同的數量級。舉例而言,在部分情境下,損失函數的數量級是-1(10 -1),而正則化修正項
Figure 02_image007
的數量級是1(10 1)。在這樣的情形下,數量級修正參數
Figure 02_image011
可設置為10 -2,以將正則化修正項
Figure 02_image007
的數量級修正為-1。
因此,處理電路120可使神經網路接收訓練輸入值並進行卷積運算產生預測值後,根據正則化損失函數
Figure 02_image016
判斷學習結果的好壞,並持續修正各網路層包含的權重組合。由於正則化損失函數
Figure 02_image018
在權重組合之分布不平均時將具有較大的值,神經網路在訓練後得到的訓練後權重組合既可根據學習結果修正,亦可使分布趨於平均。
最後,處理電路120對各網路層的訓練後權重組合進行量化,以產生在各網路層包含量化權重組合的量化神經網路。在經過量化後,各網路層包含的量化權重組合將包含複數整數權重。於一實施例中,具有整數權重的量化神經網路將可以嵌入式系統晶片實現。
須注意的是,量化的方式可由各種量化演算法進行,本發明並不限於特定的量化方式。
由於小數的計算對硬體而言較為困難,在神經網路以嵌入式系統晶片實現時,需要將神經網路中的小數權重進行量化成為整數。然而,權重的分布不均將使量化的精確度下降。在部分技術中,神經網路的權重在訓練過程並無法根據分布狀況進行調整,而使得量化後的神經網路的精確度下降。
本發明的具有平均量化機制的神經網路建構裝置將可透過吉尼係數的使用,使損失函數反映出權重間的分布狀況,進而使神經網路的訓練過程將權重的分布平均化而提高量化精確度。
請參照圖4。圖4為本發明一實施例中,一種具有平均量化機制的神經網路建構方法400的流程圖。
除前述裝置外,本發明另揭露一種神經網路建構方法400,應用於例如,但不限於圖1的神經網路建構裝置100中。神經網路建構方法400之一實施例如圖4所示,包含下列步驟。
於步驟S410,擷取神經網路的各複數網路層包含的權重組合。
於步驟S420,依據所有網路層的權重組合以及複數目標值產生損失函數。
於步驟S430,對應各網路層,計算權重組合之吉尼係數,並將所有網路層的吉尼係數累加為正則化修正項。
於步驟S440,使損失函數以及修正項合併為正則化損失函數,以對神經網路根據正則化損失函數進行訓練,產生各網路層的訓練後權重組合。
於步驟S450,對各網路層的訓練後權重組合進行量化,以產生在各網路層包含量化權重組合的量化神經網路。
需注意的是,上述的實施方式僅為一範例。於其他實施例中,本領域的通常知識者當可在不違背本發明的精神下進行更動。
綜合上述,本發明中具有平均量化機制的神經網路建構方法及裝置可透過吉尼係數的使用,使損失函數反映出權重間的分布狀況,進而使神經網路的訓練過程將權重的分布平均化而提高量化精確度。
雖然本案之實施例如上所述,然而該些實施例並非用來限定本案,本技術領域具有通常知識者可依據本案之明示或隱含之內容對本案之技術特徵施以變化,凡此種種變化均可能屬於本案所尋求之專利保護範疇,換言之,本案之專利保護範圍須視本說明書之申請專利範圍所界定者為準。
100:神經網路建構裝置 110:儲存電路 115:電腦可執行指令 120:處理電路 200:神經網路 400:神經網路建構方法 S410~S450:步驟 L 1~L N:網路層 LS1:直線線段 LS2:折線線段 P1~P4、Q1~Q4:點
[圖1]顯示本發明之一實施例中,一種具有平均量化機制的神經網路建構裝置的方塊圖; [圖2]顯示本發明之一實施例中,一個神經網路的示意圖; [圖3A]顯示本發明之一實施例中,網路層的權重組合的百分比累積示意圖; [圖3B]顯示本發明之一實施例中,網路層的權重組合的百分比累積示意圖;以及 [圖4]顯示本發明之一實施例中,一種具有平均量化機制的神經網路建構方法的流程圖。
400:神經網路建構方法
S410~S450:步驟

Claims (10)

  1. 一種具有平均量化機制的神經網路建構方法,包含:擷取一神經網路的各複數網路層包含的一權重組合;依據所有該等網路層的該權重組合以及複數目標值產生一損失函數(loss function);對應各該等網路層,計算該權重組合之一吉尼係數(Gini coefficient),並將所有該等網路層的該吉尼係數累加為一正則化(regularization)修正項;使該損失函數以及該修正項合併為一正則化損失函數,以對該神經網路根據該正則化損失函數進行訓練,產生各該等網路層的一訓練後權重組合;以及對各該等網路層的該訓練後權重組合進行量化,以產生在各該等網路層包含一量化權重組合的一量化神經網路。
  2. 如請求項1所述之神經網路建構方法,其中該權重組合包含複數小數權重,該量化權重組合包含複數整數權重。
  3. 如請求項1所述之神經網路建構方法,更包含:將該正則化修正項與一數量級修正參數相乘,以使該正則化修正項與該損失函數具有相同的一數量級。
  4. 如請求項1所述之神經網路建構方法,更包含:將該量化神經網路以一嵌入式系統晶片實現。
  5. 如請求項1所述之神經網路建構方法,其中該吉尼係數在該權重組合之一分布愈不平均時具有愈大的值,且在該權重組合之該分布愈平均時具有愈小的值。
  6. 一種具有平均量化機制的神經網路建構裝置,包含:一儲存電路,配置以儲存一電腦可執行指令;以及一處理電路,配置以擷取並執行該電腦可執行指令,以執行一神經網路建構方法,包含:擷取一神經網路的各複數網路層包含的一權重組合;依據所有該等網路層的該權重組合以及複數目標值產生一損失函數;對應各該等網路層,計算該權重組合之一吉尼係數,並將所有該等網路層的該吉尼係數累加為一正則化修正項;使該損失函數以及該修正項合併為一正則化損失函數,以對該神經網路根據該正則化損失函數進行訓練,產生各該等網路層的一訓練後權重組合;以及對各該等網路層的該訓練後權重組合進行量化,以產生在各該等網路層包含一量化權重組合的一量化神經網路。
  7. 如請求項6所述之神經網路建構裝置,其中該權重組合包含複數小數權重,該量化權重組合包含複數整數權重。
  8. 如請求項6所述之神經網路建構裝置,其中該神經網路建構方法更包含: 將該正則化修正項與一數量級修正參數相乘,以使該正則化修正項與該損失函數具有相同的一數量級。
  9. 如請求項6所述之神經網路建構裝置,其中該神經網路建構方法更包含:將該量化神經網路以一嵌入式系統晶片實現。
  10. 如請求項6所述之神經網路建構裝置,其中該吉尼係數在該權重組合之一分布愈不平均時具有愈大的值,且在該權重組合之該分布愈平均時具有愈小的值。
TW110136791A 2021-10-01 2021-10-01 具有平均量化機制的神經網路建構方法及裝置 TWI789042B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW110136791A TWI789042B (zh) 2021-10-01 2021-10-01 具有平均量化機制的神經網路建構方法及裝置
US17/830,827 US20230114610A1 (en) 2021-10-01 2022-06-02 Neural network construction method and apparatus having average quantization mechanism

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW110136791A TWI789042B (zh) 2021-10-01 2021-10-01 具有平均量化機制的神經網路建構方法及裝置

Publications (2)

Publication Number Publication Date
TWI789042B true TWI789042B (zh) 2023-01-01
TW202316323A TW202316323A (zh) 2023-04-16

Family

ID=85796923

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110136791A TWI789042B (zh) 2021-10-01 2021-10-01 具有平均量化機制的神經網路建構方法及裝置

Country Status (2)

Country Link
US (1) US20230114610A1 (zh)
TW (1) TWI789042B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017094899A1 (en) * 2015-12-02 2017-06-08 Preferred Networks, Inc. Generative machine learning systems for drug design
US20180165554A1 (en) * 2016-12-09 2018-06-14 The Research Foundation For The State University Of New York Semisupervised autoencoder for sentiment analysis
WO2020247949A1 (en) * 2019-06-07 2020-12-10 The Regents Of The University Of California General form of the tree alternating optimization (tao) for learning decision trees
WO2021188354A1 (en) * 2020-03-14 2021-09-23 DataRobot, Inc. Automated and adaptive design and training of neural networks

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017094899A1 (en) * 2015-12-02 2017-06-08 Preferred Networks, Inc. Generative machine learning systems for drug design
US20180165554A1 (en) * 2016-12-09 2018-06-14 The Research Foundation For The State University Of New York Semisupervised autoencoder for sentiment analysis
WO2020247949A1 (en) * 2019-06-07 2020-12-10 The Regents Of The University Of California General form of the tree alternating optimization (tao) for learning decision trees
WO2021188354A1 (en) * 2020-03-14 2021-09-23 DataRobot, Inc. Automated and adaptive design and training of neural networks

Also Published As

Publication number Publication date
US20230114610A1 (en) 2023-04-13
TW202316323A (zh) 2023-04-16

Similar Documents

Publication Publication Date Title
US10977001B2 (en) Asymmetric quantization of multiple-and-accumulate operations in deep learning processing
WO2020088131A1 (zh) 一种卷积神经网络计算加速方法及装置、设备、介质
WO2019238029A1 (zh) 卷积神经网络系统和卷积神经网络量化的方法
WO2022006919A1 (zh) 基于激活定点拟合的卷积神经网络训练后量化方法及系统
CN111758104B (zh) 适合于硬件实现的神经网络参数优化方法、神经网络计算方法和装置
TW202141358A (zh) 圖像修復方法及裝置、存儲介質、終端
CN112508125A (zh) 一种图像检测模型的高效全整数量化方法
JP7231731B2 (ja) 適応量子化方法及び装置、デバイス、媒体
CN111160531B (zh) 神经网络模型的分布式训练方法、装置及电子设备
CN111105017A (zh) 神经网络量化方法、装置及电子设备
CN108304926B (zh) 一种适用于神经网络的池化计算装置及方法
CN110809126A (zh) 一种基于自适应可变形卷积的视频帧插值方法及系统
CN116188878A (zh) 基于神经网络结构微调的图像分类方法、装置和存储介质
TW202001701A (zh) 影像的量化方法及神經網路的訓練方法
TWI789042B (zh) 具有平均量化機制的神經網路建構方法及裝置
US20210097397A1 (en) Information processing apparatus and information processing method
CN111861931A (zh) 模型训练、图像增强方法和装置、电子设备及存储介质
WO2020118553A1 (zh) 一种卷积神经网络的量化方法、装置及电子设备
CN113177627B (zh) 优化系统、重新训练系统及其方法及处理器和可读介质
CN115965055A (zh) 具有平均量化机制的神经网络建构方法及装置
CN112561050B (zh) 一种神经网络模型训练方法及装置
WO2020054402A1 (ja) ニューラルネットワーク処理装置、コンピュータプログラム、ニューラルネットワーク製造方法、ニューラルネットワークデータの製造方法、ニューラルネットワーク利用装置、及びニューラルネットワーク小規模化方法
CN111767204A (zh) 溢出风险检测方法、装置及设备
US20220237455A1 (en) Neural-network quantization method and apparatus
CN111767980B (zh) 模型优化方法、装置及设备