线性回归-梯度下降法代码实现

#梯度下降枚举法举例

import numpy as np
import matplotlib.pyplot as plt

#求 y = x^2+2x+5 的最小值

#画函数图像
x = np.linspace(-6,4,100)
y = x**2+2*x+5
plt.plot(x,y)

线性回归-梯度下降法代码实现_第1张图片

 

#初始化x,a和迭代次数
x = 3 #在真正实现的时候,x一定是随机触发,用random函数来随机生成
      #在这里为了方便统一,这里取x=3
alaph = 0.8
iteraterNum = 10

#我们手动计算出Y的导数为2x+2,迭代求theta
for i in range(iteraterNum):
    x = x - alaph*(2*x+2)

#输出x
print(x)

 迭代100次时

#初始化x,a和迭代次数
x = 3 #在真正实现的时候,x一定是随机触发,用random函数来随机生成
      #在这里为了方便统一,这里取x=3
alaph = 0.8
iteraterNum = 100

#我们手动计算出Y的导数为2x+2,迭代求theta
for i in range(iteraterNum):
    x = x - alaph*(2*x+2)

#输出x
print(x)

 

 

你可能感兴趣的:(机器学习,线性回归,python,机器学习)