3

Numpy でこの勾配降下を実装しました。

def gradientDescent(X, y, theta, alpha, iterations):
    m = len(y)

    for i in range(iterations):
        h = np.dot(X,theta)
        loss = h-y
        theta = theta - (alpha/m)*np.dot(X.T, loss) #update theta

    return theta

コードの他の部分はここで完全にベクトル化されていますが、まだ for ループがあり、これを排除することは不可能に思えます。具体的には、各ステップで theta の更新が必要ですが、それをベクトル化する方法や、より効率的な方法で記述する方法がわかりません。

ご協力ありがとうございました

4

1 に答える 1