tf.tile()函數理解

轉載:https://blog.csdn.net/tsyccnh/article/details/82459859函數

tensorflow中的tile()函數是用來對張量(Tensor)進行擴展的,其特色是對當前張量內的數據進行必定規則的複製。最終的輸出張量維度不變。spa

函數定義:.net

tf.tile(
    input,
    multiples,
    name=None
)

input是待擴展的張量,multiples是擴展方法。 
假如input是一個3維的張量。那麼mutiples就必須是一個1x3的1維張量。這個張量的三個值依次表示input的第1,第2,第3維數據擴展幾倍。 
具體舉一個例子:code

import tensorflow as tf

a = tf.constant([[1, 2], [3, 4], [5, 6]], dtype=tf.float32)
a1 = tf.tile(a, [2, 3])
with tf.Session() as sess:
    print(sess.run(a))
    print(sess.run(a1))

tf.tile()具體的操做過程以下:blog

請注意:上面繪圖中第一次擴展後第一維由三個數據變成兩行六個數據,多一行並非多了一維,數據扔爲順序排列,只是爲了方便繪製而已。ip

每一維數據的擴展都是將前面的數據進行復制而後直接接在原數據後面。input

若是multiples的某一個數據爲1,則表示該維數據保持不變。it

相關文章
相關標籤/搜索