- Python深度學習:基于TensorFlow
- 吳茂貴
- 1282字
- 2019-01-10 16:06:23
前言
為什么寫這本書
人工智能新時代學什么?我們知道,Python是人工智能的首選語言,深度學習是人工智能的核心,而TensorFlow是深度學習框架中的No.1。所以我們在本書中將這三者有機結合,希望借此把這些目前應用最廣、最有前景的工具和算法分享給大家。
人工智能新時代如何學?市面上介紹這些工具和深度學習理論的書籍已有很多,而且不乏經典大作,如講機器學習理論和算法的有周志華老師的《機器學習》;介紹深度學習理論和算法的有伊恩·古德費洛等編著的《深度學習》;介紹TensorFlow實戰的有黃文堅、唐源編著的《TensorFlow實戰》、山姆·亞伯拉罕等編著的《面向機器智能的TensorFlow實踐》等。這些都是非常經典的大作,如果你對機器學習、深度學習、人工智能感興趣的話,這些書均值得一讀。
本書在某些方面或許無法和它們相比,但我覺得也會有不少讓你感到滿意,甚至驚喜的地方。本書的特點具體包括以下幾個方面。
1.內容選擇:提供全棧式的解決方案
深度學習涉及范圍比較廣,既有對基礎、原理的一些要求,也有對代碼實現的要求。如何在較短時間內快速提高深度學習的水平?如何盡快把所學運用到實踐中?這方面雖然沒有捷徑可言,但卻有方法可循。本書基于這些考量,希望能給你提供一站式解決方案。具體內容包括:機器學習與深度學習的三大基石(線性代數、概率與信息論及數值分析);機器學習與深度學習的基本理論和原理;機器學習與深度學習的常用開發工具(Python、TensorFlow、Keras等),此外還有TensorFlow的高級封裝及多個綜合性實戰項目等。
2.層次安排:找準易撕口、快速實現由點到面的突破
我們打開塑料袋時,一般從易撕口開始,這樣即使再牢固的袋子也很容易打開。面對深度學習這個“牢固袋子”,我們也可采用類似方法,找準易撕口。如果沒有,就創造一個易撕口,通過這個易撕口,實現點到面的快速擴展。本書在介紹很多抽象、深奧的算法時采用了這種方法。我們知道BP算法、循環神經網絡是深度學習中的兩塊硬骨頭,所以在介紹BP算法時,先介紹單個神經如何實現BP算法這個易撕口,再延伸到一般情況;在介紹循環神經網絡時,我們也以一個簡單實例為易撕口,再延伸到一般情況。希望通過這種方式,能幫助你把難題化易、把大事化小、把不可能轉換為可能。
3.表達形式:讓圖說話,一張好圖勝過千言萬語
在機器學習、深度學習中有很多抽象的概念、復雜的算法、深奧的理論,如Numpy的廣播機制、神經網絡中的共享參數、動量優化法、梯度消失或爆炸等,這些內容如果只用文字來描述,可能很難達到茅塞頓開的效果,但如果用一些圖形來展現,再加上適當的文字說明,往往能取得非常好的效果,正所謂一張好圖勝過千言萬語。
除了以上談到的三個方面,為了幫助大家更好理解、更快掌握機器學習、深度學習這些人工智能的核心內容,本書還包含了其他方法。我們希望通過這些方法或方式帶給你不一樣的理解和體驗,使抽象數學不抽象、深度學習不深奧、復雜算法不復雜,這或許就是我們寫這本書的主要目的。
至于人工智能(AI)的重要性,想必不用多說了。如果說2016年前屬于擺事實論證的階段,那么2016年后已進入事實勝于雄辯的階段了,而2018年后應該屬于擼起袖子加油干的階段。目前各行各業都忙于AI+,給人“忽如一夜春風來,千樹萬樹梨花開”的感覺!
- 深入理解Android(卷I)
- Git Version Control Cookbook
- Linux C/C++服務器開發實踐
- SQL Server 2012數據庫技術及應用(微課版·第5版)
- Groovy for Domain:specific Languages(Second Edition)
- PHP+MySQL+Dreamweaver動態網站開發實例教程
- Oracle從入門到精通(第5版)
- Java零基礎實戰
- 智能搜索和推薦系統:原理、算法與應用
- Developing SSRS Reports for Dynamics AX
- MATLAB GUI純代碼編寫從入門到實戰
- 軟件工程基礎與實訓教程
- PHP+MySQL動態網站開發從入門到精通(視頻教學版)
- ASP.NET 4.0 Web程序設計
- Unity Android Game Development by Example Beginner's Guide