首页 > 其他 > 详细

第十二节 线性回归:波士顿房价预测

时间:2020-03-26 21:34:47      阅读:105      评论:0      收藏:0      [点我收藏+]

线性回归重要概念:

  损失函数:预测值偏离真实值的度量,损失越小,拟合越好

  损失函数的两种求解方式:

    最小二乘法:直接求解,使用于小样本量,小于10w,sklearn的API:from sklearn.linear_model import LinearRegression

    梯度下降:适合大样本量,大于10w,但是需要调优,即调节学习率,sklearn的API:from sklearn.linear_model import SGDRegressor

  使用均方误差来评估模型:均方误差越小,拟合效果越好。sklearn的API:from sklearn.metrics import mean_squared_error

from sklearn.datasets import load_boston
from sklearn.linear_model import LinearRegression, SGDRegressor
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.metrics import mean_squared_error  # 回归方程性能评价均方误差API

def boston_linear():
    ‘‘‘线性回归预测波士顿房价‘‘‘
    # 获取数据
    bl = load_boston()

    # 分割训练集和测试集
    x_train, x_test, y_train, y_test = train_test_split(bl.data, bl.target, test_size=0.25)

    # 进行标准化,特征值和目标值都需要进行标准化处理
    # 特征值
    std_x = StandardScaler()
    x_train = std_x.fit_transform(x_train)
    x_test = std_x.fit_transform(x_test)

    # 目标值,y_train.reshape(-1, 1)将一维数组转换成二维数组
    std_y = StandardScaler()
    y_train = std_y.fit_transform(y_train.reshape(-1, 1))
    y_test = std_y.fit_transform(y_test.reshape(-1, 1))

    # 预测
    # 最小二乘法求解结果
    lr = LinearRegression()
    lr.fit(x_train, y_train)

    # 系数
    print(lr.coef_)

    # 预测测试集的房子价格
    lr_y_predict = std_y.inverse_transform(lr.predict(x_test))
    print(最小二乘法测试集里面每个房子的价格, lr_y_predict)

    # 用均方误差对一个回归模型来进行评价,越小越好,mean_squared_error第一个参数是测试集的真实值,第二个参数数测试集的预测值
    print(最小二乘法的均方误差:, mean_squared_error(std_y.inverse_transform(y_test), lr_y_predict))

    # 梯度下降
    sgd = SGDRegressor()
    sgd.fit(x_train, y_train)

    # 系数
    print(sgd.coef_)

    # 预测测试集的房子价格
    sgd_y_predict = std_y.inverse_transform(sgd.predict(x_test))
    print(梯度下降测试集里面每个房子的价格, sgd_y_predict)

    # 用均方误差对一个回归模型来进行评价,越小越好,mean_squared_error第一个参数是测试集的真实值,第二个参数数测试集的预测值
    print(梯度下降法的均方误差:, mean_squared_error(std_y.inverse_transform(y_test), sgd_y_predict))

if __name__ == "__main__":
    boston_linear()

 

第十二节 线性回归:波士顿房价预测

原文:https://www.cnblogs.com/kogmaw/p/12577452.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!