TensorFlow:数学运算
文章目录一、加减乘除二、乘方三、指数、对数四、矩阵相乘一、加减乘除加减乘除是最基本的数学运算,分别通过tf.add, tf.subtract, tf.multiply, tf.divide 函数实现,TensorFlow 已经重载了+ −∗/运算符,一般推荐直接使用运算符来完成加减乘除运算。整除和余除也是常见的运算之一,分别通过//和%运算符实现。我们来演示整除运算:二、乘方特...
一、加减乘除
加减乘除是最基本的数学运算,分别通过tf.add, tf.subtract, tf.multiply, tf.divide
函数实现,TensorFlow 已经重载了+ −∗/
运算符,一般推荐直接使用运算符来完成加减乘除运算。
整除和余除也是常见的运算之一,分别通过//
和%
运算符实现。
我们来演示整除运算:
二、乘方
特别地,对于常见的平方和平方根运算,可以使用tf.square(x)
和tf.sqrt(x)
实现
平方运算实现如下:
三、指数、对数
通过 tf.pow(a, x)
或者**
运算符可以方便实现指数运算𝑎𝑥
特别地,对于自然指数𝑒𝑥
,可以通过tf.exp(x)
实现
四、矩阵相乘
神经网络中间包含了大量的矩阵相乘运算,前面我们已经介绍了通过@
运算符可以方
便的实现矩阵相乘,还可以通过tf.matmul(a, b)
实现。
需要注意的是,TensorFlow 中的矩阵相乘可以使用批量方式,也就是张量a,b 的维度数可以大于2。当张量a,b 维度数大于2时,TensorFlow 会选择a,b 的最后两个维度进行矩阵相乘,前面所有的维度都视作Batch 维度。
根据矩阵相乘的定义,a 和 b 能够矩阵相乘的条件是,a 的倒数第一个维度长度(列)和
b 的倒数第二个维度长度(行)必须相等。
比如张量a-shape:[4,3,28,32]
可以与张量b-shape:[4,3,32,2]
进行矩阵相乘
矩阵相乘函数也支持 Broadcasting 机制:
更多推荐
所有评论(0)