Python几个常用的工具

博客介绍了numpy在Python矩阵数值计算中的基础作用,重点阐述了np.dot和np.matmul的区别。二者都用于矩阵乘法,但np.matmul禁止矩阵与标量相乘,在矢量内积运算中二者无差别,多维矩阵乘法时np.matmul有特定操作方式,还提及了1维与2维矩阵的乘法。

1. 几个重要的工具

import numpy as np
import scipy
import pandas as pd
import skleam
import Keras.backend as K
import tensorflow as tf

2. numpy

numpy定义了python进行矩阵数值计算的基础

np.Add(A,B)
np.subtract(A,B)

np.dot(C,D) 
#对于秩为1的数组,执行对应位置相乘,然后再相加;
对于秩不为1的二维数组,执行矩阵乘法运算;超过二维的可以参考numpy库介绍。

np.matmul(C,D)##C@D 线代乘法
np.multiply(C,D)##C*D  对应位置相乘,输出与相乘数组/矩阵的大小一致

A*B 
#对数组执行对应位置相乘
对矩阵执行矩阵乘法运算

np.dot和np.matmul的区别

  • 都是矩阵乘法
  • np.matmul中,禁止矩阵与标量的乘法
  • np.matmul中,在矢量乘矢量的内积运算中,matmul与dot没有差别
  • np.matmul中,多维的矩阵,将前n-2维视为后2维元素后,进行乘法操作

矢量内积无区别,结果是标量

t1 = np.array([1,2,3])
t2 = np.array([1,2,3])
print(np.dot(t1,t2))#1 *1+2*2+3*3
print(np.matmul(t1,t2))
print(t1*t2)#(1*1,2*2,3*3)

1维与2维矩阵的乘法

a = np.array([1,2,3])
b = np.array([[1,1,1],
             [2,2,2],
             [3,3,3]])
np.dot(a,b)
np.matmul(a,b)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值