tf.matmul()矩阵乘法和 tf.multiply()点乘
tf.matmul是矩阵的乘法,即tf.matmul(x,y)中的x和y要满足矩阵的乘法规则,例如x=[2,3],y=[3,2]
tf.multiply是两个矩阵对应的数据相乘,所以两个矩阵的形式必须相同,即tf.multiply(x,y)中x和 y具有相同的格式
例如x = [2,3],y= [2,3]
----------------------------------------------------------
tf.matmul(a, b, transpose_a=False, transpose_b=False, adjoint_a=False, adjoint_b=False, a_is_sparse=False, b_is_sparse=False, name=None)
Multiplies matrix a by matrix b, producing a * b.
参数说明:a和b两个矩阵必须都是同样数据类型,支持的类型如下:float16, float32, float64, int32, complex64, complex128。
transpose,adjoint为转置和共轭转置,默认不进行转置
如果一个或两个矩阵都包含大量的零,当a_is_sparse 或b_is_sparse 设置为真时,a和b都会被处理为稀疏矩阵,会使用一个更有效率的乘法公式。他们都默认设置为假。这个优化规则只能适用于类型为bfloat16 或 bfloat32 的平面矩阵(等级2的张量)。
name: 操作的名字(可选参数)
tf.multiply(x, y, name=None)
Returns x * y element-wise
这两个相乘的数x和y要有相同的数据类型,不然就会报错
本文详细解析了TensorFlow中的两种乘法运算:tf.matmul()用于实现矩阵乘法,需遵循矩阵乘法规则;tf.multiply()则进行元素级别的点乘,要求两个矩阵形状相同。文章还介绍了tf.matmul()的参数及其优化机制,以及tf.multiply()的基本用法。
1462

被折叠的 条评论
为什么被折叠?



