随机梯度下降L2正则化 python代码
时间: 2023-11-16 19:58:16 浏览: 97
python实现随机梯度下降法
下面是使用随机梯度下降和L2正则化的Python代码实现:
```
import numpy as np
from sklearn.linear_model import SGDRegressor
X = 2*np.random.rand(100,1)
y = 4 + 3*X + np.random.randn(100, 1)
# 使用随机梯度下降的方法,penalty代表使用哪种正则项,alpha代表正则化强度,max_iter代表迭代多少次
sgd_reg = SGDRegressor(penalty='l2', alpha=0.1, max_iter=1000)
sgd_reg.fit(X, y.reshape(-1,))
print(sgd_reg.predict([[1.5]]))
print(sgd_reg.intercept_)
print(sgd_reg.coef_)
```
其中,`penalty='l2'`表示使用L2正则化,`alpha`表示正则化强度,`max_iter`表示迭代次数。`fit`方法用于训练模型,`predict`方法用于预测新的数据。
阅读全文