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,而且有可能会得到负值
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

 

posted @ 2021-07-22 20:39  supreme_me  阅读(1289)  评论(0)    收藏  举报