本文約1500字,建議閱讀5分鐘
本文簡單介紹第一個基于位置的處理器內(nèi)核。
訓(xùn)練許多現(xiàn)代 AI 工具背后的大型神經(jīng)網(wǎng)絡(luò)需要真正的計(jì)算能力:例如,OpenAI 最先進(jìn)的語言模型 GPT-3 需要驚人的數(shù)億次操作來訓(xùn)練,并且花費(fèi)了大約 500 萬美元的計(jì)算時間。工程師們認(rèn)為他們已經(jīng)找到了一種通過使用不同的數(shù)字表示方式來減輕負(fù)擔(dān)的方法。
早在 2017 年,當(dāng)時在 A*STAR 計(jì)算資源中心和新加坡國立大學(xué)聯(lián)合任命的 John Gustafson 和當(dāng)時在 Interplanetary Robot and Electric Brain Co. 任職的 Isaac Yonemoto 開發(fā)了一種表示數(shù)字的新方法。這些數(shù)字,稱為 posits,被提議作為對當(dāng)今使用的標(biāo)準(zhǔn)浮點(diǎn)算術(shù)處理器的改進(jìn)。
現(xiàn)在,馬德里康普頓斯大學(xué)的一組研究人員開發(fā)了第一個在硬件中實(shí)現(xiàn) posit 標(biāo)準(zhǔn)的處理器內(nèi)核,并表明,基本計(jì)算任務(wù)的精度逐位提高了四個數(shù)量級,與使用標(biāo)準(zhǔn)浮點(diǎn)數(shù)進(jìn)行計(jì)算相比。他們在第29屆 IEEE 計(jì)算機(jī)算術(shù)研討會上展示了他們的結(jié)果。
論文鏈接:
https://spectrum.ieee.org/floating-point-numbers-posits-processor
「如今,摩爾定律似乎開始消退。」康普頓斯公司 ArTeCS 小組的研究生研究員 David Mallasén Quintana 說,「因此,我們需要找到一些其他方法來從同一臺機(jī)器中獲得更多性能。做到這一點(diǎn)的方法之一是改變我們對實(shí)數(shù)進(jìn)行編碼的方式,以及我們表示它們的方式?!?/p>
Complutense 團(tuán)隊(duì)并不是唯一一個用數(shù)字表示來挑戰(zhàn)極限的人。近期,英偉達(dá)、Arm 和英特爾就使用 8 位浮點(diǎn)數(shù)而不是通常的 32 位或 16 位機(jī)器學(xué)習(xí)應(yīng)用程序達(dá)成了一項(xiàng)規(guī)范。使用更小、更不精確的格式可以提高效率和內(nèi)存使用率,但代價是計(jì)算準(zhǔn)確性。
實(shí)數(shù)不能簡單地用硬件完美地表示,因?yàn)樗鼈兊臄?shù)量是無限的。為了適應(yīng)指定的位數(shù),許多實(shí)數(shù)必須四舍五入。Posits 的優(yōu)勢在于它們準(zhǔn)確代表的數(shù)字沿?cái)?shù)軸分布的方式。在數(shù)軸的中間,大約 1 和 -1,有比浮點(diǎn)更多的位置表示。在兩翼,對于大的負(fù)數(shù)和正數(shù),定位精度比浮點(diǎn)數(shù)下降得更優(yōu)雅。
「它更適合計(jì)算中數(shù)字的自然分布?!笹ustafson 說,「這是正確的動態(tài)范圍,在您需要更高精度的情況下,它是正確的精度。浮點(diǎn)運(yùn)算中有大量的位模式,從來沒有人使用過。那是浪費(fèi)!」
由于表示中的一個額外組件,Posits 在 1 和 -1 左右實(shí)現(xiàn)了這種改進(jìn)的準(zhǔn)確性。浮點(diǎn)數(shù)由三部分組成:一個符號位(0 表示正數(shù),1 表示負(fù)數(shù)),幾個「尾數(shù)」(分?jǐn)?shù))位表示小數(shù)點(diǎn)的二進(jìn)制版本之后的內(nèi)容,其余位定義指數(shù)(2^exp)。
Posits 保留了浮點(diǎn)數(shù)的所有組件,但添加了一個額外的「制度」部分,即指數(shù)的指數(shù)。該制度的美妙之處在于它的位長可以變化。對于小數(shù)字,它可能只需要兩位,為尾數(shù)留下更高的精度。這允許在 1 和 -1 附近的最佳位置中進(jìn)行更高的定位精度。
深度神經(jīng)網(wǎng)絡(luò)通常使用稱為權(quán)重的歸一化參數(shù),使其成為受益于位置優(yōu)勢的完美候選者。大部分神經(jīng)網(wǎng)絡(luò)計(jì)算由乘法累加操作組成。每次執(zhí)行這樣的計(jì)算時,每個總和都必須重新截?cái)?,?dǎo)致精度損失。使用 posits,稱為 quire 的特殊寄存器可以有效地執(zhí)行累加步驟以減少精度損失。但是今天的硬件實(shí)現(xiàn)了浮點(diǎn)數(shù),到目前為止,在軟件中使用 posits 的計(jì)算收益在很大程度上被格式之間轉(zhuǎn)換的損失所掩蓋。
借助在現(xiàn)場可編程門陣列(FPGA)中合成的新硬件實(shí)現(xiàn),Complutense 團(tuán)隊(duì)能夠并排比較使用 32 位浮點(diǎn)數(shù)和 32 位位置完成的計(jì)算。他們通過將它們與使用更準(zhǔn)確但計(jì)算成本更高的 64 位浮點(diǎn)格式的結(jié)果進(jìn)行比較來評估它們的準(zhǔn)確性。Posits 在矩陣乘法(神經(jīng)網(wǎng)絡(luò)訓(xùn)練中固有的一系列乘法累加)的準(zhǔn)確性方面顯示出驚人的四個數(shù)量級的提高。他們還發(fā)現(xiàn),提高精度并沒有以計(jì)算時間為代價,只是稍微增加了芯片面積和功耗。
盡管數(shù)值精度的提高是不可否認(rèn)的,但這究竟會如何影響像 GPT-3 這樣的大型 AI 的訓(xùn)練還有待觀察。
「假設(shè)可能會加快訓(xùn)練速度,因?yàn)槟悴粫谕局衼G失太多信息?!筂allasén 說,「但這些都是我們不知道的事情。有些人已經(jīng)在軟件中進(jìn)行了嘗試,但我們現(xiàn)在也想在硬件中進(jìn)行嘗試?!?/p>
其他團(tuán)隊(duì)正在開發(fā)他們自己的硬件實(shí)現(xiàn)以促進(jìn) posit 的使用?!杆谧鑫蚁M鼤龅氖虑?;它被瘋狂地采用了。」Gustafson 說,「位置編號格式引起了轟動,有數(shù)十個團(tuán)體,包括公司和大學(xué),都在使用它?!?/p>
https://spectrum.ieee.org/floating-point-numbers-posits-processor
訪談
更多做行業(yè)賦能者 HID迎接數(shù)字化浪潮新機(jī)遇 破解新挑戰(zhàn)
今年3月份,全球可信身份解決方案提供商HID發(fā)布了最新的《安防行業(yè)現(xiàn)狀報告》(以下簡稱“報告”),該報告…
數(shù)字化浪潮下,安防廠商如何滿足行業(yè)客戶的定制化需求?
回顧近兩年,受疫情因素影響,包括安防在內(nèi)的諸多行業(yè)領(lǐng)域都遭受了來自市場 “不確定性”因素的沖擊,市場…
博思高鄧紹昌:乘產(chǎn)品創(chuàng)新及客戶服務(wù)之舟,在市場變革中逆風(fēng)飛揚(yáng)
11月24日,由慧聰物聯(lián)網(wǎng)、慧聰安防網(wǎng)、慧聰電子網(wǎng)主辦的2022(第十九屆)中國物聯(lián)網(wǎng)產(chǎn)業(yè)大會暨品牌盛會,在深…