以下是使用 Python 实现的代码: ```python import numpy as np import matplotlib.pyplot as plt def linear_regression(X, y): # 计算 X 的转置 X_T = np.transpose(X) # 计算 X 的转置乘以 X X_T_X = np.dot(X_T, X) # 计算 X 的转置乘以 y X_T_y = np.dot(X_T, y) # 求解 w w = np.linalg.solve(X_T_X, X_T_y) return w # 生成一些示例数据 X = np.array([[1, 2], [2, 3], [3, 4], [4, 5]]) y = np.array([5, 7, 9, 11]) # 求解 w w = linear_regression(X, y) # 预测值 y_pred = np.dot(X, w) # 绘制原始样本点和回归直线 plt.scatter(X[:, 1], y) plt.plot(X[:, 1], y_pred, color='red') plt.show() ``` 额外需要注意的逻辑点: 1. 确保输入的数据格式正确,例如 X 和 y 的维度和数据类型。 2. 处理可能出现的矩阵不可逆的情况。 3. 对于大规模数据,可能需要考虑优化计算过程以提高效率。 [2024-12-03 22:30:16 | AI写代码神器 | 313点数解答]