线性回归(正规方程法,梯度下降法,R_square测试),以房价预测为例
线性回归:对于存在线性关系的数据(如房价与房间数,楼层数等之间的关系),根据已知数据拟合出其线性关系(求出表示房间数,楼层数x与房价y的关系的函数)
可以用正规方程法,梯度下降法解决线性回归问题。正规方程法时间复杂度比梯度下降法高很多。
正规方程法(原理:最小二乘法)
线性回归中需要通过训练已有数据拟合出的目标函数
如何拟合出目标函数?使损失函数尽量小
一顿数学化简后得出正规方程解
代码
首先初始化
import numpy as np
from sklearn.metrics import r2_score
class LinearRegression:
def __init__(self):
self.coef_=None
self.interception_=None #偏移量,常数,即theta[0]
self._theta=None
正规方程解(开始训练过程)
def fit_normal(self,X_train,y_tra