大模型核心技術與應用(微課視頻版)
相關主題
商品描述
"本書從大型模型的結構講起,讓讀者了解大型模型的內部實現原理,然後講解如何在特定任務下對大型模型進行預訓練、有監督的微調,以及進行強化學習。通過對模型采用不同方法的訓練,持續改進模型在特定任務上的性能。最後,本書將與讀者一起探討如何利用大型模型開發大模型時代的智能應用。 本書共9章,第1章講解大型模型發展的歷史及其帶來的變革。第2章深入講解大型模型內部結構的演進。第3章會嘗試自己運行一個大模型。第4章介紹大型模型對模型訓練和推理過程中帶來的技術挑戰和解決辦法。第5章講解如何進行大型模型的預訓練以獲取大模型的基本能力。第6章講解如何對大模型進行有監督的微調,使大型模型輸出與人類意圖對齊。第7章講解如何通過強化學習進一步提升大型模型的表現。第8章講解如何對大模型進行評估。第9章講解如何利用大模型構建智能應用。 本書適合有一定深度學習基礎的讀者,幫助他們從原理到應用,快速了解大型模型的原理、訓練方法,並利用大型模型進行智能應用的開發。 "
作者簡介
薛鵬,深圳力維智聯技術有限公司人工智能首席科學家,上海迥靈信息技術有限公司CTO,原IBM AI產品Tech Lead。負責研發多款AI產品,十五年人工智能技術應用經驗。目前致力於大模型平臺產品研發和大模型技術行業應用。
目錄大綱
目錄
本書源碼
第1章大模型時代
1.1大模型的發展歷史
1.1.1註意力機制的發揚光大
1.1.2從GPT到InstructGPT
1.1.3ChatGPT驚艷登場
1.1.4全球首個AI程序員誕生
1.2大模型時代的新範式
第2章深入了解大模型(59min)
2.1Transformer橫空出世
2.1.1詞典生成
2.1.2詞嵌入
2.1.3自註意力機制
2.1.4層歸一化
2.1.5殘差連接
2.1.6前饋模塊
2.1.7Transformer的整體架構
2.1.8位置編碼
2.1.9解碼器的輸入輸出
2.1.10掩碼機制
2.1.11交叉註意力
2.1.12線性分類頭
2.2GPT
2.2.1GPT1
2.2.2GPT2
2.2.3GPT3
2.2.4GPT4
2.3OpenAI o1
2.4Llama
2.4.1Llama1
2.4.2Llama2
2.4.3Llama3
第3章運行第1個大模型
3.1HuggingFace介紹
3.2下載大模型
3.3運行大模型
3.4HuggingFace裏的Tokenizer
3.5HuggingFace裏的模型
3.5.1創建和保存模型
3.5.2控制大模型的輸出
第4章大模型帶來的技術挑戰(127min)
4.1GPU的工作原理
4.1.1CPU和GPU的區別
4.1.2GPU的架構
4.1.3GPU裏的存儲
4.1.4Tensor Core
4.2大模型顯存占用
4.3優化器
4.3.1指數加權平均
4.3.2SGD
4.3.3動量梯度下降
4.3.4RMSProp
4.3.5Adam
4.3.6AdamW
4.4混合精度訓練
4.4.1混合精度訓練原理
4.4.2在PyTorch裏進行混合精度訓練
4.5模型的量化技術
4.5.1量化技術的原理
4.5.2訓練後動態量化
4.5.3訓練後靜態量化
4.5.4量化感知訓練
4.5.5LLM.int8
4.5.6NF4量化
4.6梯度累加
4.7梯度檢查點
4.8分布式訓練
4.8.1分布式數據並行
4.8.2DeepSpeed ZeRO
4.8.3Accelerate
4.9參數高效微調
4.9.1提示詞微調
4.9.2LoRA
4.10vLLM
4.10.1KV Cache
4.10.2Page Attention
4.10.3塊共享
4.10.4代碼示例
4.11FlashAttention
第5章大模型的預訓練(15min)
5.1預訓練的作用
5.2預訓練的數據
5.3預訓練的方法
5.4預訓練Llama3.1
5.4.1最簡訓練代碼
5.4.2數據清洗
5.4.3數據準備
5.4.4初始化模型
5.4.5模型預訓練
第6章大模型的監督微調(13min)
6.1對話模板
6.2只關註回答
6.3噪聲嵌入微調
6.4SFT Trainer
第7章大模型的強化學習(69min)
7.1強化學習基礎
7.1.1強化學習裏的基礎概念
7.1.2策略梯度算法
7.1.3ActorCritic算法
7.1.4廣義優勢估計算法
7.2近端策略優化
7.3直接偏好優化
7.3.1KL散度
7.3.2BradleyTerry模型
7.3.3DPO的訓練目標
7.4利用TRL庫進行PPO訓練
7.4.1獎勵模型
7.4.2PPO模型
第8章大模型的評估
8.1困惑度
8.2人工評估
8.3可解析的測評集
8.3.1MMLU
8.3.2MMLUPRO
8.3.3IFEVAL
8.3.4BBH
8.3.5MATH
8.3.6GPQA
8.4利用大模型評估
第9章構建大模型應用
9.1提示詞工程
9.1.1明確的任務指示
9.1.2提供上下文信息
9.1.3賦予大模型角色
9.1.4給模型思考時間
9.1.5給模型參考示例
9.2LangChain介紹
9.3第1個LangChain程序
9.4構建一個聊天機器人
9.5LangChain的進階功能
9.5.1對輸出進行解析
9.5.2為提示詞增加樣例
9.6檢索增強生成
9.6.1RAG流程
9.6.2文檔分片
9.6.3向量嵌入模型
9.6.4向量存儲
9.6.5Retriever
9.6.6生成回答
9.7RAG進階
9.7.1問題轉化
9.7.2混合檢索
9.7.3索引增強
9.7.4檢索結果重排
9.8智能體
9.8.1創建第1個智能體
9.8.2給智能體定義工具
9.8.3智能體使用工具的原理
9.8.4給智能體增加記憶
9.8.5人與智能體合作
9.8.6多智能體協作