深度學習筆記之Andrew Ng(3)

2021-08-08 23:04:01 字數 1304 閱讀 3979

week3:

本週進入了新的話題,神經網路,不過還暫時離不開我們之前學習的邏輯回歸,我的理解是,標準神經網路使用了乙個更大範圍的神經網路,為什麼這麼說呢,我們來一步步的開始學習。

神經網路概述:

那麼神經網路,是由乙個個神經元構成的,長成這個樣:

之前我們學習過了preceptron(感知器),事實上就是乙個單層的神經網路模型,那麼既然這樣,首先我們需要知道乙個神經元長什麼樣子:

下面的兩個算式很明顯,z為x的線性方程,a為z的啟用函式,圖中的函式為sigmoid函式,那麼經過神經元的這兩步替換,得到乙個輸出a,就是**值y,就目前來講,神經網路還和邏輯回歸分類演算法沒有區別,但是下面我們會繼續把這個模型變得更加複雜。

上圖中,在中間層一共有四個神經元,每乙個神經元對應著右側的方程,那麼對於三個輸入資料x,我們將會訓練出四個w與b的組合,使每個神經元對於輸入資料都有計算的貢獻,那麼對於之前的單神經元計算,這個神經網路雖然只有一層,但是已經比之前的結構複雜很多,那麼精度上也會進步一些。

啟用函式(activation function):那麼為什麼要有非線性啟用函式呢? 按照andrew的說法,在多層神經網路中,如果採用的是線性啟用函式,那麼不管做多少層神經網路,輸出值都是一層神經網路的效果,那麼就沒有必要做多層神經網路了。但是非線性的啟用函式能夠避免這個問題,達到效果的轉變。

梯度下降

逆向傳播(這兩章由於之前課程中都有涉及,不再贅述)

隨機初始化

在初始化權重引數w時,我們不能簡單的把w初始化為0,因為如果所有的w都是0,那麼這些在同一層神經元會變成一樣的w和b, 那麼這些神經元都是一模一樣的話,這一層神經元的效果就和乙個神經元無異了,所以這裡我們需要隨機初始化引數。

這裡我們把w和b隨機初始化為乙個很小的數,這樣只要每個w和每個b互相之間都不一樣,就可以達到我們初始化的目的:使每個神經元的引數相互之間變得不同。

week3 end

深度學習筆記之Andrew Ng(4)

week4 最後一周的內容,講的還是神經網路部分。但是公升級成為了多層的深度神經網路,那麼本質上,神經網路的原理還是不變的,那麼在加深了神經網路的layer之後,我們在計算上,出現了一些不同。先上圖 如圖我們看到的是乙個四層hidden layer的神經網路,那麼這個教程主要圍繞如包括四層隱含層的神...

Andrew Ng 機器學習筆記(三)

欠擬合與過擬合的概念 如果我們以乙個房價的訓練集來做出乙個線性的 如果我們做乙個一次函式,那房價的 線條應該是乙個向上攀公升的直線 如果做乙個二次函式,可能有些部分會陡一點有些部分會平緩一點,像是右邊那樣 引數學習演算法 引數學習演算法是一類有固定數目的引數來進行資料擬合的辦法。非引數學習演算法 它...

Andrew Ng機器學習筆記1

姐姐也要學習機器學習啦,好多人都推薦了吳恩達的機器學習課程,所以我也打算試試看。立乙個flag 從今天開始,每天學習史丹福大學的公開課 機器學習課程 by andrew ng,自己推導公式,並做總結。希望大家跟我一起學習 討論 總結的太多我也會不想看,已經知道的知識也不想總結,那樣以後複習的時候也不...