一元线性回归模型python
时间: 2023-10-06 14:10:22 浏览: 89
python一元线性回归
5星 · 资源好评率100%
以下是使用Python实现一元线性回归模型的示例代码:
```python
import numpy as np
import matplotlib.pyplot as plt
# 生成样本数据
np.random.seed(0)
X = np.random.rand(100, 1)
y = 2 + 3 * X + np.random.rand(100, 1)
# 绘制样本数据
plt.scatter(X, y)
# 初始化模型参数
theta = np.random.randn(2, 1)
# 添加偏置项
X_b = np.c_[np.ones((100, 1)), X]
# 定义学习率和迭代次数
eta = 0.1
n_iterations = 1000
# 使用随机梯度下降法训练模型
for iteration in range(n_iterations):
random_index = np.random.randint(100)
xi = X_b[random_index:random_index+1]
yi = y[random_index:random_index+1]
gradients = 2 * xi.T.dot(xi.dot(theta) - yi)
theta = theta - eta * gradients
# 输出模型参数
print(theta)
# 绘制预测结果
X_new = np.array([[0], [1]])
X_new_b = np.c_[np.ones((2, 1)), X_new]
y_predict = X_new_b.dot(theta)
plt.plot(X_new, y_predict, "r-")
plt.show()
```
该示例代码中,首先生成了一些样本数据,然后使用随机梯度下降法训练模型,并输出最终的模型参数,最后绘制了模型的预测结果。
阅读全文