首页 > 解决方案 > 关于logisticGD。NameError:名称“x”未定义

问题描述

我是 python 新手,我想使用逻辑 GD。但我有麻烦了。当我想使用 100000 次迭代来获得 beta 时,它显示:NameError: name 'x' is not defined

def sigmond (x):
    return (1/(1+np.exp(-x)))


def Gradient_Descent_Algo(X, t, beta, alpha, m, numIterations) & sigmond (x) :   
    XTrans = X.transpose()
    for i in range(0, numIterations):
        # predicted values from the model
        model = sigmond(np.dot(X, beta))
        loss_temp = model - t
        # calculte the loss function
        loss1=np.log (sigmond(np.dot(x, beta)))* t
        loss2=np.log(1-sigmond(np.dot(x,beta))) * 1-t
        loss = np.sum(loss1+loss2) / m
        # save all the loss function values at each step
        loss_total[i]= loss
        # calcualte the gradient using matrix representation
        gradient = np.dot(XTrans, loss_temp) / m
        # update the parameters simulteneously with learning rate alpha
        beta = beta - alpha * gradient
        # save all the estimated parametes at each step
        beta_total[i,:]= beta.transpose()
    return beta,loss
    return (1/(1+np.exp(-x)))

标签: pythonfunction

解决方案


推荐阅读