← 返回题库
初级

模拟数据岭回归

未完成
初级参考 完整示例代码供参考,建议自己理解后重新输入
import numpy as np
from sklearn.linear_model import Ridge
from sklearn.preprocessing import StandardScaler
import matplotlib.pyplot as plt
np.random.seed(1)
X = np.random.randn(100, 10)
y = X[:, 0] + 2*X[:, 1] + np.random.randn(100) * 0.5
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
alphas = np.logspace(-2, 4, 50)
coefs = []
for alpha in alphas:
    ridge = Ridge(alpha=alpha)
    ridge.fit(X_scaled, y)
    coefs.append(ridge.coef_)
coefs = np.array(coefs)
plt.figure(figsize=(10, 6))
for i in range(10):
    plt.plot(alphas, coefs[:, i], label=f'X{i+1}')
plt.xscale('log')
plt.xlabel('Alpha')
plt.ylabel('系数值')
plt.title('Ridge回归系数随Alpha变化')
plt.legend()
plt.grid(True)
plt.show()
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码