李宏毅深度学习——深度学习介绍
Deep Learning近些年來吸引到了很多的關注,并且橫跨多領域、橫跨多種產品,有非常非常多的應用
深度學習的歷史、步驟?
1958年,一開始perception的提出引起了轟動, 有人說可以利用perception來分辨坦克和卡車,但結果是拍攝坦克卡車的日子不同,一天是雨天一天是晴天,perception只能夠抓到亮度而已
1980年,把多個perception接在一起
1986年,發現超過3個hidden layer的效果是不好的
1989年,認為1個hidden layer就足夠好了,multi—layer perception的名字臭掉了
2006年, 利用RBM(受限玻爾茲曼機)找初始的值,這是一個重大的突破
2009年,知道要用GPU來加速
2011年,開始得到認可
2012年,贏得了一個比賽
在機器學習中,執行一個算法通常要經過遵循以下三個步驟:(1)定義一個函數集;(2)定義函數的好壞;(3)訓練參數,得到不同的函數,并選擇最好的函數
Deep?Learning同樣遵循這三個步驟。具體來說,在第一步中,定義的函數集為一個神經網絡(neuron?network) 。
定義一個函數集
深度學習的結構
如圖所示展示了一個神經網絡,它是由許多神經元(neuron)組成的一個系統。每一個神經元的參數為:為每個輸入分配一個權重wi,一個常數b,一個函數在運算中,每個神經元執行這樣的操作:將每個輸入xi乘以權重wi后求和,將得到的值加上b作為函數的輸入,輸出得到的函數值。將這個神經元的輸出將作為下個神經元的輸入,依次將這些神經元之間進行連接即得到一個神經網絡。定義了這些神經元之間的連接方式,也就定義了函數集。
不同的連接方式會形成不同的網絡結構
舉一個例子來說明神經網絡是如何運作的。下圖展示了一個簡單的神經網絡,神經網絡的輸入為1和-1,第一個神經元對兩個輸入的權重分別為1和-2,計算1*1+(-1)*(-2)+1=4,將4作為sigmoid函數的輸入,輸出(4)=0.98。同理計算其他神將元,最后整個神經網絡得到的輸出為0.62和0.83.
?輸入——>藍色——>紅色——<綠色——>輸出
全連接前饋網絡
最常見的連接方式——Fully?Connect?Feedforward?Network(全連接前饋網絡)
全連接前饋神經網絡是一種常見的神經網絡連接方式,指的是層與層的神經元之間使用全連接的方式連接,即一層中每個神經元的輸出會參與到下一層每個神經元的輸入。它的輸入是一個N維向量,輸出是一個M維向量。輸入稱為Input Layer,輸出結果的一層神經元稱為Output Layer,中間其他的層稱為Hidden Layer,通常將使用了很多Hidden Layer的方法稱為Deep Learing。
?
實際上一個neural network在做的事情就是,一個vector乘上matrix+vector,一連串的矩陣運算,gpu可以加速矩陣運算
特征提取取代了特征工程,上圖是多分類的問題
舉一個小例子(手寫數字識別)
input是每一個小方塊是否圖顏色了,output是不同數字的幾率?
中間有幾個layer,每個layer有多少個neuron是不收到限制的,那么該如何決定它們呢?
通過經驗+試錯+直覺?
從機器學習轉化為深度學習,重點從特征工程(抽好的feature)轉變成了如何design network structure
語音辨識、影像辨識最早使用深度學習?
定義函數的好壞
?loss是y和y_hat的cross entropy
(1)在function set找一個function來minimizes total loss
(2)找network的參數來minimizes total loss
并選擇最好的函數
依然是使用梯度下降的辦法
?
?有這些方法來算微分,具體不需要知道
為什么要用Deep?Learning(多層Hidden? Layer)
一個已經被證實的理論是,一層Hidden?Layer就足以模擬出任何函數,那么為什么還要使用Deep?Learning呢?當然是因為Deep?Learning的效果更好。如圖,同一行的數據使用參數的個數是相似的。可以看出,使用多層Layer的效果明顯好于只使用一層的。
?只要hidden neurons夠多,可以表示成任何一個function
總結
以上是生活随笔為你收集整理的李宏毅深度学习——深度学习介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 李宏毅深度学习作业二
- 下一篇: 原创:嘉靖皇帝为什么没有重用王阳明?