Вот простой ответ sklearn:
import numpy as np
from sklearn.linear_model import Ridge
alphas = np.logspace(-10, 10, 1000)
solution_norm = []
residual_norm = []
for alpha in alphas:
lm = Ridge(alpha=alpha)
lm.fit(X, y)
solution_norm += [(lm.coef_**2).sum()]
residual_norm += [((lm.predict(X) - y)**2).sum()]
plt.loglog(residual_norm, solution_norm, 'k-')
plt.show()
, где X
и y
- ваши предикторы и цели, соответственно.