神經(jīng)網(wǎng)絡(luò)是一種流行的機(jī)器學(xué)習(xí)模型,但它們需要更高的能耗和更復(fù)雜的硬件設(shè)計(jì)。隨機(jī)計(jì)算是平衡硬件效率和計(jì)算性能之間權(quán)衡的一種有效方式。然而,由于算術(shù)單元的低數(shù)據(jù)精度和不準(zhǔn)確性,隨機(jī)計(jì)算見證了 ML 工作負(fù)載的低準(zhǔn)確性。
為了解決與傳統(tǒng)隨機(jī)計(jì)算方法相關(guān)的問題,并通過更高的精度和更低的功耗來提高性能,正在進(jìn)行的研究提出了一種改進(jìn)的基于塊的隨機(jī)計(jì)算架構(gòu)。通過在輸入層中引入塊,可以通過利用高數(shù)據(jù)并行性來減少延遲。更重要的是確定全局優(yōu)化方法所需要的塊數(shù)。
現(xiàn)有的方法包括增加比特流的長度以提高數(shù)據(jù)精度,甚至使用指數(shù)比特來獲得準(zhǔn)確的結(jié)果。然而,這引入了較長的計(jì)算延遲,這對于 TinyML 應(yīng)用程序來說是不合理的。因此,為了應(yīng)對這種不斷上升的計(jì)算延遲,比特流被分成塊然后并行執(zhí)行。結(jié)合塊內(nèi)算術(shù)單元和輸出修正 (OUR) 方案可緩解塊間不準(zhǔn)確問題,從而提供高計(jì)算效率。
基于塊的隨機(jī)計(jì)算架構(gòu)
研究提供了一種新穎的架構(gòu),其中輸入被劃分為塊并使用優(yōu)化的塊內(nèi)算術(shù)單元并行執(zhí)行乘法和加法。此外,在 TinyML 應(yīng)用程序的延遲-功耗權(quán)衡方面,所提出的模型是一個出色的架構(gòu)。
架構(gòu)劃分如下:
塊劃分
如上圖所示,輸入比特流被劃分為“k”個值塊。所提出的想法是,為比特流選擇大量塊并不能保證是最佳的,但可以用于接近近似值。如果在選擇塊數(shù)時出現(xiàn)錯誤,這可能會自相矛盾地導(dǎo)致大錯誤。在確定來自輸入比特流的正和負(fù)部分的兩個平均值的概率方面存在復(fù)雜的計(jì)算。
塊內(nèi)計(jì)算
緩解了傳統(tǒng)加法器面臨的OR加法器相關(guān)問題和分離加法器溢出問題。新修改的架構(gòu)設(shè)計(jì)在輸入之間帶有 XNOR+AND 門,以消除雙極計(jì)算的相關(guān)性。
每個輸入位都在并行計(jì)數(shù)器 (PC) 中獲取,對于正負(fù)部分 (Ap, An) 分別進(jìn)行處理。有兩個專用累加器用于處理有符號位。取輸入位后,累加器之間發(fā)生減法,如正負(fù)部分所示。目標(biāo)是獲得所有輸入的累積 1 的數(shù)量。進(jìn)一步地,比較取時間輸出(Sop,Son)中的一位,在多個“n”個循環(huán)之后,計(jì)算符號位,并根據(jù)符號位Ap和An,選擇Sop和Son的輸出結(jié)果。
這種新的基于累加器的符號幅度格式加法器利用 unNSADD 加法器來比較輸出和輸入中的實(shí)際累加 1 以確定輸出位。這種方法消除了相關(guān)性和快速溢出問題的影響。
塊間??輸出修正方案
盡管塊內(nèi)加法器解決了相關(guān)性和溢出問題,但塊劃分引入了新的塊間不準(zhǔn)確錯誤。乘法器不會發(fā)生這種情況,因?yàn)檩斎胧?XNORed 和 ANDed。但是對于加法器,輸出中 1 的數(shù)量可能會偏離所產(chǎn)生的不準(zhǔn)確性。輸出修訂方案在并行塊內(nèi)計(jì)算階段之后添加或刪除 1s,而不會引入任何額外的延遲來解決這些塊間不準(zhǔn)確錯誤。
新穎的基于塊的隨機(jī)計(jì)算架構(gòu)旨在提高隨機(jī)計(jì)算運(yùn)算電路的精度,同時降低計(jì)算延遲和能源效率。根據(jù)研究結(jié)果,該方法比現(xiàn)有方法的準(zhǔn)確度提高了 10% 以上,并節(jié)省了 6 倍以上的功率。
審核編輯:郭婷
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4814瀏覽量
103622 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8503瀏覽量
134622
發(fā)布評論請先 登錄
GPU架構(gòu)深度解析

Arm架構(gòu)何以成為現(xiàn)代計(jì)算的基礎(chǔ)
揭秘云計(jì)算架構(gòu)的分層奧秘
熵基科技實(shí)現(xiàn)BioCV TinyML與DeepSeek大模型融合
HPC云計(jì)算的技術(shù)架構(gòu)
ADS1282是32位ADC,在計(jì)算對紋波要求的時候,LSB按照32位計(jì)算,還是按照有效位數(shù)計(jì)算?
開源芯片系列講座第24期:基于SRAM存算的高效計(jì)算架構(gòu)

ads1256有效位數(shù)怎么計(jì)算?
適用于MySQL的dbForge架構(gòu)比較

邊緣計(jì)算架構(gòu)設(shè)計(jì)最佳實(shí)踐
內(nèi)存儲器分為隨機(jī)存儲器和什么
閃存隨機(jī)讀寫與連續(xù)讀寫哪個重要
用于控制和保護(hù)的HVDC架構(gòu)和解決方案簡介

評論