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


Python sklearn QuantileRegressor用法及代碼示例


本文簡要介紹python語言中 sklearn.linear_model.QuantileRegressor 的用法。

用法:

class sklearn.linear_model.QuantileRegressor(*, quantile=0.5, alpha=1.0, fit_intercept=True, solver='interior-point', solver_options=None)

預測條件分位數的線性回歸模型。

線性 QuantileRegressor 針對所需的 quantile 優化了 pinball 損失,並且對異常值具有魯棒性。

該模型使用像 Lasso 這樣的 L1 正則化。

在用戶指南中閱讀更多信息。

參數

quantile浮點數,默認=0.5

模型嘗試預測的分位數。它必須嚴格介於 0 和 1 之間。如果為 0.5(默認),則模型預測 50% 的分位數,即中位數。

alpha浮點數,默認=1.0

乘以 L1 懲罰項的正則化常數。

fit_intercept布爾,默認=真

是否適合截距。

solver{'highs-ds', 'highs-ipm', ‘highs’, 'interior-point', '修正單純形'}, 默認='interior-point'

scipy.optimize.linprog 用於求解線性規劃公式的方法。請注意,建議將 highs 方法與 scipy>=1.6.0 一起使用,因為它們是最快的方法。

solver_options字典,默認=無

作為選項傳遞給 scipy.optimize.linprog 的附加參數。如果 Nonesolver='interior-point' ,則為了穩定性,將 {"lstsq": True} 傳遞給 scipy.optimize.linprog

屬性

coef_形狀數組(n_features,)

特征的估計係數。

intercept_浮點數

模型的截距,也就是偏置項。

n_features_in_int

擬合期間看到的特征數。

feature_names_in_ndarray 形狀(n_features_in_,)

擬合期間看到的特征名稱。僅當 X 具有全為字符串的函數名稱時才定義。

n_iter_int

求解器執行的實際迭代次數。

例子

>>> from sklearn.linear_model import QuantileRegressor
>>> import numpy as np
>>> n_samples, n_features = 10, 2
>>> rng = np.random.RandomState(0)
>>> y = rng.randn(n_samples)
>>> X = rng.randn(n_samples, n_features)
>>> reg = QuantileRegressor(quantile=0.8).fit(X, y)
>>> np.mean(y <= reg.predict(X))
0.8

相關用法


注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.linear_model.QuantileRegressor。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。