tensorflow常見函數

一、類型轉換數組

tf.string_to_number(string_tensor,out_type=None,name=None)  #字符串轉爲數字dom

tf.to_double(x,name='ToDouble')  #轉爲64位浮點類型ide

tf.to_float(x,name='ToFloat')   #轉爲32位浮點類型函數

tf.to_int32(x,name='ToInt32')  #轉爲32位整型編碼

tf.to_int64(x,name='ToInt64')  #轉爲64位整型spa

tf.cast(x,dtype,name=None)  #將x或者x.values轉換爲dtype所指定的類型orm

二、數值操做索引

tf.ones(shape,stype)  #生成1的張量。tf.ones([2,3],tf.int32)ip

tf.zeros(shape,dtype) #生成0的張量。字符串

tf.ones_like(input)  #生成和輸入張量同樣形狀和類型的1。

tf.zeros_like(input) #生成和輸入張量同樣形狀和類型的0。

tf.fill(shape,value)  #爲指定形狀填值。

tf.constant(value,shape) #生成常量。

tf.random_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None)  #正太分佈隨機數

tf.truncated_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None)  #截斷正太分佈隨機數

tf.random_uniform(shape, minval=0, maxval=None, dtype=tf.float32, seed=None, name=None)  #均勻分佈隨機數

tf.random_crop(value, size, seed=None, name=None)  #將輸入值value按照size尺寸隨機剪輯

tf.set_random_seed(seed)  #設置隨機數種子

tf.linspace(start, stop, num, name=None)   #在[start,stop]範圍內產生num個數的等差數列。start,stop要用浮點數表示。

tf.range(start,limit=None,delta=1,name='range')  #在[start,limit)範圍內以步進值delta產生等差數列。

三、形狀變換

tf.shape(input,name=None)   #返回一個張量,其值爲輸入參數input的shape。這個input能夠是個張量,也能夠是一個數組或list。

tf.size(input,name=None)   #返回一個張量,輸入數據的元素數量。

tf.rank(input, name=None)   #返回一個張量,輸入數據的rank。

tf.reshape(input, shape, name=None)   #將原有輸入數據的shape按照指定形狀進行變化,生成一個新的張量。

tf.expand_dims(input, dim, name=None)  #插入維度1進行一個tensor中。

tf.squeeze(input,dim,name=None)   #將dim指定的維度去掉(dim所指定的維度必須爲1,不然出錯)。

四、數據操做

tf.slice(input,begin,size,name=None)   #將輸入數據input進行切片操做,begin與size能夠爲list類型。

tf.split(value,num_or_size_splits, axis=0, num=None, name="split")   #沿着某一維度將tensor分離爲num_or_size_splits。

tf.concat(concat_dim, values, name='concat')  #沿着某一維度鏈接tensor

tf.stack(input, axis=0)    #將兩個N維張量列表沿着axis軸組合成一個N+1維的張量

tf.unstack(value, num=None, axis=0, name="unstack")   #將輸入value按照指定的列或行進行拆分,並輸出含有num個元素的列表(list)axis=0表示按行拆分,axis=1表示按列拆分。

tf.gather(params,indices,validate_indices=None,name=None)   #合併索引indices所指定params中的切片

tf.one_hot(indices,depth,on_value=None,off_value=None,axis=None,dtype=None,name=None)   #生成符合onehot編碼的張量。

tf.count_nonzero(input_tensor,axis=None,keep_dims=False,dtype=dtype.int64,name=None,reduction_indices=None)   #統計非0個數

五、算術運算函數

tf.assign(x,y,name=None)   #令x=y

tf.add(x,y,name=None)    #求和

tf.subtract(x,y,name=None)    #減法

tf.multiply(x,y,name=None)   #乘法

tf.divide(x,y,name=None)   #除法

tf.mod(x,y,name=None)   #取模

tf.abs(x,name=None)   #求絕對值

tf.negative(x, name=None)   #取負

tf.sign(x, name=None)    #根據x的符號,返回0或1

tf.square(x,name=None)   #平方

tf.round(x, name=None)    #舍入最接近的整數。

tf.sqrt(x,name=None)   #開根號

tf.pow(x,y,name=None)    #冪次方計算

tf.exp(x,name=None)   #計算e的次方

tf.log(x,name=None)   #計算log,一輸入計算e的ln,兩輸入以第二輸入爲底。

tf.maximum(x,y,name=None)    #返回最大值

tf.minimum(x,y,name=None)    #返回最小值

tf.cos(x,name=None)    #三角函數sin,tan,atan

tf.cond(pred,true_fn=None,false_fn=None,strict=False,name=None,fn1=None,fn2=None)   #知足條件執行fn1,不然執行fn2

六、矩陣相關運算

tf.diag(diagonal,name=None)   #返回一個給定對角值的對角tensor。

tf.diag_part(input,name=None)   #功能與上面相反

tf.trace(x,name=None)   #求一個二維tensor足跡,即對角值diagonal之和

tf.transpose(a,perm=None,name='transpose')  #讓輸入a按照參數perm指定的維度順序進行轉置操做。

tf.reverse(tensor,dims,name=None)   #沿着指定的維度對輸入進行反轉。其中,dims爲列表,元素含義爲指向輸入shape的索引。

tf.matmul(a,b,transpose_a=False,transpose_b=False)   #矩陣相乘

tf.matrix_determinant(input,name=None)   #返回方陣的行列式

tf.matrix_inverse(input,adjoint=None,name=None)   #求方陣的逆矩陣

tf.cholesky(input,name=None)   #對輸入方陣cholesky分解,即把一個對稱正定的矩陣表示成一個下三角矩陣L和其轉置的乘積的分級

tf.matrix_solve(matrix,rhs,adjoint=None,name=None)   #求解矩陣方程,返回矩陣變量。

七、序列比較與索引提取

tf.argmin(input,axis,name=None)   #返回input最小值的索引index

tf.argmax(input,axis,name=None)   #返回input最大值的索引index。

tf.setdiffld(x,y,name=None)     #返回x,y中不一樣值的索引

tf.where(condition,x=None,y=None,name=None)   #根據指定條件,返回對應的值或座標。

tf.unique(x,name=None)   #返回一個元組tuple(y,idx)。其中,y爲x列表的惟一化數據列表,idx爲x數據對應y元素的index。

tf.invert_permutation(x,name=None)    #沿着input的第一維進行隨機從新排列。

相關文章
相關標籤/搜索