B = np.array([1, 2, 3, 4])
print(B.shape)
得到结果是[4,],开始以为一维数组是行向量,那么输出结果为什么不是[,4]。
一维数组没有明确的行列概念,但仍然可以将其视为拥有一行和 n
列的结构。可以说一维数组具有行列结构,其中行数为 1,列数为数组的长度。但在通常情况下,我们更倾向于将其视为单个维度的数组。
np.dot一般计算矩阵的乘法,但是在np.dot(a,b)a与b两个都是一维向量时,是计算向量的内积。
在后期神经网络的学习中np.a.shape()即数组的维度数很重要,我们甚至不需要去研究数组的具体形状,但对应维度数必须相同。
以下内容参考numpy dot用法解释_np.dot_白鸥何处去的博客-CSDN博客
只需a矩阵的最后一维dim等于b矩阵倒数第二维dim即可,对应二维情况就是第一个的列数等于第二个矩阵行数;也就是说点积发生在a,b矩阵最后两个维度上;