TensorFlow中的多维tensor运算(tf.tensordot)
本文会重点介绍关于TensorFlow中的tf.tensordot函数,但是在详细介绍这一函数之前,还会对其他矩阵乘法相关的函数进行简要说明。
1. tf.multiply
tf.multiply的操作等同于*的操作,即计算两个矩阵的按元素乘法。也就是求两个矩阵的哈达玛积(Hadamard product)。
1 |
|
2. tf.matmul
tf.matmul即是标准的矩阵运算函数,其要求参与运算的两个矩阵必须满足特定的行列关系。
1 |
|
3. tf.tensordot
函数参数:
a: float32或float64类型的Tensor
b: 与a相同类型的Tensor
axes: 该参数用来表明a、b张量沿哪些轴进行收缩(收缩成一个轴)。该参数既可以是一个整数N,也可以是两个列表来指明要进行收缩的轴。
name: 操作的名称(可选)
接下来通过具体的例子来说明tensordot的操作,尤其是参数axes的含义。
1 |
|
接下来是复杂一些的例子。
1 |
|
最后需要强调的一点就是,不管两个按照哪些轴进行收缩,都必须保证两个张量按照指定轴收缩后的纬度值是一样的。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!