TensorFlow函數(shù):tf.stack

2018-03-19 10:36 更新

tf.stack函數(shù)

tf.stack(
    values,
    axis=0,
    name='stack'
)

定義在:tensorflow/python/ops/array_ops.py.

請(qǐng)參閱指南:圖層(contrib)>構(gòu)建神經(jīng)網(wǎng)絡(luò)圖層的更高級(jí)別操作,張量變換>分割和連接

將秩為 R 的張量列表堆疊成一個(gè)秩為 (R+1) 的張量.

將 values 中的張量列表打包成一個(gè)張量,該張量比 values 中的每個(gè)張量都高一個(gè)秩,通過(guò)沿 axis 維度打包.給定一個(gè)形狀為(A, B, C)的張量的長(zhǎng)度 N 的列表;

如果 axis == 0,那么 output 張量將具有形狀(N, A, B, C).如果 axis == 1,那么 output 張量將具有形狀(A, N, B, C).

例如:

x = tf.constant([1, 4])
y = tf.constant([2, 5])
z = tf.constant([3, 6])
tf.stack([x, y, z])  # [[1, 4], [2, 5], [3, 6]] (Pack along first dim.)
tf.stack([x, y, z], axis=1)  # [[1, 2, 3], [4, 5, 6]]

這與 unpack 相反,numpy 相當(dāng)于:

tf.stack([x, y, z]) = np.stack([x, y, z])

函數(shù)參數(shù):

  • values:具有相同形狀和類(lèi)型的 Tensor 對(duì)象列表.
  • axis:一個(gè) int,要一起堆疊的軸,默認(rèn)為第一維,負(fù)值環(huán)繞,所以有效范圍是[-(R+1), R+1).
  • name:此操作的名稱(chēng)(可選).

函數(shù)返回值:

  • output:與 values 具有相同的類(lèi)型的堆疊的 Tensor.

可能引發(fā)的異常:

  • ValueError:如果 axis 超出范圍 [ - (R + 1),R + 1),則引發(fā)此異常.
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)