1. 程式人生 > >《深度學習》/《Deep Learning》——深度學習聖經的讀書筆記

《深度學習》/《Deep Learning》——深度學習聖經的讀書筆記

學習方法

  1. 對著書看一遍,把理解的內容寫成筆記
  2. 看完一章後,看著筆記和書,把內容複習一下,把需要畫線的地方畫好並理解
  3. 逐層深入:這本書講解基礎概念講得不生動,但是高層次上有很多不錯的高瞻遠矚的見解,所以先看網文理解到基本的網路(如RNN-LSTM),然後看書深化理解

*. Jumping Read:讀某一章很痛苦的時候,先讀後面一章,然後返回來讀

熟悉語音,VAE,tf,python,和深度學習的最佳方法——跟進大佬用tf寫的語音轉換程式碼,比如VAE那份,跑起來並改善

證明技法

泰勒級數逼近後,可以帶入想要的引數常量P155
做簡化,初始化為0,等

證明A方法=B方法:
在寫出利用了A/B的代價函式/權重特徵值/Hessian,然後聯立對比

概論

  • 當有5k樣本的時候,就可以達到可接受的效能
  • 當有10M個樣本的時候,一般就可以超過人類的表現

矩陣

基礎

  • 注意向量的子集的表示方法,x1表示是x中除去x1的子集,如果令集合S={1,3,6},那麼集合xS表示除去x1x3x6
  • 轉置是沿著對主對角線的翻轉,主對角線是左上角開始的

乘法

矩陣乘法不可教(交換)

單位矩陣和逆矩陣

線性方程組可以求解,而這個解要用到矩陣的逆操作

A1A=In
有了這個逆操作很簡單就可以求取滿秩的線性方程

逆矩陣存在的條件:線性相關

  • X向量的線性組合即生成子空間包含了b,所以要求A的維度大於b的維度,冗餘即為線性相關,可以表示為其他向量的特徵組合
  • 必須方陣,線性無關的時候稱為奇異

線性相關

對一組向量a1,a2,…an,如果有 :

k1a1+k2a2+...=0
則這組向量是線性相關的

對於任意的b使得

Ax=b
成立,那麼當b的維度為m時,A需要恰好m個相互線性無關的列向量(當大於m個的時候,肯定會有一些向量沒辦法跟其他的保持線性無關,就會變成不止一個b)

逆矩陣有左乘和右乘,分別是:

A1A=I

AA1=I
對於方陣有左乘等價於右乘

秩 Rank

如果上面n個向量能選出最多的r個使得構成線性無關的子集,並且任意加一個都會變成線性相關的,那麼r就是矩陣的秩

這個向量組稱為最大線性無關向量組

衡量向量的大小:範數(norm)

幾何角度來看,x的範數,就是原點O到點x的距離
最常用的是p範數:

||x||p=(|xi|p)1p
單位範數即滿足
||x||p=1
的點在平面上組成的線
  • 0範數:衡量x中0的數量(不用上式定義)
  • 1範數:令p=1,得元素絕對值之和,單位範數是方形
  • 2範數:p=2,歐幾里得範數,大小表示原點到當前點的距離

不同p值的單位範數:
image

矩陣的範數:

  • 1-範數:

    ||A||1=maxji=1m|ai,j|
    列和範數,即所有矩陣列向量絕對值之和的最大值
  • 2-範數:

    ||A||2=λ1
    lambda為A^TA的最大特徵值
    譜範數,即A’A矩陣的最大特徵值的開平方
  • ∞-範數:

    ||A||=maxij=1N|ai,j|
    行和範數,即所有矩陣行向量絕對值之和的最大值
  • F-範數:

    ||A||F=i=1mj=1n|ai,j|212
    Frobenius範數,即矩陣元素絕對值的平方和再開平方,類似於向量的L2範數,很多深度學習被歸結於F範數的最優化問題,比如PCA和Autoencoder
  • 核範數:

    ||A||=i=1nλi
    其中λi是A的奇異值。
    即奇異值之和。

特殊的矩陣:

  • 對角只在主對角線上含有非零元素
    • 進行乘法的時候只需要把非零元素跟對應行相乘即可
    • 機器學習中,如果把一些矩陣限定為對角陣,可以降低計算代價
    • 對於非方形的矩陣,要變成對角陣,需要在縮放後在後面補零或者刪除一些部分
      A=AT
  • 對稱表示對稱元素相等。如,距離度量矩陣
    Ai,j=Aj,i
  • 正交矩陣求逆代價小,是行向量和列向量分別標準正交*
    ATA=AAT=I

    A1=AT

*標準正交:兩個向量都是單位向量(範數=1的向量),而且正交(夾角為90°)

  • 所有特徵>0稱為正定,非負的半正定

方陣的特徵值分解

就像把一個數變成不同的素數的乘積一樣,矩陣也可以分解成不同的組成成分:
例如,可以把矩陣A中提取出特徵向量v和特徵值λ:(沒有分解它)

Av=λv
則實數λ稱為A的特徵值,v稱為特徵向量
- 此時,v與Av共線,λ指出了v跟Av的方向和長度關係
- 因此v可以直接取單位向量。

要還原A,就需要藉助A的全部單位特徵向量v和全部特徵值λ,把A的所有的線性無關是單位特徵v組合在一起形成特徵矩陣: