- 大模型應用開發(fā)極簡入門:基于GPT-4和ChatGPT(第2版)
- (比)奧利維耶·卡埃朗 (法)瑪麗-艾麗斯·布萊特
- 1621字
- 2025-05-07 12:20:57
1.1.2 理解Transformer架構及其在LLM中的作用
Transformer 架構徹底改變了 NLP,主要原因在于它成功解決了 RNN 等早期模型的關鍵局限:難以處理較長的輸入文本序列,并在長距離依賴中保持上下文信息。換句話說,RNN 在處理較長文本時容易遺忘前文內(nèi)容,而 Transformer 通過自注意力(self-attention)機制,能夠有效捕捉和編碼全局上下文,從而顯著提升文本理解與生成能力。
這場變革的核心是注意力機制(attention mechanism),一個簡單卻極其強大的概念。相比于將文本序列中的所有單詞視作同等重要,注意力機制允許模型在每一步任務中“關注”相關性最高的詞。這使得文本中相距較遠的元素可以直接建立聯(lián)系,例如句子的最后一個單詞可以“關注”第一個單詞,而不會受到距離限制,從而克服了 RNN 等早期模型難以捕捉長距離依賴的局限性。在這一機制的基礎上,又衍生出了交叉注意力(cross-attention)和自注意力兩種架構模塊,它們在LLM中被廣泛應用。而 Transformer 架構正是充分利用了這些模塊,從而大幅提升了模型的文本理解與生成能力。
交叉注意力使模型能夠判斷輸入文本中不同部分的相關性,以準確預測輸出文本的下一個單詞。可以將其比作一束聚光燈,照亮輸入文本中最關鍵的單詞或短語,突出對預測最重要的信息,同時忽略不相關的細節(jié)。
為了更直觀地理解交叉注意力,讓我們以一個簡單的句子翻譯任務為例。假設我們要將英語句子“Alice enjoyed the sunny weather in Brussels”(Alice 很享受布魯塞爾陽光明媚的天氣)翻譯成法語“Alice a profité du temps ensoleillé à Bruxelles”。在這個過程中,我們重點關注如何生成法語單詞 ensoleillé(陽光明媚的)。在預測這個單詞時,交叉注意力會賦予英語單詞 sunny 和 weather 更高的權重,因為它們與 ensoleillé 的意義密切相關。通過聚焦這些關鍵單詞,交叉注意力能夠幫助模型準確生成這一部分的翻譯,如圖 1-2 所示。

圖 1-2:交叉注意力模塊使模型關注輸入文本(英語句子)中的關鍵部分,以預測輸出文本(法語句子)中的下一個單詞
自注意力是指模型能夠自主關注輸入文本中的不同部分。在 NLP 中,自注意力機制使模型可以評估句子中各個單詞相比于其他單詞的重要性,從而更好地理解單詞之間的關系,并能夠綜合多個單詞的信息,構建更高層次的語義概念。
以更具體的例子來看,假設我們有這樣一句話:“Alice received praise from her colleagues”(Alice 受到了同事們的稱贊)。如果模型試圖理解句子中 her 的含義,自注意力機制會為句中的不同單詞分配不同的權重,突出與 her 相關的重要單詞。在這個例子中,Alice 和 colleagues 這兩個單詞與 her 關系密切,因此模型會為它們分配更高的權重。通過這種方式,自注意力機制幫助模型建立新的語義概念,例如在本例中,它可能會形成“Alice 的同事”這一語義概念。圖 1-3 直觀地展示了這一過程。

圖 1-3:自注意力機制使新概念 Alice's colleagues(Alice 的同事)得以出現(xiàn)
與循環(huán)架構不同,Transformer 架構還具有易于并行化的優(yōu)勢。這意味著 Transformer 架構可以同時處理輸入文本的多個部分,而不是按順序逐步處理。由于不同部分的計算可以并行進行,而無須等待前一步驟完成,這大大加快了計算和訓練速度。基于 Transformer 架構的模型的并行處理能力與圖形處理單元(graphics processing unit,GPU)的架構完美契合,GPU 的設計旨在同時處理多個計算任務,因此非常適合用于訓練和運行基于 Transformer 架構的模型。GPU 的高并行性和強大的計算能力使數(shù)據(jù)科學家能夠在更大規(guī)模的數(shù)據(jù)集上訓練模型,從而推動了LLM的發(fā)展。
Transformer 架構是一種序列到序列(sequence-to-sequence,Seq2Seq)的模型,最初是為機器翻譯等序列到序列任務而開發(fā)的。標準的 Transformer 架構有兩個主要組件:編碼器和解碼器,二者都十分依賴注意力機制。編碼器的任務是處理輸入文本,識別有價值的特征,并生成有意義的文本表示,稱為嵌入(embedding)。解碼器使用這個嵌入來生成一個輸出,比如翻譯結(jié)果或摘要文本。這個輸出有效地解釋了編碼信息。
GPT(Generative Pre-trained Transformer,生成式預訓練 Transformer)是一類基于 Transformer 架構的模型,專門利用原始架構中的解碼器部分。在 GPT 中,不存在編碼器,因此無須通過交叉注意力機制來整合編碼器產(chǎn)生的嵌入。也就是說,GPT 僅依賴解碼器內(nèi)部的自注意力機制來生成上下文感知的表示和預測結(jié)果。請注意,BERT 等其他一些眾所周知的模型是基于編碼器的,但本書不涉及這類模型。圖 1-4 展示了 NLP 技術的演變歷程。

圖 1-4:NLP 技術從 到LLM的演變
- Puppet 4 Essentials(Second Edition)
- PHP 7底層設計與源碼實現(xiàn)
- 你不知道的JavaScript(中卷)
- R Deep Learning Cookbook
- R Data Analysis Cookbook(Second Edition)
- UVM實戰(zhàn)
- Extending Puppet(Second Edition)
- HTML5從入門到精通(第4版)
- Building Machine Learning Systems with Python(Second Edition)
- Instant Debian:Build a Web Server
- SwiftUI極簡開發(fā)
- Scrapy網(wǎng)絡爬蟲實戰(zhàn)
- Spring Boot 2+Thymeleaf企業(yè)應用實戰(zhàn)
- 面向?qū)ο蠓治雠c設計(第3版)
- 現(xiàn)代JavaScript編程:經(jīng)典范例與實踐技巧