在大模型內卷的同時,Transformer的地位也接連受到挑戰。
近日,RWKV發布了Eagle 7B模型,基於最新的RWKV-v5架構。
Eagle 7B在多語言基準測試中脫穎而出,在英語測試中與頂尖模型不相上下。
同時,Eagle 7B用的是RNN架構,相較於同尺寸的Transformer模型,推理成本降低了10-100倍以上,可以說是世界上最環保的7B模型。
由於RWKV-v5的論文可能要下個月才能發布,我們先提供RWKV的論文,這是第一個將參數擴展到數百億的非Transformer架構。
圖片
論文網址:https://arxiv.org/pdf/2305.13048.pdf
#EMNLP 2023錄用了這篇工作,作者來自世界各地的頂尖大學、研究機構和科技公司。
下面是Eagle 7B的官圖,表示這隻老鷹正在飛躍變形金剛。
圖片
Eagle 7B使用來自100多種語言的,1.1T(兆)個Token的訓練數據,在下圖的多語言基準測試中,Eagle 7B平均成績位居第一。
基準測試包括xLAMBDA、xStoryCloze、xWinograd和xCopa,涵蓋了23種語言,以及各自語言的常識推理。
Eagle 7B拿到了其中三項的第一,儘管有一項沒打過Mistral-7B,屈居第二,但對手使用的訓練資料要遠高於Eagle。
圖片
下圖的英文測驗包含了12個獨立的基準、常識推理和世界知識。
在英文表現測試中,Eagle 7B的程度接近Falcon(1.5T)、LLaMA2(2T)、Mistral(>2T),與同樣使用了1T左右訓練資料的MPT-7B不相上下。
圖片
並且,在兩種測試中,新的v5架構相比於之前的v4,有了巨大的整體飛躍。
Eagle 7B目前由Linux基金會託管,以Apache 2.0許可證授權,可以不受限制地用於個人或商業用途。
前面說了,Eagle 7B的訓練資料來自100多種語言,而上面採用的4項多語言基準測試只包括了23種語言。
圖片
雖然取得了第一名的成績,但總的來說,Eagle 7B是吃虧的,畢竟,基準測試無法直接評估模型在其他70多種語言中的表現。
額外的訓練代價並不能幫助自己刷榜,如果集中在英語,可能會獲得比現在更好的成績。
——那麼,RWKV為什麼要這麼做呢?官方對此表示:
Building inclusive AI for everyone in this world —— not just the English
##在對於RWKV模型的眾多反饋中,最常見的是:
多語言方法損害了模型的英語評估分數,並減緩了線性Transformer的發展;
讓多語言模型與純英語模型,比較多語言表現是不公平的
官方表示,「在大多數情況下,我們同意這些意見,」 #
「但我們沒有計劃改變這一點,因為我們正在為世界建立人工智慧——這不僅僅是一個英語世界。」
##圖片
2023年,世界上只有17%的人口會說英語(大約13億人),但是,透過支援世界上排名前25位的語言,模型可以涵蓋大約40億人,即世界人口總數的50%。
團隊希望未來的人工智慧可以為每個人都提供幫助,例如讓模型可以在低端硬體上以低廉的價格運行,例如支援更多的語言。
團隊將在之後逐漸擴大多語言資料集,以支援更廣泛的語言,並慢慢將覆蓋範圍擴大到世界上100%的地區,—確保沒有語言被遺漏。
在模型的訓練過程中,有一個值得注意的現象:
#隨著訓練資料規模不斷增加,模型的效能逐漸進步,當訓練資料達到300B左右時,模型顯示出與pythia-6.9b 相似的效能,而後者的訓練資料量為300B。
圖片
這個現象與先前在RWKV-v4架構上進行的一項實驗相同,--也就是說,在訓練資料規模相同的情況下,像RWKV這種線性Transformer的效能會和Transformer差不多。
那麼我們不禁要問,如果確實如此,那麼是不是相比於確切的架構,資料反而對模型的效能提升更加重要?
圖片
我們知道,Transformer類別的模型,計算和儲存代價是平方層級的,而在上圖中RWKV架構的運算成本只是隨著Token數線性成長。
也許我們應該尋求更有效率、更可擴展的架構,以提高可訪問性,降低每個人的人工智慧成本,並減少對環境的影響。
RWKV架構是具有GPT等級LLM效能的RNN,同時又可以像Transformer一樣並行化訓練。
RWKV結合了RNN和Transformer的優點——出色的性能、快速推理、快速訓練、節省VRAM、「無限」的上下文長度和免費的句子嵌入,RWKV並不使用注意力機制。
下圖展示了RWKV與Transformer派模型在計算成本上的比較:
圖片
##為了解決Transformer的時間和空間複雜度問題,研究人員提出了多種架構:
圖片
#RWKV架構由一系列堆疊的殘差塊組成,每個殘差塊由一個具有循環結構的時間混合和一個通道混合子塊組成下圖中左邊為RWKV塊元素,右邊為RWKV殘差塊,以及用於語言建模的最終頭部。
圖片
遞迴可以表述為目前輸入和前一個時間步的輸入之間的線性內插(如下圖的對角線所示),可以針對輸入嵌入的每個線性投影獨立調整。這裡也引入了一個單獨處理目前Token的向量,以補償潛在的退化。
圖片 RWKV可以在我們所說的時間並行模式下有效地並行化(矩陣乘法)。 在循環網路中,通常使用前一時刻的輸出作為當下時刻的輸入。這在語言模型的自回歸解碼推理中尤其明顯,它要求在輸入下一步之前計算每個令牌,從而使RWKV能夠利用其類似RNN的結構,稱為時間順序模式。 在這種情況下,RWKV可以方便地遞歸表述,以便在推理過程中進行解碼,它利用了每個輸出令牌僅依賴最新狀態的優勢,狀態的大小是恆定的,而與序列長度無關。 然後充當RNN解碼器,相對於序列長度產生恆定的速度和記憶體佔用,從而能夠更有效地處理較長的序列。 相比之下,自註意力的KV快取相對於序列長度不斷增長,從而導致效率下降,並隨著序列的延長而增加記憶體佔用和時間。 參考資料:
以上是RNN模型挑戰Transformer霸權! 1%成本性能比肩Mistral-7B,支援100+種語言全球最多的詳細內容。更多資訊請關注PHP中文網其他相關文章!