1.為什么self.dense0(x)這個沒有報錯,已經(jīng)在初始化之后指定了參數(shù),而且nn.Dense反返回的是張量。

不懂這種用法:不過可以理解為256是定義網(wǎng)絡(luò)的節(jié)點個數(shù),下面的x表示網(wǎng)絡(luò)的輸入
mili的回答:dense0是一個class的實例。dense0(x)屬于operator 重載,它實際上是調(diào)用dense0.forward(x)
2.卷積神經(jīng)網(wǎng)絡(luò)的通道
卷積操作的過程這個通道是如何變化的:【以mxnet中四維的矩陣為例】
需要理解卷積操作,卷積核大小,作用(降維),在mxnet中的nn.conv2D函數(shù)中第一個參數(shù)channels是卷積的輸出通道數(shù),或者是nn.Convlution函數(shù)中的num-filter表示輸出通道數(shù);而通道有這樣的性質(zhì):多個通道的時候,每個通道會? n有對應(yīng)的權(quán)重;此處的權(quán)重形狀與卷積核的形狀相同【第一個參數(shù)是輸出通道數(shù),第二個參數(shù)是輸入通道數(shù),第三四個參數(shù)就是卷積核的寬、高】,按元素進行運算之后加和得到新的矩陣。且下一層卷積的輸入通道數(shù)需要等于上一層卷積輸出的通道數(shù)!
3.在numpy和mxnet的ndaray中的數(shù)組都會出現(xiàn)軸的概念,axis
牢記一點:只要按照axis=1的運算或者操作,那么axis=1的結(jié)果1軸的維度必然改變。從兩個2×3變成4×3的矩陣

3.GooLeNet的組成:


1*1表示提取最細的信息,3*3提取稍大塊的信息,5*5提取更大的信息;maxpool以里外一種方式來取信息;
綠色的卷積是為了轉(zhuǎn)換輸入,改變通道數(shù);使得最后可以按照通道數(shù)concat在一起
4.反向傳播和正向傳播【相輔相成,反向傳播有時候需要正向傳播的值? 】

前向傳播:假設(shè)輸入X形狀是x×1,h形狀是h×1,o的形狀是y×1,那么可以知道w(1)的形狀是h×x;
其中h的函數(shù)是對結(jié)果z,按照元素來進行操作!
s是正則化項:w的各個元素平方和,j是損失和正則化的加和,也就是總誤差!
反向傳播:從最后開始,就是先s和L,再o。。。。。

①讓J 對 s 和 L求導,如圖
②對o求導;利用①
③對w(2)求導,其中h的轉(zhuǎn)置是因為其它參數(shù)的形狀固定了,所以需要將h轉(zhuǎn)置
④對z求導,利用到了元素乘法,即對兩個矩陣對應(yīng)的元素相乘得到的。
在循環(huán)神經(jīng)網(wǎng)絡(luò)上運用反向傳播:

其中L對Ht的求導函數(shù)的通項公式是:通過遞推公式進行歸納!