網易雲課堂 課程鏈接: https://mooc.study.163.com/smartSpec/detail/1001319001.htm
課程架構
一.、神經網絡和深度學習(https://mooc.study.163.com/course/2001281002#/info)
1 深度學習概論
2 神經網絡基礎
3 淺層神經網絡
4 深層神經網絡
二. 改善深層神經網絡:超參數調試、正則化以及優化
三、 結構化機器學習項目
四、卷積神經網絡
五、序列模型
本文是博主對 神經網絡基礎 部分的學習筆記,記錄了重要公式、推導過程,用於分享、便於複習。
2.1 Binary Classification(二分分類)
訓練樣本:
m個樣本的訓練集:
更緊湊的寫法: (nx行,m列的矩陣),
2.2 Logistic Regression (logistic 迴歸)
輸入一個特徵向量x, 是對y的預測值:
設參數 由b和w組成,則公式簡化:
2.3 Logistic Regression cost function(爲了訓練w和b,需要定義一個成本函數/損失函數)
對單個樣本定義損失函數 Loss(error) function:
對全體樣本定義成本函數 Cost function (是個凸函數):
2.4 Gradient Descent(梯度下降法)
α 爲自定義的學習率,對J求w的偏導, 重複 w := w - α dw, dw爲導數/斜率,逐步向最優點。
2.5-2.8 講了導數和導數計算的計算圖,數學基礎知識。
2.9 Logistic Regression Gradient descent(logistic迴歸中的梯度下降 —— 單個樣本)
定義符號:
計算圖(反向計算導數):
,
梯度下降:
2.10 Gradient descent on m examples (m個樣本的梯度下降)
算法:
2.11 - 2.12 Vectorization (向量化,驗證了python中向量運算比for循環快很多。)
2.13 - 2.14 Vectorizing Logistic Regression (向量化logistic迴歸,梯度下降的一次迴歸計算)
說明:w是[n,1]數組,X是[n,m]數組,Z是[1,m]數組,b會從一個實數自動轉化爲[1,m]數組(python中的broadcasting)
2.15 Broadcasting in Python (Python中的廣播)
一個 [m,n] 矩陣, +-*/ 一個 [1,n] 或者 [m,1] 矩陣,則自動擴充爲 [m,n] 矩陣,逐個元素 +-*/。
2.16 A note on python/numpy vectors (關於 python/numpy 向量的說明)
不建議使用秩爲1的數組
2.17 Jupyter/ lpython 筆記本的快速指南
2.18 logistic損失函數的解釋
測試和作業
https://github.com/stormstone/deeplearning.ai
https://blog.csdn.net/u013733326/article/details/79827273