线性回归的基本使用

2018-05-23  本文已影响0人  sbill

基本流程

导包

将需要用到的库都导进来

import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.preprocessing import StandardScaler

加载数据

所用数据是sklearn自带数据库中波士顿房价的数据

boston = datasets.load_boston()

X = boston.data
y = boston.target

因为数据可能会有一些问题,所以对数据进行预处理

X = X[y < 50.0]
y = y[y < 50.0]

切分数据

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2, random_state=66)

训练

lin = LinearRegression()
lin.fit(X_train, y_train)

对于线性模型,是有系数的,X矩阵中每个x都有一个系数,将其存储在实例中的coef_属性中;
每个模型函数还存在一个截距,存储在实例的intercept_属性中

lin.coef_
lin.intercept_

评估

因为只是想看结果的准确程度,并不想得到预测结果,所以可以直接调用对象实例的score()方法查看评估结果

lin.score(X_test, y_test)

而且经过测试可知,无论是否归一化数据,最后得到的结果是不变的

最后得到R平方值的范围一般是0到1之间,值越大表示算法的效果越好

上一篇下一篇

猜你喜欢

热点阅读