器學(xué)習(xí)導(dǎo)論 2025》第 3 講 - 學(xué)習(xí)筆記1)
《生成式人工智能與機(jī)器學(xué)習(xí)導(dǎo)論 2025》第 3 講-學(xué)習(xí)筆記1. LLM生成文字的整體流程大型語(yǔ)言模型Large Language Model, LLM生成文本時(shí)并不是直接“理解問(wèn)題并寫答案”而是通過(guò)多層神經(jīng)網(wǎng)絡(luò)逐步轉(zhuǎn)換表示最終預(yù)測(cè)下一個(gè) Token。整體流程文字輸入 ↓ Tokenization ↓ Token ID ↓ Embedding ↓ Transformer Layers ↓ Hidden Representation ↓ LM Head ↓ Probability Distribution ↓ 預(yù)測(cè)下一個(gè) Token ↓ 循環(huán)生成核心思想LLM本質(zhì)上是在當(dāng)前上下文條件下不斷計(jì)算下一個(gè)Token出現(xiàn)概率的模型。2. Tokenization分詞2.1 為什么需要Tokenization計(jì)算機(jī)無(wú)法直接處理文字只能處理數(shù)字。因此需要把自然語(yǔ)言轉(zhuǎn)換成模型可以計(jì)算的基本單位TokenToken可能是一個(gè)單詞一個(gè)漢字一個(gè)詞的一部分標(biāo)點(diǎn)符號(hào)例如輸入artificial intelligence可能轉(zhuǎn)換為art ificial intelligence2.2 為什么不用完整單詞如果一個(gè)詞對(duì)應(yīng)一個(gè)Token詞匯表會(huì)非常巨大新詞無(wú)法處理拼寫變化難以覆蓋因此現(xiàn)代LLM通常采用Subword Tokenization子詞分割例如unbelievable可以拆成un believe able這樣模型可以組合理解未見(jiàn)過(guò)的新詞。3. Token ID數(shù)字編號(hào)Token仍然是文字神經(jīng)網(wǎng)絡(luò)無(wú)法直接處理。因此每個(gè)Token會(huì)對(duì)應(yīng)一個(gè)編號(hào)例如法國(guó) → Token ID 39872 首都 → Token ID 58291輸入法國(guó)的首都是可能轉(zhuǎn)換為[39872, 102, 58291, 76]注意Token ID只是編號(hào)沒(méi)有數(shù)學(xué)意義。例如法國(guó) 39872 德國(guó) 56321并不表示德國(guó)比法國(guó)“大”。4. Embedding詞向量表示4.1 Token ID如何變成語(yǔ)義Token ID只是數(shù)字。模型需要將它轉(zhuǎn)換為連續(xù)向量例如法國(guó) ↓ [0.21, -0.35, 0.67, ...]這個(gè)過(guò)程叫Embedding4.2 Embedding矩陣假設(shè)詞表大小128256Hidden Size4096那么Embedding矩陣128256 × 4096每一行代表一個(gè)Token的向量。4.3 Embedding表示什么Embedding表示Token本身的語(yǔ)義特征例如巴黎可能包含城市概念法國(guó)相關(guān)地理信息語(yǔ)言關(guān)系特點(diǎn)靜態(tài)同一個(gè)Token永遠(yuǎn)相同例如兩個(gè)句子中的bankEmbedding相同。5. Transformer LayersTransformer層Embedding只是Token的初始表示。模型還需要理解上下文。例如I deposited money in the bank.和I sat on the river bank.兩個(gè)bank含義不同。Transformer負(fù)責(zé)根據(jù)上下文調(diào)整Token表示。6. Transformer內(nèi)部結(jié)構(gòu)一個(gè)Transformer Layer主要包含Input ↓ Self-Attention ↓ Feed Forward Network ↓ Output7. Self-Attention自注意力機(jī)制Self-Attention解決當(dāng)前Token應(yīng)該關(guān)注哪些其他Token例如小明去銀行取錢因?yàn)樗枰F(xiàn)金。模型需要知道“他”指的是“小明”。Attention會(huì)計(jì)算Token之間的重要程度。核心計(jì)算Attention(Q,K,V)softmax(QKT/d)V Attention(Q,K,V)softmax(QK^T/\sqrt d)VAttention(Q,K,V)softmax(QKT/d?)V其中Query我需要尋找什么信息Key我有什么信息Value實(shí)際提供的信息8. Feed Forward Network前饋網(wǎng)絡(luò)Attention負(fù)責(zé)信息交流Feed Forward負(fù)責(zé)對(duì)信息進(jìn)一步加工例如輸入法國(guó) 首都模型逐漸形成法國(guó) → 國(guó)家 首都 → 城市關(guān)系 巴黎 → 可能答案9. Hidden Representation隱藏表示經(jīng)過(guò)多層Transformer后Token會(huì)得到新的向量表示。例如h [ 0.32, -0.56, 0.91, ... ]這個(gè)向量稱為Hidden Representation9.1 Embedding和Hidden Representation區(qū)別雖然維度通常相同例如Embedding: 4096維 Hidden Representation: 4096維但是意義不同。階段含義EmbeddingToken自身的語(yǔ)義Hidden Representation結(jié)合上下文后的動(dòng)態(tài)語(yǔ)義9.2 Hidden Representation是動(dòng)態(tài)的例如Tokenbank句子1money in the bank句子2river bankEmbedding相同Transformer之后Hidden Representation不同因?yàn)樯舷挛牟煌?0. Embedding維度和Hidden維度關(guān)系現(xiàn)代LLM通常Embedding Dimension Hidden Size例如Llama類模型4096維流程Token ↓ Embedding 4096維 ↓ Transformer 4096維 ↓ Hidden Representation 4096維原因Transformer設(shè)計(jì)為保持輸入維度 輸出維度11. LM Head語(yǔ)言模型輸出層Transformer輸出的是Hidden Vector例如4096維但是模型需要回答下一個(gè)Token是什么因此需要LM Head。11.1 LM Head作用LM Head將4096維Hidden State轉(zhuǎn)換為128256個(gè)Token的分?jǐn)?shù)數(shù)學(xué)形式zWhb zWhbzWhb其中hHidden RepresentationWLM Head權(quán)重zLogits11.2 LM Head矩陣尺寸假設(shè)Vocabulary128256Hidden Size4096則W128256×4096 W128256\times4096W128256×4096計(jì)算128256 × 4096得到128256個(gè)Logits每個(gè)Logit代表一個(gè)Token出現(xiàn)的可能性評(píng)分。12. Probability概率分布Logits不是概率。需要通過(guò)Softmax轉(zhuǎn)換例如輸入巴黎 12.5 倫敦 8.2 東京 6.7輸出巴黎 92% 倫敦 5% 東京 2%形成整個(gè)詞表上的概率分布。13. 預(yù)測(cè)下一個(gè)Token模型選擇概率最高的Token輸入法國(guó)的首都是輸出巴黎得到法國(guó)的首都是巴黎14. 自回歸生成Autoregressive GenerationLLM不是一次生成完整句子。而是一次預(yù)測(cè)一個(gè)Token。過(guò)程輸入 ↓ 預(yù)測(cè)Token1 ↓ 加入輸入 ↓ 預(yù)測(cè)Token2 ↓ 加入輸入 ↓ 繼續(xù)循環(huán)直到生成結(jié)束Token達(dá)到最大長(zhǎng)度15. Weight Tying權(quán)重共享很多現(xiàn)代LLM會(huì)讓輸入Embedding矩陣和輸出LM Head矩陣共享參數(shù)。目的讓輸入和輸出使用同一個(gè)語(yǔ)義空間。15.1 為什么可以共享輸入Token ↓ Embedding ↓ 語(yǔ)義向量輸出Hidden State ↓ 尋找最匹配Token二者本質(zhì)都是Token與語(yǔ)義向量之間的映射。15.2 為什么有時(shí)寫WE?原因是矩陣定義方向不同。方式1EmbeddingE∈R128256×4096 E \in R^{128256 \times 4096}E∈R128256×4096那么WE WEWE方式2EmbeddingE∈R4096×128256 E\in R^{4096\times128256}E∈R4096×128256那么WET WE^TWET因此轉(zhuǎn)置不是核心。核心是輸入Embedding和輸出預(yù)測(cè)共享同一套Token語(yǔ)義表示。16. 完整流程總結(jié)文字輸入 ↓ Tokenization 把文字切成Token ↓ Token ID 轉(zhuǎn)換為數(shù)字編號(hào) ↓ Embedding Token ID → 語(yǔ)義向量 ↓ Transformer Layers 通過(guò)Attention和FFN理解上下文 ↓ Hidden Representation 形成當(dāng)前上下文的內(nèi)部表示 ↓ LM Head Hidden Vector → 所有Token評(píng)分 ↓ Softmax 評(píng)分 → 概率 ↓ 預(yù)測(cè)Token 選擇最高概率Token ↓ 循環(huán)生成核心理解大型語(yǔ)言模型并不是輸入問(wèn)題 ↓ 搜索答案 ↓ 輸出答案而是輸入文字 ↓ 轉(zhuǎn)換為向量 ↓ 多層Transformer逐步提取上下文信息 ↓ 形成隱藏表示 ↓ 計(jì)算每個(gè)Token概率 ↓ 逐個(gè)生成文本研究LLM內(nèi)部機(jī)制的關(guān)鍵問(wèn)題就是Hidden Representation中到底編碼了什么信息Transformer不同層如何形成語(yǔ)言理解、知識(shí)和推理能力