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

LLM 學(xué)習(xí)筆記:最好的學(xué)習(xí)方法是帶著問題去尋找答案

人工智能
本文從最常用的聊天應(yīng)用過程分析開始,引入對(duì)話過程原理淺析,再到LLM訓(xùn)練過程。

作者:huaxing

知其然,然后知其所以然。本文主要是對(duì)學(xué)習(xí)賽博活佛Andrej Karpathy 7個(gè)小時(shí)教學(xué)視頻的總結(jié)和拓展閱讀筆記,推薦去看原視頻,很精彩,鏈接在文末。從最常用的聊天應(yīng)用過程分析開始,引入對(duì)話過程原理淺析,再到LLM訓(xùn)練過程;再結(jié)合當(dāng)前主流的應(yīng)用形式,在得知最新用法的同時(shí),加深對(duì)LLM的理解;再談?wù)凙I的最新重大進(jìn)展MCP;以及作為JAVAer,在Java領(lǐng)域有哪些前沿能力去整合LLM。

最后再羅列一下再公司內(nèi)部一些AI平臺(tái)、工具。最好的學(xué)習(xí)方法是帶著問題去尋找答案,以費(fèi)曼學(xué)習(xí)法為標(biāo)準(zhǔn),產(chǎn)出可教學(xué)的資料。本文是個(gè)人所學(xué)梳理和所想記錄,作為AI的小白,個(gè)人知識(shí)有限,難免有所錯(cuò)誤、疏漏,請(qǐng)及時(shí)糾偏、不吝賜教,感謝。

一、大模型聊天過程分析

我打開AI聊天窗口https://chat.deepseek.com,發(fā)送我的Query:

1. 流程淺析

當(dāng)我們開始一個(gè)LLM聊天對(duì)話,輸入問題時(shí),實(shí)際上大模型托管服務(wù)有內(nèi)置的上下文信息,在我們輸入信息,按下發(fā)送按鈕時(shí),大模型收到的是內(nèi)置上下文 + 系統(tǒng)服務(wù)Prompt + 用戶輸入信息。

大模型經(jīng)過神經(jīng)網(wǎng)絡(luò)的概率統(tǒng)計(jì)(權(quán)重?cái)M合)得到下一個(gè)要說的詞,通過流式響應(yīng)逐個(gè)詞丟回會(huì)話窗口,用戶就能看到大模型“正在打字”和我們聊天。“打字”的速度就是大模型響應(yīng)的速度,通常看描述LLM性能的一個(gè)指標(biāo)N token/s。

2. 原理淺析

本質(zhì)就是從輸入的 tokens 推測下一個(gè) token 的出現(xiàn)概率,將可能性較高的作為輸出token,再將得到的token添加到輸入中,直到滿足結(jié)束條件(上下文長度限制、結(jié)束符以較高概率出現(xiàn)、用戶定義的停止條件、概率閾值與采樣策略、模型架構(gòu)的隱式結(jié)束符)。所以LLM本質(zhì)上是一個(gè)具有統(tǒng)計(jì)概率的知識(shí)記憶模糊的知識(shí)回顧系統(tǒng),也可簡稱概率性復(fù)讀機(jī)。那么這個(gè)回顧系統(tǒng)是怎么實(shí)現(xiàn)的呢,“zip文件”怎么得來的?構(gòu)建一個(gè)現(xiàn)代的LLM三個(gè)步驟:**預(yù)訓(xùn)練、后訓(xùn)練(SFT)和強(qiáng)化學(xué)習(xí)(RL\RLHF)**。

3. 預(yù)訓(xùn)練

在預(yù)訓(xùn)練過程中,需要有原始數(shù)據(jù)和驗(yàn)證數(shù)據(jù),所以通常可以將數(shù)據(jù)集分為兩份,例如90%用于訓(xùn)練,10%用于驗(yàn)證(具體比例可能因任務(wù)調(diào)整)。

(1) 數(shù)據(jù)集

圖片來源huggingface.co/space...

數(shù)據(jù)集生成流程:

  • 列舉主流網(wǎng)站的URL
  • 有害網(wǎng)站URL過濾,垃圾站點(diǎn)、成人內(nèi)容等
  • 從URL網(wǎng)站響應(yīng)的富文本提取文字內(nèi)容
  • 文本語言過濾,如僅針保留英文或者中文內(nèi)容,在huggingface上數(shù)據(jù)集語言分布前5如下圖:

  • Gopher 過濾,去除無意義、低信息量或有害內(nèi)容(如垃圾文本、暴力、偏見等)
  • MinHash 去重,用于快速檢測并移除數(shù)據(jù)集中的重復(fù)或近似重復(fù)的文本片段(如文檔、段落或句子)。其核心目的是減少數(shù)據(jù)冗余,避免模型因重復(fù)數(shù)據(jù)過擬合或偏向高頻內(nèi)容,同時(shí)節(jié)省計(jì)算資源。
  • C4 過濾,C4(Colossal Clean Crawled Corpus) 數(shù)據(jù)集進(jìn)行清洗和篩選的步驟,旨在從原始網(wǎng)頁文本中提取高質(zhì)量、多樣化的語料,同時(shí)去除噪聲、重復(fù)和低效內(nèi)容。
  • Custom Filters(自定義過濾器)目標(biāo)是針對(duì)通用過濾方法(如MinHash去重、C4/Gopher過濾)無法覆蓋的領(lǐng)域特殊性問題,進(jìn)行更精細(xì)化的數(shù)據(jù)質(zhì)量控制。
  • PII Removal(個(gè)人身份信息移除) 是指從原始數(shù)據(jù)中識(shí)別并刪除或匿名化 個(gè)人身份信息(Personally Identifiable Information, PII) 的關(guān)鍵步驟,旨在保護(hù)用戶隱私、遵守?cái)?shù)據(jù)保護(hù)法規(guī)(如GDPR、CCPA),并降低模型泄露敏感信息的風(fēng)險(xiǎn)。

預(yù)訓(xùn)練數(shù)據(jù)集示例:

(2) Tokenization

tiktokenizer.vercel.... 上可以看到模型token可能是不一樣的,這里舉例OpenAI的對(duì)話示例:

可以看到OpenAI對(duì)數(shù)據(jù)結(jié)構(gòu)化了,定義了對(duì)話角色,增加了<|im_start|>、<|im_sep|>、<|im_end|>這樣的標(biāo)識(shí)符用于分割對(duì)話,這些標(biāo)識(shí)符都對(duì)飲一個(gè)token,“You are a helpful assistant”的tokens序列是“3575, 553, 261, 10297, 29186”。

Tokenization(分詞/令牌化)是將輸入文本拆分為模型可處理的離散單元(Token)的過程,即將文本數(shù)據(jù)表示為token的一維序列。它是自然語言處理(NLP)中的關(guān)鍵步驟,直接影響模型對(duì)文本的理解能力和效率。

數(shù)據(jù)集的原始文本數(shù)據(jù)量非常大,如著名的FineWeb數(shù)據(jù)集就有15萬億個(gè)token,總共44TB大小,需要高效拆分文本窗口,在能表達(dá)混合多種語言、復(fù)雜字符表達(dá)等情況,但不丟失語義。分詞實(shí)際上就是一層映射包裝,過粗、過細(xì)的分詞都不利于訓(xùn)練和模型性能表現(xiàn),分詞過細(xì)(如字符級(jí)、字節(jié)級(jí)別、比特級(jí)別)導(dǎo)致長序列,計(jì)算開銷大,分詞過粗(如單詞級(jí))則詞匯表爆炸,內(nèi)存占用高。

采用BPE(Byte-Pair Encoding,如GPT)、WordPiece(如BERT)或SentencePiece,將文本轉(zhuǎn)化為子詞(subword)單元。BPE算法(Byte-Pair Encoding):平衡詞匯表大小與序列長度。

原始文本:

原始字節(jié):

tokenization:

對(duì)話過程中輸入的token越多,越分散注意力,降低模型準(zhǔn)確性和性能,節(jié)約成本。不丟失信息的情況,越短越好,性能成本都會(huì)提升。所以,聊不同的主題應(yīng)該單獨(dú)開會(huì)話窗口。

(3) 詞匯表

在tokenization過程中,我們發(fā)現(xiàn),在44TB的文本內(nèi)容里,很多詞一起出現(xiàn)的概率較高,如圖中49305后面出現(xiàn)17,那么就可以將49305與17合并成4930517,作為一個(gè)新的token,重復(fù)如此。最后,再將所有詞匯壓縮到最小映射表,重新編號(hào)token,這樣就得到了一份可以還原44TB內(nèi)容的詞匯表。如GPT-4詞匯表是100277個(gè)。主流大語言模型的詞匯表大小如下(按數(shù)值從小到大排序):

① 原版LLaMA詞匯表大小為 32,000 (32K),但中文token較少(僅幾百個(gè))。

② 中文LLaMA/Alpaca通過合并中文tokenizer后,詞匯表擴(kuò)展至 49,953 (約50K)。

③ 優(yōu)化后的實(shí)驗(yàn)?zāi)P?/p>

  • 部分研究將詞匯表從32K擴(kuò)展至 43,000 (43K),顯著提升下游任務(wù)性能。
  • 理論預(yù)測的Llama2-70B最優(yōu)詞表大小為 216,000 (216K),但尚未實(shí)際部署。

④ 多語言模型(如XLM-R、Bloom)詞匯表普遍較大,約 250,000 (250K)。

(4) 數(shù)據(jù)分片

將大規(guī)模訓(xùn)練數(shù)據(jù)集劃分為多個(gè)邏輯或物理片段(Shard)的技術(shù),目的是實(shí)現(xiàn)高效的數(shù)據(jù)并行處理和分布式訓(xùn)練。

數(shù)據(jù)分片的核心作用:

  • 解決內(nèi)存與存儲(chǔ)限制:單個(gè)節(jié)點(diǎn)無法加載全部數(shù)據(jù),分片后每個(gè)節(jié)點(diǎn)僅處理部分?jǐn)?shù)據(jù)。
  • 并行加速訓(xùn)練:不同分片由不同計(jì)算設(shè)備并行處理(如GPU),縮短訓(xùn)練時(shí)間。
  • 容錯(cuò)性:單個(gè)分片損壞或失敗時(shí),只需重新處理該分片,而非整個(gè)數(shù)據(jù)集。

我們知道數(shù)據(jù)集是一張表,所以數(shù)據(jù)分片的方式方法和傳統(tǒng)結(jié)構(gòu)化數(shù)據(jù)分片類似,但這里要結(jié)合訓(xùn)練過程的實(shí)際情況做調(diào)整,數(shù)據(jù)分片常見方法:

  • 靜態(tài)分片,預(yù)先規(guī)劃好分片,每個(gè)GPU固定處理指定分片,優(yōu)點(diǎn)實(shí)現(xiàn)簡單,缺點(diǎn)是實(shí)際訓(xùn)練過程中可能導(dǎo)致GPU負(fù)載不平衡,因?yàn)閿?shù)據(jù)集中的每一行長度是不同的,所以會(huì)導(dǎo)致數(shù)據(jù)傾斜。
  • 動(dòng)態(tài)分片,訓(xùn)練過程中動(dòng)態(tài)分配數(shù)據(jù)(如通過中央調(diào)度器或分布式文件系統(tǒng)),優(yōu)點(diǎn):自動(dòng)平衡負(fù)載,適應(yīng)數(shù)據(jù)異構(gòu)性。缺點(diǎn):實(shí)現(xiàn)復(fù)雜,需額外協(xié)調(diào)開銷(如Apache Spark或Ray框架)。
  • 分片與數(shù)據(jù)管道的結(jié)合,流水線加載:當(dāng)一個(gè)GPU處理當(dāng)前分片時(shí),異步預(yù)加載下一個(gè)分片(隱藏I/O延遲);格式優(yōu)化:分片常存儲(chǔ)為高效二進(jìn)制格式(如TFRecord、HDF5),加速讀取。

(5) 模型架構(gòu)選擇

當(dāng)前主流LLM通常是采用Transformer結(jié)構(gòu),包含自主力(Self-Attention)和多頭注意力(Multi-Head Attention)的注意力層、前饋神經(jīng)網(wǎng)絡(luò)(FFN),注意力層+FFN等模塊組成一層,需要確定模型的層數(shù)和參數(shù)量。

主流架構(gòu):Transformer(基于自注意力機(jī)制),常見變體:

  • Decoder-only(GPT系列):適合生成任務(wù),單向注意力掩碼。
  • Encoder-decoder(T5、BART):適合翻譯等序列到序列任務(wù)。

規(guī)模參數(shù):

  • 層數(shù)(L):12-100+(如GPT-3 davinci版本包含96層)
  • 隱藏層維度(d_model):768-12,288
  • 注意力頭數(shù)(h):12-128

Transformer結(jié)構(gòu):

  • 自注意力機(jī)制:計(jì)算輸入序列中每個(gè)位置的關(guān)聯(lián)權(quán)重(如多頭注意力)。
  • 前饋網(wǎng)絡(luò)(FFN):每個(gè)注意力層后接非線性變換。
  • 層數(shù)與參數(shù)量:例如,GPT-3有1750億參數(shù),包含96層Transformer塊。

(6) 訓(xùn)練任務(wù)設(shè)計(jì)、執(zhí)行和優(yōu)化

① 預(yù)訓(xùn)練任務(wù)設(shè)計(jì)

自監(jiān)督學(xué)習(xí):無需人工標(biāo)注,通過文本自身生成監(jiān)督信號(hào)。

  • 因果語言建模(CLM):預(yù)測下一個(gè)Token,目標(biāo)函數(shù):

  • 掩碼語言建模(MLM):隨機(jī)遮蓋部分Token并預(yù)測(如BERT),遮蓋比例通常15%。
  • 混合目標(biāo):如UniLM結(jié)合雙向和單向預(yù)測。

② 訓(xùn)練執(zhí)行

③ 訓(xùn)練過程

分布式訓(xùn)練,并行策略執(zhí)行、通信優(yōu)化,每一輪訓(xùn)練(單步訓(xùn)練)流程包括:

  • 數(shù)據(jù)加載與預(yù)處理,可以是分布式數(shù)據(jù)加載,或動(dòng)態(tài)批次構(gòu)建。
  • 前向傳播(含激活重計(jì)算)
  • 反向傳播
  • 梯度同步(數(shù)據(jù)并行)
  • 參數(shù)更新(含梯度裁剪)

Transformer結(jié)構(gòu)的訓(xùn)練通常需要經(jīng)過上萬輪的訓(xùn)練,即上萬個(gè)訓(xùn)練步數(shù),訓(xùn)練時(shí)會(huì)充分利用GPU并行的特性,在分布式訓(xùn)練中并行,包括數(shù)據(jù)并行、模型并行、張量并行、流水線并行,且總GPU數(shù) = 數(shù)據(jù)并行度 × 模型并行度。

數(shù)據(jù)并行(Data Parallelism):將批次(Batch)劃分為多個(gè)子批次(Sub-batch),分配到不同GPU上并行處理。模型并行(Model Parallelism):

  • 張量并行(Tensor Parallelism):將單個(gè)矩陣運(yùn)算拆分到多GPU(如Megatron-LM)。
  • 流水線并行(Pipeline Parallelism):將模型層拆分到多GPU(如GPipe)。

舉例GPT-3的預(yù)訓(xùn)練情況,加深直觀理解:

  • 參數(shù)量:1750億
  • 訓(xùn)練數(shù)據(jù):約3000億token
  • 訓(xùn)練步數(shù):約94000步(批量大小3.2M tokens/步,3000億/3.2M 約等于94000)
  • 耗時(shí):數(shù)周(使用數(shù)千張A100 GPU)
  • 上下文大小:原始上下文長度是2048 Tokens,硬件顯存和注意力計(jì)算復(fù)雜度的權(quán)衡結(jié)果,Transformer的自注意力機(jī)制計(jì)算復(fù)雜度為 O(n2)(n為序列長度),導(dǎo)致顯存和計(jì)算成本隨序列長度急劇增長。

這里批量大小和上下文大小的關(guān)系是:序列數(shù)=批次大小/上下文長度=3.2*10^6/2048≈1562 個(gè)序列/步,批次大小是并行訓(xùn)練的序列數(shù)量,而上下文長度是單個(gè)序列的長度。這里對(duì)tokenization后的數(shù)據(jù)集進(jìn)行切分為一個(gè)個(gè)小塊(chunk),這個(gè)chunk的大小就是上下文窗口長度(context window),chunk的大小是序列長度,批次大小是同時(shí)處理的chunk數(shù)量,訓(xùn)練批次總token數(shù)是兩者的乘積。

④ 單輪訓(xùn)練結(jié)果

在預(yù)訓(xùn)練的階段,每一輪預(yù)訓(xùn)練訓(xùn)練的結(jié)果是得到一個(gè)基礎(chǔ)模型(Base Model),這個(gè)模型可以預(yù)測每一個(gè)輸入序列tokens的下一個(gè)token,可能每個(gè)詞匯token都會(huì)有一個(gè)概率,這里是統(tǒng)計(jì)性和概率性的結(jié)果,是對(duì)訓(xùn)練數(shù)據(jù)集的回放。

上圖得到的next token ID 是19348(" Direction"),但是我們期望的是3962(" Post")概率更高一些。所以,在完成一輪訓(xùn)練后,我們會(huì)用測試數(shù)據(jù)集進(jìn)行測試,計(jì)算Lost函數(shù),并將擬合偏離反饋到神經(jīng)網(wǎng)絡(luò)的參數(shù)調(diào)整上,這樣下一輪訓(xùn)練后,token ID 3962(" Post")的概率就會(huì)更高一些。

整個(gè)訓(xùn)練的過程,我們逐步調(diào)整參數(shù)權(quán)重,這種權(quán)重的參數(shù)有上億個(gè),如DeepSeek R1滿血版參數(shù)量是671B(6710億)個(gè),GPT-3 的參數(shù)量是 1750 億,GPT4的參數(shù)量1.8 萬億左右,這是很大的參數(shù)量。所以,我們可以理解為神經(jīng)網(wǎng)絡(luò)實(shí)際上是一個(gè)非常巨大的數(shù)學(xué)表達(dá)式,我們預(yù)訓(xùn)練后得到的就是這樣一個(gè)或者一群這樣的函數(shù)表達(dá)式。

這樣一個(gè)超巨大的數(shù)學(xué)表達(dá)式展開式什么樣的呢?這里有一個(gè)大模型可視化網(wǎng)址bbycroft.net/llm ,可以看到一個(gè)85584個(gè)參數(shù)的神經(jīng)網(wǎng)絡(luò),這里詳細(xì)講解了通過預(yù)訓(xùn)練后得到的排序神經(jīng)網(wǎng)絡(luò),在處理一個(gè)排序任務(wù)的時(shí)候整個(gè)過程,推薦大家去做拓展閱讀。這里面還有GPT-2、GPT-3的神經(jīng)網(wǎng)絡(luò)可視化,可以直觀感受到不同規(guī)格參數(shù)的神經(jīng)網(wǎng)絡(luò)。

循環(huán)訓(xùn)練以上單步訓(xùn)練外,還需要引入優(yōu)化,保證訓(xùn)練結(jié)果。

⑤ 訓(xùn)練優(yōu)化

包括軟件技術(shù)優(yōu)化和硬件技術(shù)優(yōu)化。

a. 軟件技術(shù)優(yōu)化:

混合精度訓(xùn)練:

  • FP16/FP8存儲(chǔ):參數(shù)和梯度用低精度保存,減少顯存占用,DeepSeek 的優(yōu)化之一就是FP8化,并且開源了他們FP8的項(xiàng)目DeepGEMM,提升效果是很明顯的。

  • Loss Scaling:對(duì)損失值放大以防止梯度下溢。
  • 激活檢查點(diǎn)(Activation Checkpointing):僅保存關(guān)鍵層的激活值,其余在反向傳播時(shí)重新計(jì)算,顯存減少30%-50%。
  • 內(nèi)核融合(Kernel Fusion):將多個(gè)CUDA操作合并為單一內(nèi)核(如將LayerNorm + Dropout融合)。

b. 硬件技術(shù)優(yōu)化

顯存管理:

  • 顯存池(Memory Pool):預(yù)分配顯存塊,避免碎片化。
  • 頁鎖定內(nèi)存(Pinned Memory):加速主機(jī)到設(shè)備的數(shù)據(jù)傳輸。

計(jì)算加速:

  • FlashAttention:優(yōu)化注意力計(jì)算顯存占用,支持更長的上下文(如32K)。
  • 稀疏計(jì)算(Sparsity):對(duì)MoE(Mixture of Experts)模型的專家路由動(dòng)態(tài)分配計(jì)算資源。

(7) 預(yù)訓(xùn)練產(chǎn)物

至此,我們得到了一個(gè)基礎(chǔ)模型(Base Model),可以看做是一個(gè)互聯(lián)網(wǎng)詞匯模擬器,它能夠模仿數(shù)據(jù)集的知識(shí),蹦出概率較高的下一個(gè)token,這些token組成的知識(shí)是模糊的、具有統(tǒng)計(jì)性質(zhì)的。就像是將數(shù)據(jù)集的只是內(nèi)化存儲(chǔ)到了神經(jīng)網(wǎng)絡(luò)之上,知識(shí)可以被擬合回放。但是它還不能成為一個(gè)有用的助手,它的回答可能是不可讀,甚至有害的,這時(shí)候給他問題他也許只會(huì)給出更多問題或者做簡單背誦。還需要進(jìn)到后訓(xùn)練才能做出正確相應(yīng),成為一個(gè)有個(gè)性的助手。

4.  后訓(xùn)練

進(jìn)一步優(yōu)化模型性能、對(duì)齊人類意圖或適應(yīng)特定任務(wù)的階段。這一階段的關(guān)鍵在于讓模型從“通用知識(shí)庫”轉(zhuǎn)變?yōu)椤翱煽亍踩⒖捎玫墓ぞ摺薄?/p>

后訓(xùn)練是LLM從“知識(shí)存儲(chǔ)”到“實(shí)用工具”的關(guān)鍵過渡。通過這一過程,模型不僅學(xué)會(huì)生成流暢文本,還能在安全性、可控性和任務(wù)適應(yīng)性上達(dá)到實(shí)際應(yīng)用標(biāo)準(zhǔn)。例如,ChatGPT的后訓(xùn)練階段(包括SFT和RLHF)使其能夠理解復(fù)雜指令并生成符合倫理的回答,而未經(jīng)后訓(xùn)練的原始GPT模型可能輸出有害或無意義內(nèi)容。

這一過程需要大量高質(zhì)量數(shù)據(jù)、計(jì)算資源和多學(xué)科協(xié)作(如語言學(xué)、倫理學(xué)、計(jì)算機(jī)科學(xué)),是當(dāng)前LLM研發(fā)的核心挑戰(zhàn)之一。

(1) 監(jiān)督微調(diào)(Supervised Fine-Tuning, SFT)

我們?cè)谟玫牧奶煨蚅LM是對(duì)話模式的,

對(duì)話示例 通過人工標(biāo)注的高質(zhì)量數(shù)據(jù),調(diào)整模型的輸出風(fēng)格、格式和內(nèi)容,使其更符合實(shí)際需求。

  • 數(shù)據(jù)集:是一組對(duì)話列表,是通過人工創(chuàng)建的高質(zhì)量對(duì)話。
  • 方法:使用問答對(duì)、指令-響應(yīng)數(shù)據(jù)(例如:用戶指令+理想回答)進(jìn)行微調(diào),對(duì)模型進(jìn)行“隱式編程”,進(jìn)一步調(diào)整了權(quán)重,模型會(huì)逐漸建立從自然語言指令到目標(biāo)響應(yīng)的隱式映射函數(shù),通過梯度下降在參數(shù)空間中尋找指令對(duì)齊的最優(yōu)解。
  • 效果:提升模型對(duì)指令的理解和響應(yīng)質(zhì)量,減少無意義或重復(fù)輸出。

數(shù)據(jù)集的構(gòu)造,早期OpenAI是在upwork(一個(gè)自由職業(yè)平臺(tái))和scaleAI(一個(gè)標(biāo)注平臺(tái))發(fā)布問題任務(wù),由網(wǎng)友完成回答并提交,形成數(shù)十萬的條基礎(chǔ)數(shù)據(jù)集。

OpenAI在2022年的一個(gè)論文《Training language models to follow instructions with human feedback》 如今,大量標(biāo)注工作由大語言模型輔助完成(例如,人類更多是進(jìn)行編輯而非從頭撰寫),甚至有些標(biāo)注完全是合成生成的,如著名的UltraChat。

nvidia公開的一份代碼SFT數(shù)據(jù)集示例如下圖:

huggingface上的后訓(xùn)練數(shù)據(jù)集 Models need tokens to think,問答是否更好,也會(huì)考慮模型本身的特性,那些能讓回答逐步計(jì)算和迭代的回答更好,跳躍性、單步計(jì)算量的回答是沒那么好。比如下圖右邊的答案更好,因?yàn)樗侵鸩酵茖?dǎo)和計(jì)算,在最后給出的答案,而左邊在一開始就做了全部計(jì)算,這對(duì)模型本身的計(jì)算消耗是更大。

(2) 獎(jiǎng)勵(lì)模型(Reward Modeling)

目的:訓(xùn)練一個(gè)能夠評(píng)估生成內(nèi)容質(zhì)量的獎(jiǎng)勵(lì)模型(Reward Model),為后續(xù)強(qiáng)化學(xué)習(xí)提供反饋信號(hào)。

方法:

  • 數(shù)據(jù)集,收集人類對(duì)模型輸出的排序數(shù)據(jù)(例如:讓標(biāo)注者對(duì)多個(gè)回答按質(zhì)量排序),在huggingface上公開的一些數(shù)據(jù)集會(huì)附上評(píng)分。
  • 訓(xùn)練獎(jiǎng)勵(lì)模型,使其能夠預(yù)測人類對(duì)回答的偏好(如回答A比回答B(yǎng)更好,B比C更好,則A是winning_response,C是losing_response)。
  • 數(shù)據(jù)格式,三元組(Prompt, 優(yōu)質(zhì)回答, 劣質(zhì)回答),或四元組(Prompt, 回答A, 回答B(yǎng), 偏好標(biāo)簽。
  • 關(guān)鍵點(diǎn),獎(jiǎng)勵(lì)模型通常是另一個(gè)小型神經(jīng)網(wǎng)絡(luò),學(xué)習(xí)人類的偏好標(biāo)準(zhǔn)。
  • 模型架構(gòu)設(shè)計(jì),通常基于預(yù)訓(xùn)練語言模型(如BERT、GPT)改造,移除最后一層并添加標(biāo)量輸出層,即輸出標(biāo)量分?jǐn)?shù),表示回答的質(zhì)量。
  • 損失函數(shù),基于對(duì)比學(xué)習(xí),常用Bradley-Terry模型計(jì)算偏好概率,L=?log(σ(r(q,w)?r(q,l))) ,其中r(q, w)和r(q, l)分別是對(duì)優(yōu)質(zhì)回答和劣質(zhì)回答的預(yù)測分?jǐn)?shù),σ為Sigmoid函數(shù)。
  • 驗(yàn)證與迭代,一致性:對(duì)相似質(zhì)量的回答評(píng)分差異小,區(qū)分度:能捕捉回答間的細(xì)微質(zhì)量差距,對(duì)齊度:預(yù)測分?jǐn)?shù)與人工標(biāo)注偏好高度相關(guān)(如Kendall Tau系數(shù))。

(4) 領(lǐng)域適應(yīng)(Domain Adaptation)

目的:解決源域(訓(xùn)練數(shù)據(jù))與目標(biāo)域(測試數(shù)據(jù))分布不一致的問題,使模型在目標(biāo)域上保持高性能,適應(yīng)特定領(lǐng)域知識(shí)(如醫(yī)療、法律、金融、代碼生成)。

方法:

  • 在領(lǐng)域相關(guān)數(shù)據(jù)上繼續(xù)預(yù)訓(xùn)練(持續(xù)預(yù)訓(xùn)練)。
  • 使用領(lǐng)域指令數(shù)據(jù)進(jìn)行監(jiān)督微調(diào)。

(4) 模型存在的問題

① 幻覺和解決辦法

企業(yè)微信截圖_05db3b26-91f3-4523-99b7-4de36a915e6a

② 長記憶和解決辦法

  • 發(fā)生場景:對(duì)話上下文非常長時(shí),如上傳了文件、多輪對(duì)話、跨模態(tài)任務(wù)融合等
  • 技術(shù)原因:上下文窗口硬性限制、信息稀釋與注意力衰減、模型無狀態(tài)和存儲(chǔ)機(jī)制缺失、計(jì)算資源和效率的矛盾(需要分布式計(jì)算)
  • 解決辦法:外部存儲(chǔ)結(jié)合(向量數(shù)據(jù)庫)、顯示記憶和分層存儲(chǔ)(高頻知識(shí)內(nèi)化到模型參數(shù)、中頻KV向量存儲(chǔ)、低頻動(dòng)態(tài)檢索)等方法

③ 數(shù)學(xué)計(jì)算能力 經(jīng)典問題:

進(jìn)行大數(shù)乘法的時(shí)候,通過心算,得出近似的錯(cuò)誤答案:

DeepSeek R1思考了很久,最終通過心算計(jì)算正確,應(yīng)該是借助MoE分配給了數(shù)學(xué)專家神經(jīng)網(wǎng)絡(luò)完成了正確的推算。

④ 模型直接使用工具

模型本身還不具備注解調(diào)用工具的能力,目前都是在模型輸出后給到應(yīng)用層來完成工具調(diào)用。

⑤ Tokenization的副作用

5. 強(qiáng)化學(xué)習(xí)(RL)

通常認(rèn)為RL是屬于后訓(xùn)練的一部分,但Andrej Karpathy認(rèn)為RL和SFT、RLHF是有本質(zhì)區(qū)別的。RLHF在不可驗(yàn)證的領(lǐng)域進(jìn)行學(xué)習(xí),通過持續(xù)采樣、評(píng)分和策略更新逐步對(duì)齊人類偏好,在完成訓(xùn)練后做重復(fù)訓(xùn)練是沒有收益的;而RL是可以不斷重復(fù)對(duì)模型進(jìn)行改進(jìn),獲得復(fù)利的,如增加推理輪次獲得更深度的思考結(jié)果。而RL從后訓(xùn)練中拿出來是因?yàn)镽L有廣闊的前景,RL是推理模型構(gòu)建的必要,也是模型走向AGI的關(guān)鍵。

早在DeepMind的AlphaGo就在用,但是是在封閉的環(huán)境內(nèi),是明確游戲規(guī)則的,在開放化話題中表現(xiàn)不佳,如何提升在開放環(huán)、開放話題的表現(xiàn)一直是業(yè)界難題。RL是當(dāng)前業(yè)界前沿的技術(shù)話題,DeepSeek是第一個(gè)公開討論實(shí)現(xiàn)方法并開源了實(shí)現(xiàn)成果、開源實(shí)現(xiàn)工具和實(shí)現(xiàn)框架的,所以我主要是閱讀DeepSeek_R1.pdf來理解RL。論文中提出了一種用強(qiáng)化學(xué)習(xí)“教會(huì)”大模型自主推理的方法。他們先訓(xùn)練了一個(gè)完全靠自我摸索成長的模型(DeepSeek-R1-Zero),發(fā)現(xiàn)它雖然聰明但“說話混亂”;于是改進(jìn)出一個(gè)結(jié)合少量示例教學(xué)和多階段訓(xùn)練的升級(jí)版(DeepSeek-R1),最終達(dá)到接近頂尖閉源模型的水平。團(tuán)隊(duì)還成功將大模型的能力“壓縮”到小模型上,讓手機(jī)等設(shè)備也能運(yùn)行高性能推理模型。這項(xiàng)工作為AI自主學(xué)習(xí)和知識(shí)遷移提供了新思路,并開源了全部成果供社區(qū)使用。

(1) 訓(xùn)練方法

① 通過純強(qiáng)化學(xué)習(xí)(無需監(jiān)督微調(diào))訓(xùn)練,直接從基礎(chǔ)模型(DeepSeek-V3-Base)開始,使用GRPO(Group Relative Policy Optimization)算法優(yōu)化,通過分組獎(jiǎng)勵(lì)估計(jì)替代傳統(tǒng)批評(píng)模型,降低訓(xùn)練成本。獎(jiǎng)勵(lì)模型結(jié)合準(zhǔn)確性獎(jiǎng)勵(lì)(基于規(guī)則驗(yàn)證結(jié)果)和格式獎(jiǎng)勵(lì)(強(qiáng)制結(jié)構(gòu)化輸出)。模型在訓(xùn)練中自然涌現(xiàn)出自我驗(yàn)證、反思、生成長思維鏈(CoT)等能力,在數(shù)學(xué)(如AIME 2024)、編程等任務(wù)上表現(xiàn)優(yōu)異(pass@1達(dá)71%),但存在可讀性差和語言混合問題。

② 為解決DeepSeek-R1-Zero的缺陷,引入冷啟動(dòng)數(shù)據(jù)(人工設(shè)計(jì)數(shù)千條高質(zhì)量長思維鏈可讀模板示例)初始化模型,隨后進(jìn)行兩階段強(qiáng)化學(xué)習(xí)(優(yōu)化推理能力與人類偏好對(duì)齊)和兩階段SFT(融合推理與非推理任務(wù)數(shù)據(jù))。最終性能與OpenAI的o1-1217模型相當(dāng),在AIME 2024上pass@1達(dá)79.8%,數(shù)學(xué)任務(wù)(MATH-500)準(zhǔn)確率達(dá)97.3%。

③ 將DeepSeek-R1的推理能力遷移到小規(guī)模密集模型(1.5B至70B參數(shù)的模型),即直接使用DeepSeek-R1生成的80萬條數(shù)據(jù)微調(diào)小模型,無需額外強(qiáng)化學(xué)習(xí)。例如,蒸餾后的14B模型在AIME 2024上超越QwQ-32B-Preview,32B和70B模型在推理基準(zhǔn)上刷新記錄。

示例:國人開源,基于滿血DeepSeek-R1生成,可用于蒸餾的中文數(shù)據(jù)集 huggingface.co/datas...

(2) 思維鏈(CoT,chain-of-thought)

在解決復(fù)雜問題時(shí)生成的一種結(jié)構(gòu)化推理過程,它要求模型不僅輸出最終答案,還需詳細(xì)展示解題的中間步驟(如邏輯推導(dǎo)、公式計(jì)算、假設(shè)驗(yàn)證等),從而提升推理的透明性和準(zhǔn)確性。示例:

<think>  1. 設(shè)方程 √(a?√(a+x)) = x,首先平方兩邊得到 a?√(a+x) = x2;  
2. 進(jìn)一步整理得 √(a+x) = a?x2,再次平方后化簡為四次方程;    
3. 發(fā)現(xiàn)中間步驟可能有誤,重新檢查并修正推導(dǎo)邏輯...</think>
<answer>
.....最終答案是...... 
</answer>

主要作用:

  • 提升準(zhǔn)確性,在數(shù)學(xué)(AIME 2024)、編程(Codeforces)等任務(wù)中,CoT幫助模型分解復(fù)雜問題,減少計(jì)算錯(cuò)誤。
  • 增強(qiáng)可解釋性,CoT使模型的思考過程可視化,便于用戶理解其決策邏輯,尤其在教育、科研等需透明推理的場景中價(jià)值顯著。
  • 支持長上下文推理,模型通過生成數(shù)百至數(shù)千個(gè)推理標(biāo)記(Token),逐步解決需多步推導(dǎo)的問題(如證明題或代碼調(diào)試)。

示例:

(3) Aha moment

在強(qiáng)化學(xué)習(xí)(RL)過程中,DeepSeek - R1 - Zero 在訓(xùn)練集上的平均回復(fù)長度。DeepSeek - R1 - Zero 自然而然地學(xué)會(huì)了花費(fèi)更多思考時(shí)間來解決推理任務(wù)。

DeepSeek - R1 - Zero 一個(gè)中間版本的有趣 “頓悟時(shí)刻”。該模型學(xué)會(huì)了以擬人化的口吻重新思考。這對(duì)我們來說也是一個(gè)頓悟時(shí)刻,讓我們見證了強(qiáng)化學(xué)習(xí)的力量與美妙之處。

6. 原理總結(jié)

圖片來源 zeropointlabs.ai/lla...

輸入文本tokens,token向量化,自注意、多頭注意,前饋神經(jīng)網(wǎng)絡(luò),循環(huán)自注意、多頭注意,前饋神經(jīng)網(wǎng)絡(luò),輸出文本token,自回歸解碼,追加到輸入tokens,循環(huán)上述過程。展開一些就是下面的過程:

再展開可以看大模型可視化 bbycroft.net/llm

二、市面上主流特性和應(yīng)用

1. 文件上傳

流程淺析:

  • 解析文件,拿到文本序列(也有模型方案支持理解圖片、表格等),將文本切分一個(gè)個(gè)小塊,組成一個(gè)很長的塊序列。
  • 文件內(nèi)容token化,把用戶輸入文本拼在一起,作為輸入。
  • 經(jīng)過神經(jīng)網(wǎng)絡(luò)這個(gè)超大函數(shù),輸出丟出token。
  • 循環(huán)第三步,直到結(jié)束符出現(xiàn)。

2. 網(wǎng)絡(luò)搜索

解決最新知識(shí)缺失問題。

搜索流程淺析:

  • 將用戶輸入做總結(jié),特別是在經(jīng)過多輪對(duì)話后,關(guān)注點(diǎn)分散、關(guān)鍵詞不易捕捉的情況。
  • 調(diào)用搜索引擎,每個(gè)AI聊天應(yīng)用的實(shí)現(xiàn)情況不一樣,調(diào)用特定的搜索引擎,如ChatGPT是Bing,DeepSeek是博查。
  • 對(duì)搜索結(jié)果列表中內(nèi)容進(jìn)行閱讀和解析。
  • 對(duì)搜索結(jié)果進(jìn)行相關(guān)度排序,選出前N;Rerank模型,對(duì)初步檢索結(jié)果重新排序,提升相關(guān)性(如Cohere Reranker、Cross-Encoder)。
  • 將前N篇文章作為參考內(nèi)容,標(biāo)識(shí)草考內(nèi)容與用戶Query一起傳給LLM。
  • 大模型返回結(jié)果。
責(zé)任編輯:趙寧寧 來源: 騰訊技術(shù)工程
相關(guān)推薦

2017-05-18 13:23:06

機(jī)器學(xué)習(xí)強(qiáng)化學(xué)習(xí)分類問題

2017-08-17 13:26:34

機(jī)器學(xué)習(xí)監(jiān)督學(xué)習(xí)強(qiáng)化學(xué)習(xí)

2016-09-30 15:33:02

集成學(xué)習(xí)機(jī)器學(xué)習(xí)算法

2009-09-28 10:40:28

.NET學(xué)習(xí)

2009-06-17 15:06:39

Java 學(xué)習(xí)方法

2009-09-08 09:25:46

思科認(rèn)證學(xué)習(xí)方法思科認(rèn)證

2009-09-16 10:16:29

CCNA學(xué)習(xí)方法CCNA

2010-05-04 17:48:53

2009-09-04 09:37:49

思科認(rèn)證CCNA學(xué)習(xí)方法

2009-10-15 11:24:00

CCNA學(xué)習(xí)方法CCNA

2017-11-27 15:24:02

Linux學(xué)習(xí)方法優(yōu)勢

2011-07-10 15:07:37

2009-09-09 17:41:54

CCNP學(xué)習(xí)方法

2009-09-16 08:51:28

CCNP學(xué)習(xí)方法

2022-04-06 22:26:14

Python工具PyCharm

2021-11-12 15:16:32

深度學(xué)習(xí)數(shù)據(jù)合成人工智能

2016-07-22 17:35:12

linux

2010-04-20 11:41:55

Oracle數(shù)據(jù)庫

2009-06-12 15:16:53

Hibernate學(xué)習(xí)

2024-10-08 08:19:19

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: av中文在线 | 综合久久av| 成人精品久久 | 一区二区三区视频在线观看 | www.伊人.com | 欧美一二区 | 午夜欧美 | 亚洲国产成人精品女人久久久 | 欧美一级淫片免费视频黄 | 另类 综合 日韩 欧美 亚洲 | 久久免费观看一级毛片 | 天堂一区在线 | 国产日韩欧美一区二区 | 91精品国产一区二区三区蜜臀 | 天堂色 | 国产精品久久久久久妇女6080 | 久久综合一区 | 99国内精品 | 亚洲精品久久久一区二区三区 | 欧美一区二区二区 | 91xxx在线观看 | 精品一区二区不卡 | 精品国产一区探花在线观看 | 日本 欧美 三级 高清 视频 | 亚洲一区二区中文字幕在线观看 | 黄色大片免费网站 | 国产精品久久久久久久久婷婷 | 欧美 日韩 国产 成人 在线 | 亚洲精选一区二区 | 亚洲电影免费 | 亚洲综合在线视频 | 综合精品 | 波多野结衣中文视频 | 热re99久久精品国99热观看 | 久久久久久影院 | 欧美特级黄色 | 久草日韩| 伊人性伊人情综合网 | 精品日韩在线 | 国产91精品在线 | 一本大道久久a久久精二百 欧洲一区二区三区 |