下午偶然翻到篇Google的論文.
大意是能對LLM直接更新某些參數(shù)來達(dá)到控制輸出了.
這個放開了想,大致就相當(dāng)于能定位到某些功能所實際激活/需要的部分.
醫(yī)學(xué)上的等價理解就是知道腦部的特定區(qū)域的作用影響了.
工程上來說,一旦變得實際可行就有可能大規(guī)模地減少參數(shù)和算力需求.
從這點(diǎn)看,還是蠻promising的.
順著一些引用往前翻是這篇論文的一個基石.
談LLM emerging能力的.
理論框架是用來解釋LLM為什么能具有context這個東西.
也就是說,比如給定一個prompt/問題.
形如問LLM需要的flops以及電量關(guān)系,然后project下需求這種問題.
context在這里的意思就是,LLM不單是能夠簡單的predicate和填充下一次詞進(jìn)行擴(kuò)展,還能真大圍繞著這個主題不斷迭代計算下去.
所以怎么能夠解釋context的產(chǎn)生/來龍去脈/成因/作用方式,某種程度上是相當(dāng)有意義的.
這個引用propose的解釋框架是存在某種context block.
也就是某些比較關(guān)鍵的參數(shù)部分.
context的在這里的作用方式是對上一層的input做一個簡單的線性shift,然后project到下一層.
intuition地理解就是類似先cluster到某個當(dāng)前維度集合,然后再統(tǒng)一project到下一個dimension space.
這樣一層層嵌套之后,形式上就類似于做了一個類似決策樹的routing.
而每一層的分支理念上就類似于一個context space.
所以后面的那篇就基于這個算是做了某種程度的驗證和控制實驗.
從結(jié)論上來說,貌似是對的.
當(dāng)然,實際對不對也沒去看就是了.
不過如果假設(shè)這個是正確的話,這里其實還有個比較有趣的implication.
那就是既然context的演變是某種簡單的cascading的線性shift疊加形成的.
那么理論上來說,層數(shù)或者說參數(shù)量是可以大幅度或者至少相當(dāng)程度上減少的.
因為這些計算形式上是一個線性的關(guān)系.
也就是因為著可能可以以某種形式合并.
這樣的話,之前DNN時代關(guān)于deep還是wide的爭論可能又要拿出來再捋捋了.
湊巧的是剛好這時候看到另一篇談high dimension calibration的.
初始的出發(fā)點(diǎn)看著也是想以某種方式擬合/裁剪模型,以實現(xiàn)較小計算代價的同等能力.
基于這個衍生的另一篇論文是關(guān)于這個方式的理論上下限的.
然后得出的結(jié)論是某層參數(shù)的增加在跟層數(shù)相關(guān)的一個系數(shù)范圍內(nèi),模型的能力是可以保持不變的.
這個翻譯一下其實就是前面說的,在給定條件下,存在增加每層參數(shù),然后減少層數(shù)的方式,保持模型的表達(dá)能力.
這個在當(dāng)前transformer的框架下,減少一層就意味著減少大量qkv,從而減少大量的算力需求.
再有一篇也是可能類似結(jié)論的.
談back propagation的,在比較宏觀的視角看待forward和backward pass在training過程中,對convergence的影響.
結(jié)論看著是forward pass在某種情況下,對最終stationary的影響并不直接.
主要還是backward pass的貢獻(xiàn).
這個初看起來有點(diǎn)廢話的感覺,畢竟擬合本身靠的就是backward的gradient decent.
但是它嘗試用這個來解釋實踐中加normalized layer的必要性以防止層數(shù)過身深導(dǎo)致的難收斂問題.
這個倒某種形式上跟前面shift的解釋對得上了.
因為normalize形式上是把值約束在某個特定范圍內(nèi).
變相地也就構(gòu)成了某種cluster作用,使得后一層所需要需要區(qū)別開的dimension space的project function數(shù)值上可能不需要變得太過于復(fù)雜,從而影響收斂的難度.
而且這個結(jié)論的另外一個啟發(fā)就是對于diffusion model.
因為diffusion本質(zhì)上來說就是類似純backward驅(qū)動的.
所以如果能從控制context block上發(fā)展出什么思路,再結(jié)合backward pass的這個結(jié)論,有可能在training的時候某種形式的去掉forward pass.
直接靠context block diffusion到最終結(jié)果.
而不是類似目前transformer的一個個吐的低效形式.
畢竟形式上來說,當(dāng)前的transformer就是個bubble sort...
不過就目前來說,可能更直接的驗證/摸索方式是構(gòu)造一些相對小的模型充當(dāng)這種理想化可控可預(yù)期的context blcok,然后搞另外一個專門模型去同步地聚合輸出生成最終結(jié)果.
當(dāng)然,MoE形式上就是前半部分.
只不過構(gòu)成上還是傳統(tǒng)的大力出奇跡,一步到位的訓(xùn)練.
從這種省事的方式回退到要某種形式的人工拆分結(jié)構(gòu)再訓(xùn)練,可能不管學(xué)術(shù)還是工業(yè)上來說,都有點(diǎn)難度.
畢竟按照目前的算力規(guī)模來說,也不是隨便給予嘗試的.
不過Google既然能發(fā)出來,那么根據(jù)經(jīng)驗,要么就是已經(jīng)驗證出了下一代/N代架構(gòu).
要么這個已經(jīng)是廢案了.
到底是哪個,可能看后面發(fā)布模型有沒什么特別的地方了.