tensorflow常见函数

1、类型转换

tf.string_to_number(string_tensor,out_type=None,name=None)  #字符串转为数字

tf.to_double(x,name='ToDouble')  #转为64位浮点类型

tf.to_float(x,name='ToFloat')   #转为32位浮点类型

tf.to_int32(x,name='ToInt32')  #转为32位整型

tf.to_int64(x,name='ToInt64')  #转为64位整型

tf.cast(x,dtype,name=None)  #将x或者x.values转换为dtype所指定的类型

2、数值操作

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

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产生等差数列。

3、形状变换

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,否则出错)。

4、数据操作

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个数

5、算术运算函数

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

6、矩阵相关运算

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)   #求解矩阵方程,返回矩阵变量。

7、序列比较与索引提取

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的第一维进行随机重新排列。

posted @ 2019-06-25 15:42  小白羊fight  阅读(514)  评论(0编辑  收藏  举报