![]() Transformer 是一種特定的神經(jīng)網(wǎng)絡(luò)架構(gòu),徹底改變了人工智能領(lǐng)域,尤其是在自然語言處理 (NLP) 中。它是大型語言模型(如 ChatGPT)的核心技術(shù)。 LLMs 是基于大量文本數(shù)據(jù)訓(xùn)練的 AI 系統(tǒng),能夠生成類似人類的文本、翻譯語言、撰寫不同類型的創(chuàng)意內(nèi)容,以及回答問題。Transformer 架構(gòu)使這些模型能夠以全新的方式處理和理解語言,從而實(shí)現(xiàn)過去無法達(dá)到的效果。 ![]() Transformer 的架構(gòu) 輸入分詞 (Input Tokenization): ![]() 文本輸入被分解為稱為“token”的小單元,然后將其與表示意義的數(shù)值向量相關(guān)聯(lián)。 嵌入矩陣 (Embedding Matrix): 該矩陣將每個(gè) token 映射為其在高維空間中的初始向量表示。語義相近的詞通常在該空間中聚集在一起。模型在訓(xùn)練過程中通過調(diào)整權(quán)重來決定詞語如何被嵌入為向量,最終會(huì)形成一個(gè)嵌入集,其中空間中的方向具有某種語義意義。 注意力模塊 (Attention Blocks): ![]() 這些模塊使向量能夠相互作用,并根據(jù)周圍詞語的上下文更新其語義。 注意力模塊負(fù)責(zé)確定上下文中哪些詞語與其他詞語的語義更新相關(guān),以及具體如何更新這些語義。 多層感知機(jī)模塊 (MLP Blocks): 這些模塊對向量進(jìn)行進(jìn)一步處理,優(yōu)化其表示。 輸出生成 (Output Generation): 序列中的最終向量用于預(yù)測下一個(gè) token 的概率分布。 重復(fù)預(yù)測與采樣 (Repetitive Prediction and Sampling): 大型語言模型通過反復(fù)預(yù)測下一個(gè)詞、從分布中采樣并將其附加到現(xiàn)有文本中來生成文本。 詞嵌入與上下文意義 幾何表示 (Geometric Representation): 詞嵌入被可視化為高維空間中的點(diǎn),其位置編碼了語義關(guān)系。 上下文適配 (Contextual Adaptation): 向量在經(jīng)過 Transformer 的過程中,其初始語義會(huì)根據(jù)周圍上下文被進(jìn)一步優(yōu)化。想想你對某個(gè)詞的理解。這個(gè)詞的意義顯然是由周圍的上下文決定的,有時(shí)這種上下文可能來自很遠(yuǎn)的距離。 點(diǎn)積相似性 (Dot Product for Similarity): 向量之間的點(diǎn)積用于測量它們的對齊程度,以表明語義相似性。 訓(xùn)練與參數(shù) 權(quán)重矩陣 (Weight Matrices): ![]() Transformer 使用大量的權(quán)重矩陣,這些矩陣的值在訓(xùn)練過程中被調(diào)整以優(yōu)化性能。 GPT-3 的規(guī)模 (GPT-3 Scale): GPT-3 具有 1750 億個(gè)參數(shù),這些參數(shù)被組織為成千上萬個(gè)矩陣,展示了模型的復(fù)雜性。 反向傳播算法 (Backpropagation Algorithm): 這種算法被用來訓(xùn)練包括 Transformer 在內(nèi)的深度學(xué)習(xí)模型。 Softmax 和溫度參數(shù) 概率分布 (Probability Distribution): Softmax 函數(shù)將輸出值歸一化為概率分布,確保這些值介于 0 和 1 之間且總和為 1。 溫度控制 (Temperature Control): 溫度參數(shù)可用于調(diào)整分布,使其更均勻或更集中特定值,從而影響輸出的創(chuàng)造性。 上下文長度與限制 上下文限制 (Limited Context): Transformer 的上下文長度是固定的,這限制了它在預(yù)測中可以考慮的文本量。 語義丟失 (Loss of Thread): 在長對話中,由于這一限制,一些聊天機(jī)器人可能會(huì)丟失上下文。 ![]() Transformer 處理文本的過程包括以下步驟: 1.文本分詞并將每個(gè) token 轉(zhuǎn)換為嵌入向量; 2.向量經(jīng)過一系列注意力模塊和 MLP 模塊流動(dòng): 注意力模塊允許向量根據(jù)上下文相互作用并更新其語義,MLP 模塊進(jìn)一步優(yōu)化向量的語義表示; 3.最終的向量用于預(yù)測序列中的下一個(gè) token。 ![]() 通過大規(guī)模的文本和代碼數(shù)據(jù)集進(jìn)行訓(xùn)練,模型學(xué)習(xí)調(diào)整其嵌入矩陣、注意力模塊和 MLP 模塊中的參數(shù),以準(zhǔn)確預(yù)測序列中的下一個(gè) token。 訓(xùn)練過程依賴反向傳播算法(Backpropagation),該算法通過計(jì)算模型誤差并調(diào)整參數(shù)以最小化誤差。 ![]() 一些常見問題 1. 注意力機(jī)制在 Transformer 模型中有何意義? 意力機(jī)制是 Transformer 架構(gòu)的一項(xiàng)關(guān)鍵創(chuàng)新。它使模型能夠?qū)W⒂谳斎胛谋局凶钕嚓P(guān)的部分,從而更好地理解其含義。例如,在句子“The cat sat on the mat”中,注意力機(jī)制可以幫助模型理解“sat”與“cat”和“mat”密切相關(guān)。 這一過程使模型能夠捕捉詞語之間的長距離依賴關(guān)系,更好地理解句子的上下文,從而克服了之前語言模型的主要局限性。 2. “嵌入”在語言模型中是如何工作的? 詞嵌入是一種將詞語表示為數(shù)字向量的技術(shù)。這些向量從大規(guī)模數(shù)據(jù)集中學(xué)習(xí),能夠捕捉詞語的語義含義。語義相似的詞具有相似的向量,這使得模型能夠理解詞語之間的關(guān)系。 對于 Transformer 來說,嵌入過程至關(guān)重要。通過將詞語轉(zhuǎn)換為向量,模型可以進(jìn)行數(shù)學(xué)運(yùn)算并學(xué)習(xí)模式,而這些操作在原始文本上是難以實(shí)現(xiàn)的。 3. 嵌入矩陣和反嵌入矩陣的作用是什么? ![]() 嵌入矩陣 (Embedding Matrix): 在處理開始時(shí),將每個(gè) token 轉(zhuǎn)換為對應(yīng)的向量表示。嵌入矩陣是一個(gè)大型矩陣,其中每一列表示模型詞匯表中某個(gè) token 的嵌入。 ![]() 反嵌入矩陣 (Unembedding Matrix): 在處理結(jié)束時(shí),將最終的處理向量轉(zhuǎn)換回對所有可能 token 的概率分布。該分布用于預(yù)測序列中的下一個(gè)詞或短語。 3. 在語言模型輸出中,什么是“溫度”? ![]() 溫度是一個(gè)控制模型輸出隨機(jī)性的參數(shù)。溫度越高,輸出越多樣化且出人意料;溫度越低,輸出越可預(yù)測且更具確定性。 可以將其視為調(diào)整創(chuàng)造力的“旋鈕”。更高的溫度意味著生成的文本更加有創(chuàng)意和出乎意料,而更低的溫度則意味著輸出更加一致和可靠。 4. “l(fā)ogits”和“softmax”在語言模型預(yù)測中是什么概念? Logits: 是模型最后一層的原始、未歸一化的輸出,表示模型對每個(gè)可能下一個(gè) token 的置信度。 Softmax: 是將這些 logits 轉(zhuǎn)換為概率分布的函數(shù)。它確保所有可能 token 的概率總和為 1,從而使模型能夠做出預(yù)測。 簡而言之,logits 是模型的原始猜測,而 softmax 將這些猜測轉(zhuǎn)化為可以用于選擇最可能下一個(gè)詞的概率分布。 ---完 來源Heisenberg 人工世界Artificial World |
|
|