sklearn 的 LinearRegression模块

from sklearn.linear_model import LinearRegression  

#导入LinearRegression模块(普通最小二乘线性回归)

#LinearRegression 拟合线性模型,系数 w = (w1, …, wp) 最小化观察目标之间的残差平方和 数据集

#以及线性近似预测的目标。

 

LinearRegression( * , fit_intercept = True , normalize = False , copy_X = True , n_jobs = None , positive = False )

LinearRegression有五个参数

1、fit_intercept bool,默认值=True,是否计算此模型的截距。 如果设置 为 False,计算中不使用截距 (即数据应居中)

2、normalize bool,默认值 = False ,当 fit_intercept 设置为 False 时,将忽略此参数。

如果为 True,回归变量 X 将在回归之前通过减去均值,并除以 l2 范数进行归一化。

如果希望标准化,请在使用 normalize=False 对估算器调用 fit 之前使用 StandardScaler。

3、copy_X bool, 默认=True,如果为True,X 将被复制; 否则,它可能会被覆盖。

4、n_jobs int, 默认=None,用来设定CPU运行情况,n_jobs=-1便是使用全部的CPU。一般不需要自己设定,选默认值。

5、positive bool, 默认=False,设置为 True 时,强制系数为正。 仅密集阵列支持此选项。

 

一些参数:

fit(X, y[, sample_weight]):拟合线性模型。
get_params([深的]):获取此估计器的参数。
predict(X):使用线性模型进行预测。

score(X, y, sample_weight=None):返回决定系数的预测。

最好的得分是1.0,而且有可能会得到负值
  sklearn 的 LinearRegression模块


set_params(**参数):设置这个估计器的参数。

 

fit(X, y, sample_weight=None):拟合线性模型。

X:训练数据  y:目标数据 sample_weight=None:每个样本的单独权重

 

get_params( deep = True )

获取此估计器的参数。如果为 True,将返回此估计器的参数和 包含作为估计器的子对象。

 

predict( X )

X :数组形状测试样品。

 

score( X , y , sample_weight = None )

X :数组形状测试样品。  y:目标数据  sample_weight :样本权重。

 

返回决定系数R^2的预测

 

set_params( ** 参数 )

 

 

import numpy as np
from sklearn.linear_model import LinearRegression
x = np.array([[1, 1], [1, 2], [2, 2], [2, 3]])
# print(x)
# >>>[[1 1]
# [1 2]
# [2 2]
# [2 3]]

y = np.dot(x, np.array([1, 2])) + 3 # y = 1 * x_0 + 2 * x_1 + 3
# print(y)
# [ 6 8 9 11]

reg = LinearRegression().fit(x, y)
# print(reg)
# LinearRegression()

reg.score(x, y)
# print(reg.score(x, y))
# 1.0

# reg.predict(np.array([[3, 5]]))
print(reg.predict(np.array([[1, 2]])))
print(reg.predict(np.array([[3, 5]])))
print(reg.predict(np.array([[1, 1],[1, 2],[3, 5]])))
# >>>1.0
# [8.]
# [16.]
# [ 6. 8. 16.]

 

官方文档:

https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LinearRegression.html#sklearn.linear_model.LinearRegression.predict

sklearn 的 LinearRegression模块

上一篇:小型mvvm实现原理


下一篇:004、数值类型数据及运算