+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2020-03(77)

2020-04(56)

2020-05(27)

2020-06(36)

2020-07(19)

机器学习 jupyter Python sklearn里面的lasso回归

发布于2020-05-17 18:54     阅读(643)     评论(0)     点赞(10)     收藏(4)


一、Lasso回归背景

LASSO是由1996年Robert Tibshirani首次提出,全称Least absolute shrinkage and selection operator。
通过构造一个一阶惩罚函数获得一个精炼的模型;通过最终确定一些指标(变量)的系数为零,解释力很强。(相比较于岭回归。岭回归估计系数等于0的机会微乎其微,造成筛选变量困难)
擅长处理具有多重共线性的数据,与岭回归一样是有偏估计。
二、Lasso回归代价函数
在这里插入图片描述

三、具体案列

题目:作业:数据集abalone.txt,记录了鲍鱼(一种介壳类水生动物)的年龄,鲍鱼年龄可以从鲍鱼壳的层数推算得到。前8列是样本点的特征数据,最后一列是鲍鱼的年龄。请使用lasso回归回归对模型训练。
abalone.txt
在这里插入图片描述
(1)读取abalone.txt文件

#岭回归
import matplotlib.pyplot as plt
import numpy as np
from sklearn import linear_model
np.set_printoptions(suppress=True)#显示的数字不是以科学记数法显示
np.set_printoptions(threshold=np.inf)  #显示全部行列的内容
#读入数据
data=np.genfromtxt('abalone.txt')
#print(data)
x_data=data[:,:-1]
y_data=data[:,-1]
#print(x_data)
#print(y_data)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200516102716812.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ1MDU5NDU3,size_16,color_FFFFFF,t_70#pic_center)
(2)建立并训练模型

```python
#创建模型
lasso=linear_model.LassoCV(cv=3)
lasso.fit(x_data,y_data)
print('lasso系数',lasso.alpha_)
print(lasso.coef_)
print(lasso.intercept_)
#预测第三个样本点
lasso.predict(x_data[2,np.newaxis])
XData=x_data[:,1,np.newaxis]#加入新的维度

在这里插入图片描述
注:想了解岭回归可以点击这里



所属网站分类: 技术文章 > 博客

作者:小鬼乖乖

链接: https://www.pythonheidong.com/blog/article/377287/

来源: python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

10 0
收藏该文
已收藏

评论内容:(最多支持255个字符)