賈佳亞團隊聯合MIT釋出超長文本擴充技術:兩行代碼解決大模型對話局限
文/騰訊科技 郭曉靜
騰訊科技訊 近日,香港中文大學賈佳亞團隊聯合MIT釋出了名為LongLoRA的技術:隻需兩行代碼、一台8卡A100機器,便可将7B模型的文本長度拓展到100k tokens,70B模型的文本長度拓展到32k tokens;同時,該研究團隊還釋出了首個擁有70B參數量的長文本對話大語言模型LongAlpaca。
這項新技術和和新模型一經釋出,便已登上各大開源網站熱榜:hugging face熱榜第一、paperwithcode熱度第一,Github全部python項目熱度第五、github stars一周内破千,Twitter上的相關技術文章浏覽量近18萬。

github stars 已達1.3k
Twitter上的相關技術文章浏覽量近18萬
中途迷失、模型偷懶、上下文越長大模型越笨......如果體驗過大語言模型産品,使用者多少會對文本輸入長度帶來的限制有所感觸,比如當想和大模型讨論一些稍長的内容,需要拆分輸入,而前面輸入的要點,很快就會被大模型忘記。
這是典型的大語言模型對話缺陷,就像先天有注意力缺陷的兒童,難以專注看完一本新書。而缺陷的關鍵,在于模型缺乏長文本處理能力。賈佳亞團隊釋出的新成果能在各大開源網站獲得如此高的關注度,原因就是突破了模型的長文本處理能力。
一、長文本處理不再是大語言模型盲區
LongLoRA的提出,讓全球大語言模型的對話缺陷第一次得到解決,自此,幾十頁的論文、幾百頁的報告、鴻篇巨制不再成為大模型盲區。
對此,有專業人士激動地表示,LongLoRA是大語言模型迷宮中的希望之燈,它代表着業界對長文本大語言模型的重新思考和關注,有效擴充了大語言模型的上下文視窗,允許模型考慮和處理較長的文本序列,是大語言模型的革新性發明。
除了技術革新外,大語言模型處理長文本問題的一大難點還在于缺少公開的長文本對話資料。
為此,研究團隊特意收集了9k條長文本問答語料對,包含針對名著、論文、深度報道甚至财務報表的各類問答。
光會回答長問題還不夠,該團隊又挑選了3k的短問答語料與9K的長問答語料混合訓練,讓長文本大模型同時具備短文本對話能力。這個完整的資料集被稱為LongAlpaca-12k,目前已經開源。
在LongAlpaca-12k資料集基礎上,研究團隊對不同參數大小7B、13B、70B進行了訓練和評測,開源模型包括LongAlpaca-7B, LongAlpaca-13B和LongAlpaca-70B。
二、盲選Demo,實測LongLoRA技術疊加12K問答語料的大模型LongAlpaca效果
①讓系統新讀一篇論文,并根據ICLR的審查指南,對其提出修改意見,進而提升該論文的接收率。
LongAlpaca的意見是:通過更精确地闡明新穎性,提供更嚴格和更有對比性的實驗結果(包括具體的資料集和名額)、更廣泛的應用和未來發展方向,重點呈現關鍵貢獻和影響,論文被接受的機會将得到提高。
現在,讓系統讀兩篇新的不同的論文,讓LongAlpaca概括ICLR和CVPR兩個會議之間的風格差別。LongAlpaca總結認為,CVPR論文傾向更具結構性和實驗性的風格,專注于實用性和技術性。而ICLR的論文風格更加靈活,側重關鍵的理論分析和數學推導,而非标準格式。
可以看出,經過訓練的LongAlpaca模型已經可以很輕松地接受新的長篇學術論文,在學術相關問題的回答上相當精準。
②測試LongAlpaca模型在閱讀和了解門檻比較高的經濟領域的解讀表現。
根據國際貨币基金組織從2012年到2023年的全球經濟展望的概述合集,對經濟形勢進行逐年總結以及對未來經濟趨勢進行預測。LongAlpaca告訴我們,2023年全球經濟形勢不明朗,跟2022年相比,增長預計放緩;未來幾年,全球經濟擴張速度偏溫和并将低于預期,而地緣政治緊張、金融市場波動等大的挑戰依然存在,需通過多邊合作和結構性改革小心應對。
③測試LongAlpaca還可以讀新的長篇小說的能力,下指令讓它讀完後對内容進行分析。
下面選取的對比模型是13B參數的LongAlpaca和Llama2,且看各自表現。
名著《西遊記》中,為什麼孫悟空在大鬧天宮時很厲害,但取經路上卻屢屢受挫?
LongAlpaca 給出了5點原因,大概可總結為 “孫悟空的不成熟、強大的對手、力量的限制、敵人的欺騙、最初 缺少同伴等因素導緻了他在旅途中的失敗。但随着時間推移,他獲 得了智慧、經驗和戰友,使他最終戰勝了最強大的敵人。”
而 Llama2 的回答較為簡單。“雖然他确實大鬧天宮,但說他代表着不敗的力量并不一定準确。事實上,他最終在西遊記中被強大的唐三藏打敗。”Llama2沒有給出正确答案,并且還提出需要更多的内容資訊。
這一次讓系統新讀一次《三體》,然後問第一部中,葉文潔為什麼要聯系外星人,而後期又為什麼後悔?
LongAlpaca認為,葉文潔最初接觸外星人是出于理想主義和複仇,但随着時間的推移,她對人類的看法發生了變化,意識到自己可能給全人類帶來的危險,她的悔恨與日俱增。回答得十厘清晰。
而Llama2的回答則是,“通過與外星人的互動,她希望能更深入地了解宇宙的本質,以及自己在宇宙中的位置。葉文潔逐漸意識到,外星人和他們的技術并不能解決她的問題。”回答籠統,之後開始對小說整體進行評論,答非所問。
從模型給出的答案可發現,一些模型如Llama2 [2] 可能在預訓練過程中見過相關小說,但如果在提問時進行僅根據小說題目進行短文本提問的話,回答并不理想。LongAlpaca改學術論文、點評全球經濟大勢和讀小說等長文本處理方面,略勝一籌。
三、LongLoRA技術如何突破長文本處理能力
原來大語言模型對長文本處理過程中,計算量的主要開銷集中在自注意力機制(self-attention),其開銷随着文本長度成平方次地增加。
針對這個問題,研究團隊提出LongLoRA技術,并用分組和偏移的方式來對全局自注意力機制進行模拟。
簡單來說,就是将長文本對應的tokens拆分成不同的組,在每組内部做自注意力計算,而分組的方式在不同注意力頭 (attention head) 上有所偏移。這樣的方式既可以大幅度節約計算量,又可以維持全局感受野的傳遞。
而這個實作方法也非常簡潔,僅兩行代碼即可完成。
LongLoRA還探索了低秩訓練的方式。原有的低秩訓練方式,如LoRA [5],無法在文本長度遷移上取得良好的效果。而LongLoRA在低秩訓練的基礎上,引入嵌入層 (Embedding layer和 Normalization layers) 進行微調,進而達到可以和全參數微調 (Full fine-tune) 逼近的效果。
進行不同長度文本擴充和訓練時,LongLoRA、LoRA和全參數微調不同技術的具體效果如何,可以參考三個次元表現:
-
1
在Perplexity-困惑度上,原有LoRA方法的性能在不斷惡化,而LongLoRA和全參數微調都能在各種文本長度下維持很好的效果;
-
2
在顯存消耗上,相比于全參數微調,LongLoRA和原有LoRA都有大幅度的節省。例如,對于8k長度的模型訓練,相比于全參數微調,LongLoRA将顯存消耗從46.3GB降低到25.6GB;
-
3
在訓練時間上,對于64k長度的模型訓練,相比于正常LoRA,LongLoRA将訓練時間從90~100小時左右降低到52.4小時,而全參數微調超過1000小時。
極簡的訓練方法、極少的計算資源和時間消耗,以及極佳的準确性,令LongLoRA大規模推廣成為可能。目前,相關技術與模型已全部開源,感興趣的使用者們可以自己部署感受。
代碼和Demo位址:https://github.com/dvlab-research/LongLoRA
論文位址:https://arxiv.org/pdf/2309.12307.pdf
參考文獻
[1] LLaMA team. Llama: Open and efficient foundation language models. Arxiv, 2302.13971, 2023a.
[2] Llama2 team. Llama 2: Open foundation and fine-tuned chat models. Arxiv, 2307.09288, 2023b.
[3] Shouyuan Chen, Sherman Wong, Liangjian Chen, and Yuandong Tian. Extending context window of large language models via positional interpolation. Arxiv, 2306.15595, 2023.
[4] Szymon Tworkowski, Konrad Staniszewski, Mikolaj Pacek, Yuhuai Wu, Henryk Michalewski, and Piotr Milos. Focused transformer: Contrastive training for context scaling. Arxiv, 2307.03170, 2023.
[5] Edward J. Hu, Yelong Shen, Phillip Wallis, Zeyuan Allen-Zhu, Yuanzhi Li, Shean Wang, Lu Wang, and Weizhu Chen. Lora: Low-rank adaptation of large language models. In ICLR, 2022.