大家好,欢迎来到IT知识分享网。
一、矩阵定义、运算
对多维数组的运算,默认情况并不运算矩阵。如果需要对数组进行矩阵运算,矩阵是继承自numpy数组对象的二维数组对象。Numpy中,矩阵计算是针对整个矩阵中每个元素进行的,与用for循环相比,其在运算速度上更快。
#创建numpy矩阵
matr1=np.mat('1 2 3;4 5 6;7 8 9') #使用分号隔开数据
matr2=np.matrix([[1,2,3],[4,5,6],[7,8,9]]) #调用mat和matrix等价
# print(np.bmat('arr1 arr2;arr1 arr2')) #block-matrix实现分块矩阵创建,即小矩阵组合大矩阵
#矩阵运算
print(matr1+matr2) #矩阵相加+、相减-、相乘*
print(matr1.T)
try:
print(matr1.I) #T:返回自身的转置,I:返回自身的逆矩阵
except:
print("无逆矩阵")
print(matr1.H) #H:返回自身的共轭矩阵
print(matr1.A) #A:返回自身的二维数组的一个视图
二、生成随机矩阵
np.random.rand() 是均匀分布。
np.random.randn() 是从标准正态分布中返回一个或多个样本值。正态分布,也即这些随机数的期望为0,方差为1。
#随机矩阵 np.random.rand的应用:dropout矩阵
dl = np.random.rand(4,5) < 0.2 #al.shape[0],al.shape[1] 第一个维度是4,第二个维度是5;keep_prob是0.2(dropout=0.8)
print(dl)
#生成1-100整数范围内的随机矩阵
print(np.random.randint(1,100,size=(3,3)))
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/23859.html