Lasso——线性回归
Lasso:
LASSO是由1996年Robert Tibshirani首次提出,全称Least absolute shrinkage and selection operator。该方法是一种压缩估计。它通过构造一个惩罚函数得到一个较为精炼的模型,使得它压缩一些回归系数,即强制系数绝对值之和小于某个固定值;同时设定一些回归系数为零。因此保留了子集收缩的优点,是一种处理具有复共线性数据的有偏估计。
通过sklearn机器学习工具库
代码十分简洁,内有详细步骤和解释。
直接复制,带入数据,进行调用即可出结果,模型参数设置见文末
def Lasso_Regression(X_train, Y_train, X_test, Y_test):"""X_train: 特征训练集Y_train: 标注训练集X_test: 特征测试集Y_test: 标注测试集"""# 01.创建模型from sklearn.linear_model import LassoLasso_model = Lasso(alpha=0)# 02.训练模型Lasso_model = Lasso_model.fit(X_train, Y_train)# 03.模型预测Y_pred = Lasso_model.predict(X_test)# 04.模型评价from sklearn.metrics import mean_squared_errorprint('MSE:', mean_squared_error(Y_test, Y_pred))# 05.输出模型参数print('coef:', Lasso_model.coef_)print('intercept:', Lasso_model.intercept_)return
模型参数:
参数alpha:惩罚项系数,取值范围为:0-1,取0时等同于最小二乘法
这里的模型评价指标选择了:
均方误差MSE
在上面代码中都是针对测试集的效果,也可以对训练集进行预测,然后评价训练集的效果,综合比较,可以看看是否会出现过拟合现象。
输出的模型参数:
· coef_:回归系数
· intercept_:常数项(截距)
……
更多的模型参数,见官网
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
