1. 程式人生 > >Tensorflow(1)

Tensorflow(1)

TensorFlow的tf.random_uniform( ) 函式的用法

tf.random_uniform(shape, minval=low,maxval=high,dtype)))

返回shape型矩陣,產生於low和high之間的值,屬於均勻分佈。

TensorFlow四捨五入:tf.round()函式的用法

tf.round( x, name=None ):

引數:x:一個Tensor,型別必須為float32和float64。name:操作名稱(可選)。

返回:tf.round函式返回一個與x具有相同的形狀和型別的Tensor。

TensorFlow的tf.cast( ) 函式的用法

tf.cast( x, dtype,name=None):將x的資料格式轉化成dtype.

TensorFlow的tf.reshape( ) 函式的用法

tf.reshape(tensor, shape, name=Name): 

引數: tensor為被調整維度的張量。shape:引數為要調成的形狀。name:操作名稱(可選)。

返回:一個shape形狀的新tensor. 

TensorFlow的tf.image.pad_to_bounding_box( ) 函式的用法

tf.image.pad_to_bounding_box( image, offset_height, offset_width, target_height, target_width )

引數:image:形狀為[batch, height, width, channels]的4維張量,或形狀為[height, width, channels]的3維張量。

 offset_height:在頂部新增零的行數。   offset_width:在左側新增的零的列數。

target_height:輸出影象的高度。         target_width :輸出影象的寬度。

返回:

如果image是四維,則返回形狀為[batch, target_height, target_width, channels]的四維浮點型張量;

如果image是三維的,則返回形狀為[target_height, target_width, channels]的三維浮點型張量

TensorFlow的tf.image.resize_bilinear( ) 函式的用法

tf.image.resize_bulinear(images, size, name= None):調整imagessize使用雙線性插值。

引數:images:一個4-D的張量[batch, height, width, channels]  size:裁剪後新影象的大小

TensorFlow的tf.constant( ) 函式的用法

tf.constant(value, dtype=None, shape=None,..):建立一個常數張量,傳入list或者數值來填充

tensor = tf.constant([1, 2, 3, 4, 5]) => [1 2 3 4 5]

a = tf.constant([1, 2, 3, 4, 5, 6], shape=[2, 3]) => [[1. 2. 3.] [4. 5. 6.]]

TensorFlow的tf.tile( ) 函式的用法

tf.tile( input, multiples, name=None ): 平鋪之意,用於在同一維度上的複製

引數:input, 輸入            multiples: 同一維度上覆制的次數。

TensorFlow的tf.slice( ) 函式的用法

tf.slice(input_, begin, size, name =None):從輸入input資料中從以begin開始剪下size大小的切片。

TensorFlow的tf.stack( ) 函式的用法

tf.stack其作用類似於tf.concat,都是拼接兩個張量,tf.stack則會在新的張量階上拼接,產生的張量的階數將會增加,axis是決定stack張量的維度方向(0:一維。1:二維。2:三維)。

a = tf.constant([[1,2,3],[3,4,5]]) # shape (2,3)
b = tf.constant([[7,8,9],[10,11,12]]) # shape (2,3)
ab = tf.stack([a,b], axis=0) # shape (2,2,3)

TensorFlow的tf.unstack( ) 函式的用法

將一個高階數的張量在某個axis上分解為低階數的張量

a = tf.constant([[1,2,3],[3,4,5]]) # shape (2,3)
b = tf.constant([[7,8,9],[10,11,12]]) # shape (2,3)
ab = tf.stack([a,b], axis=0) # shape (2,2,3)
a1 = tf.unstack(ab, axis=0)  # shape (2,3)

TensorFlow的tf.concat( ) 函式的用法

tf.concat相當於numpy中的np.concatenate函式,用於將兩個張量在某一個維度(axis)合併起來

tf.concat拼接的是兩個shape完全相同的張量,並且產生的張量的階數不會發生變化.

a = tf.constant([[1,2,3],[3,4,5]]) # shape (2,3)
b = tf.constant([[7,8,9],[10,11,12]]) # shape (2,3)
ab1 = tf.concat([a,b], axis=0) # shape(4,3)
ab2 = tf.concat([a,b], axis=1) # shape(2,6)