Python 如何使用matplotlib在x轴上绘制循环变量i,在y轴上绘制循环中的局部变量
我正在使用numpy在线性回归上练习梯度下降。这是我的梯度下降过程:Python 如何使用matplotlib在x轴上绘制循环变量i,在y轴上绘制循环中的局部变量,python,numpy,matplotlib,linear-regression,gradient-descent,Python,Numpy,Matplotlib,Linear Regression,Gradient Descent,我正在使用numpy在线性回归上练习梯度下降。这是我的梯度下降过程: def batch_gradient_descent(data_points, initial_b, initial_W, lr, iterations): b = initial_b W = initial_W for i in range(iterations): # Calcultes Gradient Descent for n-iterations. b, W = gradie
def batch_gradient_descent(data_points, initial_b, initial_W, lr, iterations):
b = initial_b
W = initial_W
for i in range(iterations): # Calcultes Gradient Descent for n-iterations.
b, W = gradient_step(b, W, data_points, lr)
current_cost = cost(b, W, data_points)
# plt.figure(figsize=(8, 4))
# plt.plot(i, current_cost, linewidth=1)
# plt.xlabel("iteration")
# plt.ylabel("log(L)")
# plt.title("log(L) After "+str(i)+"th iteration")
plt.show()
return [b, W]
我需要使用matplotlib总共绘制两个图形:
正确的方法是什么?您可以将它们附加到
x
和y
轴的列表中
x = []
y = []
def batch_gradient_descent(data_points, initial_b, initial_W, lr, iterations):
b = initial_b
W = initial_W
for i in range(iterations): # Calcultes Gradient Descent for n-iterations.
b, W = gradient_step(b, W, data_points, lr)
current_cost = cost(b, W, data_points)
x.append(i)
y.append(current_cost)
return [b, W]
然后将其绘制为:
plt.figure(figsize=(8, 4))
plt.plot(x, y, linewidth=1)
plt.xlabel("iteration")
plt.ylabel("log(L)")
plt.title("log(L) After " + str(x[-1]) + "th iteration")
plt.show()