《深度學(xué)習(xí)基礎(chǔ)教程》是真正適合深度學(xué)習(xí)初學(xué)者的入門書籍,全書沒有任何復(fù)雜的數(shù)學(xué)推導(dǎo)!渡疃葘W(xué)習(xí)基礎(chǔ)教程》首先介紹了深度學(xué)習(xí)的優(yōu)勢和面臨的挑戰(zhàn)、深度學(xué)習(xí)采用深層架構(gòu)的動機(jī)、學(xué)習(xí)深度學(xué)習(xí)需要的數(shù)學(xué)知識和硬件知識以及深度學(xué)習(xí)常用的軟件框架。然后對多層感知機(jī)、卷積神經(jīng)網(wǎng)絡(luò)(CNN)、受限玻耳茲曼機(jī)(RBM)、循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)及其變體—長短時記憶(LSTM)網(wǎng)絡(luò)進(jìn)行了詳細(xì)介紹,并且以獨立章節(jié)重點闡述了CNN在計算機(jī)視覺中的應(yīng)用、RNN在自然語言處理中的應(yīng)用以及深度學(xué)習(xí)在多模態(tài)學(xué)習(xí)領(lǐng)域中的應(yīng)用。隨后,本書介紹了深度強(qiáng)化學(xué)習(xí)的基本知識,給出了應(yīng)用深度學(xué)習(xí)技術(shù)需要的許多實用技巧并概述了深度學(xué)習(xí)的一些新方向和新應(yīng)用。
1.本書作者都是來自工業(yè)界的一線數(shù)據(jù)科學(xué)家,在世界知名公司如領(lǐng)英、谷歌、eBay、索尼等工作多年,具有深厚的理論功底和豐富的實踐經(jīng)驗。2.本書是真正適合深度學(xué)習(xí)初學(xué)者的入門書籍,全書沒有任何復(fù)雜的數(shù)學(xué)推導(dǎo)。即便數(shù)學(xué)基礎(chǔ)不好的讀者,也可以輕松地閱讀本書。3.為開始學(xué)習(xí)深度學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò)建模的基本知識提供一站式解決方案。4.訓(xùn)練不同類型的神經(jīng)網(wǎng)絡(luò),以解決自然語言處理、計算機(jī)視覺和語音識別等領(lǐng)域中的各種問題。5.涵蓋流行的Python庫,如Tensorflow等,以及以佳方式訓(xùn)練、部署和優(yōu)化深度學(xué)習(xí)模型的技巧。6.不同于市面上的深度學(xué)習(xí)書籍,本書首次對深度學(xué)習(xí)在多模態(tài)領(lǐng)域中的應(yīng)用進(jìn)行了專門的介紹。7.對深度強(qiáng)化學(xué)習(xí)、深度學(xué)習(xí)發(fā)展趨勢(如GAN、Capsule網(wǎng)絡(luò))也進(jìn)行了介紹。
深度學(xué)習(xí)是科技界最具突破性的發(fā)展趨勢,已經(jīng)跨越研發(fā)實驗室應(yīng)用到生產(chǎn)環(huán)境中。它是通過數(shù)據(jù)的多個隱藏層進(jìn)行深入洞察的科學(xué)和藝術(shù)。目前,深度學(xué)習(xí)是圖像識別、物體識別和自然語言處理(NLP)問題解決方案的最佳提供者之一。 從溫習(xí)機(jī)器學(xué)習(xí)開始,《深度學(xué)習(xí)基礎(chǔ)教程》將快速地進(jìn)入深度學(xué)習(xí)的基本原理及其實現(xiàn)。隨后,將向讀者介紹不同類型的神經(jīng)網(wǎng)絡(luò)及其在現(xiàn)實世界中的應(yīng)用。在具有啟發(fā)性示例的幫助下,讀者將學(xué)習(xí)使用深層神經(jīng)網(wǎng)絡(luò)識別模式,并了解數(shù)據(jù)操作和分類等重要概念。 采用基于深度學(xué)習(xí)的強(qiáng)化學(xué)習(xí)技術(shù),將可以構(gòu)建超越人類的人工智能(AI)。另外,將學(xué)習(xí)如何使用LSTM網(wǎng)絡(luò)。閱讀《深度學(xué)習(xí)基礎(chǔ)教程》的過程中,將遇到各種不同的框架和庫,如TensorFlow、Python和Nvidia等。在本書的最后,讀者將能夠為自己的應(yīng)用部署一個面向生產(chǎn)的深度學(xué)習(xí)框架。讀者對象 如果你是一個希望為自己的商業(yè)應(yīng)用構(gòu)建深度學(xué)習(xí)動力的富有抱負(fù)的數(shù)據(jù)科學(xué)家、深度學(xué)習(xí)愛好者或人工智能研究人員,那么本書能夠成為你開始處理人工智能挑戰(zhàn)的完美資源。 為了充分利用本書,你必須具備中級Python技能,并且熟悉機(jī)器學(xué)習(xí)概念!渡疃葘W(xué)習(xí)基礎(chǔ)教程》內(nèi)容 第1章是為什么進(jìn)行深度學(xué)習(xí),對深度學(xué)習(xí)進(jìn)行了概述。本章將首先介紹深度學(xué)習(xí)的歷史、興起及其在一些領(lǐng)域的最新進(jìn)展。隨后還將介紹深度學(xué)習(xí)的一些挑戰(zhàn)及其未來潛力。 第2章是為深度學(xué)習(xí)做準(zhǔn)備,是培養(yǎng)自己進(jìn)行深度學(xué)習(xí)實驗并在現(xiàn)實世界中應(yīng)用深度學(xué)習(xí)技術(shù)的起點。本章將回答關(guān)于深度學(xué)習(xí)入門所需技能和概念的一些關(guān)鍵問題。本章內(nèi)容包括線性代數(shù)的一些基本概念、深度學(xué)習(xí)實現(xiàn)的硬件要求,以及一些主流的深度學(xué)習(xí)軟件框架。本章還將研究在基于云的GPU實例上從零開始搭建一個深度學(xué)習(xí)系統(tǒng)。 第3章是神經(jīng)網(wǎng)絡(luò)入門,重點介紹神經(jīng)網(wǎng)絡(luò)的基本知識,包括輸入/輸出層、隱藏層,以及網(wǎng)絡(luò)如何通過前向和反向傳播進(jìn)行學(xué)習(xí)。本章將從標(biāo)準(zhǔn)多層感知機(jī)網(wǎng)絡(luò)及其構(gòu)建模塊開始,說明它們是如何逐步學(xué)習(xí)的。隨后還將介紹一些主流的標(biāo)準(zhǔn)模型,如卷積神經(jīng)網(wǎng)絡(luò)(CNN)、受限玻耳茲曼機(jī)(RBM)、循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)及其變體——長短時記憶(LSTM)網(wǎng)絡(luò)。 第4章是計算機(jī)視覺中的深度學(xué)習(xí),對CNN進(jìn)行了詳細(xì)解釋。本章將講解CNN工作所必需的核心概念以及它們?nèi)绾伪挥脕斫鉀Q現(xiàn)實世界中的計算機(jī)視覺問題。本章將介紹一些主流的CNN架構(gòu),并且還將使用TensorFlow實現(xiàn)一個基本的CNN。 第5章是自然語言處理中的向量表示,涵蓋了基于深度學(xué)習(xí)進(jìn)行自然語言處理的基礎(chǔ)知識。本章將介紹自然語言處理中一些主流的用于特征表示的詞嵌入技術(shù),涵蓋的模型有Word2Vec、GloVe和FastText等。本章還包括一個使用TensorFlow進(jìn)行嵌入訓(xùn)練的示例。 第6章是高級自然語言處理,采用以模型為中心的方法進(jìn)行文本處理。本章將討論一些核心模型,如RNN和LSTM網(wǎng)絡(luò)。本章將介紹使用TensorFlow實現(xiàn)一個LSTM網(wǎng)絡(luò)的示例,并描述LSTM網(wǎng)絡(luò)常用文本處理應(yīng)用背后的基本架構(gòu)。 第7章是多模態(tài),介紹了采用深度學(xué)習(xí)處理多模態(tài)的一些基本進(jìn)展。本章也分享了一些新穎、先進(jìn)的深度學(xué)習(xí)多模態(tài)應(yīng)用。 第8章是深度強(qiáng)化學(xué)習(xí),涵蓋了強(qiáng)化學(xué)習(xí)的基礎(chǔ)知識,同時闡述了怎樣應(yīng)用深度學(xué)習(xí)改進(jìn)強(qiáng)化學(xué)習(xí)。本章主要介紹了使用TensorFlow進(jìn)行深度強(qiáng)化學(xué)習(xí)的基本實現(xiàn),并討論了深度強(qiáng)化學(xué)習(xí)的一些主流應(yīng)用。 第9章是深度學(xué)習(xí)的技巧,為讀者提供了在使用深度學(xué)習(xí)時可以采用的許多實用技巧,如網(wǎng)絡(luò)權(quán)值初始化的最佳實踐、學(xué)習(xí)參數(shù)調(diào)整、如何防止過擬合以及在面對數(shù)據(jù)挑戰(zhàn)時如何準(zhǔn)備數(shù)據(jù)以便更好地學(xué)習(xí)。 第10章是深度學(xué)習(xí)的發(fā)展趨勢,總結(jié)了即將到來的一些深度學(xué)習(xí)想法。它著眼于新開發(fā)算法中的一些即將出現(xiàn)的趨勢以及一些深度學(xué)習(xí)的新應(yīng)用。閱讀建議 為了充分利用《深度學(xué)習(xí)基礎(chǔ)教程》,讀者需要按照我們提供的如下建議進(jìn)行閱讀:第一,建議至少對Python編程和機(jī)器學(xué)習(xí)有一些基本的了解。第二,在閱讀第3章及其之后的章節(jié)之前,一定要遵循第2章的設(shè)置說明。需要設(shè)置自己的編程環(huán)境,以便于能夠練習(xí)書中的示例代碼。第三,讓自己熟悉TensorFlow并閱讀其文檔。TensorFlow文檔(https://www.tensorflow.org/api_docs/)是一個很好的信息資源,其包含了大量很好且重要的示例。也可以在網(wǎng)上查看各種開源示例和深度學(xué)習(xí)相關(guān)的資源。第四,一定要親自探索。對于不需要太多計算時間的簡單問題嘗試不同的設(shè)置或配置,這有助于快速了解模型如何工作以及如何調(diào)整參數(shù)。最后,深入研究每種類型的模型。本書用樸素的語言解釋了各種深度學(xué)習(xí)模型的要點并且避免了太多的數(shù)學(xué)描述,其目的是幫助讀者了解神經(jīng)網(wǎng)絡(luò)的底層機(jī)制。雖然目前有許多不同的開源工具可以提供高級API,但是對深度學(xué)習(xí)的良好理解將對調(diào)試和改進(jìn)模型性能大有裨益。下載示例代碼文件 讀者可以在網(wǎng)站www.packtpub.com上登錄自己的賬戶,下載《深度學(xué)習(xí)基礎(chǔ)教程》的示例代碼文件。如果是從其他渠道購買的本書,可以訪問網(wǎng)址:www.packtpub.com/support。注冊之后,可以收到通過郵件直接發(fā)送過來的文件。 可以根據(jù)
Wei Di是一名擁有多年機(jī)器學(xué)習(xí)和人工智能經(jīng)驗的數(shù)據(jù)科學(xué)家。她熱衷于創(chuàng)建智能和可擴(kuò)展的解決方案,這些解決方案可以影響數(shù)百萬人,并增強(qiáng)成功企業(yè)的能力。目前,她是LinkedIn的一名數(shù)據(jù)科學(xué)家。她之前曾與eBay人類語言技術(shù)團(tuán)隊和eBay研究實驗室合作。在此之前,她在Ancestry.com從事記錄鏈接領(lǐng)域的大規(guī)模數(shù)據(jù)挖掘工作。她于2011年獲得了普渡大學(xué)的博士學(xué)位。Anurag Bhardwaj目前領(lǐng)導(dǎo)著Wiser Solutions的數(shù)據(jù)科學(xué)工作,其主要致力于構(gòu)建大規(guī)模的電子商務(wù)庫存。他特別感興趣的是使用機(jī)器學(xué)習(xí)來解決產(chǎn)品類別分類和產(chǎn)品匹配方面的問題,以及電子商務(wù)中的各種相關(guān)問題。此前,他曾在eBay研究實驗室從事圖像理解工作。他在紐約州立大學(xué)布法羅分校獲得博士學(xué)位和碩士學(xué)位,并在印度庫魯什特拉(Kurukshetra)的國立理工學(xué)院獲得了計算機(jī)工程學(xué)士學(xué)位。Jianing Wei是Google Research的高級軟件工程師。他的工作領(lǐng)域是計算機(jī)視覺和計算機(jī)成像。在2013年加入谷歌之前,他曾在索尼美國研究中心工作了4年,在此期間其主要從事3D計算機(jī)視覺和圖像處理領(lǐng)域的研究工作。他于2010年獲得了普渡大學(xué)電子與計算機(jī)工程博士學(xué)位。
譯者序原書前言第 1章 為什么進(jìn)行深度學(xué)習(xí) // 1 1.1 什么是人工智能和深度學(xué)習(xí) // 1 1.2 深度學(xué)習(xí)的歷史及其興起 // 2 1.3 為什么進(jìn)行深度學(xué)習(xí) // 7 1.3.1 相比于傳統(tǒng)淺層方法的優(yōu)勢 // 7 1.3.2 深度學(xué)習(xí)的影響 //8 1.4 深層架構(gòu)的動機(jī) // 9 1.4.1 神經(jīng)的觀點 // 10 1.4.2 特征表示的觀點 // 10 1.5 應(yīng)用 //14 1.5.1 盈利性應(yīng)用 // 14 1.5.2 成功案例 // 14 1.5.3 面向企業(yè)的深度學(xué)習(xí) // 19 1.6 未來的潛力和挑戰(zhàn) // 20 1.7 小結(jié) //21第 2章 為深度學(xué)習(xí)做準(zhǔn)備 // 22 2.1 線性代數(shù)的基礎(chǔ)知識 // 22 2.1.1 數(shù)據(jù)表示 // 22 2.1.2 數(shù)據(jù)操作 // 23 2.1.3 矩陣屬性 // 24 2.2 使用GPU進(jìn)行深度學(xué)習(xí) // 24 2.2.1 深度學(xué)習(xí)硬件指南 // 26 2.3 深度學(xué)習(xí)軟件框架 // 27 2.3.1 TensorFlow // 27 2.3.2 Caffe // 27 2.3.3 MXNet // 28 2.3.4 Torch // 28 2.3.5 Theano // 28 2.3.6 CNTK // 29 2.3.7 Keras // 29 2.3.8 框架比較 // 292.4 基本亞馬遜網(wǎng)絡(luò)服務(wù)的深度學(xué)習(xí)開發(fā)環(huán)境配置 // 30 2.4.1 從零開始配置 // 30 2.4.2 基于Docker的配置 // 33 2.5 小結(jié) //34第 3章 神經(jīng)網(wǎng)絡(luò)入門 // 35 3.1 多層感知機(jī) // 35 3.1.1 輸入層 // 36 3.1.2 輸出層 // 36 3.1.3 隱藏層 // 36 3.1.4 激活函數(shù) // 36 3.2 如何進(jìn)行網(wǎng)絡(luò)學(xué)習(xí) // 39 3.2.1 權(quán)值初始化 // 39 3.2.2 前向傳播 // 39 3.2.3 反向傳播 // 40 3.2.4 梯度消失與爆炸 // 42 3.2.5 優(yōu)化算法 // 42 3.2.6 正則化 // 43 3.3 深度學(xué)習(xí)模型 // 433.3.1 卷積神經(jīng)網(wǎng)絡(luò) // 43 3.3.2 受限玻耳茲曼機(jī) // 47 3.3.3 循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN/LSTM網(wǎng)絡(luò))// 50 3.3.4 RNN中的單元及其展開 // 51 3.3.5 通過時間的反向傳播 // 51 3.3.6 梯度消失與 LSTM網(wǎng)絡(luò) // 51 3.3.7 LSTM網(wǎng)絡(luò)中的單元和網(wǎng)關(guān) // 52 3.4 應(yīng)用示例 //53 3.4.1 TensorFlow設(shè)置與關(guān)鍵概念 // 53 3.4.2 手寫數(shù)字識別 // 54 3.5 小結(jié) //57第 4章 計算機(jī)視覺中的深度學(xué)習(xí) // 58 4.1 卷積神經(jīng)網(wǎng)絡(luò)的起源 // 58 4.2 卷積神經(jīng)網(wǎng)絡(luò) // 59 4.2.1 數(shù)據(jù)變換 // 61 4.2.2 網(wǎng)絡(luò)層 // 62 4.2.3 網(wǎng)絡(luò)初始化 // 65 4.2.4 正則化 // 66 4.2.5 損失函數(shù) // 67 4.2.6 模型可視化 // 68 4.2.7 手寫數(shù)字分類示例 // 69 4.3 微調(diào)卷積神經(jīng)網(wǎng)絡(luò) // 71 4.4 主流的卷積神經(jīng)網(wǎng)絡(luò)架構(gòu) // 72 4.4.1 AlexNet // 72 4.4.2 VGG // 72 4.4.3 GoogLeNet // 734.4.4 ResNet // 73 4.5 小結(jié) //74第 5章 自然語言處理中的向量表示 // 75 5.1 傳統(tǒng)的自然語言處理 // 75 5.1.1 BoW // 75 5.1.2 帶權(quán)的 tf-idf // 76 5.2 基于深度學(xué)習(xí)的自然語言處理 // 77 5.2.1 動機(jī)及分散式表示法 // 77 5.2.2 詞嵌入 // 78 5.2.3 Word2Vec // 81 5.2.4 了解 GloVe // 92 5.2.5 FastText // 92 5.3 應(yīng)用 //93 5.3.1 使用示例 // 93 5.3.2 微調(diào) // 93 5.4 小結(jié) //94第 6章 高級自然語言處理 // 95 6.1 面向文本的深度學(xué)習(xí) // 95 6.1.1 神經(jīng)網(wǎng)絡(luò)的局限性 // 95 6.2 循環(huán)神經(jīng)網(wǎng)絡(luò) // 96 6.2.1 RNN架構(gòu) // 97 6.2.2 基本的RNN模型 // 98 6.2.3 訓(xùn)練RNN很難 // 98 6.3 LSTM網(wǎng)絡(luò) //99 6.3.1 使用TensorFlow實現(xiàn)LSTM網(wǎng)絡(luò) // 101 6.4 應(yīng)用 //103 6.4.1 語言建模 // 103 6.4.2 序列標(biāo)注 // 104 6.4.3 機(jī)器翻譯 // 106 6.4.4 聊天機(jī)器人 // 1096.5 小結(jié) //110第 7章 多模態(tài) // 111 7.1 什么是多模態(tài)學(xué)習(xí) // 111 7.2 多模態(tài)學(xué)習(xí)的挑戰(zhàn) // 111 7.2.1 模態(tài)表示 // 112 7.2.2 模態(tài)轉(zhuǎn)換 // 112 7.2.3 模態(tài)對齊 // 1127.2.4 模態(tài)融合 // 113 7.2.5 協(xié)同學(xué)習(xí) // 113 7.3 圖像標(biāo)注生成 //113 7.3.1 show&tell算法 // 114 7.3.2 其他類型的方法 // 116 7.3.3 數(shù)據(jù)集 // 117 7.3.4 評估方法 // 119 7.3.5 注意力模型 // 121 7.4 視覺問答 //125 7.5 基于多源的自動駕駛 //127 7.6 小結(jié) //130第 8章 深度強(qiáng)化學(xué)習(xí) // 1318.1 什么是強(qiáng)化學(xué)習(xí) // 131 8.1.1 問題設(shè)置 // 132 8.1.2 基于值函數(shù)學(xué)習(xí)的算法 // 132 8.1.3 基于策略搜索的算法 //134 8.1.4 基于Actor-Critic的算法 // 134 8.2 深度強(qiáng)化學(xué)習(xí) // 135 8.2.1 深度Q網(wǎng)絡(luò)(DQN)// 135 8.2.2 雙DQN // 137 8.2.3 競爭DQN // 138 8.3 強(qiáng)化學(xué)習(xí)實現(xiàn) // 138 8.3.1 簡單的強(qiáng)化學(xué)習(xí)示例 // 138 8.3.2 以Q-learning為例的強(qiáng)化學(xué)習(xí) // 139 8.4 小結(jié) //141第 9章 深度學(xué)習(xí)的技巧 // 142 9.1 處理數(shù)據(jù) //142 9.1.1 數(shù)據(jù)清理 // 142 9.1.2 數(shù)據(jù)擴(kuò)充 // 142 9.1.3 數(shù)據(jù)歸一化 // 143 9.2 訓(xùn)練技巧 // 143 9.2.1 權(quán)值初始化 // 143 9.2.2 優(yōu)化 // 144 9.2.3 損失函數(shù)選擇 // 146 9.2.4 防止過擬合 // 147 9.2.5 微調(diào) // 148 9.3 模型壓縮 // 149 9.4 小結(jié) // 152第 10章 深度學(xué)習(xí)的發(fā)展趨勢 // 153 10.1 深度學(xué)習(xí)的最新模型 // 15310.1.1 生成對抗網(wǎng)絡(luò) // 153 10.1.2 Capsule網(wǎng)絡(luò) // 154 10.2 深度學(xué)習(xí)的新應(yīng)用 // 15510.2.1 基因組學(xué) // 155 10.2.2 醫(yī)療預(yù)測 // 157 10.2.3 臨床影像學(xué) // 159 10.2.4 唇語 // 160 10.2.5 視覺推理 // 161 10.2.6 代碼合成 // 162 10.3 小結(jié) // 164