当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python cuml.Lasso用法及代码示例


用法:

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_iterint

最大迭代次数

tol浮点数(默认 = 1e-3)

优化的容差:如果更新小于 tol,则优化代码检查对偶间隙的最优性并继续直到它小于 tol。

selection{‘cyclic’, ‘random’}(默认='循环')

如果设置为‘random’,则每次迭代都会更新随机系数,而不是默认情况下按顺序循环特征。这(设置为‘random’)通常会导致收敛速度显著加快,尤其是当 tol 高于 1e-4 时。

handlecuml.Handle

指定 cuml.handle 保存用于此模型中计算的内部 CUDA 状态。最重要的是,这指定了将用于模型计算的 CUDA 流,因此用户可以通过在多个流中创建句柄在不同的流中同时运行不同的模型。如果为 None,则创建一个新的。

output_type{‘input’, ‘cudf’, ‘cupy’, ‘numpy’, ‘numba’},默认=无

用于控制估计器的结果和属性的输出类型的变量。如果为 None,它将继承在模块级别设置的输出类型 cuml.global_settings.output_type 。有关详细信息,请参阅输出数据类型配置。

verboseint 或布尔值,默认=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。

相关用法


注:本文由纯净天空筛选整理自rapids.ai大神的英文原创作品 cuml.Lasso。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。