成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

大模型微調(diào)方法之QLoRA 原創(chuàng)

發(fā)布于 2024-10-15 14:00
瀏覽
0收藏

?本文介紹大模型微調(diào)方法中的QLoRA。

QLoRA由華盛頓大學(xué)UW NLP小組的成員于2023年提出發(fā),旨在進(jìn)一步降低微調(diào)大模型的微調(diào)成本,因?yàn)閷τ谏习賰|參數(shù)量的模型,LoRA微調(diào)的成本還是很高。

感興趣的小伙伴可以去閱讀一下原文:https://arxiv.org/pdf/2305.14314

模型介紹

大模型微調(diào)方法之QLoRA-AI.x社區(qū)

上圖為QLoRA的訓(xùn)練過程圖,QLoRA更多的是在工程上進(jìn)行了量化和優(yōu)化,從圖中可知,主要有4個部分的改進(jìn):

  • QLORA:是一種優(yōu)化的4-bit量化數(shù)據(jù)類型,專為正態(tài)分布權(quán)重設(shè)計(jì),通過結(jié)合低精度存儲和中等精度計(jì)算來提升模型性能。它使用4-bit存儲權(quán)重以減少內(nèi)存使用,并在計(jì)算時將權(quán)重轉(zhuǎn)換為16-bit的BFloat16格式以保持準(zhǔn)確性。這種方法適用于模型加載和訓(xùn)練過程,旨在平衡存儲效率和計(jì)算精度。
  • Double Quantization:是一種模型量化技術(shù),它通過對已經(jīng)量化過的常量進(jìn)行二次量化,進(jìn)一步減少存儲空間的需求。這種方法比傳統(tǒng)的模型量化方法更能節(jié)省顯存空間,每個參數(shù)平均可以節(jié)省0.37bit。例如,在65B的LLaMA模型中,這種雙量化技術(shù)能夠節(jié)省大約3GB的顯存空間。
  • Paged Optimizers:是一種利用NVIDIA統(tǒng)一內(nèi)存特性的優(yōu)化技術(shù),旨在解決GPU在處理過程中偶爾出現(xiàn)內(nèi)存溢出(OOM)的問題。該技術(shù)通過自動在CPU和GPU之間進(jìn)行分頁到分頁的數(shù)據(jù)傳輸,確保GPU處理過程無錯誤進(jìn)行。其工作原理類似于CPU內(nèi)存與磁盤之間的常規(guī)內(nèi)存分頁機(jī)制。具體來說,Paged Optimizers為優(yōu)化器狀態(tài)分配分頁內(nèi)存,當(dāng)GPU內(nèi)存不足時,自動將優(yōu)化器狀態(tài)卸載到CPU內(nèi)存中;而在需要更新優(yōu)化器狀態(tài)時,再將其加載回GPU內(nèi)存。
  • Adapter:為了彌補(bǔ)4-bit NormalFloat和Double Quantization帶來的性能損失,作者采用了插入更多adapter的方法。在LoRA中,通常只在query和value的全連接層處插入adapter。而在QLoRA中,作者在所有全連接層處都插入了adapter,以增加訓(xùn)練參數(shù)并彌補(bǔ)由于精度降低而導(dǎo)致的性能損失。

Adapter實(shí)現(xiàn)

QLoRA的一個重要的改進(jìn)和核心工作則是將量化的思想和LoRA的低秩適配器的思想結(jié)合到一起拿來對大模型進(jìn)行微調(diào),因此單獨(dú)拎出來說,實(shí)現(xiàn)的代碼如下:

if checkpoint_dir is not None:
    print("Loading adapters from checkpoint.")
    model = PeftModel.from_pretrained(model, join(checkpoint_dir, 'adapter_model'), is_trainable=True)
else:
    print(f'adding LoRA modules...')
    modules = find_all_linear_names(args, model)
    config = LoraConfig(
        r=args.lora_r,
        lora_alpha=args.lora_alpha,
        target_modules=modules,
        lora_dropout=args.lora_dropout,
        bias="none",
        task_type="CAUSAL_LM",
    )
    model = get_peft_model(model, config)
  • ???find_all_linear_names???:找到所有的全連接層
  • ???get_peft_model???:在所有全連接層中插入LoRA模塊

?

本文轉(zhuǎn)載自公眾號瓦力算法學(xué)研所,作者:喜歡瓦力的卷卷

原文鏈接:??https://mp.weixin.qq.com/s/i1kJ7kwIIG_qIsfEAei7mQ???

?著作權(quán)歸作者所有,如需轉(zhuǎn)載,請注明出處,否則將追究法律責(zé)任
標(biāo)簽
收藏
回復(fù)
舉報
回復(fù)
相關(guān)推薦
主站蜘蛛池模板: 久久综合一区 | 亚洲一区二区精品视频在线观看 | 美女视频黄的 | 一区二区视频 | 国产精品视频久久久 | 一区中文| 国产真实精品久久二三区 | 欧美精品一区三区 | 99热欧美| 亚洲第一在线视频 | 精品国产31久久久久久 | 欧美在线观看一区 | 成年视频在线观看福利资源 | 久久这里只有精品首页 | 成人h视频在线 | 色综合久久久 | 久久99精品久久久久子伦 | 自拍偷拍欧美 | 欧美在线视频一区二区 | 国产清纯白嫩初高生视频在线观看 | 国产精品久久久久久久久久不蜜臀 | 综合色在线| 欧美成人精品一区 | 国产不卡一区 | 日韩毛片网 | 91在线电影 | 中文字幕第90页 | 影视先锋av资源噜噜 | 日本 欧美 三级 高清 视频 | 午夜精品三区 | 日韩不卡在线观看 | 精品视频免费 | 欧美精品 在线观看 | 精品美女久久久 | 一区二区三区四区电影视频在线观看 | 国产激情偷乱视频一区二区三区 | 国产一区二区a | 国产香蕉视频在线播放 | 91亚洲国产成人久久精品网站 | 999久久久| 国产高清av免费观看 |