深度學習常用運算元(一)

2021-09-26 09:27:21 字數 2031 閱讀 8470

1、起始輸入

data:輸入資料第一層

2、啟用運算元

作用:引入非線性(通常需要區分的區域,直線是無法完全區分的)

公式:relu(x)=max(0,x)

2)leakyrelu

公式:leakyrelu(x) = (x >= 0 ? x : x*negative_slope);

3)relu6

公式:leakyrelu(x) = max(max(x, 0), 6);

4)tan

公式:tanh(x)=(exp(x)-exp(-x))/(exp(x)+exp(-x));

5)sigmoid

公式:sigmoid(x) = 1. / (1. + exp(x))

6)prelu

公式:f(x) = max(x, 0) + slope_data[c] * min(x, 0);

3、兩個tensor計算

1)+、-、*、/:add、sub、mul、realdiv

2)biasadd:用於增加bias操作,通常bias是一維tensor

3)matmul:矩陣乘

4)axpy:向量求和,公式:y += a * x

4、多個tensor計算

eltwiseop

作用:多個tensor對應位置元素進行相乘、相加、取最大值中一種操作

5、歸一化

1)batchnorm

參考:作用:加快神經網路的訓練收斂速度

2)lrn

全稱:local response normalization,即區域性響應歸一化層

作用:lrn這個概念和運用是出現在alexnet中。

lrn最初是生物學裡的概念「相鄰神經元抑制」,對區域性神經元的活動建立競爭機制。

使用lrn增加了泛化能力(使輸出中響應比較大的值變得相對更大,並抑制其他響應較小的神經元),做了平滑處理,提高了1%~2%的識別率。

其他:在2023年的《very deep convolutional networks for large-scale image recognition》中,說明了lrn在iilsvrc資料集上不能對效能進行改善。

主流的模型中基本不使用lrn。

3)ssdnormalize

作用:限制了一次歸一化的範圍

使用網路:ssd

6、特徵提取

1)convolution

作用:分區域進行特徵值提取

2)fullconnection

作用:看作一種特殊卷積層,或者看作矩陣乘;整個輸入作為feature map,進行特徵提取

fc是一種遷移學習的結果,具體作用參考:

通常fc後面接softmax,所以fc層的功能還包括矩陣維度變換,將維度變換為softmax對應的維度

3)correlation

與convolution的區別,參考:

4)deconvolution

參考:作用:將乙個低維度的空間對映到高維度,同時保持他們之間的連線關係/模式

5)depconvolution

參考:作用:採用分步計算的方法,完成普通3d核的計算,其好處在於提公升卷積計算的效率

7、防過擬合

1)pooling

作用:pooling的作用是將輸入的影象劃分為若干個矩形區域,對每個子區域輸出最大值或平均值。pooling減少了引數的數量,防止過擬合現象的發生。

2)mean

作用:只有取均值功能的滑窗運算元

3)roipooling

參考:作用:對roi進行pooling操作,從不同大小的方框得到固定大小相應 的feature maps

使用網路:faster rcnn

4)roialign

作用:解決roipooling兩次量化帶來的問題,使用線性插值的方式來解決。

使用網路:mask-rcnn

5)psroipooling

參考:使用網路:r-fcn

stn運算元 深度學習常用運算元(二)

1 tensor維度變換 1 flatten 作用 將輸入tensor中從start axis維度到end axis維度合併為1維 2 reshape 作用 將輸入tensor描述轉換為新的shape 3 freespaceextract 作用 將h維變成1,其他維度不變,從而完成對h的取樣,取樣值...

百度深度學習 卷積運算元的應用(一)

下面介紹卷積運算元在中應用的三個案例,並觀察其計算結果。案例1 簡單的黑白邊界檢測 下面是使用conv2d運算元完成乙個影象邊界檢測的任務。影象左邊為光亮部分,右邊為黑暗部分,需要檢測出光亮跟黑暗的分界處。可以設定寬度方向的卷積核為 1,0,1 1,0,1 1,0,1 此卷積核會將寬度方向間隔為1的...

Spark常用運算元講解一

map是對rdd中的每個元素都執行乙個指定的函式來產生乙個新的rdd,rdd之間的元素是一對一關係。x sc.parallelize 1,2,3,4 y x.map lambda x x 3 y.collect 1,8,27,64 對rdd元素進行過濾,返回乙個新的資料集,由經過func函式後返回值...