监督学习的线性回归代码
时间: 2023-11-07 20:05:39 浏览: 39
监督学习的线性回归是一种常见的机器学习算法,用于建立输入特征和目标变量之间的线性关系模型。下面是一个使用Python实现线性回归的示例代码:
```python
import numpy as np
class LinearRegression:
def __init__(self):
self.weights = None
self.bias = None
def fit(self, X, y):
# 添加一列全为1的特征,对应 bias
X = np.hstack((np.ones((X.shape[0], 1)), X))
n_samples, n_features = X.shape
# 初始化权重为0
self.weights = np.zeros(n_features)
# 使用最小二乘法计算权重
X_transpose = X.T
self.weights = np.linalg.inv(X_transpose.dot(X)).dot(X_transpose).dot(y)
def predict(self, X):
# 添加一列全为1的特征,对应 bias
X = np.hstack((np.ones((X.shape[0], 1)), X))
# 预测目标变量
y_pred = X.dot(self.weights)
return y_pred
```