自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它

發(fā)布于 2024-6-4 11:30
瀏覽
0收藏

一般而言,訓練神經網絡耗費的計算量越大,其性能就越好。在擴大計算規(guī)模時,必須要做個決定:是增多模型參數量還是提升數據集大小 —— 必須在固定的計算預算下權衡此兩項因素。


Scaling law 告訴我們:只要能適當地分配參數和數據,就能在固定計算預算下實現性能最大化。之前已有不少研究探索過神經語言模型的 Scaling law,而這些研究通常得出的結論是參數和訓練 token 數應當一比一地擴展。


但是,之前的語言模型 Scaling law 研究都是基于在散亂的網絡文本上訓練的 Transformer 得到的。這是一種非常特定的數據分布,因此我們自然會問:基于這樣的網絡文本數據集得到的 Scaling law 是否可以泛化到其它分布?


此外,人們普遍認為,訓練數據混合的秘訣在于能讓前沿探索的產業(yè)界實驗室能持續(xù)產出當前最佳的 LLM??紤]到提升數據質量能顯著提升語言模型的性能,而強化學習的 Scaling law 也會隨博弈難度而縮放,也許我們可以假設:當前的語言模型 Scaling law(即 Chinchilla)只是針對網絡文本數據的具體案例,其背后還有一個基于訓練數據屬性的更廣義的 Scaling law。


那么,神經 Scaling law 對訓練用的 token 序列數據集的哪些性質敏感呢?換句話說,如果我們想要準確預測如何以最佳方式為訓練過程分配計算量,我們該觀測數據的哪些屬性?另外,Scaling law 的數據依賴性質僅僅是個理論問題,還是說對真實世界數據集也很重要?


為了探究這些問題,AI 數據公司 Reworkd 的研究者 Rohan Pandey 做了一番調查,得到了這些問題的答案;另外他還提出了一種壓縮算法 gzip,可預測數據復雜性對擴展性質的影響。


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


  • 論文標題:gzip Predicts Data-dependent Scaling Laws
  • 論文鏈接:https://arxiv.org/pdf/2405.16684


他的研究方法是:在可以直觀控制復雜度的文本數據設置下,以信息論方法理解 Scaling law 的數據依賴性的原因。


他最終找到的設置名為概率式上下文無關語法(PCFG,最早由喬姆斯基于 1956 年提出)。該設置相對自然(可以建模自然語言、代碼等),句法復雜度可控,遵循一些已被很好理解的信息論原理。


實驗中,通過調整 PCFG 的句法性質,他生成了 6 個具有不同復雜度的數據集。對于每個數據集,他又訓練了 6 個不同大小的語言模型(參數量從 4.4M 到 1.4B),并記錄了這些語言模型在 6 種不同訓練步數(100K 到 100M token)下的結果。然后,他為每個數據集都擬合了一個 Scaling law,發(fā)現 Scaling law 的參數會隨句法復雜度而有意義地變化。遵循之前有關形式語法的熵的研究,對于復雜度度量,他使用的是數據集中每個 token 序列的可壓縮率(compressibility)中值,這能通過 gzip 輕松計算出來。


結果發(fā)現,隨著訓練數據的可壓縮率降低(更加復雜),Scaling law 的計算最優(yōu)邊界也會逐漸從參數量偏向數據大小。然后,他測量了真實世界的代碼和自然語言數據集的可壓縮率,結果發(fā)現前者的可壓縮率更大,因此可預測其服從不同的 Scaling law。


通過 PCFG 的句法性質調節(jié)數據復雜度


概率式上下文無關語法(PCFG)是計算語言學的一種基礎工具,可用于建模自然語言的句法。PCFG 是對標準的上下文無關語法(CFG)的擴展,即在生成規(guī)則中關聯了概率,從而能以一種可量化的方式表征語言的模糊性和可變性。這些語法會生成樹,其中每個節(jié)點都表示一個句法類別,每條邊則表示用于生成句子的生成規(guī)則。在根據 PCFG 生成句子時,會以概率方式采樣應用生成規(guī)則的序列,直到該樹的所有葉節(jié)點都是端點(實際的詞匯 token)。


我們可以控制 PCFG 的句法性質,以自然方式調節(jié)文本數據集的復雜度。具體來說,PCFG 創(chuàng)建函數可接收的參數包括:端點的數量、非端點的數據、生成規(guī)則右側的最大長度、任何非端點允許的生成規(guī)則的最大數量(如果這個值為 1,則給定的非端點將始終得到同樣的右側)。直觀而言,以上每個值的增長都會導致句法復雜度增大。


為了基于以上參數創(chuàng)建 PCFG,對于每個端點,都隨機選取其生成數量(RHS 選項)、這些生成的每個長度,通過從端點和非端點隨機采樣來實例化生成規(guī)則,并為其分配一個概率(根據非端點的總 RHS 選項而進行了歸一化)。然后,收集所有為全部非端點生成的生成規(guī)則,并使用基于 NLTK 構建的 PCFG 軟件包實例化一個語法。


再使用該語法(在給定約束下隨機創(chuàng)建的)來概率式地采樣句子,以構建 token 序列數據集。為了后面更容易比較在不同語法(生成不同平均長度的句子)上的訓練情況,他決定將句子采樣到同等 token 數量的文檔中。持續(xù)基于語法采樣句子,直到填滿上下文長度,如有溢出,則直接截斷句子。


句子由僅為整數的端點構成,因此可以被視為語言模型的 token ID;再使用未被使用的整數 0(可有效對應于自然語言中的句號)將句子連接起來。澄清一下,這里不是生成「看起來」像自然語言的字符串再進行 token 化 ——PCFG 是直接生成 token ID 本身的序列?,F在,可以根據 6 組初始語法約束生成 6 個有不同復雜度的 token 序列數據集了。


用 gzip 可壓縮率度量句法復雜度


為了估計生成數據集以及真實數據集的復雜度,Rohan Pandey 選擇使用一種壓縮算法 gzip。


gzip 的一個優(yōu)點是已有很好的理論研究基礎,它們表明:可壓縮率(compressibility)與熵成反比,而熵與句法復雜度成正比。具體來說,針對數據集中 1000 個 token 構成的每個 token 序列,使用 gzip 并計算壓縮后數據與原始數據的大小(字節(jié)數)之比。


然后,計算可壓縮率的中值和標準差,確認有更高句法復雜度的語法會得到更難壓縮的數據集。


表 1 列出了每個語法的句法參數和測得的壓縮率。


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


可以觀察到,隨著非端點(語法類別)、端點(token)、右側選項和右側長度的增長,gzip 壓縮率也會增長,即變得更難壓縮。


圖 1 繪出了這些數據集以及自然語言和代碼數據的情況。


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


可以看到,在復雜度方面,某些 PCFG 數據集與代碼數據相近(易于壓縮的部分),而另一些則與自然語言相近。


Scaling law 對數據復雜度敏感嗎?


為了確定數據集的 Scaling law,該研究者在不同大小的數據子集(100K、1M、5M、20M、50M、100M token)上訓練了幾個不同大?。▍盗繛?4.2M、8.8M、20.3M、59.0M、275.3M、1.4B)的模型,表 6 給出了其架構詳情;然后他在所得損失結果上進行冪律擬合。大多數實驗都是在 4 臺有 80 GB VRAM 的英偉達 A100 上完成的,使用了 PyTorch FSDP。


如圖 2 所示,如果一個數據集更容易壓縮(可壓縮率越低),模型的收斂速度就越快。這符合我們的直觀認識。


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


盡管這表明我們需要更多計算量去建模更復雜的數據集,但我們還是需要更多證據才能確定計算最優(yōu)邊界是否會直接根據數據復雜度而變化。為了確立 Scaling law 對數據復雜度的非平凡的敏感性,需要計算每個數據集的 Scaling law 并調查其擬合參數。


根據 gzip 可壓縮率計算數據敏感的 Scaling law


Hoffmann et al. 在 2022 年提出的 Scaling law 函數形式是將訓練損失作為模型和數據大小的函數:


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


其中 N 是模型的參數量,D 是訓練數據集的 token 數量。他們宣稱 E 是「自然文本的熵」且 Scaling law「與數據集無關」。但是,當 Rohan Pandey 在 PCFG 數據集上擬合訓練結果與該函數時,卻發(fā)現每個數據集的 Scaling law 大不相同,見表 2。


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


該 Scaling law 可為參數量得到一個計算最優(yōu)邊界(由 Kaplan et al. [2020] 和 Hoffmann et al. [2022])推導得出,可簡化為:


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


其中 C 是計算預算,單位 FLOPs。


圖 3 繪出了 Chinchilla 的計算最優(yōu)邊界以及每個 PCFG 數據集擬合得到的 Scaling law。


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


可以看到,隨著數據越來越難壓縮,擬合得到的 Scaling law 的邊界逐漸變得偏向于數據,在 0.23 < gzip 可壓縮率 < 0.45 區(qū)間中某個點時越過 Chinchilla 的一比一邊界。


為了根據數據集的可壓縮率預測 Scaling law 參數,可在每個數據集的擬合 Scaling law 參數上進行簡單的線性回歸擬合。之前我們提到,針對數據集 D,計算可壓縮率 H 的方法是:先計算每個元素 d 壓縮后比特量與原始比特量的比值,然后再計算所有元素的平均值。


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


一旦從 H 擬合出預測每個參數(E, A, B, α, β)的線,就可以將每個參數重新定義成可壓縮率的一個函數:


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


其中 m_x 和 n_x 是擬合后線性回歸的參數。


表 3 給出了這些擬合后的值(以及回歸的 p 值),圖 4 則是這些線性回歸的可視化結果。


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


它們幾乎都是單調遞減的,只是速率不同,而在 H 約 0.27 的位置,α 和 β 相交。需要指出,E(原本設定為常數的「自然語言的熵」)是唯一一個會隨 H 增大的參數(但不明顯)。


現在就可以將 (1) 式重新參數化為可壓縮率 H 的函數:


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


但是,由于這里的實驗規(guī)模相當小,并且主要集中于 PCFG 數據集,因此 Pandey 又對該函數進行了擴展 —— 調整 Chinchilla 后得到了數據依賴型的 Scaling law:


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


其中 ε 是對訓練數據的 gzip 壓縮率的調整權重,加 ' 的參數是 Chinchilla 常量。


將句法參數作為可壓縮率的一個混雜變量而消除掉


上面的實驗并沒有解決這一可能性:這個可壓縮率度量混雜了某個底層的句法屬性(如詞匯庫大?。?。為了解決這一問題,圖 5 給出了另外的結果。


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


可以看到,當維持詞匯庫大小穩(wěn)定不變并改變其它句法性質(表 4)時,gzip 可壓縮率依然可以預測 Scaling law 的參數變化情況(相關性甚至強于增加詞匯量的設置)。


圖 6 則是實證中找到的反例,這表明當句法性質變化范圍很大(表 5)但這些數據集的最終 gzip 可壓縮率一樣時,Scaling law 參數并不會有顯著變化。


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


不同數據集有不同的Scaling law?而你可用一個壓縮算法來預測它-AI.x社區(qū)


盡管在這個同等詞匯案例中并未觀察到圖 4 中那樣的相交行為,但 α 的斜率依然比 β 陡(A 也比 B 陡),這說明隨著 gzip 可壓縮率增大,有同樣的偏向數據的現象。


因此,可以說這些結果表明:Scaling law 依賴于訓練數據,而 gzip 可壓縮率可以很好地預測數據復雜度對擴展性質的影響。


本文轉自 機器之心 ,作者:機器之心


原文鏈接:??https://mp.weixin.qq.com/s/sNQIe_jE30lciwP0uRhLEg??

收藏
回復
舉報
回復
相關推薦