亚洲中文字幕乱码亚洲-蜜桃成熟视频在线观看-免费中文字幕视频在线-中国五十路熟妇洗澡视频-亚洲av伊人啪啪c-国产精品成人一区二区-国产自拍视频一区在线观看-成人一区不卡二区三区四区-亚洲情精品中文字幕99在线

網(wǎng)易首頁 > 網(wǎng)易號 > 正文 申請入駐

在一臺1970年代的PDP-11上訓練Transformer要多久?答案是5.5分鐘

0
分享至



機器之心編輯部

試想一下,如果把當下大火的大模型技術帶回 1970 年,會發(fā)生什么?

彼時,沒有 GPU、沒有 CUDA,也沒有浮點數(shù),甚至沒有任何深度學習框架,只有一臺 PDP-11 小型機,以及一門幾乎已經(jīng)退出歷史舞臺的語言:匯編語言。

近日,一位開發(fā)者給出了答案。他復現(xiàn)了那個年代的技術環(huán)境,用 1970 年代的 PDP-11 匯編語言,實現(xiàn)了一個 Transformer,并且真正訓練成功了,這個項目叫做 ATTN-11。

具體來看,就是在 1970 年代的小型機 PDP-11 上,用純匯編語言,實現(xiàn)一個單層、單頭的 Transformer,并完成一個「序列反轉(zhuǎn)」的任務,即輸入一串數(shù)字,輸出其反序結(jié)果。

比如,輸入:4 7 4 9 6 3 6 5,輸出:5 6 3 6 9 4 7 4。

看似很容易,但關鍵特征是,機器無法通過「記住內(nèi)容」來完成這個任務,必須理解「位置之間的映射關系」。而這恰恰是自注意力(Attention)機制的的核心能力。

項目結(jié)果顯示,在一臺 1970 年代的計算機上,一個僅有 1216 個參數(shù)、單層單頭的 Transformer,在約 350 步訓練后就實現(xiàn)了 100% 的準確率,而訓練時間只有 5 分鐘左右。

有意思的是,由于 PDP-11 時代,程序的主要存儲介質(zhì)是 Paper Tape(穿孔紙帶),因此,該項目開發(fā)者又稱該項目為「Paper Tape is All You Need」。



而當開發(fā)者將該項目發(fā)布之后,引起了網(wǎng)友的熱議。

當下,大模型的發(fā)展主要圍繞 Scaling Law 展開,更多的參數(shù) ,更多的數(shù)據(jù),更的多算力…… 而 ATTN-11,卻在極低的資源、極簡的結(jié)構(gòu)下,成功實現(xiàn)功能閉環(huán)。因此,大家不禁在思考:Transformer,到底需要什么?

一位網(wǎng)友該項目「在 PDP-11 上訓練只要 5 分鐘」表示驚訝,而更讓他震驚的是,這似乎說明「我們其實一直都可以做到這些???」



另一位網(wǎng)友則認為,不必驚訝,是的,我們一直可以做到這些。因為,「1980 年代的 Cray 超級計算機非常厲害,尤其在矩陣乘法方面性能極其強大。

比如一臺 1984 年的四核 CPU Cray X-MP,可以持續(xù)提供 800 MFLOPS 到 1 GFLOPS 的算力,如果配上一塊 1GB 的 SSD,在算力和帶寬上已經(jīng)足以在半年內(nèi)訓練一個 700 萬到 1000 萬參數(shù)的語言模型,并以每秒 18 到 25 個 token 的速度進行推理。

而到了 1990 年代中期,一臺 Cray T3E 的算力,就已經(jīng)可以承載 GPT-2(1.24 億參數(shù))規(guī)模的模型,這要比 OpenAI 早 24 年。

而我自己,甚至還用一臺 1965 年的打孔卡計算機,通過反向傳播學會了 XOR。

真正的瓶頸從來都不是硬件,而是想法。」



另一位網(wǎng)友也現(xiàn)身說法,他舉了后量子密碼學的例子。他表示,基于格(lattice)的加密方案早在 1990 年代就已被提出,但真正走向產(chǎn)業(yè)落地,卻花了整整幾十年,而問題的關鍵不在于數(shù)學不成熟,也不在于硬件不足,而是讓這些理論真正「跑起來」的關鍵思路,當時還沒有出現(xiàn)。



接下來,詳細了解一下具體項目實現(xiàn)。

開發(fā)者稱,該項目是 Xortran 的精神續(xù)作,Xortran 是一個在 IBM 1130(1965 年)和 PDP-11/20(1970 年)上,用 Fortran IV 實現(xiàn)反向傳播來學習 XOR 運算的神經(jīng)網(wǎng)絡。

自然而然地,下一步就想看看這些機器是否能在可接受的時間內(nèi)(幾小時)成功訓練一個小型 Transformer。

從架構(gòu)上看,Transformer 實際上只是基礎神經(jīng)網(wǎng)絡的適度擴展。矩陣乘法、反向傳播、隨機梯度下降(SGD)和交叉熵等構(gòu)建模塊早已存在。

新增的三個部分是:

  • 自注意力:映射后的查詢(Query)與鍵(Key)之間的點積得分;
  • 位置編碼:學習到的位置嵌入,加到輸入上;
  • Softmax:將得分轉(zhuǎn)換為概率分布;

該項目的目標是訓練一個 Transformer 來反轉(zhuǎn)數(shù)字序列。盡管看似簡單,但對神經(jīng)網(wǎng)絡來說,模型必須學會將每個 token 路由到僅由其索引決定的位置,沒有基于內(nèi)容的捷徑。而這類問題正是為自注意力設計的,實際上也是 Tensor2Tensor(谷歌 2017 年原始 Transformer 的參考實現(xiàn))中包含的算法基準之一。

架構(gòu)

數(shù)據(jù)路徑很直接,token 被嵌入,通過帶有殘差連接的自注意力層,然后映射回詞表并通過 softmax 得到預測:





該模型是一個極簡的 Transformer:嵌入、帶殘差連接的自注意力、輸出映射。它是真正的帶自注意力的 Transformer,但既不是 BERT 也不是 GPT:沒有層歸一化、沒有前饋網(wǎng)絡、沒有解碼器。

該任務中,不需要對 token 表示做任何變換,因此注意力和殘差連接就足夠了。層歸一化在深層網(wǎng)絡中用于防止激活漂移,但在單層中并不需要。

針對 1970 年代硬件的優(yōu)化

第一次實現(xiàn)沿用了 Xortran 的方案,并使用 Fortran IV 編寫。在統(tǒng)一學習率為 0.01 的情況下,模型完成 100 步訓練需要 25 分鐘,而要達到 100% 的準確率則需要約 1500 個訓練步數(shù)。這在真實硬件上大約相當于 6.5 小時的訓練時間,在 IBM 1130 上甚至可能需要整整一周。

即便是按照 1970 年代的標準來看,這樣的耗時也是難以接受的,因為當時的計算機通常采用分時共享機制,計算資源非常寶貴。

因此,第一次改進是將統(tǒng)一學習率替換為手動調(diào)優(yōu)的分層學習率:



編碼「反轉(zhuǎn)模式」的注意力權(quán)重更適合使用較高的學習率,而輸出映射層在較小學習率下收斂效果更好。通過這一調(diào)優(yōu),訓練步數(shù)降至 600 步,預計訓練時間約為 2.5 小時。

優(yōu)化器采用的是最基礎的隨機梯度下降(SGD)。像 Adam 這樣的優(yōu)化器雖然可以為每個參數(shù)自適應調(diào)整步長,但代價是每個權(quán)重需要額外維護兩個狀態(tài)向量,使參數(shù)所占內(nèi)存增加到原來的 3 倍。同時,每次更新還需要進行平方根和除法運算,即便在配備 EIS 的 PDP-11 上,這些操作也依然開銷較大。

相比之下,分層學習率在不增加額外成本的情況下實現(xiàn)了類似效果,而且由于模型規(guī)模較小,這三組學習率可以手動調(diào)優(yōu)。此外,這也使得 Transformer 可以裝入 32KB 的核心內(nèi)存,而不是 64KB,這在 1970 年代尤為關鍵。

補充說明:由于采用裸機匯編實現(xiàn),ATTN/11 的內(nèi)存占用并不高于 Xortran,后者還需要承擔 RT-11 V3 操作系統(tǒng)和 Fortran 運行時的開銷。最終生成的二進制文件也相當緊湊,僅為 6179 字節(jié)。

NN11

核心算術運算基于 NN11,這是一個為 ATTN/11 和 PDP-11 設計的最小化定點神經(jīng)網(wǎng)絡計算棧。

NN11 的組織結(jié)構(gòu)類似于 BLAS,分為多個層級:最底層是標量基礎操作(FXMATH);其上是向量運算,如點積和縮放(VECOP);再往上是矩陣–向量運算(MATOP),每一層都構(gòu)建在下層之上。

此外,還有兩個模塊將該計算棧擴展到線性代數(shù)之外:一個是激活函數(shù)及其查找表(ACTFN),另一個是層級操作(LAYER),用于將前述運算組合起來,實現(xiàn)、映射以及注意力等功能。

這些算術計算會根據(jù)不同的計算階段進行適配:



在 PDP-11 上,前向計算使用 Q8、反向傳播使用 Q15 的組合非常契合:將一個 Q8 數(shù)與一個 Q15 數(shù)相乘,會在一個 32 位寄存器對中得到 Q23 的結(jié)果,只需一次「ASHC #-8」操作即可將其縮放回 Q15。

因此,反向傳播中的乘法開銷并不高于前向計算,同時還能讓梯度的精度達到激活值的 128 倍。

經(jīng)過優(yōu)化后,模型在 350 步內(nèi)即可收斂,使得在開發(fā)者的 PDP-11/34A 上,總訓練時間縮短至僅 5.5 分鐘。



在該項目中,開發(fā)者并沒有使用真正的紙帶讀取器,因此是通過控制臺將目標代碼直接寫入內(nèi)存。

以下是運行該 Transformer 后的結(jié)果:



原型

在正式轉(zhuǎn)向匯編實現(xiàn)之前,必須先驗證其正確性。因此,開發(fā)者先在 Sheaf 中對浮點和定點算術進行了原型設計與驗證。Sheaf 是開發(fā)者開發(fā)的一個函數(shù)式 ML 框架,內(nèi)置了可觀測性機制。

對于這類機器學習工作,Sheaf 相比 Python 有幾個優(yōu)勢:

  • 代碼量大約減少三分之一;
  • 其純函數(shù)式語義帶來了更強的正確性保障;
  • 能夠?qū)γ恳粋€中間張量進行內(nèi)置追蹤,包括其形狀、數(shù)值范圍以及計算時間。在開發(fā)定點算術時,這一點尤為關鍵。

例如,在「vtmul」上設置一個范圍保護,可以立刻捕捉到遺漏「>>8」位移的問題:



浮點與定點兩種原型實現(xiàn)都可以在「proto」文件夾中找到,同時還包含最初的 Fortran 版本。

實現(xiàn)細節(jié)

由于沒有浮點運算單元,超越函數(shù)(如 exp、log)被預先計算的查找表所替代。在 PDP-11 上,一次查表只需一條「MOV」指令,其開銷遠低于多項式近似或 CORDIC 算法。

Softmax

Softmax 使用一個包含 256 個條目的查找表(EXPTBL,Q8),將每個索引 i 映射為 exp (?i/32)。計算分為三個步驟:

  • 找到輸入向量中的最大值,并從每個元素中減去該值,以保證數(shù)值穩(wěn)定性;
  • 將差值(max ? x_i)除以 8,作為查表索引,并限制在 [0, 255] 范圍內(nèi);
  • 將得到的 exp 值除以它們的總和(通過 FXDIV),得到概率分布。

該查找表大約覆蓋了輸入范圍內(nèi)的 8 個單位,在趨近于 0 之前,這對于一個 10 類詞表來說已經(jīng)完全足夠。

交叉熵損失

損失函數(shù)每 50 步計算一次,用于報告訓練過程。它依賴另一個查找表(LOGTBL,257 個條目,Q12),將每個值 x ∈ [0, 256] 映射為 ?ln (x/256) × 4096。

計算流程遵循標準路徑:先對 logits 做 softmax,讀取目標 token 的概率,然后在查找表中查得 ?ln (p)。8 個位置(每個序列位置一個)的結(jié)果累加到一個 32 位寄存器對中(因為 8 個 Q12 值的和可能超過 16 位),再通過「ASHC #-3」除以 8。Q12 精度(1/4096 ≈ 0.0002)可以提供四位小數(shù),足以用于監(jiān)控收斂過程。

查找表

ATTN/11 使用兩個查找表。第一個將每個索引映射為 Q8 表示的 exp (?i/32),在 softmax 中用一條「MOV」指令替代指數(shù)計算。另一個表主要用于便利計算,將每個值映射為 Q12 表示的 ?ln (x/256),每 50 步用于計算交叉熵損失,以監(jiān)控模型收斂情況。



兩個查找表均通過 Sheaf 腳本離線生成,并以 .WORD 常量的形式存儲在源代碼中。

交叉熵梯度

反向傳播利用了 softmax 與交叉熵組合的一個經(jīng)典性質(zhì):logits 的梯度可以簡化為



從而在訓練過程中完全避免了對數(shù)運算的開銷。該結(jié)果最初以 Q8 表示,隨后左移 7 位轉(zhuǎn)換為 Q15,這是整個反向傳播過程中使用的數(shù)值格式。同一個 SFTMX 例程同時用于前向與反向計算,無需單獨實現(xiàn)反向傳播版本。

最后補充一點:在這些算法的開發(fā)過程中,開發(fā)者僅將 AI 工具作為輔助使用,而所有的設計決策、縮放策略,以及數(shù)值驗證,均是在硬件上由人工完成的。

內(nèi)存布局

ATTN/11 總共占用 19.2 KB 內(nèi)存。下表展示了其內(nèi)存分布情況,整理自 MACRO-11 匯編器的輸出列表:



這 1216 個參數(shù)由于計算需要被復制了三份:Q16 累加器(4.8 KB)、用于前向計算的 Q8(2.4 KB),以及用于梯度的 Q15(2.4 KB)。僅模型本身就占用了 9.6 KB,是整體內(nèi)存使用中占比最大的部分。

構(gòu)建

構(gòu)建所需的兩個條件是:MACRO11 匯編器,以及用于將目標代碼轉(zhuǎn)換為可加載二進制文件的 obj2bin 工具。



運行

運行,需要具備以下條件之一:

  • 一臺真實的 PDP-11,且其 CPU 支持 EIS 指令,并配備 32KB 的核心內(nèi)存或 MOS 內(nèi)存;
  • 或使用 ll-34:這是我設計的一款電路級、微周期精確的 PDP-11/34 模擬器,可作為真實硬件的數(shù)字復刻。

ll-34 幾乎可以視作擁有一臺真正的 11/34。啟動 ATTN/11 的方式如下:



或者,如果只是想快速體驗,可以使用這里提供的 WebAssembly 版本:

  • https://dbrll.github.io/ll-34/。

SIMH 也可以使用,但它模擬的是 PDP-11 的高層行為(而非電路級),并以宿主機 CPU 的速度運行。雖然可以通過人為方式降低速度,但其時序并非周期級精確,因此不太適合用于性能調(diào)優(yōu)或還原真實體驗。

大家詳細了解該項目后有何感想,可以在評論區(qū)留言交流!

https://github.com/dbrll/ATTN-11?tab=readme-ov-file#attn11---paper-tape-is-all-you-need

https://news.ycombinator.com/item?id=47518568

特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關推薦
熱點推薦
被封禁賬號僅2月,coco再次曝出猛料,這次謝賢的體面徹底被撕

被封禁賬號僅2月,coco再次曝出猛料,這次謝賢的體面徹底被撕

橙星文娛
2026-04-15 11:11:07
上海32歲女子離婚2年求復婚,兒子一句傳話讓她瞬間崩潰痛哭

上海32歲女子離婚2年求復婚,兒子一句傳話讓她瞬間崩潰痛哭

搗蛋窩
2026-04-16 15:54:37
逃了?匈牙利外長西雅爾多神秘失蹤,已攜帶涉俄密件前往莫斯科?

逃了?匈牙利外長西雅爾多神秘失蹤,已攜帶涉俄密件前往莫斯科?

小蔣愛嘮嗑
2026-04-16 07:58:19
國民黨的創(chuàng)始人——不是孫中山,而是宋教仁,宋教仁是誰?

國民黨的創(chuàng)始人——不是孫中山,而是宋教仁,宋教仁是誰?

小莜讀史
2026-04-14 19:44:08
詳解畢福劍事件始未,世間再無“畢姥爺”!

詳解畢福劍事件始未,世間再無“畢姥爺”!

好運來好運
2024-07-30 06:39:24
你最接近生理極限的一次經(jīng)歷是什么?網(wǎng)友分享讓人目瞪口呆!

你最接近生理極限的一次經(jīng)歷是什么?網(wǎng)友分享讓人目瞪口呆!

夜深愛雜談
2026-04-09 19:39:13
2026 年最穩(wěn)的 5 個 “鐵飯碗” 排名:醫(yī)生排不上,第一竟然是它

2026 年最穩(wěn)的 5 個 “鐵飯碗” 排名:醫(yī)生排不上,第一竟然是它

細說職場
2026-04-13 11:14:47
廣州增城一小區(qū)發(fā)生電梯墜梯, 從15層墜至負2層,一業(yè)主受傷!不少業(yè)主曾多次反映困梯、墜梯問題,但一直沒有得到有效解決

廣州增城一小區(qū)發(fā)生電梯墜梯, 從15層墜至負2層,一業(yè)主受傷!不少業(yè)主曾多次反映困梯、墜梯問題,但一直沒有得到有效解決

大風新聞
2026-04-15 22:16:05
文瑾瑩鬼門關前走一趟!高EQ:身體變大,心也寬了 9年前險截肢

文瑾瑩鬼門關前走一趟!高EQ:身體變大,心也寬了 9年前險截肢

ETtoday星光云
2026-04-16 16:20:10
又一艘現(xiàn)代級改裝完畢官宣亮相,改裝的更徹底,絕非大號的054A

又一艘現(xiàn)代級改裝完畢官宣亮相,改裝的更徹底,絕非大號的054A

愛吃醋的貓咪
2026-04-16 20:49:29
喲!兩位現(xiàn)役國手合砍5分,這水平提出沖冠?球迷:最多一輪游

喲!兩位現(xiàn)役國手合砍5分,這水平提出沖冠?球迷:最多一輪游

南海浪花
2026-04-16 09:07:21
五一不要隨便走,3個好消息,2個壞消息,關系到每一個人!

五一不要隨便走,3個好消息,2個壞消息,關系到每一個人!

小談食刻美食
2026-04-16 07:31:22
姚晨崩塌,李大嘴姜超說,《武林外傳》里最能裝的,其實是姚晨

姚晨崩塌,李大嘴姜超說,《武林外傳》里最能裝的,其實是姚晨

西樓知趣雜談
2026-04-15 18:19:25
15歲就成父親,為養(yǎng)家闖蕩NBA,47順位逆襲成全明星

15歲就成父親,為養(yǎng)家闖蕩NBA,47順位逆襲成全明星

體壇熱評
2026-04-16 14:38:52
孫儷在上海花展被人拍了,就一張側(cè)臉,沒開美顏,也沒找角度

孫儷在上海花展被人拍了,就一張側(cè)臉,沒開美顏,也沒找角度

去山野間追風
2026-04-15 12:19:04
日本派兵開始搞大事,人民日報向全球通告日本罪行,北約30國站臺

日本派兵開始搞大事,人民日報向全球通告日本罪行,北約30國站臺

傲傲講歷史
2026-04-13 23:21:05
法媒感嘆:你封我,我就自己造,整個中國都在以這樣的精神前行

法媒感嘆:你封我,我就自己造,整個中國都在以這樣的精神前行

夏末的晨溪
2026-04-15 04:31:20
直到許家印當庭認罪悔罪,才發(fā)現(xiàn),原來曹德旺早就猜中了他的結(jié)局

直到許家印當庭認罪悔罪,才發(fā)現(xiàn),原來曹德旺早就猜中了他的結(jié)局

以茶帶書
2026-04-15 23:00:50
上海一民營醫(yī)院騙取醫(yī)保基金300多萬,32人被抓

上海一民營醫(yī)院騙取醫(yī)保基金300多萬,32人被抓

上觀新聞
2026-04-16 13:14:05
阿媒列馬斯切拉諾辭職原因:不滿體育總監(jiān),不贊成德保羅加盟

阿媒列馬斯切拉諾辭職原因:不滿體育總監(jiān),不贊成德保羅加盟

懂球帝
2026-04-16 10:35:14
2026-04-17 07:15:00
機器之心Pro incentive-icons
機器之心Pro
專業(yè)的人工智能媒體
12780文章數(shù) 142631關注度
往期回顧 全部

科技要聞

趙明:智駕之戰(zhàn),看誰在大模型上更高效

頭條要聞

特朗普:伊朗已同意幾乎所有要求

頭條要聞

特朗普:伊朗已同意幾乎所有要求

體育要聞

皇馬拜仁踢出名局,但最搶鏡的還是他

娛樂要聞

絲芭傳媒創(chuàng)始人王子杰去世,享年63歲

財經(jīng)要聞

海爾與醫(yī)美女王互撕 換血抗衰誰的生意?

汽車要聞

空間大五個乘客都滿意?體驗嵐圖泰山X8

態(tài)度原創(chuàng)

本地
家居
親子
旅游
軍事航空

本地新聞

12噸巧克力有難,全網(wǎng)化身超級偵探添亂

家居要聞

智能舒適 簡約風尚

親子要聞

兒子認字還可以吧? 董路的微博視頻

旅游要聞

社評:讀懂“China Travel”持續(xù)圈粉的邏輯

軍事要聞

封鎖霍爾木茲海峽后 美釋放雙重信號

無障礙瀏覽 進入關懷版