sklearn机器学习:线性回归LinearRegression

本文介绍了sklearn.linear_model.LinearRegression类,详细解析了其参数,包括fit_intercept、normalize、copy_X和n_jobs,并强调线性回归的性能主要依赖于数据。同时提到,该模型可以处理多标签问题,coef_属性存储了回归方程的系数,intercept_则是截距项。

LinearRegression类格式

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

参数

fit_intercept
布尔值,可不填,默认为True
是否计算此模型的截距。如果设置为False,则不会计算截距
normalize
布尔值,可不填,默认为False
当fit_intercept设置为False时,将忽略此参数。如果为True,则特征矩阵X在进入回归之前将会被减去均值(中⼼心化)并除以L2范式(缩放)。如果希望进行标准化,请在fit数据之前使用preprocessing模块中的标准化专用类
StandardScaler
copy_X
布尔值,可不填,默认为True
如果为真,将在X.copy()上进行操作,否则,原本的特征矩阵X可能被线性回归影响并覆盖
n_jobs
整数或者None,可不填,默认为None
用于计算的作业数。只在多标签的回归和数据量足够大的时候才生效。除非None在joblib.parallel_backend上下文中,否则None统一表示为1。如果输入-1,则表示使用全部的CPU来进行计算。
线性回归的类仅有四个参数就可以完成一个完整的算法。并且,这些参数中并没有一个是必填的,更没有对模型有不可替代作用的参数。这说明,线性回归的性能,往往取决于数据本身,而并非是调参能力,线性回归也因此对数据有着很的要求。幸运的是,现实中大部分连续型变量之间,都存在着或多或少的线性联系。所以线性回归虽然简
单,却很强大。
顺便一提,sklearn中的线性回归可以处理多标签问题,只需要在fit的时候输入多维度标签就可以了。

代码实现

#导⼊需要的模块和库
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
#导入数据,探索数据
housevalue = fch() 
X = pd.DataFrame(housevalue.data) #放入DataFrame中便于查看
y = housevalue.target
X
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值