PyTorch編程技術(shù)與深度學(xué)習(xí)
定 價(jià):¥89
中 教 價(jià):¥52.51 (5.90折)促銷
庫 存 數(shù): 29
《PyTorch編程技術(shù)與深度學(xué)習(xí)》講述深度學(xué)習(xí)的基本原理,使用PyTorch展示涉及的深度學(xué)習(xí)算法。通過理論講解和編程操作,使讀者了解并掌握深度學(xué)習(xí)的原理和PyTorch編程技能,拉近理論與實(shí)踐的距離。全書共分9章,主要內(nèi)容包括PyTorch介紹、PyTorch基礎(chǔ)編程、深度學(xué)習(xí)快速入門、神經(jīng)網(wǎng)絡(luò)訓(xùn)練與優(yōu)化、卷積神經(jīng)網(wǎng)絡(luò)原理、卷積神經(jīng)網(wǎng)絡(luò)示例、詞嵌入模型、循環(huán)神經(jīng)網(wǎng)絡(luò)原理、NLP示例。書中不但涵蓋成熟的卷積神經(jīng)網(wǎng)絡(luò)和循環(huán)神經(jīng)網(wǎng)絡(luò)的原理和示例,還包含一些新的如Transformer和知識(shí)蒸餾的內(nèi)容。全書源代碼全部在Python 3.7.4 PyTorch 1.9.0版本上調(diào)試成功。 《PyTorch編程技術(shù)與深度學(xué)習(xí)》適合深度學(xué)習(xí)和PyTorch編程人員作為入門和提高的技術(shù)參考書使用,也適合用作計(jì)算機(jī)專業(yè)高年級(jí)本科生和研究生的教材或教學(xué)參考書。
深度學(xué)習(xí)是機(jī)器學(xué)習(xí)中非常激動(dòng)人心的領(lǐng)域,深度學(xué)習(xí)算法工程師、圖像視覺工程師和自然語言處理工程師逐漸成為報(bào)酬較高的新興職業(yè),各行各業(yè)的公司都在尋求具備深度學(xué)習(xí)理論知識(shí)和實(shí)際編程技能的人才。初學(xué)者學(xué)習(xí)深度學(xué)習(xí)理論與PyTorch編程技術(shù)一般都會(huì)面臨兩大障礙,第一大障礙是深度學(xué)習(xí)理論基礎(chǔ),深度學(xué)習(xí)包含了很多需要掌握的基本概念;第二大障礙是編程實(shí)踐。本書就是為了讓初學(xué)者順利入門而設(shè)計(jì)的,本書系統(tǒng)講解了深度學(xué)習(xí)的原理以及PyTorch編程技術(shù),內(nèi)容較全面,可操作性強(qiáng),做到理論與實(shí)踐相結(jié)合,幫助初學(xué)者順利入門,進(jìn)而掌握好這項(xiàng)技術(shù)。《PyTorch編程技術(shù)與深度學(xué)習(xí)》講解詳細(xì)且通俗易懂,以具體的示例輔助學(xué)習(xí)和實(shí)踐,便于讀者理解和自主應(yīng)用。本書有三大特色。特色一:理論與實(shí)踐結(jié)合。通常的PyTorch編程書籍往往只提供一些可運(yùn)行代碼和點(diǎn)到為止的講解,學(xué)習(xí)者常常知其然而不知其所以然。本書不但提供示例代碼,還詳細(xì)講解背后的原理和代碼的細(xì)節(jié),加深對(duì)代碼的理解。特色二:內(nèi)容新,反映PyTorch的發(fā)展方向。特色三:在線輔導(dǎo)。專門開設(shè)QQ學(xué)習(xí)群以提供學(xué)習(xí)全程輔導(dǎo),自學(xué)無憂。《PyTorch編程技術(shù)與深度學(xué)習(xí)》可供深度學(xué)習(xí)PyTorch編程初學(xué)者作為入門的技術(shù)參考書,也適合作為大中專院校學(xué)生的教材或參考書。
深度學(xué)習(xí)是機(jī)器學(xué)習(xí)中最激動(dòng)人心的領(lǐng)域,深度學(xué)習(xí)算法工程師、圖像視覺工程師和自然語言處理工程師逐漸成為報(bào)酬較高的新興職業(yè),各行各業(yè)都在尋求具備深度學(xué)習(xí)理論知識(shí)和實(shí)際編程技能的人才。只有具備深度學(xué)習(xí)相關(guān)理論和實(shí)踐技能才更有可能在上述新興職業(yè)中獲得成功,但是學(xué)習(xí)和掌握神經(jīng)網(wǎng)絡(luò)、卷積神經(jīng)網(wǎng)絡(luò)、循環(huán)神經(jīng)網(wǎng)絡(luò)等深度學(xué)習(xí)理論具有一定的難度,而掌握PyTorch等深度學(xué)習(xí)工具更顯得困難,因此擁有一本容易上手的深度學(xué)習(xí)入門書籍肯定會(huì)對(duì)初學(xué)者有很大的幫助,本書就是專門為初學(xué)者精心編寫的。初學(xué)者探究深度學(xué)習(xí)理論與PyTorch編程技術(shù)一般都會(huì)面臨兩大障礙。第一大障礙是深度學(xué)習(xí)理論基礎(chǔ),深度學(xué)習(xí)包含了很多需要掌握的基本概念,如神經(jīng)元、全連接、Dropout、權(quán)重初始化、優(yōu)化算法、卷積神經(jīng)網(wǎng)絡(luò)、卷積層和池化層、殘差網(wǎng)絡(luò)、Inception網(wǎng)絡(luò)、遷移學(xué)習(xí)、知識(shí)蒸餾、循環(huán)神經(jīng)網(wǎng)絡(luò)、LSTM、GRU、雙向循環(huán)神經(jīng)網(wǎng)絡(luò)、詞嵌入、Word2Vec、GloVe、注意力機(jī)制、Transformer等,學(xué)習(xí)和理解這些概念需要花費(fèi)大量的時(shí)間和精力,學(xué)習(xí)周期漫長(zhǎng)。第二大障礙是編程實(shí)踐,PyTorch是一個(gè)非常龐大的開源平臺(tái),擁有一個(gè)包含各種工具、庫和社區(qū)資源的良好生態(tài)系統(tǒng),要在短時(shí)間內(nèi)掌握這些編程技能較為困難,并且由于人工智能領(lǐng)域發(fā)展異常迅猛,新技術(shù)、新方法層出不窮,PyTorch的API也在不斷進(jìn)化發(fā)展,這使得PyTorch開發(fā)人員在應(yīng)用中總會(huì)遇到新問題,需要與時(shí)俱進(jìn),不斷學(xué)習(xí)。本書就是為了讓初學(xué)者順利入門而設(shè)計(jì)的。首先,本書講述深度學(xué)習(xí)的基本原理,讓讀者了解基本的深度學(xué)習(xí)算法之后,通過實(shí)踐來解決經(jīng)典問題,逐步過渡到解決實(shí)際問題。其次,本書精心設(shè)計(jì)了一些構(gòu)建深度網(wǎng)絡(luò)的案例,讀者能親身體會(huì)如何將深度學(xué)習(xí)理論應(yīng)用到實(shí)際中,加深對(duì)深度學(xué)習(xí)算法的理解和編程能力的提高,逐步掌握深度學(xué)習(xí)的原理和編程技能,拉近理論與實(shí)踐的距離。本書共分9章。第1章介紹深度學(xué)習(xí)和PyTorch的基本概念、PyTorch的安裝和常用數(shù)據(jù)集;第2章為PyTorch基礎(chǔ)編程,主要內(nèi)容包括張量數(shù)據(jù)操作、自動(dòng)求導(dǎo)、數(shù)據(jù)集API、torchvision工具示例和torchtext工具示例;第3章為深度學(xué)習(xí)快速入門,主要內(nèi)容包括線性回歸、使用nn模塊構(gòu)建線性回歸模型、邏輯回歸、Softmax回歸、神經(jīng)網(wǎng)絡(luò)的基本概念以及PyTorch實(shí)現(xiàn);第4章為神經(jīng)網(wǎng)絡(luò)訓(xùn)練與優(yōu)化,主要內(nèi)容包括神經(jīng)網(wǎng)絡(luò)迭代概念、正則化方法、優(yōu)化算法和PyTorch的初始化函數(shù);第5章為卷積神經(jīng)網(wǎng)絡(luò)原理,主要內(nèi)容包括CNN的基本概念、簡(jiǎn)單的CNN網(wǎng)絡(luò)和PyTorch實(shí)現(xiàn)LeNet-5網(wǎng)絡(luò);第6章為卷積神經(jīng)網(wǎng)絡(luò)示例,主要內(nèi)容包括經(jīng)典CNN網(wǎng)絡(luò)、使用預(yù)訓(xùn)練的CNN、知識(shí)蒸餾,以及CNN可視化;第7章為詞嵌入模型,主要內(nèi)容包括詞嵌入模型介紹、詞嵌入學(xué)習(xí),以及Word2Vec算法實(shí)現(xiàn);第8章為循環(huán)神經(jīng)網(wǎng)絡(luò)原理,主要內(nèi)容包括RNN介紹、基本RNN模型、LSTM、GRU、注意力機(jī)制、Transformer模型原理及PyTorch實(shí)現(xiàn);第9章為NLP示例,主要內(nèi)容包括情感分析、語言模型,以及文本序列數(shù)據(jù)生成。由于深度學(xué)習(xí)軟件更新很快,新開發(fā)的代碼在舊版本環(huán)境下不一定能夠兼容運(yùn)行,為便于讀者參考,在此列出本書代碼的開發(fā)調(diào)試環(huán)境,即Python 3.7.4、PyTorch 1.9.0、conda 4.10.3、numpy 1.19.2、torchvision 0.10.0、torchtext 0.10.0、gensim 4.0.1、spacy 2.3.7。此外,本書配套源代碼讀者可通過掃描右側(cè)的二維碼下載使用。作者在寫作中付出很多努力和勞動(dòng),但限于作者的學(xué)識(shí)、能力和精力,書中難免會(huì)存在一些疏漏或缺陷,敬請(qǐng)各位讀者批評(píng)指正。感謝昆明理工大學(xué)提供的研究和寫作環(huán)境。感謝清華大學(xué)出版社的編輯老師在出版方面提出的建設(shè)性意見和給予的無私幫助,沒有他們的大力支持、幫助和鼓勵(lì),本書不一定能夠面世。感謝讀者群的一些未見面的群友,他們對(duì)作者以前的著作提出寶貴的建議并鼓勵(lì)作者撰寫更多更好的技術(shù)書籍,雖然我無法一一列舉姓名,但他們的幫助我會(huì)一直銘記在心。感謝購買本書的朋友,歡迎批評(píng)指正,你們的批評(píng)和建議都會(huì)受到重視,并在將來再版中改進(jìn)。
編 者
袁梅宇,工學(xué)博士,碩士導(dǎo)師,現(xiàn)在昆明理工大學(xué)計(jì)算機(jī)系任教。為本科生和研究生主講軟件工程、Java程序設(shè)計(jì)、Java EE技術(shù)、數(shù)據(jù)庫原理、機(jī)器學(xué)習(xí)、人工智能等多門核心課程。第一作者專著有《Java EE企業(yè)級(jí)編程開發(fā)實(shí)例詳解》《數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)WEKA應(yīng)用技術(shù)與實(shí)踐》《數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)WEKA應(yīng)用技術(shù)與實(shí)踐(第二版)》《求精要訣Java EE編程開發(fā)案例精講》《機(jī)器學(xué)習(xí)基礎(chǔ)原理算法與實(shí)踐》。
第1章 PyTorch介紹 11.1 深度學(xué)習(xí)與PyTorch簡(jiǎn)介 21.1.1 深度學(xué)習(xí)介紹 21.1.2 PyTorch介紹 31.2 PyTorch安裝 61.2.1 Anaconda下載 61.2.2 Windows下安裝PyTorch 71.2.3 Linux Ubuntu下安裝PyTorch 81.2.4 Anaconda管理 91.3 常用數(shù)據(jù)集 121.3.1 MNIST數(shù)據(jù)集 121.3.2 Fashion-MNIST數(shù)據(jù)集 141.3.3 CIFAR-10數(shù)據(jù)集 171.3.4 Dogs vs. Cats數(shù)據(jù)集 191.3.5 AG_NEWS數(shù)據(jù)集 201.3.6 WikiText2數(shù)據(jù)集 221.3.7 QIQC數(shù)據(jù)集 231.3.8 Multi30k數(shù)據(jù)集 24習(xí)題 25第2章 PyTorch基礎(chǔ)編程 272.1 張量數(shù)據(jù)操作 282.1.1 張量簡(jiǎn)介 282.1.2 張量操作 282.1.3 廣播機(jī)制 452.1.4 在GPU上使用Tensor 482.2 自動(dòng)求導(dǎo) 502.2.1 自動(dòng)求導(dǎo)概念 502.2.2 自動(dòng)求導(dǎo)示例 502.3 數(shù)據(jù)集API 532.3.1 自定義數(shù)據(jù)集類 532.3.2 DataLoader類 552.4 torchvision工具示例 572.4.1 編寫簡(jiǎn)單的圖像數(shù)據(jù)集 572.4.2 Transforms模塊 592.4.3 Normalize用法 612.4.4 ImageFolder用法 622.5 torchtext工具示例 642.5.1 編寫文本預(yù)處理程序 642.5.2 使用torchtext 67習(xí)題 70第3章 深度學(xué)習(xí)快速入門 713.1 線性回歸 723.1.1 線性回歸介紹 723.1.2 線性回歸實(shí)現(xiàn) 763.2 使用nn模塊構(gòu)建線性回歸模型 823.2.1 使用nn.Linear訓(xùn)練線性回歸模型 823.2.2 使用nn.Sequential訓(xùn)練線性回歸模型 853.2.3 使用nn.Module訓(xùn)練線性回歸模型 873.3 邏輯回歸 883.3.1 邏輯回歸介紹 893.3.2 邏輯回歸實(shí)現(xiàn) 913.4 Softmax回歸 963.4.1 Softmax回歸介紹 963.4.2 Softmax回歸實(shí)現(xiàn) 983.5 神經(jīng)網(wǎng)絡(luò) 1033.5.1 神經(jīng)元 1033.5.2 激活函數(shù) 1043.5.3 神經(jīng)網(wǎng)絡(luò)原理 1083.5.4 PyTorch神經(jīng)網(wǎng)絡(luò)編程 111習(xí)題 116第4章 神經(jīng)網(wǎng)絡(luò)訓(xùn)練與優(yōu)化 1194.1 神經(jīng)網(wǎng)絡(luò)迭代概念 1204.1.1 訓(xùn)練誤差與泛化誤差 1204.1.2 訓(xùn)練集、驗(yàn)證集和測(cè)試集劃分 1214.1.3 偏差與方差 1234.2 正則化方法 1244.2.1 提前終止 1254.2.2 正則化 1264.2.3 Dropout 1274.3 優(yōu)化算法 1294.3.1 小批量梯度下降 1304.3.2 Momentum算法 1314.3.3 RMSProp算法 1344.3.4 Adam算法 1374.4 PyTorch的初始化函數(shù) 1394.4.1 普通初始化 1394.4.2 Xavier初始化 1404.4.3 He初始化 141習(xí)題 142第5章 卷積神經(jīng)網(wǎng)絡(luò)原理 1455.1 CNN介紹 1465.1.1 CNN與圖像處理 1465.1.2 卷積的基本原理 1465.1.3 池化的基本原理 1555.2 簡(jiǎn)單的CNN網(wǎng)絡(luò) 1585.2.1 定義網(wǎng)絡(luò)模型 1585.2.2 模型訓(xùn)練 1605.2.3 模型評(píng)估 1605.2.4 主函數(shù) 1615.3 PyTorch實(shí)現(xiàn)LeNet-5網(wǎng)絡(luò) 1635.3.1 LeNet-5介紹 1635.3.2 LeNet-5實(shí)現(xiàn)MNIST手寫數(shù)字識(shí)別 1645.3.3 LeNet-5實(shí)現(xiàn)CIFAR-10圖像識(shí)別 168習(xí)題 170第6章 卷積神經(jīng)網(wǎng)絡(luò)示例 1716.1 經(jīng)典CNN網(wǎng)絡(luò) 1726.1.1 VGG 1726.1.2 ResNet 1736.1.3 Inception 1756.1.4 Xception 1786.1.5 ResNet代碼研讀 1796.2 使用預(yù)訓(xùn)練的CNN 1856.2.1 特征抽取 1866.2.2 微調(diào) 1946.3 知識(shí)蒸餾 1976.3.1 知識(shí)蒸餾原理 1976.3.2 知識(shí)蒸餾示例 1996.4 CNN可視化 2046.4.1 中間激活可視化 2056.4.2 過濾器可視化 212習(xí)題 214第7章 詞嵌入模型 2157.1 詞嵌入模型介紹 2167.1.1 獨(dú)熱碼 2167.1.2 詞嵌入 2227.2 詞嵌入學(xué)習(xí) 2257.2.1 詞嵌入學(xué)習(xí)的動(dòng)機(jī) 2267.2.2 Skip-Gram算法 2277.2.3 CBOW算法 2297.2.4 負(fù)采樣 2307.2.5 GloVe算法 2347.3 Word2Vec算法實(shí)現(xiàn) 2357.3.1 Skip-Gram實(shí)現(xiàn) 2357.3.2 CBOW實(shí)現(xiàn) 2397.3.3 負(fù)采樣Skip-Gram實(shí)現(xiàn) 243習(xí)題 248第8章 循環(huán)神經(jīng)網(wǎng)絡(luò)原理 2518.1 RNN介紹 2528.1.1 有記憶的神經(jīng)網(wǎng)絡(luò) 2528.1.2 RNN用途 2558.2 基本RNN模型 2598.2.1 基本RNN原理 2598.2.2 基本RNN的訓(xùn)練問題 2638.2.3 基本RNN編程 2658.2.4 基本RNN示例 2698.3 LSTM 2758.3.1 LSTM原理 2758.3.2 LSTM編程 2798.4 GRU 2808.4.1 GRU原理 2808.4.2 GRU編程 2828.5 注意力機(jī)制 2838.5.1 Seq2Seq模型的缺陷 2838.5.2 機(jī)器翻譯中的注意力機(jī)制 2848.6 Transformer模型 2868.6.1 編碼器 2878.6.2 多頭注意力層 2888.6.3 前向?qū)?2898.6.4 位置編碼 2898.6.5 解碼器 2908.6.6 解碼器層 2918.6.7 Transformer的PyTorch實(shí)現(xiàn) 291習(xí)題 292第9章 NLP示例 2959.1 情感分析 2969.1.1 AG NEWS示例 2969.1.2 Quora競(jìng)賽示例 3019.2 語言模型 3109.3 文本序列數(shù)據(jù)生成 3169.3.1 向莎士比亞學(xué)寫詩 3169.3.2 神經(jīng)機(jī)器翻譯 324習(xí)題 333參考文獻(xiàn) 335