zoukankan      html  css  js  c++  java
  • 机器学习sklearn(75):算法实例(三十二)回归(四)线性回归大家族(二)多元线性回归LinearRegression

    1 多元线性回归的基本原理

     

     

     

    2 最小二乘法求解多元线性回归的参数

    https://en.wikipedia.org/wiki/Matrix_calculus

     

     

     

    3 linear_model.LinearRegression

    class sklearn.linear_model.LinearRegression (fifit_intercept=True, normalize=False, copy_X=True, n_jobs=None)

     

    1. 导入需要的模块和库
    from sklearn.linear_model import LinearRegression as LR
    from sklearn.model_selection import train_test_split
    from sklearn.model_selection import cross_val_score
    from sklearn.datasets import fetch_california_housing as fch #加利福尼亚房屋价值数据集
    import pandas as pd
    2. 导入数据,探索数据
    housevalue = fch() #会需要下载,大家可以提前运行试试看
    X = pd.DataFrame(housevalue.data) #放入DataFrame中便于查看
    y = housevalue.target
    X.shape
    y.shape
    X.head()
    housevalue.feature_names
    X.columns = housevalue.feature_names
    """
    MedInc:该街区住户的收入中位数
    HouseAge:该街区房屋使用年代的中位数
    AveRooms:该街区平均的房间数目
    AveBedrms:该街区平均的卧室数目
    Population:街区人口
    AveOccup:平均入住率
    Latitude:街区的纬度
    Longitude:街区的经度
    """
    3. 分训练集和测试集
    Xtrain, Xtest, Ytrain, Ytest = train_test_split(X,y,test_size=0.3,random_state=420)
    for i in [Xtrain, Xtest]:
        i.index = range(i.shape[0])
    Xtrain.shape
    #如果希望进行数据标准化,还记得应该怎么做吗?
    #先用训练集训练标准化的类,然后用训练好的类分别转化训练集和测试集
    4. 建模 
    reg = LR().fit(Xtrain, Ytrain)
    yhat = reg.predict(Xtest)
    yhat
    5. 探索建好的模型 
    reg.coef_
    [*zip(Xtrain.columns,reg.coef_)]
    """
    MedInc:该街区住户的收入中位数
    HouseAge:该街区房屋使用年代的中位数
    AveRooms:该街区平均的房间数目
    AveBedrms:该街区平均的卧室数目
    Population:街区人口
    AveOccup:平均入住率
    Latitude:街区的纬度
    Longitude:街区的经度
    """
    reg.intercept_

    建模的过程在sklearn当中其实非常简单,但模型的效果如何呢?接下来我们来看看多元线性回归的模型评估指标。
     
  • 相关阅读:
    树:二叉树
    树:红黑树
    gtest
    VDB R&D
    QML 从入门到放弃
    json parse
    Effective C++ 笔记
    Samples topic
    C++ 11 snippets , 2
    C++ 11 snippets , 1
  • 原文地址:https://www.cnblogs.com/qiu-hua/p/14964823.html
Copyright © 2011-2022 走看看