2.1线性回归简介
1.定义:
线性回归(Linear regression)是利用回归方程(函数)对一个或多个自变量(特征值)和因变量
(目标值)之间关系进行建模的一种分析方式。
2.表达方式
h(w) = w1 x1 +w2x2+w3x3 + … +b
3.分类
线性关系
非线性关系·
2.2线性回归api
1.api
sklearn.linear_model.LinearRegression()
属性:
LinearRegression.coef_:回归系数
2.4 线性回归的损失和优化
1.损失
最小二乘法
2.优化
正规方程
梯度下降
3.正规方程
利用矩阵的逆,转置进行求解
只适合样本和特征比较少的情况
4.梯度下降
举例:
山 -- 可微分函数
山底--函数的最小值
剃度概念:
单变量 -- 切线
多变量 --向量
梯度下降法中关注的两个参数
α -- 就是步长
步长太小 --- 下山太慢
补偿太大
容易跳过极小值点
为什么梯度要加负号
梯度方向是上升最快的方向,负号就是下降最快方向
1. 梯度下降法和正规方程对比:
梯度下降 正规方程
需要选择学习率 不需要
需要迭代求解 一次运算得出
特征数量较大可以使用 需要计算方程,时间复杂度高O(n3)
6.选择:
小规模数据:
LinearRegression(不能解决拟合问题)
岭回归
2.5梯度下降法
1.全梯度下降法(FG)
在进行计算时,计算所有的样本的误差平均值,作为目标函数
2.随机梯度下降法(SG)
每次只是只选择一个样本考核
3.小批量梯度下降法(mini-bantch)
选择一部分样本进行考核
4.随机平均梯度下降法(SAG)
会给每一个样本都维持一个平均值,后期计算的时候都参照这个平均值
2.6api
正规方程
sklearn.linear_model.LinearRegression(fit_intercept=True)
梯度下降法
2.7案例
# 1.获取数据
# 2.数据基本处理
# 2.1数据集划分
# 3.特征工程 --标准化
# 4.机器学习(线性回归)
# 5.模型评估
2.8 api介绍
1.梯度下降法
sklearn.linear_model.SGDRegressor(loss="squared_loss", fit_intercept=True, learning_rate ='invscaling', eta0=0.01)
参数:
1.loss --损失 (最小二乘法)
2.learning__rate(学习率)
一般时都是进行动态更新,也可以是一个常数,但不推荐
2.9欠拟合和过拟合
欠拟合
在训练集上表现不好,在测试集表现不好
解决方法:
继续学习
1.添加其他特征
2.添加多想式特征
过拟合
在训练集上表现好,在测试集表现不好
解决方法:
1.重新清洗数据
2.赠大数据的训练量
3.正则化
4.减少特征维度
正则化:
通过限制高次项的系数进行防止过拟合
1.1正则化
理解:直接把高此项前面的系数变为0
Lasso回归
1.2正则化
理解:把高此项前面的系数变为特别小得值
岭回归
2.10正则化线模型
Ridge Regression 岭回归
就是把系数前面添加平方项,然后限制系数值大小,α越小,系数值越大,α大,系数值越小
- Lasso 回归
对系数值进行绝对值处理
由于绝对值在顶点处不可导,所以进行计算的过程产生很多0,最后结果为稀疏矩阵
- Elastic Net 弹性网络
是前两个综合
设置一个r,如果r=0---岭回归,r=1 ---Lasso回归
- Early stopping
2.11线兴回归的改进–岭回归
1.api
sklearn.linear_model.Ridge(alpha=1.0, fit_intercept=True,solver="auto", normalize=False)
具有12正则化的线性回归
alpha ---正则化
- 正则化力度越大,权重系数会越小
- 正则化力度越小,权重系数会越大
normalize
默认封装了,对数据的标准化处理
2.12模型保存加载
1.from sklearn.externals import joblib
保存:joblib.dump(estimator, 'test.pkl')
加载:estimator = joblib.load('test.pkl')
注意:
保存文件是*.pkl
2.加载模型需要变量承接
3.逻辑回归
1.逻辑回归概念
解决的是二分类问题
逻辑回归的输入时线性回归的输出
2.原理
1.输入:
线性回归的输出
2.激活函数
sigmoid函数
把整体值映射到(0,1)
再设置一个阔值,进行分类判断
3.损失
对数似然损失
借助log思想进行完成真实值等于0,等于1两种进行划分
4.优化
提升原本属于1类的概率,降低原本是0类别的概率