2025年9月26日 星期五

好書 : LLM 核心攻略制霸生成式 AI

這本碁峰出版的好書借自母校圖書館, 翻譯自 "Quick Guide to Large Language Models 2nd Edition" (Pearson 2024), 作者 Sinan Ozdemir 以淺顯易懂筆法介紹 LLM 的基本概念, 運作原理, 與使用 LLM 的所有必要資訊, 只要懂 Python 語言就能兼顧理論與實作, 深入理解 LLM 與學會如何操作LLM; 當然也可以完全不寫一行程式碼, 只閱讀理論部分.  


Source : 天瓏書店


本書的程式碼可從 GitHub 下載 :

# https://github.com/sinanuozdemir/quick-start-guide-to-llm

以下是我的讀書札記 :

第一章 :
  • 雖然 LLM 看似能理解與生成自然語言的文本, 擅長執行文本分類, 情感分析與具名實體識別等 NLP 任務, 但它們其實無法像人類一樣真正理解語言.
  • Transformer 的成功主要來自於注意力機制, 遷移學習, 大型神經網路等同時發生了突破性的進展所致. 
  • Transformer 架構的特點是可以大規模地平行執行與擴展, 這是以前的先進 NLP 模型無法做到的. Transformer 使用一種稱為 self-attention 的注意力計算方法, 讓序列中的每一個單字可以關注 (查看前後文) 序列中的所有其他單字以捕捉大範圍的相依性, 以及單字之間的語境 (context) 關係. 
  • Transformer 與其他深度學習架構最大的不同在於它使用注意力機制來捕捉詞元之間的長距離依賴關係. 在注意力機制普及以前, 大多數的神經網路對所有輸入都是一視同仁; 而注意力機制則是可以動態地聚焦於輸入序列的不同部分
  • 語言建模 (language modeling) 是 NLP 的一個子領域, 其模型通常有兩種 : 自編碼 (autoencoding) 與自回歸 (autoregressive). 
  • 自回歸模型的目的是基於前面的詞元來預測句子的下一個詞元, 此模型可對應到 Transformer 的解碼器部分. 解碼器使用一個遮罩來遮住句子, 讓注意力機制只看到之前的詞元. 自回歸模型適合用來生成文本, 例如 GPT.
  • 自編碼模型用來為 "被破壞的輸入" 重建句子, 此模型可對應到 Transformer 的編碼器部分, 它可讀取完整的輸入, 無須任何遮罩. 自編碼模型會建立整個句子的雙向表示法, 主要應用在文本或詞元分類, 例如 BERT.
  • 詞元 (token) 是語意含義 (semantic meaning) 的最小單位, 是 LLM 的基本輸入, 它可以是單字, 也可以是子單字 (sub-word).  
  • BERT 使用 Transformer 架構中的編碼器 (忽略解碼器), 擅長迅速處理與理解大量文本, 相較於其他較慢的 LLM 則專注於生成文本, 一次生成一個詞元. BERT 本身不對文本進行分類或摘要提取, 但經常被下游 NLP 任務拿來作為預訓練模型. 
  • T5 使用 Transformer 的編碼器與解碼器, 適合用於既要處理與理解文本, 又要自由輸出文本的應用場景, 且不需要微調即可用於多種 NLP 任務. 
  • Transformer 架構最早是在 2017 年被設計出來, 由編碼器與解碼器組成的序列到序列模型. 解碼器負責將接收到的文本分解為核心組件並轉成向量, 同時利用注意力機制來了解文本的前後脈絡. 解碼器則透過一種改良的注意力機制來預測最符合前後脈絡的下一個詞元, 因此擅長於生成文本. 
  • embedding (內嵌) 是單字, 短句, 或詞元 (token) 在一個多維空間中的數學表示法 (浮點數向量), 可用來捕捉它們的語意含義. embedding 包括 token embedding (詞元內嵌, 編碼語意含義) 與 positional embedding (編碼詞元在句子中的位置).
  • 在 LLM 中, 對齊 (alignment) 是指 LLM 的回應與用戶期望相符的程度, 在訓練循環中加入強化學習 (RL) 是對齊語言模型的方法之一, 其中最熱門的是 RLHF (Reenforcement Learning from Human Feedback), 它是利用相對少量但高品質的人類回饋, 學習調整自己的輸出以提升模型的效果. 
  • 傳統 NLP 會採用諸如停用詞去除 (stop words removal), 詞幹提取 (stemming), 詞形還原 (lemmatization) 與截斷 (truncation) 等前處理技術以簡化輸入特徵, 但這些技術在 LLM 幾乎完全派不上用場, 而且用了還可能會降低模型的效能 (因為前後脈絡資訊可能被移除了). LLM 主要依靠子詞級的 tokenization (切詞) 與 embedding (向量化) 來表示輸入, 讓模型在訓練過程中自行學習語法與語義關係. 不過, 截斷 (truncation) 技術在 LLM 仍然有用到, 只是目的變成控制上下文視窗長度而已. 

第二章 :
  • 使用強大的 LLM 來產生文本的 embedding 是 AI 公司提供的解決方案中用途最廣泛的一種. 文本 embedding 用多維空間裡的向量來表達機器可讀之單字與句子, 這些向量通常是根據它們的前後文來建構的, 可用來捕捉單字與短句的語意值. 這種從文字到向量的對映可以視為一種有意義的雜湊化 (hash with meaning), 通過計算向量之間的距離可以衡量字與字之間的關係 : 如果兩個 embedding 向量的距離很近, 那麼它們的原始字句可能很相似. 

~樂讀中~

沒有留言 :