【自然語言處理與大模型】大模型(LLM)基礎知識③

(1)大模型的“7B”是什么意思?

"B"通常代表“Billion”,即十億。因此,當提到7B時,指的是該模型擁有7 billion(70億)個參數。

(2)模型后面標的“instruct”是什么意思

在基礎模型上進行指令微調后的版本。“instruct”版本的大模型是為了增強模型對指令的理解和執行力,使得用戶可以通過給出明確的指令來引導模型完成特定任務或獲得所需信息。這類模型通常會在包含大量指令-響應對的數據集上進行額外的訓練或微調,以提高其在這類任務上的性能。

(3)大模型量化什么意思?

量化主要涉及到減少模型權重激活的精度降低計算復雜度存儲需求,從而使得模型能夠在資源受限的設備上更高效地運行。量化可以顯著減少模型的大小,并加速推理過程,但需要仔細處理以避免對模型性能產生負面影響。

(4)量化等級是什么意思

量化等級指的是將浮點數表示的權重和激活值 轉換為低精度數值(如整數)的程度或精細度 。常見的量化等級包括:

●?8-bit量化:這是最常用的量化級別之一,將32位浮點數權重壓縮至8位整數,大大減少了模型的存儲需求和計算量,同時保持較高的準確率。

●?4-bit量化:進一步降低精度到4位,能提供更高的壓縮比和更快的推理速度,但可能會影響模型的準確性。

(5)量化方法是什么意思?

量化方法是指實現從高精度到低精度轉換的具體技術。不同的量化方法在如何處理量化誤差、選擇代表值等方面有所不同。一些常見的量化方法包括:

●?線性量化:最簡單的量化形式,通過均勻劃分范圍來映射浮點數到整數。

●?非線性量化(如偽量化):使用非均勻的量化間隔,通常在重要區域(如數據分布密集的地方)使用更小的間隔,以更好地保留信息。

(6)啥是Alpaca數據集?

Alpaca 數據集主要用于微調語言模型,使其能夠更好地遵循指令。這個數據集是通過模仿自動生成的指令-響應對創建的。結構:每個樣本通常包括三部分——instruction(指令)、input(輸入,可選)、和output(輸出)。

●?instruction 描述了要執行的任務。

●?input 提供了額外的信息或上下文(不是所有樣本都包含這一部分)。

●?output 是對應指令的預期響應。

# 單輪對話
[
{"instruction": "描述一下如何制作一杯拿鐵咖啡。","input": "","output": "制作一杯拿鐵咖啡首先需要準備一份濃縮咖啡,然后在杯子里倒入熱牛奶,并且保證牛奶的量大約是杯子容量的三分之二,最后輕輕地將濃縮咖啡倒在牛奶上面即可。"
}
]

?下面提供一個 alpaca 格式多輪對話的例子,對于單輪對話只需省略 history 列即可。

# 多輪對話
[{"instruction": "今天的天氣怎么樣?","input": "","output": "今天的天氣不錯,是晴天。","history": [["今天會下雨嗎?","今天不會下雨,是個好天氣。"],["今天適合出去玩嗎?","非常適合,空氣質量很好。"]]}
]

(6)BLEU評估指標是什么?怎么算的?

BLEU(Bilingual Evaluation Understudy)是一種用于評估機器翻譯質量的指標,它通過比較機器生成的文本與一個或多個參考譯文之間的相似度來給出評分。BLEU得分范圍從0到1,值越接近1表示機器翻譯的結果越好,但實踐中很少能達到1,除非機器翻譯輸出與參考譯文完全一致。BLEU評估主要基于n-gram的精確度,并且考慮了句子長度的因素。

●?N-gram匹配:首先將機器翻譯結果和每個參考譯文都分解為n-gram(連續的n個詞)。然后計算機器翻譯中出現的n-gram在參考譯文中也出現的比例,這被稱為“修改后的n-gram精確度”。通常會計算1-gram、2-gram、3-gram甚至4-gram的精確度。

●?修正的n-gram精確度:為了避免簡單重復高頻詞匯以提高精確度的問題,BLEU使用了一種稱為“clip”的操作。即對于每一個n-gram,如果機器翻譯中的出現次數超過所有參考譯文中該n-gram的最大出現次數,則將其計數裁剪為最大出現次數。

●?BP(Brevity Penalty,簡潔懲罰):為了懲罰過短的翻譯,BLEU引入了簡潔懲罰因子。如果機器翻譯的長度短于所有參考譯文中最短的一個,則BP小于1;否則BP等于1。

●?加權幾何平均:最后,將不同n-gram的精確度結合起來,通常是取它們的加權幾何平均值。標準的BLEU分數是1-gram至4-gram精確度的幾何平均值乘以BP。

假設有一個簡單的例子:

機器翻譯輸出為:“the cat”,

而參考譯文之一是:“the cat sits on the mat”。

●?對于1-gram,“the”和“cat”都在參考譯文中出現,所以1-gram精確度為1。

●?對于2-gram,“the cat”也在參考譯文中出現,因此2-gram精確度也為1。

然而,由于機器翻譯較短,BP將會小于1,從而降低最終的BLEU得分。

BLEU雖然廣泛應用,但它也有局限性,比如不能很好地處理語義準確性問題,以及對較長序列的評價不夠敏感等。BLEU主要關注的是精確率(Precision),即候選文本中出現的n-gram有多少是出現在參考文本中的。它試圖衡量機器生成的文本中有多少部分是正確的或與參考文本相匹配的。

(7)ROUGE評估指標是什么?怎么算的?

ROUGE(Recall-Oriented Understudy for Gisting Evaluation)是一系列用于自動評估文本生成質量的指標,特別是針對摘要生成和機器翻譯任務。它通過比較候選文本(如系統生成的摘要)與一組參考文本(如人工編寫的摘要)之間的相似度來工作。ROUGE關注的是召回率(recall),即參考文本中的信息有多少被候選文本覆蓋了。

主要的ROUGE變種

●?ROUGE-N:基于n-gram共現的重疊情況計算得分,衡量候選文本和參考文本之間n-gram的匹配程度。

●?ROUGE-L:利用最長公共子序列(LCS, Longest Common Subsequence)來計算得分,考慮到詞序的重要性。

●?ROUGE-S:基于skip-bigram共現的重疊情況計算得分,其中skip-bigram允許跳過某些詞匯但仍保持其余詞匯的順序不變。這種方式更適合捕捉句子結構上的相似性。

(8)什么是QLoRA?

QLoRA 是一種結合了量化(Quantization)和低秩適配(Low-Rank Adaptation, LoRA)的技術,簡單說就是在微調的時候對參數做了量化用于高效地微調大型語言模型(LLMs)。這種方法旨在減少計算資源需求并加速推理過程,同時保持較高的性能水平。QLoRA 已被證明可以在顯著減少內存使用的同時保持接近全精度微調的性能。

(9)為什么要做分布式微調訓練?

模型規模 :模型的規模太大單張顯卡顯存無法加載全部參數一般24G顯存最多加載7B左右參數規模的大模型因此,需要通過分布式訓練將模型分割到多個計算節點上。

計算效率分布式訓練可以大幅度減少訓練所需時間

(10)怎么實現大模型的分布式微調的?原理策略?

分布式訓練的原理主要通過三種并行策略來實現:數據并行、模型并行以及流水線并行。

●?數據并行(Data Parallelism)

基本概念:在數據并行中,整個模型被復制到每個計算節點上,而訓練數據則被分割成多個小批次,并分配給不同的節點。每個節點獨立地執行前向傳播和反向傳播計算梯度。

同步機制:在完成本地梯度計算后,所有節點需要通過一個全局操作(如AllReduce)來匯總各自的梯度,并同步更新模型參數。這種方式保證了所有節點上的模型副本保持一致。適用場景:適用于可以將數據均勻分割且模型大小適合單個設備內存的情況。

●?模型并行(Model Parallelism)

基本概念:當模型過于龐大無法完全放入單一設備的內存中時,可以采用模型并行的方法。該方法涉及將模型的不同部分放置在不同的設備上,使得每個設備僅需存儲和處理模型的一部分。通信需求:由于模型的不同部分可能需要相互傳遞中間計算結果,因此模型并行通常要求較高的節點間通信帶寬。適用場景:特別適合于超大型模型,例如具有數十億乃至更多參數的語言模型或推薦系統模型。

●?流水線并行(Pipeline Parallelism)

基本概念:流水線并行是一種更復雜的并行策略,它結合了數據并行和模型并行的優點。其核心思想是將模型分為幾個階段,并讓不同的設備負責不同階段的計算。每個批次的數據會依次經過這些階段進行處理。工作流程:為了最大化資源利用率,一種常見的做法是在前一批次的數據仍在后續階段處理的同時,開始對新批次的數據進行初步處理。

適用場景:適用于深度網絡結構,尤其是那些可以通過自然切分的方式劃分為多個相對獨立的階段的情況。

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

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

相關文章

聊聊自動化用例的維護

自動化測試中的農藥悖論:為何長期維護至關重要 自動化測試常被視為"一次編寫,永久有效"的解決方案,但隨著時間的推移,即使設計最精良的測試套件也會逐漸失效。這種現象被稱為農藥悖論(Pesticide Paradox&am…

微幀Visionular斬獲NAB Show 2025年度產品獎

在本月剛結束的NAB Show 2025展會上,全球領先的視頻編碼與AI超高清服務提供商微幀Visionular大放異彩,其核心產品AI-driven Video Compression(AI視頻智能編碼引擎)不僅在展會中吸引了眾多行業目光,更憑借其卓越的編碼…

idea中運行groovy程序報錯

我的項目是使用的 gradle 構建的。 在 idea 中運行Groovy的面向對象程序報錯如下: Execution failed for task :Person.main(). > Process command G:/Program Files/jdk-17/jdk-17.0.12/bin/java.exe finished with non-zero exit value 1* Try: Run with --s…

【自然語言處理與大模型】個人使用LLaMA Factory微調的記錄

一、魔塔社區免費服務器如何使用webui微調? 一上來我就得先記錄一下,使用魔塔社區的免費服務器的時候,因為沒有提供ssh而導致無法看到webui的遺憾如何解決的問題? 執行命令 如果點這個鏈接無法彈出微調的webui,則可以在…

【官方正版,永久免費】Adobe Camera Raw 17.2 win/Mac版本 配合Adobe22-25系列軟

Adobe Camera Raw 2025 年 2 月版(版本 17.2)。目前為止最新版新版已經更新2個月了,我看論壇之前分享的還是2024版,遂將新版分享給各位。 Adobe Camera Raw,支持Photoshop,lightroom等Adobe系列軟件&#…

leetcode:1295. 統計位數為偶數的數字(python3解法)

難度:簡單 給你一個整數數組 nums,請你返回其中位數為 偶數 的數字的個數。 示例 1: 輸入:nums [12,345,2,6,7896] 輸出:2 解釋: 12 是 2 位數字(位數為偶數) 345 是 3 位數字&…

使用Handsontable實現動態表格和下載表格

1.效果 2.實現代碼 首先要加載Handsontable,在示例中我是cdn的方式引入的,vue的話需要下載插件 let hot null;var exportPlugin null;function showHandsontable(param) {const container document.getElementById("hot-container");// 如果…

2.1 基于委托的異步編程方法

基于委托的異步編程模型是 .NET 早期版本中實現異步操作的一種方式,主要通過 BeginInvoke 和 EndInvoke 方法來實現。這種基于委托的異步模式已被 Task 和 async/await 模式取代,但在維護舊代碼時仍可能遇到這種模式。 委托的方法中:Invoke用…

【Bluedroid】藍牙 HID 設備信息加載與注冊機制及配置緩存系統源碼解析

本篇解析Android藍牙子系統加載配對HID設備的核心流程,通過btif_storage_load_bonded_hid_info實現從NVRAM讀取設備屬性、驗證綁定狀態、構造描述符并注冊到BTA_HH模塊。重點剖析基于ConfigCache的三層存儲架構(全局配置/持久設備/臨時設備),其通過動態持久化判定策略和LRU…

Linux 下的網絡管理(附加詳細實驗案例)

一、簡單了解 NM(NetworkManager) 在 Linux 中,NM 是 NetworkManager 的縮寫。它是一個用于管理網絡連接的守護進程和工具集。 在 RHEL9 上,使用 NM 進行網絡配置,ifcfg (也稱為文件)將不再…

長連接、短連接與WebSocket的基本知識

目錄 前言正文 前言 🤟 找工作,來萬碼優才:👉 #小程序://萬碼優才/r6rqmzDaXpYkJZF 爬蟲神器,無代碼爬取,就來:bright.cn Java基本知識: java框架 零基礎從入門到精通的學習路線 附…

2026《數據結構》考研復習筆記四(緒論)

緒論 前言時間復雜度分析 前言 由于先前筆者花費約一周時間將王道《數據結構》知識點大致過了一遍,圈畫下來疑難知識點,有了大致的知識框架,現在的任務就是將知識點逐個理解透徹,并將leetcode刷題與課后刷題相結合。因此此后的過…

Vmware安裝centos7和Redis

2025最詳細vmware安裝centos 7 教程_嗶哩嗶哩_bilibili 1.上面是B站安裝Centos7參考視頻 2.安裝完成需要配置網絡 (新手教程)VMware安裝CentOS7_嗶哩嗶哩_bilibili 重啟網絡服務: ping www.baidu.com ip addr 查看ip地址 兩種重啟方式 3.關閉防火墻 依次執行如下三條命令 …

二進制部署Kubernetes1.32.4最新版本高可用集群及附加組件

一、前言 在云原生技術席卷全球的今天,Kubernetes(K8s)已成為容器編排領域的事實標準。當大家都習慣了kubeadm、kubeasz等自動化工具一鍵部署的便利時,選擇通過二進制方式手動搭建K8s集群更像是一場"知其然亦知其所以然&qu…

樹莓派系統中設置固定 IP

在基于 Ubuntu 的樹莓派系統中,設置固定 IP 地址主要有以下幾種方法: 方法一:使用 Netplan 配置(Ubuntu 18.04 及以上版本默認使用 Netplan) 查看網絡接口名稱 在終端輸入ip link或ip a命令,查看當前所使…

主流單片機與編程調試工具對應關系表梳理

單片機系列/型號 | 官方IDE/工具鏈 | 調試器/燒錄器 | 第三方支持工具 |調試接口協議 | 特點與適用場景| | STMicroelectronics (STM32) STM32全系列 STM32CubeIDE ST-LINK/V2/V3 - PlatformIO (VS Code插件) SWD/JTAG 官方集成開發環境,支持HAL庫,免費…

VulnHub-DarkHole_2靶機滲透教程

1.靶機部署 [Onepanda] Mik1ysomething 靶機下載:https://download.vulnhub.com/darkhole/darkhole_2.zip 直接使用VMware導入打開就行 注意:靶機的網絡連接模式必須和kali一樣,讓靶機跟kali處于同一網段,這樣kali才能掃出靶機…

USO服務器操作系統手動升級GCC 12.2.0版本

1. 從 GNU 官方 FTP 服務器下載 GCC 12.2.0 的源碼包,并解壓進入源碼目錄。 wget https://ftp.gnu.org/gnu/gcc/gcc-12.2.0/gcc-12.2.0.tar.gz tar -zxvf gcc-12.2.0.tar.gz cd gcc-12.2.0 2. 運行腳本下載并配置 GCC 編譯所需的依賴庫。此步驟會自動下載如 GMP…

設計模式基礎概念(行為模式):觀察者模式(Observer)

概述 我們可以發現這樣一個場景:如果你訂閱了一份雜志或報紙, 那就不需要再去報攤查詢新出版的刊物了。 出版社 (即應用中的 “發布者(publisher)”) 會在刊物出版后 (甚至提前) 直…

JavaFX實戰:從零到一實現一個功能豐富的“高級反應速度測試”游戲

大家好!今天我們不搞簡單的“紅變綠就點”了,來點硬核的!我們要用 JavaFX 從頭開始,構建一個更復雜、更有趣也更考驗能力的“高級反應速度測試”游戲。這個版本將引入選擇反應時 (Choice Reaction Time) 的概念——你需要在多個干…