TWI778493B - 多神經網路模型載入方法、裝置、電子設備及電腦可讀取記錄媒體 - Google Patents
多神經網路模型載入方法、裝置、電子設備及電腦可讀取記錄媒體 Download PDFInfo
- Publication number
- TWI778493B TWI778493B TW110101172A TW110101172A TWI778493B TW I778493 B TWI778493 B TW I778493B TW 110101172 A TW110101172 A TW 110101172A TW 110101172 A TW110101172 A TW 110101172A TW I778493 B TWI778493 B TW I778493B
- Authority
- TW
- Taiwan
- Prior art keywords
- model
- neural network
- file
- difference
- binary
- Prior art date
Links
Images
Landscapes
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Magnetic Resonance Imaging Apparatus (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本發明涉及一種多神經網路模型載入方法、裝置、電子設備及電腦可讀取記錄媒體。所述方法包括:編譯至少兩個神經網路模型,計算所述至少兩個神經網路模型之間的差異,並藉由預設的壓縮方法生成模型檔;在神經網路加速器中輸入所述模型檔,解碼並載入經過編譯的神經網路模型;切換神經網路模型時,根據所述差異修改神經網路模型的參數。本發明中,藉由記錄多個模型之間的差異並對模型與記錄差異的檔進行編碼,從而可以壓縮神經網路模型的體積,以及實現在神經網路加速器中載入多個神經網路模型。
Description
本發明涉及人工智慧領域,具體涉及一種多神經網路模型載入方法、裝置、電子設備及電腦可讀取記錄媒體。
人工智慧在模型訓練中需要大量的計算,但受限於其演算法和計算本身的特性,被廣泛使用的傳統計算晶片無法滿足這些需求,因此,需要為神經網路演算法打造專用的晶片,也就是神經網路加速器。然而,在神經網路加速器中載入模型時,現有的技術可以壓縮神經網路模型的體積,以縮短載入時間,卻無法載入多個神經網路模型。
鑒於以上內容,有必要提出一種多神經網路模型載入方法、裝置、電子設備及電腦可讀取記錄媒體以接近在神經網路加速器無法載入多個神經網路模型以及在多個神經網路模型之間進行切換的技術問題。
本申請的第一方面提供多神經網路模型載入方法,所述方法包括:編譯至少兩個神經網路模型,並生成與所述至少兩個神經網路模型對應的至少兩個二進位模型檔;
將所述至少兩個二進位模型檔中的一個二進位模型檔作為基礎模型,使用預設的差異計算方法計算並記錄所述至少兩個二進位模型檔中除所述基礎模型外的每個二進位模型檔與所述基礎模型之間的差異,生成差異記錄檔;使用預設的壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔;在神經網路加速器中輸入所述輸入檔,解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔,並在神經網路加速器中載入所述基礎模型與所述差異記錄檔;優選地,所述方法還包括:根據所述差異記錄檔修改所述基礎模型的參數,以在神經網路加速器中將當前的基礎模型切換至與所述修改的參數對應的神經網路模型。
優選地,所述至少兩個二進位模型檔符合神經網路加速器格式要求。
優選地,所述使用預設的差異計算方法計算並記錄所述至少兩個二進位模型檔中除所述基礎模型外的每個二進位模型檔與所述基礎模型之間的差異包括:以二進位格式比較所述至少兩個二進位模型檔中除所述基礎模型外的每個所述二進位模型檔與所述基礎模型,記錄每個所述神經網路模型的隱藏層連接和權重與所述基礎模型的隱藏層連接和權重之間的差異。
優選地,所述使用預設的壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔包括:使用無損編碼壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔。
優選地,所述解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔包括:
使用與所述無損編碼壓縮方法對應的解碼方法解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔。
優選地,所述根據差異記錄檔修改所述基礎模型的參數包括:根據所述差異記錄檔修改所述基礎模型的權重和/或隱藏層連接。
本申請的第二方面提供一種多神經網路模型載入裝置,所述裝置包括:編譯模組,用於編譯至少兩個神經網路模型,並生成與所述至少兩個神經網路模型對應的至少兩個二進位模型檔;差異記錄模組,用於將所述至少兩個二進位模型檔中的一個二進位模型檔作為基礎模型,使用預設的差異計算方法計算並記錄所述至少兩個二進位模型檔中除所述基礎模型外的每個二進位模型檔與所述基礎模型之間的差異,生成差異記錄檔;壓縮模組,用於使用預設的壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔;載入模組,用於在神經網路加速器中輸入所述輸入檔,解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔,並在神經網路加速器中載入所述基礎模型與所述差異記錄檔。
本申請的第三方面提供一種電子設備,所述電子設備包括:記憶體,存儲至少一個指令;及處理器,執行所述記憶體中存儲的指令以實現所述多神經網路模型載入方法。
本申請的第四方面提供一種電腦可讀取記錄媒體,其上存儲有電腦程式,所述電腦程式被處理器執行時實現所述的多神經網路模型載入方法。
利用上述技術方案,可以在神經網路加速器中載入多個模型,不僅可壓縮神經網路模型的體積、縮短載入時間,還可藉由記錄模型差異以及根據差異修改參數,來實現在神經網路加速器中快速切換神經網路模型的功能。
40:多神經網路模型載入裝置
401:編譯模組
402:差異計算模組
403:壓縮模組
404:載入模組
6:電子設備
61:記憶體
62:處理器
63:電腦程式
S11~S14:步驟
圖1為本發明一實施方式中一種多神經網路模型載入方法的流程圖。
圖2為本發明一實施方式中一種多神經網路模型載入裝置的結構圖。
圖3為本發明一實施方式中實現多神經網路模型載入方法的電子設備的示意圖。
為了能夠更清楚地理解本發明的上述目的、特徵和優點,下面結合附圖和具體實施例對本發明進行詳細描述。需要說明的是,在不衝突的情況下,本申請的實施例及實施例中的特徵可以相互組合。
在下面的描述中闡述了很多具體細節以便於充分理解本發明,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。
除非另有定義,本文所使用的所有的技術和科學術語與屬於本發明的技術領域的技術人員通常理解的含義相同。本文中在本發明的說明書中所使用的術語只是為了描述具體的實施例的目的,不是旨在於限制本發明。
優選地,本發明多神經網路模型載入方法應用在一個或者多個電子設備中。所述電子設備是一種能夠按照事先設定或存儲的指令,自動進行數值計算和/或資訊處理的設備,其硬體包括但不限於微處理器、專用積體電路(Application Specific Integrated Circuit,ASIC)、可程式設計閘陣列(Field-Programmable Gate Array,FPGA)、數位訊號處理器(Digital Signal Processor,DSP)、嵌入式設備等。
所述電子設備可以是桌上型電腦、筆記型電腦、平板電腦及雲端伺服器等計算設備。所述電子設備可以與使用者藉由鍵盤、滑鼠、遙控器、觸控板或聲控設備等方式進行人機交互。
實施例1
圖1是本發明一實施方式中多神經網路模型載入方法的流程圖。所述多神經網路模型載入方法應用於電子設備中。根據不同的需求,所述流程圖中步驟的順序可以改變,某些步驟可以省略。
參閱圖1所示,所述多神經網路模型載入方法具體包括以下步驟:
步驟S11,編譯至少兩個神經網路模型,並生成與所述至少兩個神經網路模型對應的至少兩個二進位模型檔。
本實施方式中,所述至少兩個二進位模型檔符合神經網路加速器的格式。
本實施方式中,所述神經網路加速器可以是中央處理模組(Central Processing Unit,CPU),其他通用處理器、數位訊號處理器(Digital Signal Processor,DSP)、專用積體電路(Application Specific Integrated Circuit,ASIC)、現成可程式設計閘陣列(Field-Programmable Gate Array,FPGA)或者其他可程式設計邏輯器件、分立門或者電晶體邏輯器件、分立硬體元件等,還可以是專用的神經網路加速器。
步驟S12,將所述至少兩個二進位模型檔中的一個二進位模型檔作為基礎模型,使用預設的差異計算方法計算並記錄所述至少兩個二進位模型檔中除所述基礎模型外的每個二進位模型檔與所述基礎模型之間的差異,生成差異記錄檔。
本實施方式中,所述計算並記錄所述至少兩個二進位模型檔中除所述基礎模型外的每個二進位模型檔與所述基礎模型之間的差異包括:
以二進位格式比較所述至少兩個二進位模型檔中除所述基礎模型外的每個所述二進位模型檔與所述基礎模型,記錄每個所述神經網路模型的隱藏層連接和權重與所述基礎模型的隱藏層連接和權重之間的差異。
本實施方式中,所述預設的差異計算方法可以是差異演算法(diff演算法),例如bitap演算法。
例如,當所述預設的差異計算方法是bitap演算法時,使用bitap演算法計算所述至少兩個二進位模型檔中除所述基礎模型外的每個所述二進位模型檔與所述基礎模型之間的差異,生成差異記錄檔包括:將所述至少兩個二進位模型檔中除所述基礎模型外的每個所述二進位模型檔與所述基礎模型轉換為可讀格式;根據所述至少兩個二進位模型檔的鍵值,比較格式轉換後的所述至少兩個二進位模型檔中除所述基礎模型外的每個所述二進位模型檔與所述基礎模型,根據上述比較計算出所述至少兩個二進位模型檔中除所述基礎模型外的每個所述二進位模型檔與所述基礎模型的差異。
步驟S13,使用預設的壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔。
本實施方式中,所述使用預設的壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔包括:使用無損編碼壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔。
具體地,所述無損編碼壓縮方法可以是哈夫曼編碼或算術編碼。
例如,當所述預設的壓縮方法採用哈夫曼編碼時,使用所述預設的壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔包括:讀取所述基礎模型與所述差異記錄檔作為輸入檔;統計所述輸入檔中每個預設長度的字元段的頻次;根據所述頻次構造哈夫曼樹;
構造編譯表,用於將字元與變長首碼映射;將哈夫曼樹編碼為比特字串並寫入輸出流;將檔長度編碼為比特字串並寫入所述輸出流;使用編碼表編譯每個字串並寫入所述輸出流;基於所述輸出流生成所述輸入檔。
步驟S14,在神經網路加速器中輸入所述輸入檔,解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔,並在神經網路加速器中載入所述基礎模型與所述差異記錄檔。
本實施方式是藉由載入所述基礎模型與所述差異記錄檔實現了將多個神經網路模型載入至所述神經網路加速器中。
本實施方式中,所述解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔包括:使用與所述無損編碼壓縮方法對應的解碼方法解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔。
例如,當所述預設的壓縮方法採用哈夫曼編碼時,使用與哈夫曼編碼對應的解碼方法解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔,包括:讀取所述哈夫曼樹;讀取所述文本長度;根據讀取到的所述哈夫曼樹將所述輸入檔解碼為所述基礎模型與所述差異記錄檔。
此外,在進一步的實施方式中,所述方法還包括:根據所述差異記錄檔修改所述基礎模型的參數,以在神經網路加速器中將當前的基礎模型切換至與所述修改的參數對應的神經網路模型,具體可包括:
響應於收到的切換指令,解析所述切換指令中指示的目標模型,所述目標模型為所述編譯的至少兩個神經網路模型中除了基礎模型以外的其他神經網路模型之一;根據所述切換指令調用所述差異記錄檔中所述目標模型與所述基礎模型的差異記錄,並根據所述差異記錄修改所述基礎模型的參數,實現在所述神經網路加速器上將當前的基礎模型切換至目標模型。
本實施方式中,所述根據差異記錄檔修改所述基礎模型的參數包括:根據所述差異記錄檔修改所述基礎模型的權重和/或隱藏層連接。
利用上述技術方案,可以藉由載入基礎模型以及記錄了所述基礎模型與其他神經網路模型之間的差異的差異記錄檔,實現在神經網路加速器中載入多個神經網路模型,此外,還可進一步根據所述差異記錄檔修改所述基礎模型的參數,實現在神經網路加速器中快速切換神經網路模型的功能。
實際應用中,神經網路模型可以用於目標檢測,本實施方式所實現的將多個神經網路模型載入到神經網路加速器中可以藉由切換神經網路模型對圖像中不同種類的目標物體進行有效地檢測。
實施例2
圖2為本發明一實施方式中多神經網路模型載入裝置40的結構圖。
在一些實施例中,所述多神經網路模型載入裝置40運行於電子設備中。所述多神經網路模型載入裝置40可以包括多個由程式碼段所組成的功能模組。所述多神經網路模型載入裝置40中的各個程式段的程式碼可以存儲於記憶體中,並由至少一個處理器所執行。
本實施例中,所述多神經網路模型載入裝置40根據其所執行的功能,可以被劃分為多個功能模組。參閱圖3所示,所述多神經網路模型載入裝置40可以包括編譯模組401、差異計算模組402、壓縮模組403及載入模組
404。本發明所稱的模組是指一種能夠被至少一個處理器所執行並且能夠完成固定功能的一系列電腦程式段,其存儲在記憶體中。所述在一些實施例中,關於各模組的功能將在後續的實施例中詳述。
所述編譯模組401編譯至少兩個神經網路模型,並生成與所述至少兩個神經網路模型對應的至少兩個二進位模型檔。
本實施方式中,所述至少兩個二進位模型檔符合神經網路加速器的格式。
本實施方式中,所述神經網路加速器可以是中央處理模組(Central Processing Unit,CPU),其他通用處理器、數位訊號處理器(Digital Signal Processor,DSP)、專用積體電路(Application Specific Integrated Circuit,ASIC)、現成可程式設計閘陣列(Field-Programmable Gate Array,FPGA)或者其他可程式設計邏輯器件、分立門或者電晶體邏輯器件、分立硬體元件等,還可以是專用的神經網路加速器。
所述差異計算模組402將所述至少兩個二進位模型檔中的一個二進位模型檔作為基礎模型,使用預設的差異計算方法計算並記錄所述至少兩個二進位模型檔中除所述基礎模型外的每個二進位模型檔與所述基礎模型之間的差異,生成差異記錄檔。
本實施方式中,所述差異計算模組402所述計算並記錄所述至少兩個二進位模型檔中除所述基礎模型外的每個二進位模型檔與所述基礎模型之間的差異包括:所述差異計算模組402以二進位格式比較所述至少兩個二進位模型檔中除所述基礎模型外的每個所述二進位模型檔與所述基礎模型,記錄每個所述神經網路模型的隱藏層連接和權重與所述基礎模型的隱藏層連接和權重之間的差異。
本實施方式中,所述預設的差異計算方法可以是差異演算法(diff演算法),例如bitap演算法。
例如,當所述預設的差異計算方法是bitap演算法時,所述差異計算模組402使用bitap演算法計算所述至少兩個二進位模型檔中除所述基礎模型外的每個所述二進位模型檔與所述基礎模型之間的差異,生成差異記錄檔包括:將所述至少兩個二進位模型檔中除所述基礎模型外的每個所述二進位模型檔與所述基礎模型轉換為可讀格式;根據所述至少兩個二進位模型檔的鍵值,比較格式轉換後的所述至少兩個二進位模型檔中除所述基礎模型外的每個所述二進位模型檔與所述基礎模型,根據上述比較計算出所述至少兩個二進位模型檔中除所述基礎模型外的每個所述二進位模型檔與所述基礎模型的差異。
所述壓縮模組403使用預設的壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔。
本實施方式中,所述壓縮模組403使用預設的壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔包括:所述壓縮模組403使用無損編碼壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔。
具體地,所述無損編碼壓縮方法可以是哈夫曼編碼或算術編碼。
例如,當所述預設的壓縮方法採用哈夫曼編碼時,所述壓縮模組403使用所述預設的壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔包括:讀取所述基礎模型與所述差異記錄檔作為輸入檔;統計所述輸入檔中每個預設長度的字元段的頻次;根據所述頻次構造哈夫曼樹;構造編譯表,用於將字元與變長首碼映射;將哈夫曼樹編碼為比特字串並寫入輸出流;將檔長度編碼為比特字串並寫入所述輸出流;
使用編碼表編譯每個字串並寫入所述輸出流;基於所述輸出流生成所述輸入檔。
所述載入模組404在神經網路加速器中輸入所述輸入檔,解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔,並在神經網路加速器中載入所述基礎模型與所述差異記錄檔。
本實施方式是藉由載入所述基礎模型與所述差異記錄檔實現了將多個神經網路模型載入至所述神經網路加速器中。
本實施方式中,所述載入模組404解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔包括:所述載入模組404使用與所述無損編碼壓縮方法對應的解碼方法解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔。
例如,當所述預設的壓縮方法採用哈夫曼編碼時,所述載入模組404使用與哈夫曼編碼對應的解碼方法解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔,包括:讀取所述哈夫曼樹;讀取所述文本長度;根據讀取到的所述哈夫曼樹將所述輸入檔解碼為所述基礎模型與所述差異記錄檔。
進一步地,在其他實施方式中,所述多神經網路模型載入裝置40還包括切換模組,根據所述差異記錄檔修改所述基礎模型的參數,以在神經網路加速器中將當前的基礎模型切換至與所修改的參數對應的神經網路模型,具體可包括:所述切換模組響應於收到的切換指令,解析所述切換指令中指示的目標模型,所述目標模型為所述編譯的至少兩個神經網路模型中除了基礎模型以外的其他神經網路模型之一;
所述切換模組根據所述切換指令調用所述差異記錄檔中所述目標模型與所述基礎模型的差異記錄,並根據所述差異記錄修改所述基礎模型的參數,實現在所述神經網路加速器上將當前的基礎模型切換至目標模型。
本實施方式中,所述切換模組根據差異記錄檔修改所述基礎模型的參數包括:所述切換模組根據所述差異記錄檔修改所述基礎模型的權重和/或隱藏層連接。
利用上述技術方案,可以藉由載入基礎模型以及記錄了所述基礎模型與其他神經網路模型之間的差異的差異記錄檔,實現在神經網路加速器中載入多個神經網路模型,此外,還可進一步根據所述差異記錄檔修改所述基礎模型的參數,實現在神經網路加速器中快速切換神經網路模型的功能。
實施例3
圖3為本發明一實施方式中電子設備6的示意圖。
所述電子設備6包括記憶體61、處理器62以及存儲在所述記憶體61中並可在所述處理器62上運行的電腦程式63。所述處理器62執行所述電腦程式63時實現上述多神經網路模型載入方法實施例中的步驟,例如圖1所示的步驟S11~S14。或者,所述處理器62執行所述電腦程式63時實現上述在多神經網路模型載入裝置實施例中各模組/單元的功能,例如圖2中的模組401~404。
示例性的,所述電腦程式63可以被分割成一個或多個模組/單元,所述一個或者多個模組/單元被存儲在所述記憶體61中,並由所述處理器62執行,以完成本發明。所述一個或多個模組/單元可以是能夠完成特定功能的一系列電腦程式指令段,所述指令段用於描述所述電腦程式63在所述電子設備6中的執行過程。例如,所述電腦程式63可以被分割成圖2中的編譯模組401、差異計算模組402、壓縮模組403及載入模組404,各模組具體功能參見實施例2。
本實施方式中,所述電子設備6可以是桌上型電腦、筆記本、掌上型電腦及雲端終端裝置等計算設備。本領域技術人員可以理解,所述示意圖
僅僅是電子設備6的示例,並不構成對電子設備6的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件,例如所述電子設備6還可以包括輸入輸出設備、網路接入設備、匯流排等。
所稱處理器62可以是中央處理模組(Central Processing Unit,CPU),還可以是其他通用處理器、數位訊號處理器(Digital Signal Processor,DSP)、專用積體電路(Application Specific Integrated Circuit,ASIC)、現成可程式設計閘陣列(Field-Programmable Gate Array,FPGA)或者其他可程式設計邏輯器件、分立門或者電晶體邏輯器件、分立硬體元件等。通用處理器可以是微處理器或者所述處理器62也可以是任何常規的處理器等,所述處理器62是所述電子設備6的控制中心,利用各種介面和線路連接整個電子設備6的各個部分。
所述記憶體61可用於存儲所述電腦程式63和/或模組/單元,所述處理器62藉由運行或執行存儲在所述記憶體61內的電腦程式和/或模組/單元,以及調用存儲在記憶體61內的資料,實現所述電子設備6的各種功能。所述記憶體61可主要包括存儲程式區和存儲資料區,其中,存儲程式區可存儲作業系統、至少一個功能所需的應用程式(比如聲音播放功能、圖像播放功能等)等;存儲資料區可存儲根據電子設備6的使用所創建的資料(比如音訊資料、電話本等)等。此外,記憶體61可以包括高速隨機存取記憶體,還可以包括非易失性記憶體,例如硬碟、記憶體、插接式硬碟,智慧存儲卡(Smart Media Card,SMC),安全數位(Secure Digital,SD)卡,快閃記憶體卡(Flash Card)、至少一個磁碟記憶體件、快閃記憶體器件、或其他易失性固態記憶體件。
所述電子設備6集成的模組/單元如果以軟體功能模組的形式實現並作為獨立的產品銷售或使用時,可以存儲在一個電腦可讀取存儲介質中。基於這樣的理解,本發明實現上述實施例方法中的全部或部分流程,也可以藉由電腦程式來指令相關的硬體來完成,所述的電腦程式可存儲於一電腦可讀存儲介質中,所述電腦程式在被處理器執行時,可實現上述各個方法實施例的步驟。其中,所述電腦程式包括電腦程式代碼,所述電腦程式代碼可以為原始程式碼
形式、物件代碼形式、可執行檔或某些中間形式等。所述電腦可讀介質可以包括:能夠攜帶所述電腦程式代碼的任何實體或裝置、記錄介質、隨身碟、移動硬碟、磁碟、光碟、電腦記憶體、唯讀記憶體(ROM,Read-Only Memory)、隨機存取記憶體(RAM,Random Access Memory)、電載波信號、電信信號以及軟體分發介質等。
在本發明所提供的幾個實施例中,應該理解到,所揭露的裝置和方法,可以藉由其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述模組的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式。
另外,在本發明各個實施例中的各功能模組可以集成在相同處理模組中,也可以是各個模組單獨物理存在,也可以兩個或兩個以上模組集成在相同模組中。上述集成的模組既可以採用硬體的形式實現,也可以採用硬體加軟體功能模組的形式實現。
對於本領域技術人員而言,顯然本發明不限於上述示範性實施例的細節,而且在不背離本發明的精神或基本特徵的情況下,能夠以其他的具體形式實現本發明。因此,無論從哪一點來看,均應將實施例看作是示範性的,而且是非限制性的,本發明的範圍由所附請求項而不是上述說明限定,因此旨在將落在申請專利範圍的等同要件的含義和範圍內的所有變化涵括在本發明內。不應將申請專利範圍中的任何附圖標記視為限制所涉及的申請專利範圍。此外,顯然“包括”一詞不排除其他模組或步驟,單數不排除複數。電子設備申請專利範圍中陳述的多個模組或電子設備也可以由同一個模組或電子設備藉由軟體或者硬體來實現。第一,第二等詞語用來表示名稱,而並不表示任何特定的順序。
綜上所述,本發明符合發明專利要件,爰依法提出專利申請。惟,以上所述僅為本發明之較佳實施方式,舉凡熟悉本案技藝之人士,在援依本案創作精神所作之等效修飾或變化,皆應包含於以下之申請專利範圍內。
S11~S14:步驟
Claims (10)
- 一種多神經網路模型載入方法,其中,所述方法包括:編譯至少兩個神經網路模型,並生成與所述至少兩個神經網路模型對應的至少兩個二進位模型檔;將所述至少兩個二進位模型檔中的一個二進位模型檔作為基礎模型,使用預設的差異計算方法計算並記錄所述至少兩個二進位模型檔中除所述基礎模型外的每個二進位模型檔與所述基礎模型之間的差異,生成差異記錄檔;使用預設的壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔;在神經網路加速器中輸入所述輸入檔,解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔,並在所述神經網路加速器中載入所述基礎模型與所述差異記錄檔。
- 如請求項1所述的多神經網路模型載入方法,其中,所述方法還包括:根據所述差異記錄檔修改所述基礎模型的參數,以在所述神經網路加速器中將當前的所述基礎模型切換至與所述修改的參數對應的神經網路模型。
- 如請求項1所述的多神經網路模型載入方法,其中,所述至少兩個二進位模型檔符合所述神經網路加速器格式要求。
- 如請求項1所述的多神經網路模型載入方法,其中,所述使用預設的差異計算方法計算並記錄所述至少兩個二進位模型檔中除所述基礎模型外的每個二進位模型檔與所述基礎模型之間的差異包括:以二進位格式比較所述至少兩個二進位模型檔中除所述基礎模型外的每個所述二進位模型檔與所述基礎模型,記錄除所述基礎模型外的每個所述二進位模型檔所對應之所述神經網路模型的隱藏層連接和權重與所述基礎模型所對應之所述神經網路模型的隱藏層連接和權重之間的差異。
- 如請求項1所述的多神經網路模型載入方法,其中,所述使用預設的壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成所述輸入檔包括:使用無損編碼壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成所述輸入檔。
- 如請求項5所述的多神經網路模型載入方法,其中,所述解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔包括:使用與所述無損編碼壓縮方法對應的解碼方法解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔。
- 如請求項2所述的多神經網路模型載入方法,其中,所述根據所述差異記錄檔修改所述基礎模型的參數包括:根據所述差異記錄檔修改所述基礎模型所對應之所述神經網路模型的權重和/或隱藏層連接。
- 一種多神經網路模型載入裝置,其中,包括:編譯模組,用於編譯至少兩個神經網路模型,並生成與所述至少兩個神經網路模型對應的至少兩個二進位模型檔;差異記錄模組,用於將所述至少兩個二進位模型檔中的一個二進位模型檔作為基礎模型,使用預設的差異計算方法計算並記錄所述至少兩個二進位模型檔中除所述基礎模型外的每個二進位模型檔與所述基礎模型之間的差異,生成差異記錄檔;壓縮模組,用於使用預設的壓縮方法壓縮所述基礎模型與所述差異記錄檔,並生成輸入檔;載入模組,用於在神經網路加速器中輸入所述輸入檔,解壓縮所述輸入檔得到所述基礎模型與所述差異記錄檔,並在所述神經網路加速器中載入所述基礎模型與所述差異記錄檔。
- 一種電子設備,其中,所述電子設備包括: 記憶體,存儲至少一個指令;及處理器,執行所述記憶體中存儲的指令以實現如請求項1至7中任一項所述的多神經網路模型載入方法。
- 一種電腦可讀取記錄媒體,其上存儲有電腦程式,其中:所述電腦程式被電腦的處理器載入並執行時實現如請求項1至7中任一項所述的多神經網路模型載入方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110101172A TWI778493B (zh) | 2021-01-12 | 2021-01-12 | 多神經網路模型載入方法、裝置、電子設備及電腦可讀取記錄媒體 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110101172A TWI778493B (zh) | 2021-01-12 | 2021-01-12 | 多神經網路模型載入方法、裝置、電子設備及電腦可讀取記錄媒體 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202228003A TW202228003A (zh) | 2022-07-16 |
TWI778493B true TWI778493B (zh) | 2022-09-21 |
Family
ID=83437133
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110101172A TWI778493B (zh) | 2021-01-12 | 2021-01-12 | 多神經網路模型載入方法、裝置、電子設備及電腦可讀取記錄媒體 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI778493B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107516132A (zh) * | 2016-06-15 | 2017-12-26 | 耐能有限公司 | 人造神经网络的简化装置和简化方法 |
TW201816669A (zh) * | 2016-10-19 | 2018-05-01 | 三星電子股份有限公司 | 用於神經網路量化的方法以及裝置 |
US20190392299A1 (en) * | 2016-12-28 | 2019-12-26 | Intel Corporation | Method and apparatus for a binary neural network mapping scheme utilizing a gate array architecture |
TWI708196B (zh) * | 2019-03-22 | 2020-10-21 | 美商葛如克公司 | 使用基於累積計數分佈之函數之用於模型參數之解壓縮之方法及處理器 |
CN111985632A (zh) * | 2019-05-24 | 2020-11-24 | 三星电子株式会社 | 解压缩设备及其控制方法 |
-
2021
- 2021-01-12 TW TW110101172A patent/TWI778493B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107516132A (zh) * | 2016-06-15 | 2017-12-26 | 耐能有限公司 | 人造神经网络的简化装置和简化方法 |
TW201816669A (zh) * | 2016-10-19 | 2018-05-01 | 三星電子股份有限公司 | 用於神經網路量化的方法以及裝置 |
US20190392299A1 (en) * | 2016-12-28 | 2019-12-26 | Intel Corporation | Method and apparatus for a binary neural network mapping scheme utilizing a gate array architecture |
TWI708196B (zh) * | 2019-03-22 | 2020-10-21 | 美商葛如克公司 | 使用基於累積計數分佈之函數之用於模型參數之解壓縮之方法及處理器 |
CN111985632A (zh) * | 2019-05-24 | 2020-11-24 | 三星电子株式会社 | 解压缩设备及其控制方法 |
Also Published As
Publication number | Publication date |
---|---|
TW202228003A (zh) | 2022-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108322220A (zh) | 编解码方法、装置及编解码设备 | |
US11704286B2 (en) | High-density compression method and computing system | |
CN106886568B (zh) | 一种分表方法、装置及电子设备 | |
US20180309841A1 (en) | Apparatus, method, and computer program product for heterogenous compression of data streams | |
US20180041224A1 (en) | Data value suffix bit level compression | |
JP2020123953A (ja) | イメージファイルのブロック間の差を利用した圧縮率向上方法およびシステム | |
US8515882B2 (en) | Efficient storage of individuals for optimization simulation | |
US8947274B2 (en) | Encoding apparatus, decoding apparatus, encoding method, encoding program, decoding method, and decoding program | |
US20220284720A1 (en) | Method for grouping cells according to density and electronic device employing method | |
CN111522574A (zh) | 差分包生成方法及相关设备 | |
TWI778493B (zh) | 多神經網路模型載入方法、裝置、電子設備及電腦可讀取記錄媒體 | |
CN109213477B (zh) | 一种实现软件线路差异自动对比的方法和装置 | |
Barman et al. | Lossless data compression method using deep learning | |
AU2017248412A1 (en) | Information processing apparatus, and data management method | |
US20220222084A1 (en) | Method for loading multiple neural network models and electronic device | |
JP2020123954A (ja) | イメージファイルのピクセル変換を利用した圧縮率向上方法およびシステム | |
CN116775599A (zh) | 数据迁移方法、装置、电子设备、存储介质 | |
Abed et al. | Application of Huffman's Algorithm to Wave File Compression | |
JP4791205B2 (ja) | 差分生成装置及び差分適用装置及び差分生成プログラム及び差分適用プログラム | |
JP7345831B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
CN115050349B (zh) | 文本转换音频的方法、装置、设备和介质 | |
CN117113351B (zh) | 一种基于多重多级预训练的软件分类方法及设备 | |
WO2024037002A1 (zh) | 一种数据的缩减方法、装置、设备、存储介质及处理器 | |
Dong et al. | Record-aware two-level compression for big textual data analysis acceleration | |
JP2021128184A (ja) | プログラム、情報処理方法、及び情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GD4A | Issue of patent certificate for granted invention patent |