標籤:

李宏毅機器學習2016 第九講 卷積神經網路

視頻鏈接:李宏毅機器學習(2016)_演講?公開課_科技_bilibili_嗶哩嗶哩

課程資源:Hung-yi Lee

課程相關PPT已經打包命名好了:鏈接:pan.baidu.com/s/1c3Jyh6 密碼:77u5

我的第八講筆記:李宏毅機器學習2016 第八講 深度學習網路優化小訣竅

Convolutional Neural Network

本章節主要講解了CNN的原理、實現以及應用。

1.為什麼用CNN處理圖片?

這是基於圖片的三大特性:

① 一些模式比起整張圖片來說更小,即尋找模式不用看完整的圖像。

例如上圖鴨嘴這個模式就僅僅存在於特定的區域,因此我們可以不用全部連接,而可以使用較少的參數檢測小區域。

②同一個模式可能會出現在不同的區域。

檢測鴨嘴這個模式,不同圖片可能會出現在上面或者是中間,因此可以使用參數共享。

③子採樣不會改變物體。

子採樣使得圖片變小了,但不會影響圖片原本的特徵。因此可以使用更少的參數。

2. CNN

基於上述的三個特性,我們就可以了解CNN。CNN主要是有卷積操作和池化操作(可重複多次)。

卷積操作對應於特性1和2,池化操作對應特性3.

3. 卷積

卷積操作主要是學習過濾器的值。讓過濾器和圖像做卷積運算,得到新的特徵圖譜。

這裡涉及過濾器的大小,數量以及步長和是否填充。

這裡就不詳細介紹相關知識了,有興趣的可以觀看CS231n課程,裡面有很詳細的關於這方面的知識。

對比卷積和全連接,其實全連接拿掉一些weight就是卷積操作。

這裡只連接9個輸入,更少的參數,並且權值共享,參數又進一步減少了。

4.池化

池化操作是比較好理解的,主要作用是降維,由特性3可知可知子採樣不會影響圖片原有特性。舉例Maxpooling。

5. 用keras實現CNN

這裡值得注意的是每一層參數的數量。

6.CNN應用

①Deep Dream

給機器一張圖,然後對權重進行修改,可以得到不同的結果。

這裡是使正的權值更正,值更大,負的權值更負,值更小。

結果得到的圖片出現了一些奇異的動物,可以看出很多原來是石頭的現在變成了動物。

②Deep Style

一張原圖的內容(Content)加上一張名畫的風格(Style)就可以生成一張別有趣味的圖。

③下圍棋(Alpha Go就使用了CNN,但是沒有使用池化操作)

為什麼CNN能用於下圍棋呢?對於下圍棋而言,第一部分所講的特性1,2同樣具有。

特性3如果進行了池化會縮小圖片尺寸(減少某些行和列),顯然對下圍棋來說是不可接受的。

④Speech

⑤text

⑥Machine Draw an image

⑦more

7.總結

本章較為粗略的講解了CNN卷積神經網路的原理以及實現方法,最後講述了其廣泛的應用。


推薦閱讀:

直播預告 · Machine Learning Security & Taint Style Vulnerability Research - Week 17
Probably Approximately Correct
我的Kaggle初體驗 -- Grupo Bimbo Inventory Demand
「深度學習入行門檻太低了,不開心!」
parameter server的代碼要怎麼讀?

TAG:机器学习 |