一.矩阵是深度学习中一个非常非常重要得概念,下面是关于维的一些理解
张量的阶数有时候也称为维度,或者轴,轴这个词翻译自英文axis。譬如一个矩阵[[1,2],[3,4]],是一个2阶张量,有两个维度或轴,沿着第0个轴(为了与python的计数方式一致,本文档维度和轴从0算起)你看到的是[1,2],[3,4]两个向量,沿着第1个轴你看到的是[1,3],[2,4]两个向量。
要理解“沿着某个轴”是什么意思,不妨试着运行一下下面的代码:
import numpy as np a = np.array([[[1,2],[3,4]],[[5,6],[7,8]]]) sum0 = np.sum(a, axis=0) sum1 = np.sum(a, axis=1) sum2 = np.sum(a ,axis=2) print(sum0) print(sum1) print(sum2)
Axis=0 表示的是所示矩阵中最外层的“轴”,“1 5 ”,“2 6”,“3 7”...
Axis=1 表示的是剔除最外层矩阵后最外层的“”轴“ ”1 3“ “2 4 ”,“5 7”,“6 8”...
Axis=2 依此类推,剔除前面所有的”轴” ”1 2“ “3 4 ”,“5 6”,“7 8”..
因此sum分别为
[[ 6 8] [10 12]] [[ 4 6][12 14]] [[ 3 7][11 15]]
理解了这个“轴”,再谈谈这个“轴”的应用 ,运行下列代码:
import numpy as np
arr2 = np.random.randn(2,3)
print(arr2)
表示从标准正态分布中返回一个或多个样本值。 而(2,3)正是返回值的矩阵,由此推测返回形式为Axis=0 有2个数,Axis=1有3个数的矩阵,即
[[ 1.01679582 0.02093434 -0.48180997] [-0.13738242 0.48746367 0.22310166]]
由此,通过(x,y,z,...)的形式,我们便可以搭建出矩阵