本文简要介绍python语言中 sklearn.linear_model.ARDRegression
的用法。
用法:
class sklearn.linear_model.ARDRegression(*, n_iter=300, tol=0.001, alpha_1=1e-06, alpha_2=1e-06, lambda_1=1e-06, lambda_2=1e-06, compute_score=False, threshold_lambda=10000.0, fit_intercept=True, normalize='deprecated', copy_X=True, verbose=False)
贝叶斯 ARD 回归。
使用 ARD 先验拟合回归模型的权重。假设回归模型的权重为高斯分布。还要估计参数 lambda(权重分布的精度)和 alpha(噪声分布的精度)。估计是通过迭代程序完成的(证据最大化)
在用户指南中阅读更多信息。
- n_iter:整数,默认=300
最大迭代次数。
- tol:浮点数,默认=1e-3
如果 w 已经收敛,则停止算法。
- alpha_1:浮点数,默认=1e-6
超参数:先于 alpha 参数的 Gamma 分布的形状参数。
- alpha_2:浮点数,默认=1e-6
超参数:先于 alpha 参数的 Gamma 分布的反比例参数(速率参数)。
- lambda_1:浮点数,默认=1e-6
超参数:先于 lambda 参数的 Gamma 分布的形状参数。
- lambda_2:浮点数,默认=1e-6
超参数:先于 lambda 参数的 Gamma 分布的反比例参数(速率参数)。
- compute_score:布尔,默认=假
如果为真,则在模型的每一步计算目标函数。
- threshold_lambda:浮点数,默认=10 000
从计算中以高精度移除(修剪)权重的阈值。
- fit_intercept:布尔,默认=真
是否计算此模型的截距。如果设置为 false,则不会在计算中使用截距(即数据应居中)。
- normalize:布尔,默认=假
当
fit_intercept
设置为 False 时忽略此参数。如果为 True,则回归量 X 将在回归前通过减去均值并除以 l2 范数进行归一化。如果您希望标准化,请在使用normalize=False
对估计器调用fit
之前使用StandardScaler
。- copy_X:布尔,默认=真
如果为 True,则 X 将被复制;否则,它可能会被覆盖。
- verbose:布尔,默认=假
拟合模型时的详细模式。
- coef_:形状类似数组 (n_features,)
回归模型的系数(分布均值)
- alpha_:浮点数
估计的噪声精度。
- lambda_:形状类似数组 (n_features,)
权重的估计精度。
- sigma_:形状类似数组 (n_features, n_features)
权重的估计方差-协方差矩阵
- scores_:浮点数
如果计算,目标函数的值(要最大化)
- intercept_:浮点数
决策函数中的独立项。如果
fit_intercept = False
则设置为 0.0。- X_offset_:浮点数
如果
normalize=True
,则减去偏移量以使数据居中为零均值。- X_scale_:浮点数
如果
normalize=True
,用于将数据缩放到单位标准偏差的参数。- n_features_in_:int
拟合期间看到的特征数。
- feature_names_in_:ndarray 形状(
n_features_in_
,) 拟合期间看到的特征名称。仅当
X
具有全为字符串的函数名称时才定义。
参数:
属性:
注意:
有关示例,请参见示例/linear_model/plot_ard.py。
参考:
D. J. C. MacKay,预测竞赛的贝叶斯非线性建模,ASHRAE Transactions,1994 年。
R. Salakhutdinov,关于统计机器学习的讲义,http://www.utstat.toronto.edu/~rsalakhu/sta4273/notes/Lecture2.pdf#page=15 他们的 beta 版本是我们的
self.alpha_
他们的 alpha 版本是我们的self.lambda_
ARD 与幻灯片略有不同:仅保留了self.lambda_ < self.threshold_lambda
的维度/特征,而其余的被丢弃。例子:
>>> from sklearn import linear_model >>> clf = linear_model.ARDRegression() >>> clf.fit([[0,0], [1, 1], [2, 2]], [0, 1, 2]) ARDRegression() >>> clf.predict([[1, 1]]) array([1.])
相关用法
- Python sklearn AffinityPropagation用法及代码示例
- Python sklearn AgglomerativeClustering用法及代码示例
- Python sklearn AdditiveChi2Sampler用法及代码示例
- Python sklearn AdaBoostClassifier用法及代码示例
- Python sklearn AdaBoostRegressor用法及代码示例
- Python sklearn jaccard_score用法及代码示例
- Python sklearn WhiteKernel用法及代码示例
- Python sklearn CalibrationDisplay.from_predictions用法及代码示例
- Python sklearn VotingRegressor用法及代码示例
- Python sklearn gen_batches用法及代码示例
- Python sklearn ExpSineSquared用法及代码示例
- Python sklearn MDS用法及代码示例
- Python sklearn adjusted_rand_score用法及代码示例
- Python sklearn MLPClassifier用法及代码示例
- Python sklearn train_test_split用法及代码示例
- Python sklearn RandomTreesEmbedding用法及代码示例
- Python sklearn GradientBoostingRegressor用法及代码示例
- Python sklearn GridSearchCV用法及代码示例
- Python sklearn log_loss用法及代码示例
- Python sklearn r2_score用法及代码示例
- Python sklearn ndcg_score用法及代码示例
- Python sklearn ShrunkCovariance用法及代码示例
- Python sklearn SelfTrainingClassifier用法及代码示例
- Python sklearn load_svmlight_file用法及代码示例
- Python sklearn make_pipeline用法及代码示例
注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.linear_model.ARDRegression。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。