《零基礎入門深度學習》系列文章(教程+代碼)

無論即將到來的是大數據時代還是人工智能時代,亦或是傳統行業使用人工智能在雲上處理大數據的時代,作爲一個有理想有追求的程序員,不懂深度學習(Deep Learning)這個超熱的技術,會不會感覺馬上就out了?現在救命稻草來了,《零基礎入門深度學習》系列文章旨在講幫助愛編程的你從零基礎達到入門級水平。零基礎意味着你不需要太多的數學知識,只要會寫程序就行了,沒錯,這是專門爲程序員寫的文章。雖然文中會有很多公式你也許看不懂,但同時也會有更多的代碼,程序員的你一定能看懂的(我周圍是一羣狂熱的Clean Code程序員,所以我寫的代碼也不會很差)。

文章更新了5篇:
零基礎入門深度學習(1) - 感知器
深度學習是啥
在人工智能領域,有一個方法叫機器學習。在機器學習這個方法裏,有一類算法叫神經網絡。神經網絡如下圖所示:

上圖中每個圓圈都是一個神經元,每條線表示神經元之間的連接。我們可以看到,上面的神經元被分成了多層,層與層之間的神經元有連接,而層內之間的神經元沒有連接。最左邊的層叫做輸入層,這層負責接收輸入數據;最右邊的層叫輸出層,我們可以從這層獲取神經網絡輸出數據。輸入層和輸出層之間的層叫做隱藏層。
鏈接:
https://www.zybuluo.com/hanbingtao/note/433855

零基礎入門深度學習(2) - 線性單元和梯度下降
在上一篇文章中,我們已經學會了編寫一個簡單的感知器,並用它來實現一個線性分類器。你應該還記得用來訓練感知器的『感知器規則』。然而,我們並沒有關心這個規則是怎麼得到的。本文通過介紹另外一種『感知器』,也就是『線性單元』,來說明關於機器學習一些基本的概念,比如模型、目標函數、優化算法等等。這些概念對於所有的機器學習算法來說都是通用的,掌握了這些概念,就掌握了機器學習的基本套路。
鏈接:
https://www.zybuluo.com/hanbingtao/note/448086

零基礎入門深度學習(3) - 神經網絡和反向傳播算法
在上一篇文章中,我們已經掌握了機器學習的基本套路,對模型、目標函數、優化算法這些概念有了一定程度的理解,而且已經會訓練單個的感知器或者線性單元了。在這篇文章中,我們將把這些單獨的單元按照一定的規則相互連接在一起形成神經網絡,從而奇蹟般的獲得了強大的學習能力。我們還將介紹這種網絡的訓練算法:反向傳播算法。最後,我們依然用代碼實現一個神經網絡。如果您能堅持到本文的結尾,將會看到我們用自己實現的神經網絡去識別手寫數字。現在請做好準備,您即將雙手觸及到深度學習的大門。
鏈接:
https://www.zybuluo.com/hanbingtao/note/476663

零基礎入門深度學習(4) - 卷積神經網絡
本文將要介紹一種更適合圖像、語音識別任務的神經網絡結構——卷積神經網絡(Convolutional Neural Network, CNN)。說卷積神經網絡是最重要的一種神經網絡也不爲過,它在最近幾年大放異彩,幾乎所有圖像、語音識別領域的重要突破都是卷積神經網絡取得的,比如谷歌的GoogleNet、微軟的ResNet等,打敗李世石的AlphaGo也用到了這種網絡。本文將詳細介紹卷積神經網絡以及它的訓練算法,以及動手實現一個簡單的卷積神經網絡。
鏈接:
https://www.zybuluo.com/hanbingtao/note/485480

零基礎入門深度學習(5) - 循環神經網絡
在前面的文章系列文章中,我們介紹了全連接神經網絡和卷積神經網絡,以及它們的訓練和使用。他們都只能單獨的取處理一個個的輸入,前一個輸入和後一個輸入是完全沒有關係的。但是,某些任務需要能夠更好的處理序列的信息,即前面的輸入和後面的輸入是有關係的。比如,當我們在理解一句話意思時,孤立的理解這句話的每個詞是不夠的,我們需要處理這些詞連接起來的整個序列;當我們處理視頻的時候,我們也不能只單獨的去分析每一幀,而要分析這些幀連接起來的整個序列。這時,就需要用到深度學習領域中另一類非常重要神經網絡:循環神經網絡(Recurrent Neural Network)。RNN種類很多,也比較繞腦子。不過讀者不用擔心,本文將一如既往的對複雜的東西剝繭抽絲,幫助您理解RNNs以及它的訓練算法,並動手實現一個循環神經網絡。
鏈接:
https://www.zybuluo.com/hanbingtao/note/541458

原文鏈接:
http://weibo.com/5066241201/EggmMg7ym?ref=collection&type=comment

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章