天天看點

《深度學習》(美)Ian Goodfellow 花書簡要筆記(第一部分:應用數學與機器學習基礎)

說明:本篇Blog為自己刷《深度學習》時的簡要筆記,僅記錄對自己有啟發或不熟悉的知識點,并非全面筆記。不過,對于任何一個學深度學習的人來說,這本書真的算是很好的一本入門書籍,公式推導都特别細緻,很難得,必刷指數五顆星~

第一章 引言

1、人工智能的真正挑戰在于解決那些對于人來說很容易執行、但很難形式化描述的任務;人工智能的一個關鍵性挑戰在于如何将這些非形式化的知識傳達給計算機。

2、對于很多任務來說,我們很難知道應該提取哪些特征。解決這個方法的途徑之一是表示學習。

3、配套資源網站:http://www.deeplearningbook.org/lecture_slides.html

第二章 線性代數

#本部分主要為矩陣論的内容,沒有修過矩陣論的童鞋可以找找相關的網絡課程或者參考書籍(我們當時學的時候用的是程雲鵬老師的《矩陣論》,感覺内容編排有點雜亂,但是習題非常不錯)。

1、張量:坐标超過兩維的數組。

2、廣播:在DL中,我們允許矩陣和向量相加而産生另一個矩陣:C=A+b。(向量b和矩陣A的每一行相加)。這種隐式地複制向量b到很多位置的方式,稱為廣播。

3、Hadamard乘積(元素對應乘積)

《深度學習》(美)Ian Goodfellow 花書簡要筆記(第一部分:應用數學與機器學習基礎)

4、範數是滿足下列性質的任意函數:

(1)f(x) = 0,推出 x = 0;

(2)滿足三角不等式;

(3)存在a屬于R,f(ax) = |a|f(x).

5、Frobenius範數:衡量矩陣的大小。(F範數)

《深度學習》(美)Ian Goodfellow 花書簡要筆記(第一部分:應用數學與機器學習基礎)

6、迹運算

7、行列式的絕對值可以用來衡量矩陣參與矩陣乘法後空間擴大或縮小了多少。如果行列式是0,那麼空間至少沿着某一個次元完全收縮了,使其失去了所有的體積;如果行列式是1,那麼這個轉換保持空間體積不變。

第三章 機率論與資訊論

- 機率論部分

#本章機率論部分大部分為大學機率論課本上的知識,除此之外,還有狄利克雷分布、高斯混合模型和常用的兩個函數sigmoid、softplus,這四個知識點可以單獨補充。

1、機率法告訴我們AI系統如何推理,可以用機率和統計從理論上分析我們提出的AI系統的行為;

2、機率論使我們能夠提出不确定的聲明以及在不确定性存在的情況下進行推理;而資訊論使我們能夠量化機率分布中的不确定總量。

3、不确定性的3種可能來源:

(1)被模組化系統内在的随機性;

(2)不完全觀測;

(3)不完全模組化。

4、機率直接與時間發生的頻率相聯系,被稱為頻率派機率;而涉及确定性水準,被稱為貝葉斯機率。

5、必須根據随機變量來推斷使用的PMF(機率品質函數),而不是根據函數的名稱來推斷。

6、正态分布是預設比較好的選擇,原因有兩個:

(1)我們想要模組化的很多分布的真實情況是比較接近正态分布的。中心極限定理說明很多獨立随機變量的和近似服從正态分布。

(2)在具有相同方差的所有可能的機率分布中,正态分布在實數上具有最大的不确定性。是以,我們可以認為正态分布是對模型加入的先驗知識量最少的分布。

7、Laplace分布

《深度學習》(美)Ian Goodfellow 花書簡要筆記(第一部分:應用數學與機器學習基礎)
《深度學習》(美)Ian Goodfellow 花書簡要筆記(第一部分:應用數學與機器學習基礎)

8、softplus函數

參考位址:https://blog.csdn.net/bqw18744018044/article/details/81193241

激活函數,用的較少,原因是對數運算計算量過大。

9、測度論(測量幾何區域的尺度)

兩個相關術語:零測度、幾乎處處。

零測度:零測度集在我們的度量空間内不占有任何的體積。

幾乎處處:某個性質如果是幾乎處處都成立的,那麼它在整個空間除了一個測度為零的集合以外都是成立的。

#Jacobian矩陣(雅可比矩陣,參考同濟高數教材)

- 資訊論部分

#資訊論部分涉及的比較基礎,涉及熵的定義(熵、最大熵、條件熵、聯合熵)、自資訊、互資訊、KL散度,一般不會超出這個範圍,百度補充即可。另外,涉及圖模型的基礎知識:有向圖、無向圖、團等概念,百度補充即可。

第四章 數值計算

#梯度下降法參考吳恩達老師的《機器學習》課程,導數相關概念參考高數課本,Hessian矩陣參考矩陣論課本。

1、上溢和下溢

#非0非無窮的數字被近似為0和無窮有時候會破壞運算。

(1)上溢:當大量級的數被近似為無窮時發生上溢;

(2)下溢:當接近0的數被四舍五入為0時發生下溢。

可以用softmax函數對上溢和下溢進行數值穩定。

2、病态條件和條件數

參考位址1:https://baike.baidu.com/item/病态條件/19112883?fr=aladdin

參考位址2:https://baike.baidu.com/item/條件數/5293168

3、遞增帶有離散參數的目标函數稱為爬山算法。

4、二階導數測試(左右移動,通過斜率變化判斷該點是局部極大點還是局部極小點)。

5、牛頓法

參考位址:https://baike.baidu.com/item/牛頓法/1384129?fr=aladdin

補充:拟牛頓法,參考位址:https://baike.baidu.com/item/拟牛頓法

(感覺百度百科比大部分部落格講的清楚多了)

6、Lipschitz連續和Lipschitz常數

#如果存在常數L>0,使得不等式∣f(x,y1)-f(x,y2)〡≤L∣y1-y2〡 對于所有(x,y1),(x,y2) 屬于R 都成立,則函數f(x,y)稱為在R上滿足利普希茨(Lipschitz)條件,L稱為利普希茨常數(該常數依函數而定)。

7、凸優化(很重要,待補充課程知識:黃皮教材+練習+斯坦福youtube配套課程)

8、KKT條件

(1)廣義Lagrangian的梯度為0;

(2)所有關于x和KKT乘子的限制都滿足;

(3)不等式限制顯示的“互補松弛性”:

《深度學習》(美)Ian Goodfellow 花書簡要筆記(第一部分:應用數學與機器學習基礎)

#補充:參考位址:https://blog.csdn.net/johnnyconstantine/article/details/46335763

9、矩陣函數求導

參考位址1:http://www.doc88.com/p-3887470858128.html

參考位址2:https://blog.csdn.net/daaikuaichuan/article/details/80620518

參考位址3:https://blog.csdn.net/u010025211/article/details/51646739

第五章 機器學習基礎

#機器學習部分建議參考李航老師的《統計學習》和周志華老師的西瓜書《機器學習》,建議以統計學習為主(最好相關模型自己手推一遍),西瓜書作為補充。建議配套吳恩達老師的《機器學習》課程(最好完成Cousera上的程式設計作業)。花書的基礎部分講的太簡單了,以上書籍課程涵蓋了這部分的所有内容,可以作為本章的補充。

#能力強的童鞋可以參考Bishop的《PATTERN RECOGNITION And MACHINE LEARNING》,有譯本《模式識别與機器學習》。英文電子版本可以聯系我郵箱:[email protected]。

1、常見機器學習任務

  • 分類
  • 輸入缺失分類:輸入向量的每個度量不被保證;解決辦法,學習所有相關變量的機率分布,然後通過邊緣化缺失變量來解決分類任務。
  • 回歸
  • 轉錄:在這類任務中,機器學習系統觀測一些相對非結構化表示的資料,并轉錄資訊為離散的文本形式。
  • 機器翻譯
  • 結構化輸出:結構化輸任務的輸出是向量或其他包含多個值的資料結構,并且構成輸出的這些不同元素間具有重要關系。
  • 異常檢測
  • 合成和采樣
  • 缺失值填補
  • 去噪
  • 密度估計/機率品質函數估計:要求學習算法隐式地捕獲機率分布的結構。

2、表示資料集的常用方法是設計矩陣。設計矩陣的每一行包含一個不同的樣本。

3、算法前提——獨立同分布假設(資料集内樣本獨立、訓練集與測試集同分布)。

4、Vapnik-Chervonenkis 次元(VC維)

  • 量化模型容量、表征泛化的一種方法。

    補充資料:

    參考位址1:https://baike.baidu.com/item/vc維/2947135?fr=aladdin

    參考位址2:https://www.jiqizhixin.com/graph/technologies/e766aa0d-af15-480a-9ce9-b6357442330e

    參考位址3:https://cntofu.com/book/157/15. Vapnik-Chervonenkis Dimension.md

5、貝葉斯誤差:從預先知道的真實分布預測而出現的誤差。

6、通過兩種方法控制算法的性能:允許使用的函數種類、函數的數量。

7、估計、偏差和方差(機率論知識補充)

  • 估計:點估計、函數估計;
  • 偏差:無偏、漸近無偏;樣本方差、無偏樣本方差;
  • 方差、标準差;最小化均方誤差(權衡偏差和方差);
  • 一緻性

8、關于聚類的一個問題是,沒有單一的标準去度量聚類的資料在真實世界中效果如何。

9、随機梯度下降的核心是,梯度是期望。

10、局部核:核函數k(u,v)在u=v時很大,當uv距離拉大時而減小。局部核可以看做執行模闆比對的相似函數,用于度量測試樣本x和每個訓練樣本xi之間的相似度。

參考論文:Bengio et al.Conditional computation in neural networks for faster models.

論文下載下傳位址:https://arxiv.org/pdf/1511.06297.pdf

11、深度學習的核心思想是假設資料由因素或特征組合産生,這些因素或特征可能來自一個層次結構的多個層級。

12、流形學習

  • 數學概念:指一組點,且每個點都有其領域。給定一個任意的點,其流形局部看起來像是歐幾裡得空間。(日常生活中,我們将地球視為二維平面,但實際上它是一個三維空間中的球狀流形。)
  • 流形學習的觀點:認為我們所能觀察到的資料實際上是由一個低維流行映射到高維空間的。由于資料内部特征的限制,一些高維中的資料會産生次元上的備援,實際上這些資料隻要比較低的次元就能唯一的表示。是以直覺上來講,一個流形好比是一個dd維的空間,在一個mm維的空間中(m>d)(m>d)被扭曲之後的結果。需要注意的是流形并不是一個形狀,而是一個空間。(參考位址:https://www.cnblogs.com/jiangxinyang/p/9314256.html)
  • 流形假設:假設n維空間R中的大部分都是無效輸入,有意義的輸入隻分布在包含少量資料點的子集構成的一組流形中,而學習函數的輸出中,有意義的變化都沿着流形的方向或僅發生在我們切換到另一流形時。
  • 支援流形假設的兩個觀察:

    (1)現實生活中的圖像、文本、聲音的機率分布都是高度集中的;

    #如果我們均勻地随機抽取字母來生成檔案,能有多大機率得到一個有意義的英國文檔?答案是幾乎為零。

    (2)(我們必須確定所遇到的樣本和其他樣本互相連接配接)我們至少能夠非正式地想象這些領域和變換。

繼續閱讀