深度學習的Dimension檢查

2021-08-11 15:33:48 字數 1551 閱讀 1532

在構建深度學習神經網路結構的時候,由於網路的拓撲結構比較複雜,包括比較多的層次(hidden layer),以及每一層又有許多activation(neuron)單元組成,因此在計算forward以及backward propagation時,為了減少不必要的錯誤,最好對其中的每一層的input/output matrix的dimension有個底,也對每一層的input/output結構有更好的理解。

為了更好地表述,一般需要統一一下用到的一些符號,以及其代表的意義。下面以乙個5層的神經網路結構為例子:

假如有m個training example,則輸入變數x的dimention=[nx

,m],其中每一列表示乙個training example, 總共有m列,表示m個training example,如下圖所示: x(

nx,m

)=⎡⎣

⎢|x1

||x2

|⋯⋯⋯

|xi|

⋯⋯⋯|

xm|⎤

⎦⎥其中xi

是column vector, 表示第i個example:xi

=⎡⎣⎢

⎢⎢⎢⎢

⎢⎢⎢⎢

⎢⎢xi

1xi2

⋮xii

⋮xin

x⎤⎦⎥

⎥⎥⎥⎥

⎥⎥⎥⎥

⎥⎥w由於是連線任意鄰近兩層的引數,所以w[

ℓ]= [ n[

ℓ],n

[ℓ−1

] ],上圖中: w[

1]= [3, 2],w[

2]=[5,3],w[

3]=[4,5],w[

4]=[2,4],w[

5]=[1,2]z[

ℓ]=w

[ℓ]a

[ℓ−1

]+b[

ℓ],a

[ℓ]=

g(z[

ℓ]) ,因此z[

ℓ]的dimension跟a^的dimension是一樣的:

因此

z[ℓ]

以及a[

ℓ]的dimension=[n

[l],

m],它們的dimension是跟training example的數量有關的。

下表是各個變數的dimension:

matrix

dimensionw[

ℓ][n

[ℓ],

n[ℓ−

1]] b[

ℓ][n

[ℓ],

1]dw

[ℓ] [n

[ℓ],

n[ℓ−

1]] db

[ℓ] [n

[ℓ],

1]z[

ℓ][n

[l],

m]a[

ℓ][n

[l],

m]

深度學習異常檢測 深度few shot異常檢測

入門,利用一些標記的異常例項執行異常通知的異常檢測 由於缺乏大規模的標記異常資料,現有的 深度或淺度 異常檢測方法通常被設計為無監督學習 針對完全未標記的資料進行訓練 或半監督學習 針對僅標記的正常資料進行訓練 結果,當在許多現實世界中的異常檢測應用中可獲得這樣的資訊時,他們難以利用先驗知識 例如,...

深度學習(一)深度學習的概念

深度學習是機器學習與神經網路 人工智慧 圖形化建模 優化 模式識別和訊號處理等技術融合後產生的乙個領域。深度學習網路是神經網路革命性的發展,人們甚至認為可以用它來建立更加強大的 模型。深度學習使用多層機器學習模型對資料進行有監督學習或無監督學習。模型中的不同層由非線性資料變換的多個階段組成,資料的特...

學習的深度

要學習的領域太多,不可平均用力。門門精通是不可能的,但多涉獵是沒有壞處的,這就有個深度問題。我是數學和電子學的業餘愛好者,對詩詞 古典文學 圍棋也頗有興趣。我的時間基本上也都投入到這幾樣東西裡面去了。但我的本職工作是軟體工程師。上述任何一門學科都需要長期積累,不能間斷。要有計畫,合理利用業餘時間,要...