tensorflow学习笔记:运算函数、复数操作函数、规约计算、 序列比较与索引提取以及错误类

运算函数、复数操作函数、规约计算、 序列比较与索引提取以及错误类

前一章提到了许多关于张量的操作函数,这里接着将一些运算函数、复数操作函数、规约计算、 序列比较与索引提取以及错误类记录下来。

算数运算函数

函数 描述
tf.asign(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) 根据符号取值,-1、0、1
tf.square(x,name=None) 计算平方
tf.round(x,name=None) 舍入最接近的整数
tf.sqrt(x,name=None) 开根号
tf.pow(x,y,name=None) 幂次方计算
tf.exo(x,name=None)
tf.log(x,name=None) 计算log
tf.maximum(x,y,name=None) 返回最大值
tf.minimum(x,y,name=None) 返回最小值
tf.sin、cos、tan、atan 三角函数
tf.cond 满足条件就执行fn1,否则就执行fn2

矩阵相关的运算

函数 描述
tf.diag(diagonal,name=None) 返回一个给定对角值的对角tensor
tf.diag_part(input,name=None) 功能与上一个相反
tf.trace(x,name=None) 求一个二维tensor的迹
tf.transpose(a,pern=None,name=“tranpose”) 让输入a按照参数petm指定的维度顺序进行转置
tf.reverse(tensor,dims,name=None) 沿着指定的维度对输入机型安排,其中dims为列表,元素含义为指向输入shape的索引。
tf.matmul(a,b,name=None) 矩阵相乘
tf.matrix_determinant(input,nane=None) 返回矩阵的行列式
tf.matrix_inverse(input,adjoint=None,name=None) 求方阵的逆矩阵
tf.cholesky(input,name=None) 对输入方阵cholesky分解,即把一个堆成正定矩阵表示成若一个下三角矩阵L和其转置的乘积的分解A=LL^T
tf.matrix_slove(matrix,tbs,adjoint=None,name=None) 求解矩阵方程,返回矩阵变量、matrix为矩阵的系数,rbs为矩阵方程的结果

复数操作函数

函数 描述
tf.complex(real,imag,name=None) 将两实数转化为复数
tf.complex_abx()x,name=None) 求复数得绝对值,即长度
tf.conj(input,name=None) 计算共轭复数
tf.imag(input,name=None) 取得虚部
tf.real(input,name=None) 取得实部
tf.flt(input,name=None) 计算一维的离散傅里叶变换,输入类型为complex64

规约计算

规约计算会有降维的功能,所有reduce_XXX系列操作函数中,都是以XXX的手段进行降维。每个函数都会有axis参数,即沿那个方向。axis=0表示按列计算,axis=1表示按行计算。使用XXX方法进行降维。参数reduction_indices是为了兼容以前的版本与axis保证相同的含义。

函数 描述
tf.reduces_sum(input_tensor,axis=None,keep_dims=False,name=None,reduction_indices=None) 计算tensor的和,按axis方向进行
tf.reduces_prod(input_tensor,axis=None,keep_dims=False,name=None,reduction_indices=None) 计算输入tensor元素的乘积,按照axis方向
tf.reduces_min(input_tensor,axis=None,keep_dims=False,name=None,reduction_indices=None) 最小值
tf.reduces_max(input_tensor,axis=None,keep_dims=False,name=None,reduction_indices=None) 最大值
tf.reduces_mean(input_tensor,axis=None,keep_dims=False,name=None,reduction_indices=None) 平均值
tf.reduces_all(input_tensor,axis=None,keep_dims=False,name=None,reduction_indices=None) 对tensor中的各个元素求逻辑与。
tf.reduces_any(input_tensor,axis=None,keep_dims=False,name=None,reduction_indices=None) 对tensor中的各个元素求逻辑或。

序列比较与索引提取

函数 描述
tf.argmin(input,name=None) input中最小值的索引
tf.argmax(input,name=None) input中最大值的索引
tf.setdiffId(x,y,name=None) 返回x、y之间不同值的索引
tf.unique(x,name=None) 返回一个唯一化列表
tf.invert_permuttation(x,name=None) 将x中元素的值当作索引,返回新的张量
tf.random_shuffle(input)沿着input的第一维进行随机重新排列

错误类

一个完成的框架当然少不了异常处理机制啦,接下来时一些tensorflow中的错误类,为了方便查询,所以将一些常用的错误类列了出来。

属性 描述
class tf.OpError 一个基本的错误类型,在当TF执行失败时报错
tf.OpError.op 返回执行失败的操作节点
tf.OpError.node_def yiNodeDef proto形式表示失败的OP
tf.OpError.error_code 描述该错误的整数错误代码
tf.OpErrormessage 返回错误信息
class tf.errors.CancelledError 当操作或者阶段被取消时报错
class tf.errors.UnknownError 未知错误类型
class tf.errors.InvalidArgunmentError 在接受到非法参数时报错
class tf.errors.NotFoundError 当发现不存在所请求的一个实体时,比如文件或目录
class tf.errors.AlreadyExistsError 当创建的实体已存在时报错
class tf.errors.PermissionDeniedError 没有执行权限做某操作时报错
class tf.errors.ResourceExhaustedError 资源耗尽时报错
class tf.errors.FailedPreconditionError 系统没有条件执行某个行为时报错
class tf.errors.AbortedError 操作中止时报错,常常在并发情形
class tf.errors.OutOfRangeError 超出范围报错
class tf.errors.UnimplementedError 某个操作没有执行时报错
class tf.errors.InternalError 当系统经历了一个内部错误时报错
class tf.errors.DataLossError 当出现不可恢复的错误
tf.errors.XXXX_init_(node,def_op,message) 使用XXX方式创建以上各种错误类

记录完毕,希望对需要的小伙伴有所帮助。
参考资料:李金洪老师的《深度学习之TensorFlow入门、原理与进阶实战》。

你可能感兴趣的:(tensorflow学习笔记,运算函数,tensorflow,错误类,规约计算函数,索引提前)