iPhone可跑2B小鋼炮!GoogleGemma 2來襲
GoogleDeepMind的小模型,又上新了!
就在剛剛,GoogleDeepMind發佈Gemma 2 2B。
它是從Gemma 2 27B中蒸餾而來。
雖然它的參數隻有2.6B,但在LMSYS競技場上的得分,已經超越了GPT-3.5和Mixtral 8x7B!
在MMLU和MBPP基準測試中,它分別取得了56.1和36.6的優異成績;比起前代模型Gemma 1 2B,它的性能超過了10%。
小模型擊敗了大幾個數量級的大模型,再一次印證了最近業界非常看好的小模型方向。
Google在今天,一共公佈了Gemma 2家族的三個新成員:
-
Gemma 2 2B:輕量級2B模型,在性能和效率之間實現了最大的平衡
-
ShieldGemma:基於Gemma 2構建的安全內容分類器模型,用於過濾AI模型的輸入和輸出,確保用戶安全
-
Gemma Scope:一種可解釋性工具,提供對模型內部運行機制的無與倫比的洞察
6月,27B和9B Gemma 2模型誕生。
自發佈以來,27B模型迅速成為大模型排行榜上,排名前列的開源模型之一,甚至在實際對話中表現超過了參數數量大兩倍的流行模型。
Gemma 2 2B:即刻在設備上使用
輕量級小模型Gemma 2 2B,是從大模型中蒸餾而來,性能毫不遜色。
在大模型競技場LMSYS上,新模型取得令人印象深刻的1130分,與10倍參數的模型不相上下。
GPT-3.5-Turbo-0613得分為1117,Mixtral-8x7b得分為1114。
足見,Gemma 2 2B是最好的端側模型。
有網民在iPhone 15 Pro上,讓量化後的Gemma 2 2B在MLX Swift上運行,速度快到驚人。
具體來說,它能夠在各種終端設備,包括手機、筆記本,甚至是使用Vertex AI和Google Kubernetes Engine(GKE)強大的雲,皆能完成部署。
為了讓模型加速,它通過NVIDIA TensorRT-LLM完成了優化,在NVIDIA NIM平台也可使用。
優化後的模型適用於各種平台部署,包括數據中心、雲、本地工作站、PC 和邊緣設備。
它還可以支持RTX、RTX GPU、Jetson模塊,完成邊緣化AI部署。
此外,Gemma 2 2B無縫集成了Keras、JAX、Hugging Face、NVIDIA NeMo、Ollama、Gemma.cpp等,並很快將與MediaPipe集成,實現簡化開發。
當然,與Gemma 2一樣,2B模型也同樣可以用來研究和商用。
甚至,由於其參數量足夠下,它可以在Google Colab的免費T4 GPU層上運行,降低了開發門檻。
目前,每位開發者都可以從Kaggle、Hugging Face、Vertex AI Model Garden下載Gemma 2的模型權重,也可在Google AI Studio中試用其功能。
倉庫地址:https://huggingface.co/collections/google/gemma-2-2b-release-66a20f3796a2ff2a7c76f98f
ShieldGemma:最先進的安全分類器
正如其名,ShieldGemma是最先進的安全分類器,確保AI輸出內容具有吸引力、安全、包容,檢測和減少有害內容輸出。
ShieldGemma的設計專門針對四個關鍵的有害領域:
– 仇恨言論
– 騷擾內容
– 露骨內容
– 危險內容
這些開源分類器,是對Google現有的負責任AI工具包中安全分類器套件補充。
該工具包包括一種,基於有限數據點構建針對特定策略分類器的方法,以及通過API提供的現成Google Cloud分類器。
ShieldGemma基於Gemma 2構建,是行業領先的安全分類器。
它提供了各種模型參數規模,包括2B、9B、27B,都經過英偉達速度優化,在各種硬件中可以高效運行。
其中,2B非常適合在線分類任務,而9B和27B版本則為對延遲要求較低的離線應用提供更高性能。
Gemma Scope:通過開源稀疏自編碼器揭示AI決策過程
此次同時發佈的另一大亮點,就是開源稀疏自編碼器——Gemma Scope了。
語言模型的內部,究竟發生了什麼?長久以來,這個問題一直困擾著研究人員和開發者。
語言模型的內部運作方式往往是一個謎,即使對於訓練它們的研究人員,也是如此。
而Gemma Scope就彷彿一個強大的顯微鏡,通過稀疏自編碼器 (SAEs) 放大模型中的特定點,從而使模型的內部工作更易於解釋。
有了Gemma Scope以後,研究人員和開發者就獲得了前所未有的透明度,能夠深入瞭解Gemma 2模型的決策過程。
Gemma Scope是數百個適用於Gemma 2 9B和Gemma 2 2B的免費開放稀疏自動編碼器 (SAE) 的集合。
這些SAEs是專門設計的神經網絡,可以幫助我們解讀由Gemma 2處理的密集、複雜信息,將其擴展成更易於分析和理解的形式。
通過研究這些擴展視圖,研究人員就可以獲得寶貴的信息,瞭解Gemma 2如何識別模式、處理信息、做出預測。
有了Gemma Scope,AI社區就可以更容易地構建更易理解、負責任和可靠的AI系統了。
同時,GoogleDeepMind還放出了一份20頁的技術報告。
技術報告:https://storage.googleapis.com/gemma-scope/gemma-scope-report.pdf
總結來說, Gemma Scope有以下3個創新點——
-
開源SAEs:超過400個免費提供的SAEs,覆蓋Gemma 2 2B和9B的所有層
-
互動演示:在Neuronpedia上無需編寫代碼,即可探索SAE功能,並分析模型行為
-
易於使用的資源庫:提供與SAEs和Gemma 2交互的代碼和示例
解讀語言模型內部的運作機制
語言模型的可解釋性問題,為什麼這麼難?
這要從LLM的運行原理說起。
當你向LLM提出問題時,它會將你的文本輸入轉換為一系列「激活」。這些激活映射了你輸入的詞語之間的關係,幫助模型在不同詞語之間建立聯繫,據此生成答案。
在模型處理文本輸入的過程中,模型神經網絡中不同層的激活代表了多個逐步高級的概念,這些概念被稱為「特徵」。
例如,模型的早期層可能會學習到像佐敦打籃球這樣的事實,而後期層可能會識別出更複雜的概念,例如文本的真實性。
用稀疏自編碼器解讀模型激活的示例——模型是如何回憶「光之城是巴黎」這一事實的。可以看到與法語相關的概念存在,而無關的概念則不存在
然而,可解釋性研究人員卻一直面臨著一個關鍵問題:模型的激活,是許多不同特徵的混合物。
在研究的早期,研究人員希望神經網絡激活中的特徵能與單個神經元(即信息節點)對齊。
但不幸的是,在實踐中,神經元對許多無關特徵都很活躍。
這也就意味著,沒有什麼明顯的方法,能判斷出哪些特徵是激活的一部分。
而這,恰恰就是稀疏自編碼器的用武之地。
要知道,一個特定的激活只會是少數特徵的混合,儘管語言模型可能能夠檢測到數百萬甚至數十億個特徵(也就是說,模型是稀疏地使用特徵)。
例如,語言模型在回答關於愛恩斯坦的問題時會想到相對論,而在寫關於煎蛋捲時會想到雞蛋,但在寫煎蛋捲時,可能就不會想到相對論了。
稀疏自編碼器就是利用了這一事實,來發現一組潛在的特徵,並將每個激活分解為少數幾個特徵。
研究人員希望,稀疏自編碼器完成這項任務的最佳方式,就是找到語言模型實際使用的基本特徵。
重要的是,在這個過程中,研究人員並不會告訴稀疏自編碼器要尋找哪些特徵。
因此,他們就能發現此前未曾預料過的豐富結構。
然而,因為他們無法立即知道這些被發現特徵的確切含義,他們就會在稀疏自編碼器認為特徵「觸發」的文本示例中,尋找有意義的模式。
以下是一個示例,其中根據特徵觸發的強度,用藍色漸變高亮顯示了特徵觸發的 Token:
用稀疏自編碼器發現特徵激活的示例。每個氣泡代表一個 Token(單詞或詞片段),可變的藍色說明了這個特徵的存在強度。在這個例子中,該特徵顯然與成語有關
Gemma Scope有何獨特之處?
比起此前的稀疏自編碼器,Gemma Scope有許多獨特之處。
前者主要集中在研究小型模型的內部工作原理或大型模型的單層。
但如果要把可解釋性研究做得更深,就涉及到瞭解碼大型模型中的分層複雜算法。
這一次,GoogleDeepMind的研究者在Gemma 2 2B和9B的每一層和子層的輸出上,都訓練了稀疏自編碼器。
這樣構建出來的Gemma Scope,總共生成了超過400個稀疏自編碼器,獲得了超過 3000萬個特徵(儘管許多特徵可能重疊)。
這樣,研究人員就能夠研究特徵在整個模型中的演變方式,以及它們如何相互作用,如何組合形成更複雜的特徵。
此外,Gemma Scope使用了最新的、最先進的JumpReLU SAE架構進行了訓練。
原始的稀疏自編碼器架構,在檢測特徵存在與估計強度這兩個目標之間,往往難以平衡。而JumpReLU架構,就能更容易地實現二者的平衡,並且顯著減少誤差。
當然,訓練如此多的稀疏自編碼器,也是一項重大的工程挑戰,需要大量的計算資源。
在這個過程中,研究者使用了Gemma 2 9B訓練計算量的約15%(不包括生成蒸餾標籤所需的計算),將約20 PiB的激活保存到了磁盤(大約相當於一百萬份英文域奇百科的內容),總共生成了數千億個稀疏自編碼器參數。
參考資料:
https://developers.googleblog.com/en/smaller-safer-more-transparent-advancing-responsible-ai-with-gemma/