Deeping Learning學習與感悟——《深度學習工程師》_1

前言

在如今人工智能大熱的時代,博主在前年暑假自學了網易雲課堂上吳恩達教授講授的《深度學習工程師》微專業課程,如今將具體的學習內容與課堂筆記記錄下來,供小夥伴們一起學習交流,ヽ(✿゚▽゚)ノ~

一、01.神經網絡和深度學習

在這裏插入圖片描述

1. Logistic迴歸:

  • 輸出函數: ^𝑦 = 𝑤𝑇𝑥 + 𝑏。 a=sigmoid(^y)

  • 損失函數: 𝐿(^𝑦 , 𝑦) = −𝑦log(^𝑦) − (1 − 𝑦)log(1 − ^𝑦)

  • 成本函數: J(w, b)=1/m∑𝐿(^𝑦 , 𝑦)

2. Logistic迴歸中的梯度下降:

  1. 使用公式𝑑𝑧 = (𝑎 − 𝑦)計算𝑑𝑧,
  2. 使用𝑑𝑤1 = 𝑥1 ⋅ 𝑑𝑧 計算𝑑𝑤1, 𝑑𝑤2 = 𝑥2 ⋅ 𝑑𝑧計算𝑑𝑤2, 𝑑𝑏 = 𝑑𝑧 來計算𝑑𝑏,
  3. 然後: 更新𝑤1 := 𝑤1 − 𝑎𝑑𝑤1, 更新𝑤2: = 𝑤2 − 𝑎𝑑𝑤2, 更新𝑏 = 𝑏 − 𝛼𝑑𝑏。

3. 向量化logistic迴歸的梯度輸出:

𝑍 = 𝑤𝑇𝑋 + 𝑏 = 𝑛𝑝. 𝑑𝑜𝑡(𝑤. 𝑇, 𝑋) + 𝑏
𝐴 = 𝜎(𝑍)
𝑑𝑍 = 𝐴 − 𝑌
𝑑𝑤 =1/m 𝑋 𝑑𝑧𝑇
𝑑𝑏 =1/m
np. sum(𝑑𝑍)
𝑤: = 𝑤 − 𝑎 ∗ 𝑑𝑤
𝑏: = 𝑏 − 𝑎 ∗ 𝑑𝑏

4. 神經網絡表示:

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

5. 淺層神經網絡正向傳播與反向傳播:

  • forward propagation:
    (1) 𝑧[1] = 𝑊[1]𝑥 + 𝑏[1]
    (2) 𝑎[1] = 𝜎(𝑧[1])
    (3) 𝑧[2] = 𝑊[2]𝑎[1] + 𝑏[2]
    (4) 𝑎[2] = 𝑔2 = 𝜎(𝑧[2])

  • back propagation:
    (1)公式 3.32: 𝑑𝑧[2] = 𝐴[2] − 𝑌,
    (2)公式 3.33: 𝑑𝑊[2] = 1/m𝑑𝑧[2]𝐴[1]𝑇
    (3)公式 3.37: 𝑑𝑏[2] = 1/m
    𝑛𝑝. 𝑠𝑢𝑚(𝑑𝑧[2], 𝑎𝑥𝑖𝑠 = 1,keepdims=True)
    (4)公式3.35:dz[1]=W[2].Tdz[2]g[1]’(Z[1])
    (5)公式 3.36:𝑑𝑊[1] = 1/m
    𝑑𝑧[1]A[0]𝑇
    (6) 公式 3.37: 𝑑𝑏[1] = 1/m
    𝑛𝑝. 𝑠𝑢𝑚(𝑑𝑧[1], 𝑎𝑥𝑖𝑠 = 1,keepdims=True)

6. 常見激活函數極其導數:

  1. sigmoid函數
    a=g(z)=1/1+e^(-z)
    g(z)’=a(1-a)

  2. tanh函數
    a=g(z)=ez-e(-z)/ez+e(-z)
    g(z)’=1-a^2

  3. ReLu函數
    a=g(z)=max(0,z)
    g(z)’=0 z<0, 1 z>=0.

7. 深層神經網絡前向傳播和反向傳播:

  • Forward propagation:
    Input a[l-1] ,Output a[l],cache(z[l])
    (1).Z[l]=W[l]A[l-1]+b[l]
    (2).A[l]=g[l ](Z[l ])

  • Backward propagation:
    Input da[l],Output da[l-1],dW[l],db[l]
    (1).dZ[l]=dA[l]gl
    (2.)dW[l]=1/m
    dZ[l]A[l-1].T
    (3).Db[l]=1/mnp.sum(dZ[l], 𝑎𝑥𝑖𝑠 = 1,keepdims=True)
    (4).dA[l-1]=w[l].T
    dZ[l]

8. 深層神經網絡塊:

在這裏插入圖片描述

結語:

第一週的《神經網絡和深度學習》,主要的收穫是瞭解了神經網絡表示、學習到了Logistics迴歸以及怎麼實現深度神經網絡裏梯度下降法的正方向傳播……
通過這一週的學習對神經網絡有個更深入的瞭解,同時也對深度學習產生了一次很大的啓迪!
,期待下一週的學習,衝鴨!!!

注:附上課程鏈接:深度學習工程師:吳恩達給你的人工智能第一課
對人工智能,深度學習等感興趣的小夥伴可以去聽一聽,網易雲課堂完全免費的微專業,學習週期大概爲5周,內容質量超級棒,強烈推薦!!!

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