本文简要介绍python语言中 sklearn.linear_model.LassoLarsIC
的用法。
用法:
class sklearn.linear_model.LassoLarsIC(criterion='aic', *, fit_intercept=True, verbose=False, normalize='deprecated', precompute='auto', max_iter=500, eps=2.220446049250313e-16, copy_X=True, positive=False, noise_variance=None)
Lasso 模型使用 BIC 或 AIC 与 Lars 进行模型选择。
Lasso 的优化目标是:
(1 / (2 * n_samples)) * ||y - Xw||^2_2 + alpha * ||w||_1
AIC 是 Akaike 信息准则 [2],BIC 是 Bayes 信息准则 [3]。这些标准对于通过在拟合优度和模型复杂性之间进行权衡来选择正则化参数的值很有用。一个好的模型应该在简单的同时很好地解释数据。
在用户指南中阅读更多信息。
- criterion:{‘aic’, ‘bic’},默认='aic'
要使用的标准类型。
- fit_intercept:布尔,默认=真
是否计算此模型的截距。如果设置为 false,则不会在计算中使用截距(即数据应居中)。
- verbose:bool 或 int,默认 = False
设置详细程度。
- normalize:布尔,默认=真
当
fit_intercept
设置为 False 时忽略此参数。如果为 True,则回归量 X 将在回归前通过减去均值并除以 l2 范数进行归一化。如果您希望标准化,请在使用normalize=False
对估计器调用fit
之前使用StandardScaler
。- precompute:bool,‘auto’ 或类似数组,默认=’auto’
是否使用预先计算的 Gram 矩阵来加速计算。如果设置为
'auto'
,让我们决定。 Gram 矩阵也可以作为参数传递。- max_iter:整数,默认=500
要执行的最大迭代次数。可用于提前停止。
- eps:浮点数,默认=np.finfo(float).eps
machine-precision 正则化计算 Cholesky 对角因子。为非常 ill-conditioned 的系统增加此值。与某些基于迭代优化的算法中的
tol
参数不同,该参数不控制优化的容差。- copy_X:布尔,默认=真
如果为 True,则 X 将被复制;否则,它可能会被覆盖。
- positive:布尔,默认=假
将系数限制为 >= 0。请注意,您可能希望删除默认设置为 True 的 fit_intercept。在正限制下,对于较小的 alpha 值,模型系数不会收敛到 ordinary-least-squares 解。只有通过逐步Lars-Lasso 算法达到的最小 alpha 值(当 fit_path=True 时为
alphas_[alphas_ > 0.].min()
)的系数通常与坐标下降套索估计器的解一致。因此,使用LassoLarsIC 仅对预期和/或达到稀疏解决方案的问题有意义。- noise_variance:浮点数,默认=无
数据的估计噪声方差。如果
None
,则通过 OLS 模型计算无偏估计。但是,只有在n_samples > n_features + fit_intercept
的情况下才有可能。
- coef_:形状类似数组 (n_features,)
参数向量(公式中的w)
- intercept_:浮点数
决策函数中的独立项。
- alpha_:浮点数
信息标准选择的 alpha 参数
- alphas_:形状为 (n_alphas + 1,) 的类似数组或此类数组的列表
每次迭代的最大协方差(绝对值)。
n_alphas
是max_iter
、n_features
或带有alpha >= alpha_min
的路径中的节点数,以较小者为准。如果是列表,则长度为n_targets
。- n_iter_:int
lars_path 运行的迭代次数以找到 alpha 网格。
- criterion_:形状类似数组 (n_alphas,)
所有 alpha 的信息标准 (‘aic’, ‘bic’) 的值。选择具有最小信息标准的 alpha,如 [1] 中指定。
- noise_variance_:浮点数
用于计算标准的数据的估计噪声方差。
- n_features_in_:int
拟合期间看到的特征数。
- feature_names_in_:ndarray 形状(
n_features_in_
,) 拟合期间看到的特征名称。仅当
X
具有全为字符串的函数名称时才定义。
参数:
属性:
注意:
自由度数的计算如[1]中所示。
要了解有关 AIC 和 BIC 标准的数学公式的更多详细信息,请参阅用户指南。
参考:
例子:
>>> from sklearn import linear_model >>> reg = linear_model.LassoLarsIC(criterion='bic', normalize=False) >>> X = [[-2, 2], [-1, 1], [0, 0], [1, 1], [2, 2]] >>> y = [-2.2222, -1.1111, 0, -1.1111, -2.2222] >>> reg.fit(X, y) LassoLarsIC(criterion='bic', normalize=False) >>> print(reg.coef_) [ 0. -1.11...]
相关用法
- Python sklearn LassoLars用法及代码示例
- Python sklearn LassoLarsCV用法及代码示例
- Python sklearn Lasso用法及代码示例
- Python sklearn LassoCV.path用法及代码示例
- Python sklearn LassoCV用法及代码示例
- Python sklearn Lasso.path用法及代码示例
- Python sklearn LarsCV用法及代码示例
- Python sklearn Lars用法及代码示例
- Python sklearn LabelPropagation用法及代码示例
- Python sklearn LabelSpreading用法及代码示例
- Python sklearn LabelEncoder用法及代码示例
- Python sklearn LabelBinarizer用法及代码示例
- Python sklearn LatentDirichletAllocation用法及代码示例
- Python sklearn LocalOutlierFactor.kneighbors_graph用法及代码示例
- Python sklearn LeavePOut用法及代码示例
- Python sklearn LeaveOneOut用法及代码示例
- Python sklearn LogisticRegression用法及代码示例
- Python sklearn LocallyLinearEmbedding用法及代码示例
- Python sklearn LedoitWolf用法及代码示例
- Python sklearn LogisticRegressionCV用法及代码示例
- Python sklearn LinearDiscriminantAnalysis用法及代码示例
- Python sklearn LinearRegression用法及代码示例
- Python sklearn LocalOutlierFactor.kneighbors用法及代码示例
- Python sklearn LinearSVR用法及代码示例
- Python sklearn LinearSVC用法及代码示例
注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.linear_model.LassoLarsIC。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。