Gemma輕量級開放模型在個人PC上釋放強大性能,讓每個桌面秒變AI工作站

Google DeepMind團隊最近推出了Gemma,這是一個基于其先前Gemini模型研究和技術的開放模型家族。這些模型專為語言理解、推理和安全性而設計,具有輕量級和高性能的特點。

Gemma 7B模型在不同能力領域的語言理解和生成性能,與同樣規模的開放模型進行了比較。這些領域包括問答(Question Answering)、推理(Reasoning)、數學/科學(Math / Science)和編程(Coding)。圖中的條形圖表示了Gemma 7B在這些領域的表現,并與其它模型如LLaMA 2 (7B)、LLaMA 2 (13B)和Mistral (7B)進行了對比

在Gemma模型推出之前,現有語言模型存在一些挑戰和局限性,主要體現在這些模型在理解語言、進行推理以及確保輸出內容的安全性方面,并沒有達到很高的水平。它們在處理一些需要深層次理解或創造性思維的任務時,可能無法給出非常準確或有用的答案。而且很多現有的大型模型對計算資源的要求很高,這導致它們在個人電腦或移動設備等資源受限的環境中難以運行。這限制了這些模型的普及和應用范圍,因為不是每個人都能訪問到高端的計算硬件。隨著語言模型被用于生成各種文本內容,如何確保這些內容的安全性和符合道德標準成為了一個重要問題。一些現有模型可能沒有很好地解決這個問題,有時可能會生成一些不恰當或有潛在危害的內容。

針對這些挑戰,Gemma模型的設計考慮了提高性能、優化部署效率和加強安全性。Gemma利用了最新的研究成果和技術,以期在語言理解和推理方面達到更高的水平,并且能夠在各種設備上運行,包括個人電腦和移動設備。Gemma在開發過程中采取了一系列措施來確保生成內容的安全性和可靠性,比如使用自動化技術和人工反饋來細致調整模型的行為。Gemma模型的關鍵特點如下:

  • 兩種規模: 提供Gemma 2B和Gemma 7B兩種規模,每種規模都有預訓練和指令調整(instruction-tuned)的變體。
  • 負責任的生成式AI工具包: 提供創建更安全AI應用的指導和工具。
  • 跨框架支持: 為JAX、PyTorch和通過原生Keras 3.0的TensorFlow提供推理和監督式微調(SFT)的工具鏈。
  • 易于部署: 模型可以在筆記本電腦、工作站或Google Cloud上運行,并可在Vertex AI和Google Kubernetes Engine (GKE)上輕松部署。
  • 性能優化: 模型針對NVIDIA GPU和Google Cloud TPU等多AI硬件平臺進行了優化,確保行業領先的性能。

架構

Gemma模型最初由Vaswani等人在2017年提出,因其出色的處理序列數據的能力而廣受歡迎。它在8192個token的上下文長度上進行訓練,這個長度足以捕捉到復雜的語言結構和上下文信息,從而使得模型能夠更好地理解和生成語言。

在核心參數方面,Gemma模型采用了一些創新的技術來提升性能和效率。模型引入了多查詢注意力機制,這是一種注意力分配方式,它允許模型在處理信息時更加靈活。對于7B參數的模型,設計者選擇了多頭注意力,這是一種并行處理多個注意力查詢的方法,能夠增強模型處理復雜信息的能力。而對于規模較小的2B參數模型,則采用了多查詢注意力,這在小規模模型中已被證明同樣有效,有助于模型在資源受限的情況下保持較好的性能。

Gemma模型架構的核心參數,包括模型大小(2B或7B),維度(d_model),層數(Layers),前饋隱藏維度(Feedforward hidden dims),頭數(Num heads),鍵值頭數(Num KV heads),頭大小(Head size)和詞匯表大小(Vocab size)

位置編碼是transformer模型中的關鍵組成部分,它使得模型能夠理解單詞在句子中的位置。Gemma模型采用了旋轉位置嵌入(RoPE),這是一種新穎的位置編碼方式,與傳統的絕對位置編碼相比,它通過旋轉機制能夠更有效地表達位置信息。RoPE還在輸入和輸出之間共享嵌入,這種做法不僅減少了模型的參數數量,還有助于模型在不同任務之間遷移知識。

激活函數在神經網絡中扮演著至關重要的角色,它為模型引入了非線性,使得模型能夠學習和模擬復雜的函數映射。Gemma模型采用了GeGLU激活函數的近似版本,這是一種改進的激活機制,相比于傳統的ReLU激活函數,GeGLU能夠更有效地捕捉數據中的復雜特征。

為了穩定訓練過程,Gemma模型使用了RMSNorm,這是一種歸一化技術,它對每個transformer子層的輸入進行歸一化處理。這種歸一化有助于防止訓練過程中的梯度爆炸或消失問題,從而使得模型能夠更穩定地學習,并提高最終性能。

訓練

Google DeepMind選擇使用TPUv5e作為訓練的核心硬件,TPUv5e是一種特別為機器學習任務設計的高性能張量處理單元。與傳統的CPU和GPU相比,TPU專為優化計算性能和能源效率而設計,尤其適合于處理大規模的深度學習模型。

在Gemma模型的訓練中,TPUv5e被部署在一個復雜的2D網絡結構中,每個pod包含256個芯片。這種配置允許模型在多個芯片上并行處理數據,極大地提高了計算速度和處理能力。對于7B參數的模型,訓練過程使用了16個pods,這意味著總共有4096個TPUv5e芯片被用于訓練,這是一個非常龐大的計算資源,能夠處理和訓練具有數十億參數的復雜模型。

對于較小的2B參數模型,預訓練過程則使用了2個pods,共計512個TPUv5e芯片。盡管使用的芯片數量較少,但這仍然是一個相當大的計算規模,足以支持模型的快速預訓練。

在訓練過程中,模型分片和數據復制技術被用來進一步提高效率。模型分片是指將模型的不同部分分布到不同的芯片上進行處理,這樣可以并行地更新模型的參數,加速訓練過程。數據復制則是在不同的芯片上復制數據,確保每個芯片都有獨立的數據副本進行計算,這有助于減少數據傳輸的延遲,提高計算效率。

Gemma模型的訓練還借助了Jax和Pathways的編程范式。Jax是一個用于高性能機器學習研究的Python庫,它允許研究人員以一種簡潔和高效的方式表達復雜的神經網絡模型。Pathways則是一個用于構建和部署大規模機器學習應用的框架,它提供了一種簡化的開發流程,使得處理像Gemma這樣的大型模型變得更加容易。

Gemma模型的預訓練涉及到使用大量的文本數據來訓練模型,以便模型能夠理解和生成自然語言。在這個過程中,Gemma模型使用了來自網絡文檔、數學和代碼領域的數據,這些數據主要是英文的。具體來說,2B參數的模型被訓練了3萬億個token,而7B參數的模型則訓練了6萬億個token,這樣的數據量為模型提供了豐富的語言信息和模式。

與Gemini模型不同,Gemma模型在設計時并沒有采用多模態技術,也就是說,它沒有結合文本之外的其他類型的數據,如圖像或視頻。此外,Gemma也沒有專門針對多語言任務進行訓練,這與一些旨在實現多語言理解最先進的性能的模型有所區別。Gemma模型的設計選擇反映了DeepMind團隊專注于英文文本數據,以實現在特定領域的深度理解和生成能力。

在預訓練數據的選擇和處理上,Gemma模型的團隊采取了謹慎的措施。他們對數據集進行了過濾,目的是減少模型可能生成不良或不安全話語的風險。這包括去除那些可能引發爭議或不適當的內容,確保模型在生成文本時能夠符合安全和道德標準。

預訓練過程中特別注意了個人身份信息和其他敏感數據的過濾。這是因為數據中的個人信息如果被模型學習并在未來生成的文本中使用,可能會引發隱私泄露和安全問題。通過過濾掉這些敏感信息,Gemma模型旨在保護用戶的隱私,并遵守數據保護的相關法律法規。

過濾過程不僅涉及到簡單的規則和啟發式方法,還可能包括更復雜的模型驅動的分類器,這些分類器能夠識別并排除有害或低質量的內容。此外,為了進一步確保模型的安全性和可靠性,過濾后的數據還會經過詳盡的評估和測試,以檢查是否存在潛在的問題。

指令調整

在Gemma模型的開發過程中,指令調整是一個關鍵步驟,旨在提升模型對用戶指令的理解和執行能力。這個過程主要通過兩種方法實現:監督式微調(SFT)和基于人類反饋的強化學習(RLHF)。

表格列出了用于Gemma模型監督式微調(SFT)和基于人類反饋的強化學習(RLHF)的相關格式化控制標記。這些標記包括用戶輪次(User turn)、模型輪次(Model turn)、對話輪次開始(Start of conversation turn)和對話輪次結束(End of conversation turn)

在SFT階段,Gemma模型接受了大量文本合成的英語提示響應對的訓練。這些數據對由基礎模型生成的可能響應和測試模型生成的實際響應組成。通過這種方式,模型學習如何根據給定的指令生成更加準確和有用的回答。SFT的目的是通過直接的監督學習,讓模型更好地掌握如何遵循指令和生成合適的輸出。

SFT階段還包括了對模型輸出的人類評估。在這一過程中,人類評估員會根據模型生成的回答質量和相關性提供反饋。這些反饋被用來進一步指導和優化模型,使其更符合人類的偏好和期望。

RLHF階段則采用了一種更為互動的方法來提升模型性能。在這個階段,模型的表現通過人類提供偏好來評估,即人類評估員會對比模型生成的不同回答,并選擇他們認為更好的一個。這些偏好信息被用來訓練一個獎勵模型,該模型能夠捕捉到人類對模型輸出的滿意度。然后,這個獎勵模型指導Gemma模型通過強化學習算法進行優化,以生成更符合人類期望的輸出。

在指令調整過程中,數據的質量和安全性至關重要。過濾機制被用來清除那些可能包含個人信息、不安全內容或有毒輸出的數據。確保了模型在訓練過程中不會被不良數據影響,同時也保護了用戶的隱私和安全。

Gemma 1.1 IT模型與Mistral 7B v0.2 Instruct模型在安全性和指令遵循方面的勝率比較。表格中給出了勝率的百分比以及95%的置信區間

過濾還涉及到去除錯誤的自我識別數據,即那些可能導致模型錯誤理解自身身份或功能的信息。此外,任何重復的例子也會被過濾掉,以避免模型過度擬合特定的數據模式,從而影響其泛化能力。

評估

Gemma模型的評估不僅涵蓋了自動化的基準測試,還包括了人類評估研究,以確保模型的實際應用能夠滿足用戶的期望和需求。

在自動化基準測試方面,Gemma模型接受了廣泛的測試,包括物理推理、社會推理、問題回答、編程、數學、常識推理、語言建模、閱讀理解等多個領域。例如,在數學問題解決方面,Gemma模型在GSM8K和MATH基準測試中表現出色,顯示出其強大的分析和解決問題的能力。此外,在編程任務的MBPP基準測試中,Gemma模型也超越了其他開放模型,顯示了其在代碼生成和理解方面的高超技巧。

人類偏好評估是評估過程中的另一個重要部分。Gemma模型的最終版本被提交給人類評估員,與現有的其他模型如Mistral v0.2 7B Instruct模型進行了比較。在一系列約1000個提示的測試中,這些提示旨在讓模型執行創意寫作任務、編程和遵循指令,Gemma 7B IT模型以61.2%的正面勝率勝過Mistral v0.2 7B Instruct,而Gemma 2B IT模型的勝率為45%。在測試基本安全協議的約400個提示中,Gemma 7B IT模型的勝率為63.5%,Gemma 2B IT模型的勝率為60.1%。

為了確保評估的全面性和公正性,Gemma模型的評估使用了與Gemini模型相同的方法論,并盡可能地模仿了Mistral技術報告中的評估方法。這些評估包括了ARC、CommonsenseQA、Big Bench Hard和AGI Eval等基準測試。由于許可限制,Gemma模型無法在LLaMA-2上運行評估,因此只能引用之前報告的指標。

在安全性方面,Gemma模型同樣進行了嚴格的測試。通過與類似規模的開放模型進行比較,Gemma 1.1 IT模型在多個標準安全基準測試中的表現出色,在6個測試中勝過競爭對手。此外,Gemma模型在人類并行評估中也展現出了優勢。

為了評估模型對訓練數據的記憶能力,Gemma模型還經過了記憶評估測試。測試結果顯示,Gemma模型對英文網絡內容的記憶率相當低,這表明模型并沒有簡單地記憶訓練數據,而是能夠進行更深入的理解和推理。

Gemma模型與其他同樣規模的開放模型在多個學術基準測試中的性能比較結果。基準測試包括MMLU、HellaSwag、PIQA、SIQA、Boolq、Winogrande、CQA、OBQA、ARC-e、ARC-c、TriviaQA、NQ、HumanEval、MBPP、GSM8K、MATH和AGIEval等。

通過這些綜合評估,Gemma模型證明了自己在各種任務中的高性能和可靠性,同時也展示了其在安全性和抗記憶性方面的優勢。這些評估結果為Gemma模型的進一步開發和應用提供了堅實的基礎,并為用戶提供了對其性能和能力的深入了解。

技術報告:https://storage.googleapis.com/deepmind-media/gemma/gemma-report.pdf

使用地址:https://ai.google.dev/gemma

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/39075.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/39075.shtml
英文地址,請注明出處:http://en.pswp.cn/web/39075.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

名企專訪|對抗價格內卷,格行隨身WiFi如何持續三年爆火引領潮流

近期要是問網紅達人最喜歡帶貨的單品是什么?那一定有格行隨身WiFi的一席之地。能聚集了如此多的明星達人,僅僅是一句帶貨收益高顯然無法說服大家。顯然這里面還有著不為人知的秘密,先鋒財經特意專訪了格行隨身WiFi的創始人劉永先先生&#xf…

8.x86游戲實戰-OD詳解

免責聲明:內容僅供學習參考,請合法利用知識,禁止進行違法犯罪活動! 本次游戲沒法給 內容參考于:微塵網絡安全 上一個內容:7.x86游戲實戰-C實現跨進程讀寫-跨進程寫內存 工具下載:下載 OllyI…

嵌入式Linux之Uboot簡介和移植

uboot簡介 uboot 的全稱是 Universal Boot Loader,uboot 是一個遵循 GPL 協議的開源軟件,uboot是一個裸機代碼,可以看作是一個裸機綜合例程。現在的 uboot 已經支持液晶屏、網絡、USB 等高級功能。 也就是說,可以在沒有系統的情況…

[我靠升級逆襲成為大師]韓漫日漫無刪減完整版,免費在線觀看漫畫

[我靠升級逆襲成為大師]韓漫日漫無刪減完整版,免費在線觀看漫畫 不能多說,怕審-核不過,自己看圖吧。 目前統計【統計日期:2024-07-03】: 完結的有:420部。 連載的有:308部,持續更…

生單鏈路流程復雜,涉及到上下游商品、庫存、營銷、風控、拆單、校驗、落庫等等十多個節點操作,需要保證數據的完整性和正確性

處理復雜的生單鏈路流程,確保數據的完整性和正確性,需要一個綜合的策略,包括但不限于以下幾個方面: 1. **流程設計**: - 明確每個節點的職責和輸入輸出,確保流程的邏輯清晰。 2. **數據校驗**&#xf…

python庫(1):Nuitka庫

1 Nuitka介紹 Nuitka是一個 Python 解釋器的替代品,支持CPython提供的代碼,可編譯 Python 代碼到 C 程序,并使用 libpython 來執行這些代碼,就像 CPython 一樣。 這讓你可以在沒有安裝 Python 的環境中運行 Python 程序&#xf…

AC7801時鐘配置流程

一 默認配置 在啟動文件中,已經對時鐘進行了初始化,默認按外部8M晶振,配置系統時鐘為48MHZ,APB為系統時鐘的2分頻,為24MHZ。在system_ac780x.c文件中,可以找到下面這個系統初始化函數,里面有Se…

前端修改audio背景色

1.查看瀏覽器設置Show user agent shadow DOM是否打開 2.打開可以查看audio Dom /** 去掉默認的背景顏色 */ audio::-webkit-media-controls-enclosure{background-color:unset; } 3.效果圖

Java官網網址及其重要資源

Java是一種廣泛應用于開發各種應用程序的編程語言,它具有跨平臺、面向對象和高性能等優勢。若你想學習Java或深入了解它的最新動態,Java官網是你的首要目的地。在本文中,我們將向你介紹Java官網的網址以及一些重要資源。 Java官網網址&#x…

TCP/IP 網絡協議族分層

TCP/IP協議族 TCP/IP不單是TCP和IP兩個協議,TCP/IP實際上是一組協議,它包括上百個各種功能的協議,如:遠程登錄、文件傳輸和電子郵件等,當然,也包括TCP、IP協議 它將軟件通信過程抽象化為四個抽象層&#…

基于SpringBoot校園外賣配送系統設計和實現(源碼+LW+調試文檔+講解等)

💗博主介紹:?全網粉絲10W,CSDN作者、博客專家、全棧領域優質創作者,博客之星、平臺優質作者、專注于Java、小程序技術領域和畢業項目實戰?💗 🌟文末獲取源碼數據庫🌟 感興趣的可以先收藏起來,…

c++:關鍵字異常處理機制

模板編程的幾個關鍵字 模(mu)板編程初體驗 (1)template和typename (2)模板實際上是一種抽象,C的高級編程特性就是不斷向抽象化發展 export (1)用來在cpp文件中定義一個模板類或模板函數,而它的聲明在對應的h文件中 (2)export專用于模板,類似…

揭秘電子世界的雙雄:模擬電路與數字電路的精彩對決!

數字電路與模擬電路,這兩者在電子工程領域可謂是兩大基石,各有千秋,各自發揮著不可或缺的作用。下面,我們就來詳細探討一下它們之間的主要區別。 1. 信號類型與處理 模擬電路:處理的是連續變化的信號,就像…

使用阿里云語音服務實現設備異常實時通知

隨著物聯網的普及,設備異常通知方式也變得多種多樣。從傳統的后臺異常列表,到短信通知,再到微信消息通知等。然而,當設備探測到火警等緊急異常時,需要實時通知到相關人員。本文將介紹如何借助阿里云的語音服務來實現這一功能。 1. 準備工作 1.1 資質申請 首先,登錄阿里…

Git中fetch與pull 的區別

一、fetch與pull的基本概念 在Git中,fetch和pull都是用于從遠程倉庫獲取數據的命令。但是,它們在處理方式和結果上有所不同。 1、fetch fetch命令用于從遠程倉庫下載最新的數據到本地倉庫,但它不會自動合并或修改當前的工作。fetch會將遠程…

2024年大廠離職當博主成為最擁擠自媒體賽道的現象分析

大廠離職博主在2024年成為最擁擠自媒體賽道的現象分析 1. 行業背景與就業環境變化 降本增效引發的被動離職:近年來,隨著各行業的降本增效措施不斷推進,即便是知名大廠也在縮減員工規模。騰訊、阿里巴巴等企業的財報顯示,從2021年…

一鍵恢復短信,4個方法,輕松找回iPhone數據!

在日常生活和工作中,短信往往承載著重要的信息和回憶。然而,意外刪除、系統故障或手機更換等情況都可能導致短信丟失,這讓很多iPhone用戶感到困擾。 好消息是,您并不需要擔心這些數據無法找回。如今,一鍵恢復短信的方…

autoware.universe源碼略讀(3.7)--perception:elevation_map_loader/euclidean_cluster

autoware.universe源碼略讀3.7--perception:elevation_map_loader/euclidean_cluster elevation_map_loadereuclidean_clustereuclidean_clustervoxel_grid_based_euclidean_cluster節點類launch文件 elevation_map_loader 在上一篇文章有提到compare_map_segmentat…

基于java+springboot+vue實現的家政服務平臺(文末源碼+Lw)299

摘 要 現代經濟快節奏發展以及不斷完善升級的信息化技術,讓傳統數據信息的管理升級為軟件存儲,歸納,集中處理數據信息的管理方式。本家政服務平臺就是在這樣的大環境下誕生,其可以幫助管理者在短時間內處理完畢龐大的數據信息&a…

Redis中hash類型的操作命令(命令的語法、返回值、時間復雜度、注意事項、操作演示)

文章目錄 字符串和哈希類型相比hset 命令hget 命令hexistshdelhkeyshvalshgetallhmgethlenhsetnxhincrbyhincrbyfloat 字符串和哈希類型相比 假設有以下一種場景:現在要在 Redis 中存儲一個用戶的基本信息(id1、namezhangsan、age17),下圖表示使用字符串…