五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

LLaMA閱讀筆記

2023-05-31 16:31 作者:小貓咪毛毛  | 我要投稿


LLaMA: Open and Efficient Foundation Language Models

? 介紹了論文中 “2. Approach” 部分,包括數(shù)據(jù)集和網(wǎng)絡(luò)結(jié)構(gòu)優(yōu)化


數(shù)據(jù)來源:全部為開源數(shù)據(jù)集

數(shù)據(jù)集
  • 預訓練是一種利用大量無標注數(shù)據(jù)來訓練一個通用模型的方法,然后再用特定任務(wù)的數(shù)據(jù)來微調(diào)模型。

  • 數(shù)據(jù)混合是一種將不同來源或類型的數(shù)據(jù)組合在一起的方法,以增加數(shù)據(jù)的多樣性和覆蓋率。

  • 采樣比例是指從每個子集中抽取數(shù)據(jù)的概率。

  • 輪數(shù)(epoch)是指對整個數(shù)據(jù)集進行一次完整的訓練:除了書和wiki,其他都是1epoch

下面介紹一下看著陌生的Dataset:

  • CommonCrawl:用CCNet pipline 提取和過濾從互聯(lián)網(wǎng)中爬取下來的文本,它可以根據(jù)語言、長度、重復度等標準來選擇高質(zhì)量的文本。

  • C4:也是互聯(lián)網(wǎng)中爬取下的文本,但它的文本質(zhì)量過濾依賴于一些啟發(fā)式的標準,比如網(wǎng)頁中的標點符號或者單詞和句子的數(shù)量。

  • StackExchange:一些問答網(wǎng)站,有各個領(lǐng)域的高質(zhì)量問答數(shù)據(jù)。

Tokenizer:

Bytepair encoding algorithm (BPE) : BPE算法是一種數(shù)據(jù)壓縮算法,它可以將文本切分為任意大小的單元,不受語言或字符集的限制。它的基本思想是,每一步都將最常見的一對相鄰數(shù)據(jù)單位替換為該數(shù)據(jù)中沒有出現(xiàn)過的一個新單位,反復迭代直到滿足停止條件。它可以有效地處理未登錄詞和稀有詞,提高語言模型的性能。ChatGPT使用的也是BPE算法。

另外,他們把數(shù)分成單個的數(shù)字,對于未知的UTF-8字符,用的字節(jié)進行分解。


網(wǎng)絡(luò)結(jié)構(gòu)&訓練

提高效率效率:

  • 網(wǎng)絡(luò)用了causal multi-head attention(因果自注意力)減少內(nèi)存和訓練時間,它可以保證只考慮當前和之前的輸入。因果自注意力用一個掩碼(mask)來實現(xiàn),即在計算相似度時,把未來時刻的輸入屏蔽掉。為了提高效率,用了XFormers和FlashAttention實現(xiàn)

  • 用檢查點(checkpointing)減少了反向傳播過程中需要重新計算的激活值(activations)。具體來說,我們保存了那些計算代價較高的激活值,比如線性層的輸出。

  • 模型和序列并行:這是一種分布式訓練的方法,它可以把一個大模型或者一個長序列拆分成多個小塊,分配給不同的GPU進行并行計算,從而減少單個GPU的負擔和內(nèi)存需求。

  • 計算和通信重疊:這是一種提高計算效率的方法,它可以讓GPU在計算激活值的同時進行網(wǎng)絡(luò)通信,從而減少等待時間和同步開銷。

網(wǎng)絡(luò)結(jié)構(gòu)的優(yōu)化:

  • Pre-normalization: 為了讓訓練更加穩(wěn)定,llama給 transformer sub-layer 的輸入做了normalize,而不是輸出。用了RMSNorm

  • SwiGLU激活: ReLU替換成了SwiGLU。SwiGLU是一種激活函數(shù),它是Gated Linear Units (GLU)的一種變體,使用Swish函數(shù)代替sigmoid函數(shù)。它可以提高transformer模型的性能,比ReLU或GELU激活函數(shù)更好。SwiGLU的優(yōu)點是它可以動態(tài)地調(diào)整信息流的門控程度,根據(jù)輸入的不同而變化。ReLU的缺點是它會導致神經(jīng)元死亡,即輸出為零的情況。GELU的缺點是它比ReLU更復雜,計算量更大。

  • 旋轉(zhuǎn)嵌入(Rotary Embeddings): GPTNeo是一種新型的位置編碼方法,它可以兼顧絕對位置和相對位置的信息。它的基本思想是通過一個旋轉(zhuǎn)矩陣來調(diào)整每個單詞或標記的嵌入向量,使得它們的內(nèi)積只與它們的相對位置有關(guān)。旋轉(zhuǎn)嵌入不需要預先定義或?qū)W習位置嵌入向量,而是在網(wǎng)絡(luò)的每一層動態(tài)地添加位置信息。旋轉(zhuǎn)嵌入有一些優(yōu)點,比如可以處理任意長度的序列,可以提高模型的泛化能力,可以減少計算量,可以適用于線性Attention等。

Optimizer:

  • AdamW, cosine learning rate, warmup


LLaMA閱讀筆記的評論 (共 條)

分享到微博請遵守國家法律
卓资县| 保定市| 襄城县| 尼木县| 通道| 呼伦贝尔市| 金川县| 麻城市| 建水县| 澎湖县| 巴南区| 无极县| 阳山县| 横山县| 兰坪| 神池县| 佳木斯市| 平舆县| 万山特区| 德清县| 蒲城县| 虎林市| 黄大仙区| 绥江县| 体育| 潜山县| 天气| 东山县| 平泉县| 宿州市| 昂仁县| 海伦市| 柏乡县| 新河县| 辛集市| 汪清县| 九台市| 若尔盖县| 苍南县| 杭锦后旗| 金坛市|