深度學習中Concat層和Flatten層作用

2021-09-30 19:09:53 字數 800 閱讀 4474

一些其它層的作用參考:

keras各種layer的作用及用法--簡要總結:

concat層的功能:concat層實現輸入資料的拼接。concat層是乙個實用程式層,它將多個輸入blob連線到乙個輸出blob(按照給定的axis,注意除了規定的axis以外,被concat的輸入bolb的其他維度的size必須一致)。

引數定義:

引數(concatparameter concat_param) 

定義位置: ./src/caffe/proto/caffe.proto

message concatparameter
caffe中資料通常為4個維度,即 n

um×cha

nnel

s×heig

ht×wid

th,因此預設值1表示channels通道進行拼接。而0表示num這個維度,即數量上的疊加。

使用方法:

layer 

}

除了拼接維度外的其它維度都必須相等。比如上面,輸入影象均為 24×24×3,用於分類的有150張,用於boundingbox回歸的有50張,用於關鍵點回歸的也有50張,則最後拼接的結果就是(150+50+50)×3×24×24

作用:flatten層用來將輸入「壓平」,即把多維的輸入一維化,常用在從卷積層到全連線層的過渡。flatten不影響batch的大小。

為了更好的理解flatten層作用,我把這個神經網路進行視覺化如下圖:

深度學習中Embedding層

keras.layers.embeddings.embedding input dim,output dim,embeddings initializer uniform embeddings regularizer none,activity regularizer none,embeddings...

深度學習中Flatten層的作用

flatten層用來將輸入 壓平 即把多維的輸入一維化,常用在從卷積層到全連線層的過渡。flatten不影響batch的大小。now model.output shape none,64,32,32 model.add flatten now model.output shape none,6553...

C 中陣列中Skip Take和Concat的用法

skip是跳過第幾個之後開始,取得的值包括當前下標值的內容 take是獲取到第幾個下標為止,取得的值不包括當前下標值的內容 concat是合併兩個陣列 var listone new list var listtow new list 例如 listone裡面是 1,2,3,4,5 例如 listt...