TWI842584B - 電腦實施方法及電腦可讀儲存媒體 - Google Patents
電腦實施方法及電腦可讀儲存媒體 Download PDFInfo
- Publication number
- TWI842584B TWI842584B TW112125210A TW112125210A TWI842584B TW I842584 B TWI842584 B TW I842584B TW 112125210 A TW112125210 A TW 112125210A TW 112125210 A TW112125210 A TW 112125210A TW I842584 B TWI842584 B TW I842584B
- Authority
- TW
- Taiwan
- Prior art keywords
- neural network
- computer
- output data
- vector
- data vector
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000003860 storage Methods 0.000 title claims description 13
- 239000013598 vector Substances 0.000 claims abstract description 106
- 238000013528 artificial neural network Methods 0.000 claims abstract description 48
- 230000005284 excitation Effects 0.000 claims abstract description 25
- 238000012549 training Methods 0.000 claims description 38
- 238000004364 calculation method Methods 0.000 claims description 15
- 238000013473 artificial intelligence Methods 0.000 claims description 9
- 230000009471 action Effects 0.000 description 21
- 230000015654 memory Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 12
- 230000008901 benefit Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 239000011159 matrix material Substances 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 230000004913 activation Effects 0.000 description 5
- 238000010606 normalization Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000005477 standard model Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 2
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000010304 firing Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000010998 test method Methods 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 1
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
- G06N3/065—Analogue means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0499—Feedforward networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Neurology (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Image Analysis (AREA)
Abstract
本發明提供一種方法,其包括在一人工神經網路之一神經網路權重層處接收一傳入激發向量。該人工神經網路包括需要待在該人工神經網路之一輸出資料向量上計算之一或多個純量值的一或多個運算,諸如一平均值或一標準差。該方法進一步包括在藉由該傳入激發向量對該人工神經網路進行正向推斷期間使用該一或多個純量值之一所預測表示以將該一或多個運算應用於該輸出資料向量,因此避免自該輸出資料向量計算該一或多個純量值之一確切表示所需的任何計算。
Description
本發明大體上係關於神經網路硬體,且更特定言之,係關於一種用於向類比AI影像塊添加額外行(或列)以便對已經訓練以產生顯著資料相依係數(諸如影像塊輸出向量之平均值或標準差)之學習權重進行編碼的方法。
AI硬體加速器之快速改良已成為深度神經網路(DNN)發展之一個難以發現但關鍵的驅動因素。較佳硬體能夠訓練具有巨大資料集的極大網路,以及對所得大型且因此功能強大之DNN模型進行快速推斷。當前DNN硬體介於自具有經特別設計用於DNN訓練及推斷之眾多特徵的現代圖形處理單元(GPU)至併有降低之精確性、稀疏性、資料流架構、硬體-軟體最佳化及極大面積加速器晶片的專業數位CMOS加速器。一般而言,此類加速器必須小心地協調晶片上或晶片外揮發性記憶體(SRAM及DRAM)與高度專業的單指令多資料(SIMD)單元之間的大量資料流。此等單元執行乘法累加指令,該等指令主導大部分DNN計算工作負荷。此資料流不僅涵蓋由各DNN層產生之許多神經元激發,而且亦涵蓋DNN模型權重及部分和。
最近,可改善能效(例如,藉由晶片上記憶體中執行具有時間複雜度之乘法累加運算)的記憶體內操作(CIM)之設計會藉由減少DNN模型權重及部分和之運動而如此改善能效。藉由在短時間間隔內利用諸如SRAM或DRAM之揮發性記憶體或在較長時間間隔內利用諸如快閃記憶體、電阻性RAM(RRAM)、磁性隨機存取記憶體(MRAM)或相變記憶體(PCM)的慢速且耐久有限的非揮發性記憶體(NVM)來採用此類權重穩態性,CIM方法可提供高速及高能效。此等益處可存在於所有DNN工作負荷中,但對於展現具有低權重再使用之大的全連接層的工作負荷尤其明顯。然而,由於大部分此等記憶體僅提供二進位或極少位元的儲存,因此必須調用跨多個字線或位元線之空間多工以實施當前最新技術DNN效能所需的多位元權重。此會權衡區域及能量以達成必要的乘法累加精確性,通常與字線或位元線上之時間多工配對以支援多位元激發。
一些新興的非揮發性記憶體(諸如,PCM及RRAM)展現廣泛且連續之類比傳導狀態範圍,從而提供朝向高密度權重儲存之路徑。此類裝置亦引入額外考慮因素,諸如權重程式化誤差、讀出雜訊及傳導漂移。對類比非揮發性記憶體之面積高效型交叉陣列影像塊執行高能效乘法累加(MAC)運算之此類比AI範式代表用於DNN工作負荷的硬體加速之特別有吸引力的記憶體內操作形式。在此範式中,向量矩陣乘法運算利用引入至多個列線上之激發向量來執行,以便在編碼成類比非揮發性電阻式記憶體之電導值的所儲存權重的整個矩陣上實施乘法及累加(MAC)運算。
理想地,由此等運算產生之輸出向量可接著利用附近數位處理以例如仿射縮放、ReLU、sigmoid或可利用高度並行化單指令多資料(SIMD)型運算執行之其他運算的全向量化方式進行處理,該高度並行化
單指令多資料型運算可並行地對向量之各成員進行運算而在計算之前需要等待之時間最少。
然而,存在需要按資料相依係數(諸如,輸出向量、平均值或標準差之最大值)縮放之一些網路層。對此運算之需求表明在可進行高效局部計算(例如,此乘法縮放係數之應用)之前,迫使高度並行化SIMD計算等待此等縮放係數之計算。在需要除以最大值時,此尤其麻煩,此係因為最大值係藉由查看向量之所有成員來計算,接著計算其倒數,且僅在此計算之後才可對各向量元素執行高效SIMD乘法。
目前,不存在以使此等資料相依係數在資料向量自身經數位化時便可用的方式獲得此等資料相依係數之方法。
根據各種實施例,提供一種計算裝置、一種非暫時性電腦可讀儲存媒體及一種方法以用於向類比AI影像塊添加額外行(或列)以對經訓練以產生顯著資料相依係數(諸如最大值、平均值或標準差)之學習權重進行編碼,以便提供較低時延、較快計算效能及減少之數位計算能量以換取類比AI影像塊能量之非常適度的增加,以及歸因於此等顯著資料相依係數之預測值與其確切所計算值之間的任何差異而對神經網路準確度產生之某一潛在影響。
在一個實施例中,一種方法包括在一人工神經網路之一神經網路權重層處接收一傳入激發向量。該人工神經網路包括涉及待在該人工神經網路之一輸出資料向量上計算之一或多個純量值的一或多個運算,諸如一平均值或一標準差。該方法進一步包括在藉由該傳入激發向量對該人工神經網路進行正向推斷期間使用該一或多個純量值之一所預測表示以
將該一或多個運算應用於該輸出資料向量,因此避免自該輸出資料向量計算該一或多個純量值之一確切表示所需的任何計算。
在一個實施例中,該一或多個運算包括一平均值或一標準差中之一或多者,且該一或多個運算涉及對該輸出資料向量之每一元素的存取。
在一個實施例中,該方法進一步包括將來自一訓練資料集之訓練輸入提供至一人工神經網路,該訓練輸入提供用於該神經網路權重層之經訓練權重。
在一個實施例中,該方法進一步包括提供額外訓練權重以用於自用以計算該輸出資料向量之該傳入激發向量預測該一或多個純量值。該方法可進一步包括基於該等額外訓練權重而與該輸出資料向量之一計算同時產生該所預測表示。
在一個實施例中,該等額外訓練權重設置於包括該神經網路權重層之一類比人工智慧影像塊的一或多個行上。
在一個實施例中,該方法進一步包含藉由最小化該一或多個純量值之該所預測表示與一所計算表示之間的一損失來訓練該等額外訓練權重以及該人工神經網路。
在一個實施例中,一種用於將一或多個運算應用於一類比人工智慧影像塊之一輸出資料向量的電腦實施方法包括在該類比人工智慧影像塊之一神經網路權重層處接收一傳入激發向量。該方法進一步包括:基於該神經網路權重層中之經訓練權重而計算一輸出資料向量;及將額外經訓練權重儲存於該人工智慧影像塊之一或多個列或行中以用於提供待應用於該輸出資料向量之一或多個純量值之一所預測表示。該方法進一步包
括在藉由該傳入激發向量對該人工神經網路進行一正向推斷期間使用該一或多個純量值之該所預測表示以將該一或多個運算應用於該輸出資料向量,同時避免自該輸出資料向量計算該一或多個純量值之一確切表示所需的任何計算。
藉助於本文中所論述之概念,提供一種系統及方法,其對當前用以利用引入至多個列線上之激發向量來執行並行向量乘法運算,以便在編碼成類比非揮發性電阻式記憶體之電導值的所儲存權重的整個矩陣上執行乘法及累加(MAC)運算之方法進行改良。
本文中所論述之系統及方法具有提供較低時延、較快計算效能及減少之數位計算能量的技術效應。
此等及其他特徵將自其說明性實施例之以下詳細描述變得顯而易見,該詳細描述將結合隨附圖式來閱讀。
100:激發向量
102:全連接權重層
104:輸出向量
106:區塊
108:輸出向量
200:激發向量
202:全連接權重層
206:額外行
208:輸出向量
210:顯著資料相依係數/學習估計值
212:類比AI影像塊
300:流程圖
302:影像
304:全連接層
306:第四層
310:實際平均值/標準差值
312:層正規化
314:ReLU運算
700:程序
702:動作
704:動作
706:動作
708:動作
710:動作
800:電腦硬體平台
810:CPU
820:HDD
830:RAM/ROM
840:系統匯流排
850:計算硬體
850:鍵盤
852:全連接權重層
854:額外經訓練權重
856:輸出資料向量
858:學習估計值
860:滑鼠
870:顯示器
880:通訊介面
圖式屬於說明性實施例。其並不繪示所有實施例。可另外或替代地使用其他實施例。可省略可為顯而易見或不必要的細節以節省空間或用於更有效說明。一些實施例可在有額外組件或步驟之情況下及/或在不具有所繪示之所有組件或步驟之情況下實踐。當相同數字出現在不同圖式中時,其係指相同或類似組件或步驟。
圖1為根據習知實踐之標準模型的表示,該標準模型用於利用引入至多個列線上之激發向量來執行並行向量乘法運算,以便在編碼成類比非揮發性電阻式記憶體之電導值的所儲存權重的整個矩陣上執行乘法及累加(MAC)運算。熟習此項技術者應理解,藉由沿著列(而非沿著行)整合而將激發向量引入至多個行線上且執行MAC運算之影像塊將為本發
明之顯而易見的擴展。
圖2為根據說明性實施例之模型的表示,該模型用於利用引入至多個列線上之激發向量來執行並行向量乘法運算,以便在編碼成類比非揮發性電阻式記憶體之電導值的所儲存權重的整個矩陣上執行乘法及累加(MAC)運算。
圖3為繪示關於影像資料集之多層感知器測試的流程圖,其展示圖1之標準模型與根據圖2之說明性實施例的模型之間的比較。
圖4為圖3之測試程序中所使用之圖1之標準模型的表示。
圖5為圖3之測試程序中所使用之根據圖2之說明性實施例的模型的表示。
圖6為展示圖3中所繪示之測試結果的圖。
圖7為例示根據說明性實施例之一種方法的流程圖,該方法用於利用引入至多個列線上之激發向量來執行並行向量乘法運算,以便在編碼成類比非揮發性電阻式記憶體之電導值的所儲存權重的整個矩陣上執行乘法及累加(MAC)運算。
圖8為可用以實施圖2之說明性實施例的電腦硬體平台之功能方塊圖說明。
在以下詳細描述中,藉助於實例闡述大量特定細節以提供對相關教示內容之透徹理解。然而,應顯而易見,可在不具有此類細節之情況下實踐本發明教示內容。在其他情況下,已在相對高級上描述熟知方法、程序、組件及/或電路而不具有細節,以避免不必要地混淆本發明教
示內容之態樣。
除非另外特定陳述,否則如自以下描述及申請專利範圍可顯而易見,應瞭解,貫穿本說明書,利用諸如「處理」、「計算」、「演算」、「判定」或其類似者之術語的描述係指電腦或計算系統或類似電子計算裝置之動作及/或程序,該電腦或計算系統或類似電子計算裝置操控表示為計算系統之暫存器及/或記憶體內之諸如電子量之實體的資料及/或將該資料轉換成類似地表示為計算系統之記憶體、暫存器或其他此類資訊儲存、傳輸或顯示裝置內之實體量的其他資料。
參考圖1,繪示習知架構,其用於利用引入至全連接權重層102之多個列線上的激發向量100來執行並行向量乘法運算,以便在編碼成類比非揮發性電阻式記憶體之電導值的所儲存權重的整個矩陣上執行乘法及累加(MAC)運算。儘管此代表性實例展示全連接權重層,但在將需要在由影像塊產生之輸出向量上執行平均值、標準差或其他類似運算的情境下,諸如卷積層之其他神經網路層可潛在地由本發明解決。由此等運算產生之輸出向量104可接著利用附近數位處理以利用高度並行化SIMD型運算的全向量化方式進行處理,該高度並行化SIMD型運算可並行地對輸出向量104之各成員進行運算而在計算之前需要等待之時間最少。
然而,存在涉及按資料相依係數(諸如,輸出向量之最大值、平均值(μ)或標準差(σ))縮放之一些網路層。預期進行此等計算,如區塊106中所繪示,同時向量資料及並行計算閒置。僅在演算此等值之後才可提供經縮放之輸出向量108。
現參考圖2,根據本發明,繪示一種架構,其用於利用引入至全連接權重層202之多個列線上的激發向量200來執行並行向量乘法
運算,以便在編碼成類比非揮發性電阻式記憶體之電導值的所儲存權重的整個矩陣上執行MAC運算。
由涉及按資料相依係數(諸如,輸出向量之最大值、平均值(μ)或標準差(σ))縮放之此等運算產生的輸出向量204可立即應用於輸出向量204以產生經縮放之輸出向量208,而無需閒置以等待對此等資料相依係數進行單獨計算。
可使用類比AI影像塊212之額外行206(或列)來對經訓練以在其正用以產生輸出向量204時自同一輸入向量200預測顯著資料相依係數210(諸如最大值、平均值或標準差)之學習權重進行編碼。此方法之優點為較低時延、較快計算效能及減小之數位操作能量,此係因為資料相依係數210可供用於對資料向量之各成員進行立即向量化SIMD型計算,而無需延遲且自向量自身計算此值。
由於此等額外行206係利用與權重矩陣之剩餘部分完全相同之上游列激發來激活,因此訓練操作應該能夠收斂且產生準確地估計來自此給定輸入激發向量200之所得最大值、平均值或標準差的權重。此涉及學習過程之自適應,使得此等權重基於其在基於由相關聯權重矩陣產生之原始激發向量而預測最大值、平均值、標準差或其他局部計算方面的準確度而最佳化。
訓練全連接權重層202中之權重以便最小化U=ynetwork_guess-ylabel。可將其他項添加至能量函數U,如公式U=λ * (ynetwork_guess-ylabel)+(1-λ) * Q中所展示,其中Q為需要最小化之量。因此,本發明描述包括權重之額外列206,其中正則化項(U中之所添加分量)嘗試最小化資料相依係數210與所計算資料相依係數值(諸如在圖1之區塊106中計算的所
計算平均值及標準差)之間的差。
因此,類比AI影像塊之運算產生對最大值、平均值或標準差之準確估計,其可供用於對資料向量之各成員進行立即向量化SIMD型計算,而無需延遲且自向量自身計算此值。
如以下等式中所說明,層正規化(layernorm)運算在資源面積、資源功率及總時延方面係昂貴的。此運算涉及至少兩個循環(並行),一個循環對X求和以計算平均值,且另一循環對X2求和以計算標準差。
參考圖3,流程圖300繪示關於具有複數個影像302之影像資料集的多層感知器(MLP)測試。對於此實例,執行具有具備層正規化312之三個全連接層304及不具備層正規化之第四層306的網路。如所繪示,根據本發明之態樣,流程圖300可利用如習知地實踐及如圖1中所繪示之實際平均值及標準差值310進行,或流程圖300可使用如圖2中所繪示之學習平均值及標準差進行。對層正規化運算312之輸出(或在第四層306中,直接對第四層306之輸出)執行ReLU運算314以提供影像塊輸出。
如圖4及圖5中所展示,圖3之流程圖300中所繪示之實例以兩個步驟進行訓練。首先,執行一般訓練,其中以習知方式在資料集上訓練模型持續10紀元(epoch)。其次,使用所計算統計資料作為目標來訓練額外行持續10紀元。
如圖6中所展示,根據本發明之態樣,具有額外行之模型
的準確度在第三訓練紀元之後接近習知的所計算資料相依係數(諸如平均值及標準差)的準確度。
現考慮實例程序之高層級論述可為有用的。為此,圖7呈現與用於向類比AI影像塊添加額外行(或列)以對經訓練以產生顯著資料相依係數(諸如最大值、平均值或標準差)之學習權重的方法相關之說明性程序700。程序700在邏輯流程圖中繪示為區塊集合,其表示可以硬體、軟體或其組合實施之操作序列。在軟體之上下文中,區塊表示電腦可執行指令,其在由一或多個處理器執行時執行所敍述之操作。通常,電腦可執行指令可包括執行功能或實施抽象資料類型之常式、程式、目標、組件、資料結構及其類似者。在各程序中,描述操作之次序並不意欲理解為限制性,且任何數目個所描述區塊可按任何次序組合及/或與實施程序並行地執行。
參考圖7,程序700可包括在類比人工智慧影像塊之全連接權重層處接收傳入激發向量的動作702。程序700可進一步包括基於全連接權重層中之經訓練權重而計算輸出資料向量的動作704。程序700可進一步包括將額外經訓練權重儲存於人工智慧影像塊之一或多個列或行中以用於提供待應用於輸出資料向量之一或多個純量值之所預測表示的動作706。程序700可進一步包括在藉由傳入激發向量對人工神經網路進行正向推斷期間使用一或多個純量值之所預測表示以將一或多個運算應用於輸出資料向量,同時避免自輸出資料向量計算一或多個純量值之確切表示所需的任何計算之動作708。程序700可進一步包括藉由最小化一或多個純量值之所預測表示與所計算表示之間的損失來訓練額外訓練權重以及人工
神經網路之動作710。
圖8提供電腦硬體平台800之功能方塊圖說明,該電腦硬體平台可用以實施可代管用於將一或多個運算應用於類比人工智慧影像塊之輸出資料向量之計算硬體850的經特定組態計算裝置。計算硬體850可包括:全連接權重層852,諸如上文所論述之全連接權重層202;額外經訓練權重854之額外集合,諸如上文所論述之額外經訓練權重206;輸出資料向量856,諸如上文所論述之輸出資料向量210;及自額外經訓練權重854計算之學習估計值858,諸如上文所論述之學習估計值210。
電腦平台800可包括連接至系統匯流排802之中央處理單元(CPU)804、硬碟機(HDD)806、隨機存取記憶體(RAM)及/或唯讀記憶體(ROM)808、鍵盤810、滑鼠812、顯示器814及通訊介面816。在一個實施例中,計算硬體850具有包括執行如上文所論述之方法的能力。
已出於說明之目的呈現本發明教示之各種實施例的描述,但該等描述並不意欲為詳盡的或限於所揭示之實施例。在不脫離所描述實施例之範疇及精神的情況下,許多修改及變化對一般熟習此項技術者而言將顯而易見。本文中所使用的術語經選擇以最佳解釋實施例的原理、實際應用或對市場中發現之技術的技術改良,或使得其他一般熟習此項技術者能夠理解本文中所揭示之實施例。
儘管前文已描述所認為之最佳狀態及/或其他實例,但應理解,可在其中進行各種修改,且本文所揭示之主題可以各種形式及實例實施,且教示可應用於諸多應用,本文僅描述其中一些。以下申請專利範圍
意欲主張屬於本發明教示之真實範疇之任何及所有應用、修改及變體。
已在本文中所論述之組件、步驟、特徵、目標、益處及優勢僅為說明性。其中之任一者及與其相關之論述皆不意欲限制保護範疇。雖然本文中已論述各種優點,但應理解,並非所有實施例必需包括所有優點。除非另外陳述,否則本說明書中(包括隨後之申請專利範圍中)所闡述之所有量測結果、值、額定值、位置、量值、大小及其他規格為近似的而非確切的。其意欲具有合理的範圍,該範圍與其相關之功能以及其所屬之技術領域中的慣例一致。
亦涵蓋眾多其他實施例。此等包括具有較少、額外及/或不同組件、步驟、特徵、目標、益處及優勢的實施例。此等實施例亦包括組件及/或步驟不同地配置及/或排序之實施例。
本發明之態樣在本文中參考根據本揭示之實施例的方法、設備(系統)及電腦程式產品之流程圖圖示及/或方塊圖進行描述。應理解,可藉由電腦可讀程式指令實施流程圖說明及/或方塊圖中之各區塊以及流程圖說明及/或方塊圖中之區塊的組合。
可將此等電腦可讀程式指令提供至適當地組態的電腦、專用電腦或其他可程式資料處理設備之處理器以產生一機器,以使得經由電腦或其他可程式化資料處理設備之處理器執行之指令建立用於實施一或多個流程圖及/或方塊圖區塊中所指定之功能/動作之構件。亦可將此等電腦可讀程式指令儲存於電腦可讀儲存媒體中,該等電腦可讀程式指令可引導電腦、可程式化資料處理設備及/或其他裝置以一方式起作用,使得其中儲存有指令之電腦可讀儲存媒體包含製品,該製品包括實施一或多個流程圖及/或方塊圖區塊中所指定之功能/動作之態樣的指令。
電腦可讀程式指令亦可載入至電腦、其他可程式化資料處理設備或其他裝置上,以使一系列操作步驟在該電腦、其他可程式化設備或其他裝置上執行以產生電腦實施程序,使得在該電腦、其他可程式化設備或其他裝置上執行之指令實施一或多個流程圖及/或方塊圖區塊中所指定之功能/動作。
圖式中的調用流程流程圖及方塊圖在本文中說明根據本揭示之各種實施例的系統、方法及電腦程式產品之可能實施的架構、功能性及操作。就此而言,流程圖或方塊圖中之各區塊可表示指令之模組、片段或部分,其包含用於實施所指定邏輯功能的一或多個可執行指令。在一些替代性實施中,區塊中提及之功能可能不以圖式中所提及之次序發生。舉例而言,視所涉及之功能性而定,連續展示之兩個方塊實際上可同時執行實質上同時執行,或該等方塊有時可以相反次序執行。亦應注意,可藉由執行指定功能或動作或進行專用硬體及電腦指令之組合的基於專用硬體之系統實施方塊圖及/或流程圖說明之各區塊,及方塊圖及/或流程圖說明中之區塊之組合。
雖然前文已結合例示性實施例進行描述,但應理解,術語「例示性」僅意謂作為實例,而非最好或最佳。除上文剛剛陳述之內容外,任何已陳述或說明之內容均不意欲或不應解譯為使任何組件、步驟、特徵、物件、益處、優勢之專用或等效於公用,無論其是否在申請專利範圍中陳述。
將理解,除非本文中已另外闡述特定含義,否則本文中所使用之術語及表達具有如關於其對應各別查詢及研究領域給予此類術語及表達的一般含義。諸如第一及第二及其類者之關係術語僅可用於區分一個
實體或動作與另一實體或動作,而未必需要或意指此類實體或動作之間的任何實際此類關係或次序。術語「包含(comprise/comprising)」或其任何變化形式意欲涵蓋非排他性包括,使得包含元件清單之程序、方法、物品或設備不僅包括彼等元件,而且亦可包括未明確列出或為此類程序、方法、物品或設備所固有之其他元件。在無進一步約束之情況下,前面帶有「一(a或an)」之元件不排除包含該元件之程序、方法、物品或設備中存在額外相同元件。
提供本發明之摘要以允許讀者快速地確定技術揭示內容之性質。應遵守以下理解:摘要將不會用於解釋或限制申請專利範圍之範疇或含義。另外,在前述實施方式中,可看到出於精簡本發明之目的在各種實施例中將各種特徵分組在一起。不應將此揭示方法解釋為反映以下意圖:所主張之實施例具有比每一請求項中明確敍述更多的特徵。確切而言,如以下申請專利範圍所反映,本發明主題在於單一所揭示實施例之少於全部的特徵。因此,以下申請專利範圍特此併入實施方式中,其中各申請專利範圍就其自身而言作為單獨主張的主題。
700:程序
702:動作
704:動作
706:動作
708:動作
710:動作
Claims (18)
- 一種電腦實施方法,其包含:在一人工神經網路之一神經網路權重層處接收一傳入激發向量,該人工神經網路包括涉及待在該人工神經網路之一輸出資料向量上計算之一或多個純量值的一或多個運算;在藉由該傳入激發向量對該人工神經網路進行正向推斷期間使用該一或多個純量值之一所預測表示以將該一或多個運算應用於該輸出資料向量,其中該一或多個運算涉及對該輸出資料向量之每一元素的存取。
- 如請求項1之電腦實施方法,其中避免用以自該輸出資料向量計算該一或多個純量值之一確切表示的一計算。
- 如請求項1之電腦實施方法,其中該一或多個運算包括一平均值及/或一標準差。
- 如請求項1之電腦實施方法,其進一步包含將來自一訓練資料集之訓練輸入提供至一人工神經網路,該訓練輸入提供用於該神經網路權重層之經訓練權重。
- 如請求項4之電腦實施方法,其進一步包含:提供額外訓練權重以用於自用以計算該輸出資料向量之該傳入激發向量預測該一或多個純量值;及 基於該等額外訓練權重而與該輸出資料向量之一計算同時產生該所預測表示。
- 如請求項4之電腦實施方法,其中該等額外訓練權重設置於包含該神經網路權重層之一類比人工智慧影像塊的一或多個行上。
- 如請求項5之電腦實施方法,其進一步包含藉由最小化該一或多個純量值之該所預測表示與一所計算表示之間的一損失來訓練該等額外訓練權重以及該人工神經網路。
- 一種用於將一或多個運算應用於一類比人工智慧影像塊之一輸出資料向量的電腦實施方法,其包含:在該類比人工智慧影像塊之一神經網路權重層處接收一傳入激發向量;基於該神經網路權重層中之經訓練權重而計算一輸出資料向量;將額外經訓練權重儲存於該人工智慧影像塊之一或多個列或行中以用於提供待應用於該輸出資料向量之一或多個純量值之一所預測表示;及在藉由該傳入激發向量對該人工神經網路進行一正向推斷期間使用該一或多個純量值之該所預測表示以將該一或多個運算應用於該輸出資料向量,同時避免用以自該輸出資料向量計算該一或多個純量值之一確切表示的一計算,其中該一或多個運算涉及對該輸出資料向量之每一元素的存取。
- 如請求項8之電腦實施方法,其中該一或多個運算包括一平均值及/或一標準差。
- 如請求項8之電腦實施方法,其進一步包含將來自一訓練資料集之訓練輸入提供至一人工神經網路,該訓練輸入提供用於該神經網路權重層之該等經訓練權重。
- 如請求項8之電腦實施方法,其進一步包含基於額外訓練權重而與該輸出資料向量之一計算同時產生該所預測表示。
- 如請求項8之電腦實施方法,其進一步包含藉由最小化該一或多個純量值之該所預測表示與一所計算表示之間的一損失來訓練該等額外訓練權重以及該人工神經網路。
- 一種有形地體現具有電腦可讀指令之一電腦可讀程式碼的電腦可讀儲存媒體,該等電腦可讀指令在經執行時使得一電腦裝置進行用於將一或多個運算應用於一人工神經網路之一輸出資料向量的一方法,該方法包含:在該人工神經網路之一神經網路權重層處接收一傳入激發向量,該人工神經網路包括涉及待在該人工神經網路之一輸出資料向量上計算之一或多個純量值的一或多個運算,其中該一或多個運算涉及對該輸出資料向量之每一元素的存取;及在藉由該傳入激發向量對該人工神經網路進行一正向推斷期間使用 該一或多個純量值之一所預測表示以將該一或多個運算應用於該輸出資料向量,同時避免用以自該輸出資料向量計算該一或多個純量值之一確切表示的一計算。
- 如請求項13之電腦可讀儲存媒體,其中:該一或多個運算包括一平均值及/或一標準差。
- 如請求項13之電腦可讀儲存媒體,該方法進一步包含將來自一訓練資料集之訓練輸入提供至一人工神經網路,該訓練輸入提供用於該神經網路權重層之經訓練權重。
- 如請求項13之電腦可讀儲存媒體,該方法進一步包含:提供額外訓練權重以用於自用以計算該輸出資料向量之該傳入激發向量預測該一或多個純量值;及基於該等額外訓練權重而與該輸出資料向量之一計算同時產生該所預測表示。
- 如請求項16之電腦可讀儲存媒體,該方法進一步包含將該等額外訓練權重設置在包含該神經網路權重層之一類比人工智慧影像塊之一或多個行上。
- 如請求項16之電腦可讀儲存媒體,該方法進一步包含藉由最小化該一或多個純量值之該所預測表示與一所計算表示之間的一損失來訓練該等額外訓練權重以及該人工神經網路。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/931,538 US20240086677A1 (en) | 2022-09-12 | 2022-09-12 | Learned column-weights for rapid-estimation of properties of an entire excitation vector |
US17/931,538 | 2022-09-12 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202414279A TW202414279A (zh) | 2024-04-01 |
TWI842584B true TWI842584B (zh) | 2024-05-11 |
Family
ID=90141093
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW112125210A TWI842584B (zh) | 2022-09-12 | 2023-07-06 | 電腦實施方法及電腦可讀儲存媒體 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20240086677A1 (zh) |
TW (1) | TWI842584B (zh) |
-
2022
- 2022-09-12 US US17/931,538 patent/US20240086677A1/en active Pending
-
2023
- 2023-07-06 TW TW112125210A patent/TWI842584B/zh active
Also Published As
Publication number | Publication date |
---|---|
TW202414279A (zh) | 2024-04-01 |
US20240086677A1 (en) | 2024-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11574195B2 (en) | Operation method | |
JP7374236B2 (ja) | 加速数学エンジン | |
JP7439149B2 (ja) | ニューラルネットワーク処理のスケジューリング | |
US20180260710A1 (en) | Calculating device and method for a sparsely connected artificial neural network | |
CN108009626B (zh) | 利用神经网络计算单元中的输入数据稀疏 | |
CN107341547B (zh) | 一种用于执行卷积神经网络训练的装置和方法 | |
US9886377B2 (en) | Pipelined convolutional operations for processing clusters | |
CN112236784B (zh) | 修改机器学习模型以改善局部性 | |
US11775832B2 (en) | Device and method for artificial neural network operation | |
US20230297819A1 (en) | Processor array for processing sparse binary neural networks | |
Luo et al. | AILC: Accelerate on-chip incremental learning with compute-in-memory technology | |
CN112949815A (zh) | 用于模型优化的方法和设备以及加速器系统 | |
CN114692854A (zh) | 用于生成人工神经网络模型的内核的npu及其方法 | |
Mao et al. | Energy-efficient machine learning accelerator for binary neural networks | |
Muthappa et al. | Hardware-based fast real-time image classification with stochastic computing | |
Peng et al. | Mbfquant: a multiplier-bitwidth-fixed, mixed-precision quantization method for mobile cnn-based applications | |
CN114912590A (zh) | 处理器、操作处理器的方法以及包括处理器的电子装置 | |
CN113496248A (zh) | 训练计算机实施的模型的方法和设备 | |
TWI842584B (zh) | 電腦實施方法及電腦可讀儲存媒體 | |
US11544213B2 (en) | Neural processor | |
CN113361704A (zh) | 用于神经网络代码生成的方法和设备 | |
CN115461754A (zh) | 深度过参数化 | |
CN111582444A (zh) | 一种矩阵数据的处理、装置、电子设备及存储介质 | |
TWI844108B (zh) | 積體電路及操作方法 | |
CN117492838A (zh) | 访问序言和结尾数据 |