當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。