numpy 值错误:形状(4,1)和(5,1)未对齐:1(尺寸1)!= 5(尺寸0)

ecbunoof  于 2023-01-05  发布在  其他
关注(0)|答案(1)|浏览(227)

我正在做一个简单的网络来解决异或问题,我得到了一个错误。这是我的代码

def back_prop(a2,z0,z1,z2,y):
    delta2=z2-y
    Delta2=np.matmul(z1.T,delta2)
    delta1=(delta2.dot(W2[1:,:]).T)*sigmoid_derivative(a1)
  
    Delta1=np.matmul(z0.T,delta1)
  
    delta=np.matmul(Delta1,W1[1:,:])
    return delta2,Delta2, Delta1

它给我的错误是ValueError形状(4,1)和(5,1)未对齐:1(尺寸1)!= 5(尺寸0)
我试着查找这个问题,但是我找不到任何有效的解决方法。你能帮忙吗?谢谢!

mrfwxfqh

mrfwxfqh1#

如果不提供输入参数,则无法重现错误。
也就是说,您的错误消息会告诉您问题所在:matmul是标准的矩阵乘法,不能在4x1和5x1矩阵之间执行。转置delta*矩阵而不是z*矩阵可以修复错误,但要由您来检查这是否确实是您想要的数值结果。

相关问题