在我编写的神经网络代码中,由于对齐问题,我无法得到答案。
我写了一个神经网络代码(基于其他代码)。我试图以正确的方式构建输入和输出。当我正确定义类和操作时,由于对齐问题,我没有得到答案。错误:形状(127,3)和(1,4)未对齐:3(dim 1)!= 1(dim 0)
Datafile = pd.read_excel(r"C:\\Users\Hasan\Desktop\ANN\x.xlsx")
是127x3
Target = pd.read_excel(r"C:\\Users\Hasan\Desktop\ANN\y.xlsx")
是127x1
class Neural_Network(object):
def __init__(self):
self.inputlayer = 1
self.w1 = np.random.randn(self.inputlayer, self.hiddenlayer)
self.z = np.dot(Datafile, self.w1)
我认为这是由于两个矩阵的维数所致,但是即使更改维度,它也不起作用。 所有帮助将不胜感激
答案 0 :(得分:0)
对于矩阵乘法(dot product)
,columns of first matrix
的数量应等于rows of second matrix
的数量。
在您的情况下,Datafile
有3 columns
而w1
有1 row
,这就是为什么尺寸错误会给您带来错误的原因。
举个例子,我假设随机矩阵,
Datafile = np.random.rand(127, 3)
w1 = np.random.rand(3, 127)
z = np.dot(Datafile, w1)
print(z.shape)
输出:(127, 127)
在此示例中,Datafile
具有3列,w1
具有3行,因此,在这种情况下,dot-product
将成功。