用法:
class cuml.Lasso(*, alpha=1.0, fit_intercept=True, normalize=False, max_iter=1000, tol=0.001, selection='cyclic', handle=None, output_type=None, verbose=False)
Lasso 擴展了LinearRegression,在使用 X 中的預測變量線性組合預測響應 y 時,通過對係數提供 L1 正則化。它可以將一些係數歸零以進行特征選擇並改善問題的條件。
CUML的套索可以使用array-like對象,主機為NumPyarrays或設備(作為numba或
__cuda_array_interface__
符合CUDF對象)。它使用坐標下降來擬合線性模型。- alpha:浮點數(默認 = 1.0)
乘以 L1 項的常數。 alpha = 0 相當於普通的最小二乘,由LinearRegression 類解決。出於數字原因,不建議在 Lasso 類中使用 alpha = 0。鑒於此,您應該使用LinearRegression 類。
- fit_intercept:布爾值(默認 = True)
如果為 True,Lasso 會嘗試校正 y 的全局平均值。如果為 False,則模型預計您已將數據居中。
- normalize:布爾值(默認 = False)
如果為 True,X 中的預測變量將通過除以它的 L2 範數來歸一化。如果為 False,則不會進行縮放。
- max_iter:int
最大迭代次數
- tol:浮點數(默認 = 1e-3)
優化的容差:如果更新小於 tol,則優化代碼檢查對偶間隙的最優性並繼續直到它小於 tol。
- selection:{‘cyclic’, ‘random’}(默認='循環')
如果設置為‘random’,則每次迭代都會更新隨機係數,而不是默認情況下按順序循環特征。這(設置為‘random’)通常會導致收斂速度顯著加快,尤其是當 tol 高於 1e-4 時。
- handle:cuml.Handle
指定 cuml.handle 保存用於此模型中計算的內部 CUDA 狀態。最重要的是,這指定了將用於模型計算的 CUDA 流,因此用戶可以通過在多個流中創建句柄在不同的流中同時運行不同的模型。如果為 None,則創建一個新的。
- output_type:{‘input’, ‘cudf’, ‘cupy’, ‘numpy’, ‘numba’},默認=無
用於控製估計器的結果和屬性的輸出類型的變量。如果為 None,它將繼承在模塊級別設置的輸出類型
cuml.global_settings.output_type
。有關詳細信息,請參閱輸出數據類型配置。- verbose:int 或布爾值,默認=False
設置日誌記錄級別。它必須是
cuml.common.logger.level_*
之一。有關詳細信息,請參閱詳細級別。
參數:
注意:
有關其他文檔,請參閱 scikitlearn’s Lasso 。
例子:
import numpy as np import cudf from cuml.linear_model import Lasso ls = Lasso(alpha = 0.1) X = cudf.DataFrame() X['col1'] = np.array([0, 1, 2], dtype = np.float32) X['col2'] = np.array([0, 1, 2], dtype = np.float32) y = cudf.Series( np.array([0.0, 1.0, 2.0], dtype = np.float32) ) result_lasso = ls.fit(X, y) print("Coefficients:") print(result_lasso.coef_) print("intercept:") print(result_lasso.intercept_) X_new = cudf.DataFrame() X_new['col1'] = np.array([3,2], dtype = np.float32) X_new['col2'] = np.array([5,5], dtype = np.float32) preds = result_lasso.predict(X_new) print(preds)
輸出:
Coefficients: 0 0.85 1 0.0 Intercept: 0.149999 Preds: 0 2.7 1 1.85
- coef_:數組,形狀(n_features)
線性回歸模型的估計係數。
- intercept_:數組
獨立術語。如果
fit_intercept
為 False,則為 0。
屬性:
相關用法
- Python cuml.LogisticRegression用法及代碼示例
- Python cuml.LinearRegression用法及代碼示例
- Python cuml.metrics.pairwise_distances.pairwise_distances用法及代碼示例
- Python cuml.neighbors.KNeighborsClassifier用法及代碼示例
- Python cuml.ensemble.RandomForestRegressor用法及代碼示例
- Python cuml.svm.SVC用法及代碼示例
- Python cuml.svm.SVR用法及代碼示例
- Python cuml.tsa.ARIMA.predict用法及代碼示例
- Python cuml.multiclass.OneVsRestClassifier用法及代碼示例
- Python cuml.preprocessing.LabelBinarizer用法及代碼示例
- Python cuml.random_projection.GaussianRandomProjection用法及代碼示例
- Python cuml.MBSGDRegressor用法及代碼示例
- Python cuml.experimental.preprocessing.PolynomialFeatures用法及代碼示例
- Python cuml.PCA用法及代碼示例
- Python cuml.feature_extraction.text.HashingVectorizer用法及代碼示例
- Python cuml.DBSCAN用法及代碼示例
- Python cuml.dask.feature_extraction.text.TfidfTransformer用法及代碼示例
- Python cuml.TruncatedSVD用法及代碼示例
- Python cuml.common.memory_utils.using_output_type用法及代碼示例
- Python cuml.preprocessing.text.stem.PorterStemmer用法及代碼示例
注:本文由純淨天空篩選整理自rapids.ai大神的英文原創作品 cuml.Lasso。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。