新智元報道 【新智元導讀】艾倫人工智能研究所等5機構(gòu)最近公布了史上最全的開源模型「OLMo」,公開了模型的模型權(quán)重、完整訓練代碼、數(shù)據(jù)集和訓練過程,為以后開源社區(qū)的工作設立了新的標桿。多年來,語言模型一直是自然語言處理(NLP)技術(shù)的核心,考慮到模型背后的巨大商業(yè)價值,最大最先進的模型的技術(shù)細節(jié)都是不公開的。 現(xiàn)在,真·完全開源的大模型來了! 來自艾倫人工智能研究所、華盛頓大學、耶魯大學、紐約大學和卡內(nèi)基梅隆大學的研究人員,聯(lián)合發(fā)表了一項足以載入AI開源社區(qū)史冊的工作—— 他們幾乎將從零開始訓練一個大模型過程中的一切數(shù)據(jù)和資料都開源了! 適配:https://github.com/allenai/open-instruct 具體來說,艾倫人工智能研究所推出的這個開放大語言模型(Open Language Model,OLMo)實驗和訓練平臺,則提供了一個完全開源的大模型,以及所有和訓練開發(fā)這個模型有關(guān)的數(shù)據(jù)和技術(shù)細節(jié)—— 訓練和建模:它包括完整的模型權(quán)重、訓練代碼、訓練日志、消融研究、訓練指標和推理代碼。 預訓練語料:一個包含了高達3T token的預訓練開源語料庫,以及產(chǎn)生這些訓練數(shù)據(jù)的代碼。 模型參數(shù):OLMo框架提供了四個不同架構(gòu)、優(yōu)化器和訓練硬件體系下的7B大小的模型,以及一個1B大小的模型,所有模型都在至少2T token上進行了訓練。 同時,也提供了用于模型推理的代碼、訓練過程的各項指標以及訓練日志。 7B:OLMo 7B、OLMo 7B (not annealed)、OLMo 7B-2T、OLMo-7B-Twin-2T 評估工具:公開了開發(fā)過程中的評估工具套件,包括每個模型訓練過程中每1000 step中包含的超過500個的檢查點以及評估代碼。 所有數(shù)據(jù)都在apache 2.0下授權(quán)使用(免費商用)。 如此徹底的開源,似乎是給開源社區(qū)打了個樣——以后不像我這樣開源的,就別說自己是開源模型了。 性能評估 從核心的評估結(jié)果來看,OLMo-7B與同類開源模型相比略勝一籌。 在前9項評測中,OLMo-7B有8項排名前三,其中有2項超越了其他所有模型。 在很多生成任務或閱讀理解任務(例如truthfulQA)上,OLMo-7B都超過了Llama 2,但在一些熱門的問答任務(如MMLU或Big-bench Hard)上表現(xiàn)則要差一些。 前9個任務是研究人員對預訓練模型的內(nèi)部評估標準,而下面三個任務則是為了完善HuggingFace Open LLM排行榜而加入的 下圖展示了9個核心任務準確率的變化趨勢。 除了OBQA外,隨著OLMo-7B接受更多數(shù)據(jù)的訓練,幾乎所有任務的準確率都呈現(xiàn)上升趨勢。 與此同時,OLMo 1B與其同類模型的核心評估結(jié)果表明,OLMo與它們處于同一水平。 通過使用艾倫AI研究所的Paloma(一個基準測試)和可獲取的檢查點,研究人員分析了模型預測語言能力與模型規(guī)模因素(例如訓練的token數(shù)量)之間的關(guān)系。 可以看到,OLMo-7B在性能上與主流模型持平。其中,每字節(jié)比特數(shù)(Bits per Byte)越低越好。 通過這些分析,研究人員發(fā)現(xiàn)模型在處理不同數(shù)據(jù)源時的效率差異較大,這主要取決于模型訓練數(shù)據(jù)與評估數(shù)據(jù)的相似度。 特別地,OLMo-7B在主要基于Common Crawl的數(shù)據(jù)源上表現(xiàn)出色(比如C4)。 不過,在與網(wǎng)絡抓取文本關(guān)系不大的數(shù)據(jù)源上,如WikiText-103、M2D2 S2ORC和M2D2 Wikipedia,OLMo-7B與其他模型相比效率較低。 RedPajama的評估也體現(xiàn)了相似的趨勢,可能是因為它的7個領域中只有2個來源于Common Crawl,且Paloma對每個數(shù)據(jù)源中的各個領域給予了相同的權(quán)重。 鑒于像Wikipedia和arXiv論文這樣的精選數(shù)據(jù)源提供的異質(zhì)數(shù)據(jù)遠不如網(wǎng)絡抓取文本豐富,隨著預訓練數(shù)據(jù)集的不斷擴大,維持對這些語言分布的高效率會很更加困難。 OLMo架構(gòu) 在模型的架構(gòu)方面,團隊基于的是decoder-only的Transformer架構(gòu),并采用了PaLM和Llama使用的SwiGLU激活函數(shù),引入了旋轉(zhuǎn)位置嵌入技術(shù)(RoPE),并改進了GPT-NeoX-20B的基于字節(jié)對編碼(BPE)的分詞器,以減少模型輸出中的個人可識別信息。 此外,為了保證模型的穩(wěn)定性,研究人員沒有使用偏置項(這一點與PaLM的處理方式相同)。 如下表所示,研究人員已經(jīng)發(fā)布了1B和7B兩個版本,同時還計劃很快推出一個65B的版本。 下表詳細比較了7B架構(gòu)與這些其他模型在相似規(guī)模下的性能。 預訓練數(shù)據(jù)集:Dolma雖然研究人員在獲取模型參數(shù)方面取得了一定的進展,但開源社區(qū)目前預訓練數(shù)據(jù)集的開放程度還遠遠不夠。 之前的預訓練數(shù)據(jù)往往不會隨著模型的開源而公開(閉源模型就更不用說了)。 而且有關(guān)這些數(shù)據(jù)的說明文檔也常常缺乏足夠的細節(jié),但是這些細節(jié)對于想要復現(xiàn)研究或完全理解相關(guān)工作至關(guān)重要。 這一情況加大了語言模型研究的難度——比如,了解訓練數(shù)據(jù)如何影響模型能力和其局限性。 為了推動語言模型預訓練領域的開放研究,研究人員構(gòu)建并公開了預訓練數(shù)據(jù)集Dolma。 這是一個包含了從 7 種不同數(shù)據(jù)來源獲取的3萬億個token的多樣化、多源語料庫。 這些數(shù)據(jù)源一方面在大規(guī)模語言模型預訓練中常見,另一方面也能被普通大眾所接觸。 下表給出了來自各個數(shù)據(jù)源的數(shù)據(jù)量的概覽。 Dolma的構(gòu)建過程包括六個步驟:語言過濾、質(zhì)量過濾、內(nèi)容過濾、去重、多源混合和token化。 在整理和最終發(fā)布Dolma過程中,研究人員確保各數(shù)據(jù)源的文檔保持獨立。 他們還開源了一套高效的數(shù)據(jù)整理工具,這套工具能夠幫助進一步研究Dolma、復制成果,并簡化預訓練語料庫的整理工作。 此外,研究人員也開源了WIMBD工具,以助于數(shù)據(jù)集分析。 網(wǎng)絡數(shù)據(jù)處理流程 代碼處理流程 訓練OLMo 分布式訓練框架研究人員利用PyTorch的FSDP框架和ZeRO優(yōu)化器策略來訓練模型。這種方法通過將模型的權(quán)重和它們對應的優(yōu)化器狀態(tài)在多個GPU中進行分割,從而有效減少了內(nèi)存的使用量。 在處理高達7B規(guī)模的模型時,這項技術(shù)使研究人員能夠在每個GPU上處理4096個token的微批大小,以實現(xiàn)更高效的訓練。 對于OLMo-1B和7B模型,研究人員固定使用大約4M token(2048個數(shù)據(jù)實例,每個實例包含2048個token的序列)的全局批大小。 而對于目前正在訓練中的OLMo-65B模型,研究人員采用了一個批大小預熱策略,起始于大約2M token(1024個數(shù)據(jù)實例),之后每增加100B token,批大小翻倍,直至最終達到大約16M token(8192個數(shù)據(jù)實例)的規(guī)模。 為了加快模型訓練的速度,研究人員采用了混合精度訓練的技術(shù),這一技術(shù)是通過FSDP的內(nèi)部配置和PyTorch的amp模塊來實現(xiàn)的。 這種方法特別設計,以確保一些關(guān)鍵的計算步驟(例如softmax函數(shù))始終以最高精度執(zhí)行,以保證訓練過程的穩(wěn)定性。 與此同時,其他大部分計算則使用一種稱為bfloat16的半精度格式,以減少內(nèi)存使用并提高計算效率。 在特定配置中,每個GPU上的模型權(quán)重和優(yōu)化器狀態(tài)都以最高精度保存。 只有在執(zhí)行模型的前向傳播和反向傳播,即計算模型的輸出和更新權(quán)重時,每個Transformer模塊內(nèi)的權(quán)重才會臨時轉(zhuǎn)換為bfloat16格式。 此外,各個GPU間同步梯度更新時,也會以最高精度進行,以確保訓練質(zhì)量。 優(yōu)化器研究人員采用了AdamW優(yōu)化器來調(diào)整模型參數(shù)。 無論模型規(guī)模大小如何,研究人員都會在訓練初期的5000步(大約處理21B個token)內(nèi)逐漸增加學習率,這一過程稱為學習率預熱。 預熱結(jié)束后,學習率將按線性規(guī)律逐漸減少,直到降至最高學習率的十分之一。 此外,研究人員還會對模型參數(shù)的梯度進行裁剪,確保其總的 L1 范數(shù)不會超過 1.0。 在下表中,研究人員將自己在7B模型規(guī)模下的優(yōu)化器配置與近期其他使用AdamW優(yōu)化器的大型語言模型進行了對比。 數(shù)據(jù)集研究人員利用開放數(shù)據(jù)集Dolma中的一個2T token的樣本,構(gòu)建了他們的訓練數(shù)據(jù)集。 研究人員將每篇文檔的token連接起來,每篇文檔的末尾都會加上一個特殊的 EOS token,接著將這些 token 分成每組 2048 個,形成訓練樣本。 這些訓練樣本在每次訓練時都會以同樣的方式進行隨機打亂。研究人員還提供了一些工具,使得任何人都可以復原每個訓練批次的具體數(shù)據(jù)順序和組成。 研究人員已經(jīng)發(fā)布的所有模型至少都經(jīng)過了一輪(2T token)的訓練。其中一些模型還進行了額外的訓練,即在數(shù)據(jù)上進行第二輪訓練,但采用了不同的隨機打亂順序。 根據(jù)之前的研究,這樣重復使用少量數(shù)據(jù)的影響是微乎其微的。 英偉達和AMD都要YES!為了確保代碼庫能夠同時在英偉達和AMD的GPU上都能高效運行,研究人員選擇了兩個不同的集群進行了模型訓練測試: 利用LUMI超級計算機,研究人員部署了最多256個節(jié)點,每個節(jié)點搭載了4張AMD MI250X GPU,每張GPU 擁有128GB內(nèi)存和800Gbps的數(shù)據(jù)傳輸速率。 通過MosaicML (Databricks) 的支持,研究人員使用了27個節(jié)點,每個節(jié)點配備了8張英偉達A100 GPU,每張GPU擁有40GB內(nèi)存和800Gbps的數(shù)據(jù)傳輸速率。 雖然研究人員為了提高訓練效率對批大小進行了微調(diào),但在完成2T token的評估后,兩個集群的性能幾乎沒有差異。 訓練能耗 總結(jié) 與以往大多數(shù)僅僅提供模型權(quán)重和推理代碼的模型不同,研究人員開源了OLMo的全部內(nèi)容,包括訓練數(shù)據(jù)、訓練和評估代碼,以及訓練日志、實驗結(jié)果、重要發(fā)現(xiàn)以及Weights & Biases的記錄等等。 此外,團隊正在研究如何通過指令優(yōu)化和不同類型的強化學習(RLHF)來改進OLMo。而這些微調(diào)代碼、數(shù)據(jù)和經(jīng)過微調(diào)后的模型也都會被開源。 研究人員致力于持續(xù)支持和發(fā)展OLMo及其框架,推動開放語言模型(LM)的發(fā)展,助力開放研究社區(qū)的發(fā)展。為此,研究人員計劃引入更多不同規(guī)模的模型、多種模態(tài)、數(shù)據(jù)集、安全措施和評估方法,豐富OLMo家族。 他們希望通過今后持續(xù)進行的徹底開源工作,增強開源研究社區(qū)的力量,并引發(fā)新一輪的創(chuàng)新浪潮。 團隊介紹 Yizhong Wang(王義中)Yizhong Wang是華盛頓大學Paul G. Allen計算機科學與工程學院的博士生,導師是Hannaneh Hajishirzi和Noah Smith。同時,也是艾倫人工智能研究所的兼職研究實習生。 此前,他曾在Meta AI、微軟研究院和百度NLP進行實習。此前,他在北京大學獲得了碩士學位,在上海交通大學獲得了學士學位。 他的研究方向是自然語言處理(Natural Language Processing)、機器學習(Machine Learning),以及大語言模型(LLM)。 - LLM的適應性:如何更有效地構(gòu)建和評估能夠跟隨指令的模型?在微調(diào)這些模型時,我們應該考慮哪些因素,它們又如何影響到模型的通用性?哪種類型的監(jiān)督方式既有效又能擴展? - LLM的持續(xù)學習:預訓練和微調(diào)之間的界限在哪里?有哪些架構(gòu)和學習策略能夠讓LLM在預訓練之后繼續(xù)進化?模型內(nèi)部已有的知識如何與新學的知識相互作用? - 大規(guī)模合成數(shù)據(jù)的應用:在生成模型迅速產(chǎn)生數(shù)據(jù)的今天,這些數(shù)據(jù)對我們的模型開發(fā)乃至整個互聯(lián)網(wǎng)和社會有何影響?我們?nèi)绾未_保能夠在大規(guī)模下生成多樣且高質(zhì)量的數(shù)據(jù)?我們能否區(qū)分這些數(shù)據(jù)與人類生成的數(shù)據(jù)? Yuling GuYuling Gu是艾倫人工智能研究所(AI2)Aristo團隊的一位研究員。 2020年,她在紐約大學(NYU)獲得學士學位。除了主修的計算機科學外,她還輔修了一個跨學科專業(yè)——語言與心智,這個專業(yè)結(jié)合了語言學、心理學和哲學。隨后,她在華盛頓大學(UW)獲得了碩士學位。 她對機器學習的技術(shù)和認知科學的理論的融合應用充滿了熱情。 |
|