600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 逻辑回归与线性回归

逻辑回归与线性回归

时间:2021-04-17 02:35:54

相关推荐

逻辑回归与线性回归

1. 线性回归

1.1概念

对于一组特征,使用线性方程来进行拟合,对结果进行预测,公式如下:

hθ(X)=θTX=θ0X0+θ1X1+⋅⋅⋅+θnXnθ=(θ0,θ1,θ2,...,θn)X=(X0,X1,X2,...,Xn)其中X1=1h_\theta (X)= \theta^TX = \theta_0X_0+\theta_1X_1+···+\theta_nX_n \\ \theta=(\theta_0,\theta_1,\theta_2,...,\theta_n) \\ X=(X_0,X_1,X_2,...,X_n) \\ 其中X_1=1 hθ​(X)=θTX=θ0​X0​+θ1​X1​+⋅⋅⋅+θn​Xn​θ=(θ0​,θ1​,θ2​,...,θn​)X=(X0​,X1​,X2​,...,Xn​)其中X1​=1

1.2代价函数

线性回归选取的损失函数是均方误差,均方误差表示所有样本到该预测函数的欧式距离最小,代价函数如下:

J(θ)=12m∑i=1m(hθ(X)−yi)2J(\theta)=\frac{1}{2m}\sum_{i=1}^m(h_\theta(X)-y_i)^2 J(θ)=2m1​i=1∑m​(hθ​(X)−yi​)2

对每一个θ\thetaθ进行求导,便可以得到θ\thetaθ的值:

∂J∂θi=1m∑i=1m(hθ(Xi)−yi)Xi\frac{\partial J}{\partial \theta_i}=\frac{1}{m}\sum_{i=1}^{m}(h_\theta(X_i)-y_i)X_i ∂θi​∂J​=m1​i=1∑m​(hθ​(Xi​)−yi​)Xi​

更新参数:

θ:=θ−α∂J∂θi\theta:=\theta-\alpha\frac{\partial J}{\partial \theta_i} θ:=θ−α∂θi​∂J​

其中α\alphaα表示学习率

1.3如何选取α,如何停止更新权值

通常α\alphaα取0.001,根据实验结果依次增加三倍,比较实验结果。0.001,0.003,0.01,0.03,0.1

θ\thetaθ更新到什么时候停止?

每次更新后,带入θ\thetaθ值可以求得J(θ)J(\theta)J(θ)的值,比较当前的J(θ)J(\theta)J(θ)与上一次的值,如果变化很小,则可认为达到收敛;或者不断增加迭代次数,可视化观察J(θ)J(\theta)J(θ)的曲线图。

1.4 正则化

使用L1范数(权值为非0的权值和)称为Lasso回归,使用L2范数(权值平方和)称为岭回归。正则化项称为惩罚函数,目的解决过拟合问题,代价函数变为:

J(θ)=12m∑i=1m(hθ(Xi)−yi)2+λ∑j=1nθj2J(\theta) =\frac{1}{2m}\sum_{i=1}^{m}(h_\theta(X_i)-y_i)^2 + \lambda\sum_{j=1}^n\theta_j^2 J(θ)=2m1​i=1∑m​(hθ​(Xi​)−yi​)2+λj=1∑n​θj2​

这里使用的时L2范数J(θ)J(\theta)J(θ)称为岭回归

2 逻辑回归

2.1 概念

逻辑回归由线性回归转变而来,线性回归用来预测具体的值,如果遇到分类问题如何解决呢?这里还是使用线性回归来拟合数据,然后再对其预测值进行0 1 映射(使用sigmod函数),因此得到的逻辑回归模型为:

hθ(X)=11+e−zz=θTXh_\theta(X) = \frac{1}{1+e^{-z}} \\ z=\theta^TX hθ​(X)=1+e−z1​z=θTX

sigmod函数就是形式S形状的函数,存在上限、下限。

2.2代价函数

这里可以均方误差作为代价函数,但是图像非凸函数,使用梯度下降很难求得其收敛值,因此这里借助于极大似然估计的概念来设计逻辑回归的代价函数:对于二分类:

似然函数:

L(x)=px∗(1−p)1−xx=0,1L(x)=p^x*(1-p)^1-x \\ x=0,1 L(x)=px∗(1−p)1−xx=0,1

对数形式:

log⁡L(x)=xlog⁡p+(1−x)log⁡(1−p)\log L(x)=x\log p+(1-x)\log(1-p) logL(x)=xlogp+(1−x)log(1−p)

对于逻辑回归本身求得就是偏向某类的概率hθ(x)h_\theta(x)hθ​(x):逻辑回归似然函数:

L(x)=∏i=1mh(xi)yi∗(1−hθ(xi)1−y)L(x)=\prod_{i=1}^m h(x_i)^{y_i}*(1-h_\theta(x_i)^{1-y}) L(x)=i=1∏m​h(xi​)yi​∗(1−hθ​(xi​)1−y)

对数形式:这里求得极大似然估计,前面取符号,即可求得满足代价函数的最小值,于是得到逻辑回归的代价函数如下:

log⁡L(x)=∑i=1myilog⁡(hθ(xi))+(1−yi)log⁡(1−hθ(xi))\log L(x) = \sum_{i=1}^m y_i \log (h_\theta(x_i)) + (1-y_i) \log(1-h_\theta(x_i)) logL(x)=i=1∑m​yi​log(hθ​(xi​))+(1−yi​)log(1−hθ​(xi​))

1m\frac{1}{m}m1​不影响函数的功能。故求得对θ\thetaθ的偏导为:

∂J∂θi=1m∑i=1mxi∗(hθxi−yi)\frac{\partial J}{\partial \theta_i}=\frac{1}{m} \sum_{i=1}^m x_i * (h_\theta x_i - y_i) ∂θi​∂J​=m1​i=1∑m​xi​∗(hθ​xi​−yi​)

更新梯度:

θ:=θ−α∂J∂θi\theta:=\theta-\alpha\frac{\partial J}{\partial \theta_i} θ:=θ−α∂θi​∂J​

2.3 正则化

与线性回归相似,正则化可以使用L1范数、L2范数,这里使用L2范数得到的代价函数为:

J(θ)=−1m∑i=1m[yilog⁡(hθ(xi))+(1−yi)log⁡(1−hθ(xi))+λ∑j=1nθj2]J(\theta) = - \frac{1}{m} \sum_{i=1}^m\left[ y_i\log (h_\theta(x_i)) + (1-y_i)\log (1-h_\theta(x_i)) + \lambda\sum_{j=1}^n\theta_j^2\right] J(θ)=−m1​i=1∑m​[yi​log(hθ​(xi​))+(1−yi​)log(1−hθ​(xi​))+λj=1∑n​θj2​]

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。