『sklearn学习』贝叶斯岭回归

本文介绍了贝叶斯岭回归的概念,并通过Python的sklearn库展示了如何拟合高斯权重模拟数据。对比了BayesianRidge和LinearRegression在估计权重上的差异,并通过图表展示了权重的分布和模型得分随迭代的变化。
摘要由CSDN通过智能技术生成
# 贝叶斯岭回归(Bayesian Ridge Regression)
import numpy as np
import matplotlib.pyplot as plt
from scipy import stats

from sklearn.linear_model import BayesianRidge, LinearRegression

# 生成具有高斯权重模拟数据
np.random.seed(0)    # 设置 random 函数的随机种子
n_samples, n_features = 100, 100
X = np.random.randn(n_samples, n_features)    # 创建高斯数据集
lambda_ = 4.
w = np.zeros(n_features)
relevant_features = np.random.randint(0, n_features, 10)
print relevant_features
for i in relevant_features:
    w[i] = stats.norm.rvs(loc=0, scale=1. / np.sqrt(lambda_))
print "w: ", w
alpha_ = 50
noise = stats.norm.rvs(loc=0, scale=1. / np.sqrt(lambda_), size=n_samples)
y = np.dot(X, w) + noise
print "X: ", X
print "y: ", y

# 拟合和比较 BayesianRidge 与 LinearRegression 方法
clf = BayesianRidge(compute_score=True)
clf.fit(X, y)
ols = LinearRegression()
ols.fit(X, y)

lw = 2
plt.figure(figsi
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值