1. 程式人生 > >TensorFlow函式之 tf.contrib.layers.flatten()

TensorFlow函式之 tf.contrib.layers.flatten()

tf.contrib.layers.flatten(A)函式使得P保留第一個維度,把第一個維度包含的每一子張量展開成一個行向量,返回張量是一個二維的,返回的shape為[第一維度,子張量乘積)。

一般用於卷積神經網路全連線層前的預處理,因為全連線層需要將輸入資料變為一個向量,向量大小為[batch_size, ……]

如下邊,pool是全連線層的輸入,則需要將其轉換為一個向量。假設pool是一個100*7*7*64的矩陣,則通過轉換後,得到一個[100,3136]的矩陣,這裡100位卷積神經網路的batch_size,3136則是7*7*64的乘積。

fla = tf.contrib.layers.flatten(pool)