机器学习

机器学习sklearn(75):算法实例(三十二)回归(四)线性回归大家族(二)多元线性回归LinearRegression

本文主要是介绍机器学习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当中其实非常简单,但模型的效果如何呢?接下来我们来看看多元线性回归的模型评估指标。  

 

这篇关于机器学习sklearn(75):算法实例(三十二)回归(四)线性回归大家族(二)多元线性回归LinearRegression的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!