0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

chatGPT的175Billion個參數(shù)是哪兒來的

處理器與AI芯片 ? 來源:處理器與AI芯片 ? 2023-11-01 16:57 ? 次閱讀

最近大語言模型模型LLM很火,大家總是說chatgpt的175Billion參數(shù)。做算法的人更關心網(wǎng)絡的結(jié)構,而我這種做硬件的人一直很好奇這個參數(shù)是怎么計算的。

最近看到了一篇文章,計算了參數(shù)的個數(shù)并且和chatgpt論文里的參數(shù)進行了比較,計算的還是比較準確的,我來總結(jié)一下。

1.Chatgpt背景

Chatgpt(chat generative pre-trained transformer)也是基于google最初的transformer模型,雖然LLM功能很強大,但是理解起來比fasterRCNN和LSTM好很多。

Transformer結(jié)構

wKgZomVCE0-AKWVBAAJ8--DkelI175.jpg

Chatgpt結(jié)構

不同于從input到output可以進行翻譯工作的transformer結(jié)構,ChatGPT進行對話,只需要右側(cè)的decoder部分就可以。

wKgaomVCE1-Af0DmAADtfVtIckE850.jpg

2.一張立體圖:

wKgZomVCE3KAOX4aAAcz4SEX8pU616.jpg

整體的Bert 結(jié)構

看了很多解釋圖,上面的圖是看過的最好的,流程就是

1)inputembedding 分別和key,value,query的矩陣做乘法linear projection,得到的結(jié)果進行attention

2)將多個attention的結(jié)果進行concat拼接,得到的結(jié)果進行再次進行矩陣乘法,linearprojection

3)將得到的結(jié)果輸入feedforwardnetwork,兩層的lineartransform之后,輸出結(jié)果

4)如果有n_layer個layer,那么就重復2)和3)n_layer次

3.具體的參數(shù)個數(shù)計算

先解釋一下參數(shù):

n_head : attention 中head的個數(shù)

d_model: 中間bottlenecklayer的向量的維度

n_vocalulary: 字典的維度

n_context: 上下文的長度

n_layer:網(wǎng)絡的層數(shù)

1)Inputembedding

wKgZomVCE4iARZ3-AABOebKU6Q0469.jpg

對應UWe將U的(n_context,n_vocalulary) 維轉(zhuǎn)為UWe(n_context, d_model)維,其矩陣大小為(n_vocabulary,d_model) , 參數(shù)大小即為n_vocabulary* d_model。 ??

此外,??Wp對應(n_context,d_model)。 因此此處的參數(shù)個數(shù)為: n_vocabulary*d_model+ n_context * d_model

2)Attention& MultiHead

wKgZomVCE6-ARj1wAABHqRiRDZ8304.jpg

a. WiQ, WiK,WiV都是相同的大小投影矩陣,每個都是d_model*d_head維度,這里的d_head就對應上面公式里面的de, ,dk,dv,ChatGPT中他們都是同樣的大小;

b.因此attention部分的計算量就是3*d_model*d_head,因為有三個矩陣WiQ,WiK, WiV;

c.如果有MultiHead,如果head的個數(shù)為n_head,那么即為W矩陣的總參數(shù)3*d_model*d_head*n_head

d. concat的結(jié)果的維度為(n_context,n_head*d_head),經(jīng)過矩陣WO計算后維度變?yōu)?n_context,d_head)維,因此WO的維度為(n_head*d_head,d_head) 對c)和d)的參數(shù)求和,此時參數(shù)個數(shù)為 4*d_model*d_head*n_head

3)feedforward

wKgZomVCE9eAAXW9AABmvF0--fo398.jpg

在chatgpt中,feedforward內(nèi)部由兩層lineartransformer組成,并且d_ff為d_model的4倍。 ???W1??的參數(shù)個數(shù)為(d_model,d_ff), b??1??的參數(shù)個數(shù)為d_ff,W2的為(d_ff,d_model),b2????的參數(shù)個數(shù)為d_model,而d_model又是d_ff的四倍,因此: 2*d_model*d_ff+d_model+d_ff 即 8*d_model2+ 5* d_model 4)將2)和3)重復n_layer次 n_layer * (4*d_model*d_head*n_head+ 8*d_model2 + 5* d_model)

總體的參數(shù)計算:1)+ 4):

n?_vocabulary*d_model-> emb??edding atrix

+n_context * d_model??-> position matrix

+ n_layer *? ????-> layer 重復N次

// multi headattention

(4 * d_model * d_head * n_head ->???

??// feedforward network

??+ 8 * d_model2+ 5* d_mo??del??)

驗證一下:

如果按照chatGPT論文中設置的參數(shù):

n_vocabulary = 50257

d_model = 12288

n_context = 2048

n_layer= 96

d_head= 128

n_head= 96

1)word_embeding +position

50257 * 12288 + 2048 * 12288 = 642723840

2)Attention& MultiHead

單層:4 * 12288 * 128 * 96 = 603979776??

3)feedforward

8 * 12288 * 12288 + 5 * 12288= 1208020992

4)2)和3)重復n_layer次

N_layer = 96 層96*(603979776+1208020992) = 173952073728

1)+2) = 174594797568 也就是所說的175Billion個參數(shù)。

這個方法估計出的參數(shù)和論文中參數(shù)的對比:

92021d4c-7894-11ee-939d-92fbcf53809c.png







審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • LSTM
    +關注

    關注

    0

    文章

    59

    瀏覽量

    3753
  • ChatGPT
    +關注

    關注

    29

    文章

    1561

    瀏覽量

    7673
  • LLM
    LLM
    +關注

    關注

    0

    文章

    288

    瀏覽量

    338

原文標題:chatGPT的175Billion個參數(shù)是哪兒來的

文章出處:【微信號:處理器與AI芯片,微信公眾號:處理器與AI芯片】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關推薦

    【國產(chǎn)FPGA+OMAPL138開發(fā)板體驗】(原創(chuàng))6.FPGA連接ChatGPT 4

    : LED輸出,我們要用它展示ChatGPT4的“高見”。 ChatGPT4_IP_Core chatgpt4_core(...): 假設我們有一
    發(fā)表于 02-14 21:58

    在FPGA設計中是否可以應用ChatGPT生成想要的程序呢

    當下AI人工智能崛起,很多開發(fā)領域都可看到ChatGPT的身影,F(xiàn)PGA設計中,是否也可以用ChatGPT輔助設計呢?
    發(fā)表于 03-28 23:41

    ChatGPT對話語音識別

    ChatGPT
    YS YYDS
    發(fā)布于 :2023年05月30日 22:13:10

    科技大廠競逐AIGC,中國的ChatGPT在哪?

    迭代,需要大量的數(shù)據(jù)進行訓練。2020年發(fā)布的GPT-3,其訓練參數(shù)量已經(jīng)達到了驚人的1750億,“大量的數(shù)據(jù)被反復‘喂’給ChatGPT?!? 而且,ChatGPT的訓練成本支出巨
    發(fā)表于 03-03 14:28

    【米爾MYD-JX8MMA7開發(fā)板-ARM+FPGA架構試用體驗】4.使用ChatGPT助力測試GPU

    領域的多種應用場景比較適用。本次將測試該開發(fā)板的GPU圖形圖像處理能力,并在ChatGPT幫助下使用OpenGL E2.0 開發(fā)一簡單的3D模型實時渲染的應用,及使用ChatGPT
    發(fā)表于 04-10 02:07

    ChatGPT系統(tǒng)開發(fā)AI人功智能方案

    。ChatGPT是一由OpenAI開發(fā)的人工智能語言模型,可以實現(xiàn)自然語言處理、對話生成等功能。要開發(fā)一類似ChatGPT的人工智能系統(tǒng)軟件,可以遵循以下步驟:確定應用場景:確定人
    發(fā)表于 05-18 10:16

    J175 P溝道開關

    電子發(fā)燒友網(wǎng)為你提供()J175相關產(chǎn)品參數(shù)、數(shù)據(jù)手冊,更有J175的引腳圖、接線圖、封裝手冊、中文資料、英文資料,J175真值表,J175
    發(fā)表于 04-18 20:41

    HMC175 S參數(shù)

    HMC175 S參數(shù)
    發(fā)表于 03-23 13:53 ?1次下載
    HMC<b class='flag-5'>175</b> S<b class='flag-5'>參數(shù)</b>

    ChatGPT入門指南

    是基于聊天的生成預訓練transformer模型的縮寫,是一強大的工具,可以以各種方式使用,以提高您在許多領域的生產(chǎn)力。 ChatGPT是一種人工智能(AI)技術,被稱為自然語言處理(NLP)模型   由人工智能研發(fā)公司OpenAI創(chuàng)建。它使用機器學習算法
    發(fā)表于 02-10 11:19 ?7次下載
    <b class='flag-5'>ChatGPT</b>入門指南

    chatgpt是什么

    chatgpt是什么 ChatGPT,美國OpenAI 。ChatGPT是人工智能技術驅(qū)動的自然語言處理工具,它能夠通過學習和理解人類的語言進行對話,還能根據(jù)聊天的上下文進行互動,真
    發(fā)表于 02-10 14:05 ?4w次閱讀

    chatgpt怎么用

    使用了一種叫做Transformer的神經(jīng)網(wǎng)絡架構,這是一種用于處理序列數(shù)據(jù)的模型,能夠在輸入序列中捕捉長期依賴性。它還使用了大量的語料庫訓練模型,這些語料庫包含了真實世界中的對話,以便模型能夠更好地理解人類語言。 chatgpt怎么用? 1、注冊或登錄OpenAI賬戶
    發(fā)表于 02-10 14:22 ?5.8w次閱讀

    從零開始談ChatGPT

      那如何才能得到一ChatGPT呢?   首先我們需要一具備各種能力(潛力)的LLM,所以它要足夠大,訓練的足夠好。OpenAI 大概率也是為此重新訓練了一GPT-3 模
    發(fā)表于 02-15 10:20 ?0次下載
    從零開始談<b class='flag-5'>ChatGPT</b>

    ChatGPT了的七開源項目

    就推出了很多。估計,現(xiàn)在還有不少同學苦于不知道該如何體驗chatGPT。   chatGPT火了,圍繞chatGPT盡心二次擴展的開源項目最近也涌現(xiàn)出很多,今天就來給大家介紹幾個最近發(fā)現(xiàn)的不錯的開源項目!   這是一
    發(fā)表于 02-15 09:26 ?3次下載
    <b class='flag-5'>ChatGPT</b>了的七<b class='flag-5'>個</b>開源項目

    令人驚艷的ChatGPT項目,開源了!

    而Visual ChatGPT這個項目則可以把ChatGPT和一系列視覺基礎模型(VFM,Visual Foundation Model)給聯(lián)系起來,以便實現(xiàn)在ChatGPT聊天的過程中
    的頭像 發(fā)表于 03-31 11:00 ?2260次閱讀