当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python sklearn LinearRegression用法及代码示例


本文简要介绍python语言中 sklearn.linear_model.LinearRegression 的用法。

用法:

class sklearn.linear_model.LinearRegression(*, fit_intercept=True, normalize='deprecated', copy_X=True, n_jobs=None, positive=False)

普通最小二乘线性回归。

LinearRegression 使用系数 w = (w1, …, wp) 拟合线性模型,以最小化数据集中观察到的目标与线性近似预测的目标之间的残差平方和。

参数

fit_intercept布尔,默认=真

是否计算此模型的截距。如果设置为 False,则不会在计算中使用截距(即数据应居中)。

normalize布尔,默认=假

fit_intercept 设置为 False 时忽略此参数。如果为 True,则回归量 X 将在回归前通过减去均值并除以 l2 范数进行归一化。如果您希望标准化,请在使用 normalize=False 对估计器调用 fit 之前使用 StandardScaler

copy_X布尔,默认=真

如果为 True,则 X 将被复制;否则,它可能会被覆盖。

n_jobs整数,默认=无

用于计算的作业数。这只会在问题足够大的情况下提供加速,即如果首先 n_targets > 1 和其次 X 是稀疏的,或者如果 positive 设置为 TrueNone 表示 1,除非在 joblib.parallel_backend 上下文中。 -1 表示使用所有处理器。有关详细信息,请参阅词汇表。

positive布尔,默认=假

当设置为 True 时,强制系数为正。此选项仅支持密集阵列。

属性

coef_形状数组 (n_features, ) 或 (n_targets, n_features)

线性回归问题的估计系数。如果在拟合过程中传递了多个目标(y 2D),这是一个形状为(n_targets,n_features)的二维数组,而如果只传递了一个目标,这是一个长度为 n_features 的一维数组。

rank_int

矩阵的秩 X 。仅在 X 密集时可用。

singular_形状数组 (min(X, y),)

X 的奇异值。仅在 X 密集时可用。

intercept_浮点数或形状数组 (n_targets,)

线性模型中的独立项。如果 fit_intercept = False 则设置为 0.0。

n_features_in_int

拟合期间看到的特征数。

feature_names_in_ndarray 形状(n_features_in_,)

拟合期间看到的特征名称。仅当 X 具有全为字符串的函数名称时才定义。

注意

从实现的角度来看,这只是简单的普通最小二乘 (scipy.linalg.lstsq) 或非负最小二乘 (scipy.optimize.nnls) 包装为预测器对象。

例子

>>> import numpy as np
>>> from sklearn.linear_model import LinearRegression
>>> X = np.array([[1, 1], [1, 2], [2, 2], [2, 3]])
>>> # y = 1 * x_0 + 2 * x_1 + 3
>>> y = np.dot(X, np.array([1, 2])) + 3
>>> reg = LinearRegression().fit(X, y)
>>> reg.score(X, y)
1.0
>>> reg.coef_
array([1., 2.])
>>> reg.intercept_
3.0...
>>> reg.predict(np.array([[3, 5]]))
array([16.])

相关用法


注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.linear_model.LinearRegression。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。