書名:新範式來臨 - 用PyTorch了解LLM開發微調ChatGLM全過程

原文書名:


9786267383513新範式來臨 - 用PyTorch了解LLM開發微調ChatGLM全過程
  • 產品代碼:

    9786267383513
  • 系列編號:

    DM2423
  • 定價:

    980元
  • 作者:

    王曉華
  • 頁數:

    544頁
  • 開數:

    17x23x2.67
  • 裝訂:

    平裝
  • 上市日:

    20240417
  • 出版日:

    20240417
  • 出版社:

    深智數位股份有限公司
  • CIP:

    312.83
  • 市場分類:

    電腦資訊
  • 產品分類:

    書籍免稅
  • 聯合分類:

    電腦資訊類
  •  

    ※在庫量小
商品簡介


★從0開始打造自己的LLM
★動手實作中英文都通的ChatGLM
★PyTorch 2完整實作NLP
★各種神經網路實作:CNN、RNN、GRU、Transformer、BERT、GPT
★預訓練模型、編碼器、解碼器、Seq2Seq2
★獎勵模型的RLHF、PPO、Rewarded Model
★LLM在專業領域的應用:金融、醫療
★使用PEFT、LORA等Huggingface函式庫進行LLM的Finetune

大型語言模型是深度學習自然語言處理皇冠上的一顆明珠,也是當前AI和NLP研究與產業中最重要的方向。全書使用PyTorch 2.0作為學習大型語言模型的基本框架,以中英文通曉的ChatGLM為範例,詳細講解大型語言模型的基本理論、演算法、程式實現、應用實戰以及微調技術,完整演示大型語言模型開發技術。

全書共18章,內容包括人工智慧與大型語言模型、PyTorch 2.0深度學習環境搭建、從零開始學習PyTorch 2.0、深度學習基礎演算法詳解、以PyTorch卷積層為基礎的的MNIST分類實戰、PyTorch資料處理與模型展示、ResNet實戰、有趣的詞嵌入、PyTorch循環神經網路的中文情感分類實戰、自然語言處理的編碼器、預訓練模型BERT、自然語言處理的解碼器、強化學習實戰、只具有解碼器的GPT-2模型、實戰訓練自己的ChatGPT、開源大型語言模型ChatGLM使用詳解、ChatGLM高級定制化應用實戰、對ChatGLM進行高級微調。

作者簡介


王曉華
大專電腦專業講師,研究方向為雲端運算、巨量資料與人工智慧。
著有:
《PyTorch2.0深度學習從零開始學》
《Python機器學習與可視化分析實戰》
《Google JAX深度學習從零開始學》
《Spark3.0巨量資料分析與挖掘:基於機器學習》
《TensorFlow深度學習應用實踐》
《OpenCV+TensorFlow深度學習與電腦視覺實戰》
《TensorFlow知識圖譜實戰》
《TensorFlow人臉識別實戰》
《TensorFlow語音識別實戰》
《TensorFlow+Keras自然語言處理實戰》
《TensorFlow2.0卷積神經網絡實戰》
《Keras實戰:基於TensorFlow2.2的深度學習實踐》
《Tensorflow 2.0深度學習從零開始學》
《深度學習的數學原理與實作》

書籍目錄


第1章 新時代的曙光—人工智慧與大模型
1.1 人工智慧:思維與實踐的融合
1.2 大模型開啟人工智慧的新時代
1.3 本章小結

第2章 PyTorch 2.0深度學習環境架設
2.1 環境架設1:安裝Python
2.2 環境架設2:安裝PyTorch 2.0
2.3 生成式模型實戰:古詩詞的生成
2.4 影像降噪:一步步實戰第一個深度學習模型
2.5 本章小結

第3章 從零開始學習PyTorch 2.0
3.1 實戰MNIST手寫體辨識
3.2 自訂神經網路框架的基本設計
3.3 本章小結

第4章 一學就會的深度學習基礎演算法詳解
4.1 反向傳播神經網路的前身歷史
4.2 反向傳播神經網路兩個基礎演算法詳解
4.3 回饋神經網路反向傳播演算法介紹
4.4 本章小結

第5章 基於PyTorch卷積層的MNIST分類實戰
5.1 卷積運算的基本概念
5.2 實戰:基於卷積的MNIST手寫體分類
5.3 PyTorch的深度可分離膨脹卷積詳解
5.4 本章小結

第6章 視覺化的PyTorch資料處理與模型展示
6.1 用於自訂資料集的torch.utils.data工具箱使用詳解
6.2 實戰:基於tensorboardX的訓練視覺化展示
6.3 本章小結

第7章 ResNet實戰
7.1 ResNet基礎原理與程式設計基礎
7.2 ResNet實戰:CIFAR-10資料集分類
7.3 本章小結

第8章 有趣的詞嵌入
8.1 文字資料處理
8.2 更多的詞嵌入方法—FastText和預訓練詞向量
8.3 針對文字的卷積神經網路模型簡介—字元卷積
8.4 針對文字的卷積神經網路模型簡介—詞卷積
8.5 使用卷積對文字分類的補充內容
8.6 本章小結

第9章 基於迴圈神經網路的中文情感分類實戰
9.1 實戰:迴圈神經網路與情感分類
9.2 迴圈神經網路理論講解
9.3 本章小結

第10章 從零開始學習自然語言處理的編碼器
10.1 編碼器的核心—注意力模型
10.2 編碼器的實現
10.3 實戰編碼器:拼音中文字轉化模型
10.4 本章小結

第11章 站在巨人肩膀上的預訓練模型BERT
11.1 預訓練模型BERT
11.2 實戰BERT:中文文字分類
11.3 更多的預訓練模型
11.4 本章小結

第12章 從1開始自然語言處理的解碼器
12.1 解碼器的核心—注意力模型
12.2 解碼器實戰—拼音中文字翻譯模型
12.3 本章小結
第13章 基於PyTorch 2.0的強化學習實戰
13.1 基於強化學習的火箭回收實戰
13.2 強化學習的基本演算法—PPO演算法
13.3 本章小結

第14章 ChatGPT前身—只具有解碼器的GPT-2模型
14.1 GPT-2模型簡介
14.2 Hugging Face GPT-2模型原始程式模型詳解
14.3 Hugging Face GPT-2模型的使用與自訂微調
14.4 自訂模型的輸出
14.5 本章小結

第15章 實戰訓練自己的ChatGPT
15.1 什麼是ChatGPT
15.2 RLHF模型簡介
15.3 基於RLHF實戰的ChatGPT正向評論的生成
15.4 本章小結

第16章 開放原始碼大模型ChatGLM使用詳解
16.1 為什麼要使用大模型
16.2 ChatGLM使用詳解
16.3 本章小結

第17章 開放原始碼大模型ChatGLM 高級訂製化應用實戰
17.1 醫療問答GLMQABot架設實戰—基於ChatGLM架設專業客服問答機器人
17.2 金融資訊取出實戰—基於知識鏈的ChatGLM當地語系化知識庫檢索與智慧答案生成
17.3 基於ChatGLM的一些補充內容
17.4 本章小結

第18章 對訓練成本上億美金的ChatGLM進行高級微調
18.1 ChatGLM模型的當地語系化處理
18.2 高級微調方法1—基於加速庫Accelerator的全量資料微調
18.3 高級微調方法2—基於LoRA的模型微調
18.4 高級微調方法3—基於Huggingface的PEFT模型微調
18.5 本章小結

推薦序/導讀/自序


前言
我們處於一個變革的時代!
提出一個常識問題,讓一個有著大學學歷的成年人回答這個問題,似乎是一件非常簡單的事情。然而將同樣的內容輸送給電腦,讓它透過自己的能力流暢地回答這個常識問題,這在不久以前還是一件不可能的事。
讓電腦學會回答問題,這是一個專門的研究方向—人工智慧大模型正在做的工作。隨著類神經網路和深度學習的發展,近年來人工智慧在研究上獲得了重大突破。透過大規模的文字訓練,人工智慧在自然語言生成上獲得了非常好的效果。
而今,隨著深度學習的發展,使用人工智慧來處理常規勞務、理解語音語義、幫助醫療診斷和支援基礎科學研究工作,這些曾經是夢想的東西似乎都在眼前。
寫作本書的原因
PyTorch作為最新的、應用最為廣泛的深度學習開放原始碼框架,自然引起了廣泛的關注,它吸引了大量程式設計和開發人員進行相關內容的開發與學習。掌握PyTorch程式設計基本技能的程式設計人員成為當前各組織和單位熱切尋求的熱門人才。他們的主要工作就是利用獲得的資料集設計不同的類神經模型,利用類神經網路強大的學習能力提取和挖掘資料集中包含的潛在資訊,撰寫相應的PyTorch程式對資料進行處理,對其價值進行進一步開發,為商業機會的獲取、管理模式的創新、決策的制定提供相應的支援。隨著越來越多的組織、單位和行業對深度學習應用的重視,高層次的PyTorch程式設計人員必將成為就業市場上緊俏的人才。
與其他應用框架不同,PyTorch並不是一個簡單的程式設計框架,深度學習也不是一個簡單的名詞,而是需要相關研究人員對隱藏在其程式背後的理論進行學習,掌握一定的數學知識和理論基礎的。特別是隨著PyTorch 2.0的推出,更好、更快、更強成為PyTorch 2.0所追求的目標。
研究人員探索和發展深度學習的目的是更進一步地服務於人類社會,而人工智慧的代表—清華大學開發的ChatGLM是現階段人工智慧最高端的研究成果,它可以模擬人類智慧的某些方面,例如語言理解、智慧問答、自然語言處理等。相較於其他人工智慧產品,ChatGLM有著更加強大的演算法、更多的資料基礎以及更強的訓練和最佳化,使得ChatGLM可以實現更加準確和高效的決策和預測,為人類社會帶來巨大的價值。
在醫療領域,ChatGLM可以幫助醫生更準確地診斷疾病,提高治療的效果和效率。在交通領域,ChatGLM可以輔助駕駛員進行駕駛決策,減少交通事故的發生。在金融領域,ChatGLM可以幫助銀行和證券公司進行風險控制和投資決策。在教育領域,ChatGLM可以根據學生的學習情況和興趣愛好,提供個性化的學習方案和資源。
在這個人工智慧風起雲湧的時代,借由PyTorch 2.0與ChatGLM推出之際,本書為了滿足廣大人工智慧程式設計和開發人員學習最新的PyTorch程式碼的需要,對涉及深度學習的結構與程式設計技巧循序漸進地做了介紹與說明,以深度學習實戰內容為依託,從理論開始介紹PyTorch程式設計模式,多角度、多方面地對其中的原理和實現提供翔實的分析;同時,以了解和掌握最強的人工智慧模型ChatGLM,進行可靠的延伸開發和微調為目標,讓讀者能夠在開發者的層面掌握ChatGLM程式設計方法和技巧,為開發出更強大的人工智慧大模型打下紮實的基礎。

本書的優勢
★本書基於PyTorch 2.0框架對深度學習的理論、應用以及實戰進行全方位的講解,市面上鮮有涉及。
★本書一步步地從零開始向讀者講解大模型的建構方法,從最基礎的深度學習模型架設開始,直到完成大模型的設計、應用與微調工作。
★本書並非枯燥的理論講解,而是大量最新文獻的歸納和總結。在這點上,本書與其他程式設計書籍有本質區別。本書的例子都是來自現實世界中對深度學習有實戰應用的模型,透過介紹這些實際應用範例,可以讓讀者更進一步地了解和掌握其應用價值和核心本質。
★本書作者有長期的所究所學生和大學生教學經驗,透過通俗易懂的語言,深入淺出地介紹深度學習與神經網路理論系統的全部基礎知識,並在程式撰寫時使用PyTorch 2.0最新框架進行程式設計,幫助讀者更進一步地使用PyTorch模型框架,理解和掌握PyTorch程式設計的精妙之處。
★作者認為,掌握和使用深度學習的人才應在掌握基礎和理論的基礎上,重視實際應用程式開發能力和解決問題能力的培養。特別是對於最新的大模型技術的掌握。本書結合作者在實際工作中應用的實際案例進行講解,內容真實,場景逼真。

本書的內容
本書共18章,所有程式均採用Python語言撰寫,這也是PyTorch 2.0框架推薦使用的語言。
第1章介紹人工智慧的基本內容,初步介紹深度學習應用與大模型的發展方向,介紹最強的人工智慧大模型—北京清華大學ChatGLM的應用前景,旨在說明使用深度學習和人工智慧實現大模型是未來科技的發展方向,也是必然趨勢。
第2章介紹PyTorch 2.0的安裝和常用的類別庫。Python是好用性非常強的語言,可以很方便地將公式和願景以程式的形式表達出來,而無須學習過多的程式設計知識。還將一步步地向讀者演示第一個深度學習模型的完整使用範例。
第3章演示使用PyTorch框架進行手寫體辨識的實際例子,完整地對MNIST手寫體項目進行分類,同時講解模型的標籤問題以及本書後期常用的損失函數計算等內容。
第4章系統介紹深度學習的基礎知識—反向傳播神經網路的原理和實現。這是整個深度學習領域最為基礎的內容,也是最為重要的理論部分。本章透過獨立撰寫程式的形式為讀者實現這個神經網路中最重要的演算法。
第5章介紹卷積神經網路的使用,主要介紹使用卷積對MNIST資料集進行辨識。這是一個入門案例,但是包含的內容非常多,例如使用多種不同的層和類建構一個較為複雜的卷積神經網路。同時也介紹了一些具有個性化設置的卷積層。
第6章主要講解PyTorch 2.0資料處理與模型訓練視覺化方面的內容,這是本書中非常重要的基礎,也是資料處理中非常重要的組成部分,透過撰寫相應的程式來實現模型對輸入資料的處理,能夠使得讀者更加深入地了解PyTorch框架的運行原理。
第7章介紹卷積神經網路的核心內容,講解基於Block堆積的ResNet模型的建構方法,這為後面架設更多基於模組化的深度學習模型打下基礎。
第8和第9章是PyTorch自然語言處理的基礎部分,從詞向量開始,到使用卷積和迴圈神經網路完成自然語言處理的情感分類專案,循序漸進地引導讀者使用深度學習完成自然語言處理實戰。
第10章介紹深度學習另一個重要的模組—注意力模型,本章的理論部分非常簡單,講解得也很清晰,但其內容對整個深度學習模型具有里程碑意義。
第11和第12章是自然語言處理的補充內容,分別介紹使用現有的預訓練模型進行自然語言處理以及自然語言處理解碼器的部分。第12章和第10章相互銜接,主要是對當前的新模型Transformer介紹和說明,分別從其架構入手,對編碼器和解碼器進行詳細介紹。同時,第12章還介紹各種ticks和小的細節,有針對性地對模型最佳化做了說明。
第13~15章是對強化學習部分的講解,同時詳細講解深度學習中具有創新質的GPT-2模型的組成架構和原始程式設計,並基於以上兩部分完成了一個簡化版的ChatGPT設計,這是為後續進行語言模型微調打下基礎。
第16~18章是本書有關大模型的核心內容。第16章講解人工智慧大模型ChatGLM的使用與自訂方法。第17章講解ChatGLM高級訂製化應用,包括專業客服問答機器人、金融資訊取出實戰以及一些補充內容;其中金融資訊取出使用了基於知識鏈的多專業跨領域文件挖掘的方法,這是目前ChatGLM甚至是自然語言處理大模型方面最為前端的研究方向。第18章講解ChatGLM模型的當地語系化處理和ChatGLM的高級微調方法,極具參考價值。
本書的特點
★本書不是純粹的理論知識介紹,也不是高深的技術研討,完全是從實踐應用出發,用最簡單、典型的範例引申出核心知識,並指出進一步學習人工智慧大模型的道路。
★本書沒有深入介紹某一個知識塊,而是全面介紹PyTorch涉及的大模型的基本結構和上層程式設計,系統地講解深度學習的全貌,讓讀者在學習過程中掌握方向。
★本書在寫作上淺顯易懂,沒有深奧的數學知識,而是採用較為形象的形式,使用大量圖示來描述應用的理論知識,讓讀者輕鬆地閱讀並掌握相關內容。
★本書旨在引導讀者進行更多技術上的創新,每章都會以範例的形式幫助讀者更進一步地理解本章要學習的內容。
★本書程式遵循重構原理,避免程式污染,幫助讀者寫出優秀、簡潔、可維護的程式。
本書適合讀者
本書適合人工智慧、大模型、深度學習以及PyTorch框架等方向的初學者和開發人員閱讀,也可以作為高等院校相關專業的教材。
建議讀者在學習本書內容的過程中,理論結合實務,獨立進行一些程式的撰寫工作,可能的情況下採取開放式的實驗方法,即讀者自行準備實驗資料和實驗環境,解決實際問題,最終達到理論結合實務的目的。
本書作者
本書作者為大專院校電腦專業教師,教授人工智慧、巨量資料分析與挖掘、Java程式設計、資料結構等多門大學生及所究所學生課程,研究方向為資料倉儲與資料探勘、人工智慧、機器學習,在研和參研多項科學研究項目。作者在本書寫作過程中,獲得了家人和朋友的大力支持,以及本書編輯王葉的熱情幫助,在此對他們一併表示感謝。