确实令人沮丧的Python / Numpy错误。 “无法将输入数组从形状(6)广播到形状(1)”

时间:2018-11-06 06:46:03

标签: python numpy

ValueError

Traceback (most recent call last)
<ipython-input-129-810db8fa03c3> in <module>()
     20     # TODO:<your code here>
     21 
---> 22     w=np.subtract(w,(compute_grad(X_expanded[ind, :], y, w)))
     23 
     24 
shape = (6, 1)
weight_gradients = np.empty(shape,)

for k in range(len(w)):
    sum_gradient = 0
    #print(sum_gradient)
    for i in range (len(X)):
        linear_model_output=X[i,0]*w[0]+X[i,1]*w[1]+X[i,2]*w[2]+X[i,3]*w[3]+X[i,4]*w[4]+X[i,5]*w[5]
        exp_lmo = np.exp(linear_model_output)
        y_i=y[i]
        add_to_grad = -X[i][k]*1*(y_i*exp_lmo-exp_lmo+y_i)/(exp_lmo+1) 
        sum_gradient = sum_gradient + add_to_grad

    sum_gradient = sum_gradient/len(y)

    weight_gradients[k] = sum_gradient  ############ERROR LINE
weight_gradients[k] = sum_gradient

我收到错误消息。

我的猜测是,这是由于对语言知识的一种愚蠢的愚蠢缺乏所致。不幸的是,我以前在程序中使用了完全像这样的代码,并且没有抛出错误,实际上只是使我感到困惑。

0 个答案:

没有答案