![144cdcf5de58e5e8441036f48a4fb4aa.png](https://img-blog.csdnimg.cn/img_convert/144cdcf5de58e5e8441036f48a4fb4aa.png)
1.什么是代价函数?
![d9f8cfe4d61d92d4f1947751d4671f2b.png](https://img-blog.csdnimg.cn/img_convert/d9f8cfe4d61d92d4f1947751d4671f2b.png)
![97828cfc61530b0cd00f20aa27dbda8e.png](https://img-blog.csdnimg.cn/img_convert/97828cfc61530b0cd00f20aa27dbda8e.png)
![17370ac3da0f6d250f88d6040e37f038.png](https://img-blog.csdnimg.cn/img_convert/17370ac3da0f6d250f88d6040e37f038.png)
2.逻辑回归的代价函数
获得逻辑回归的数学形式
![5ed38ba78f45531333b8513f98b55652.png](https://img-blog.csdnimg.cn/img_convert/5ed38ba78f45531333b8513f98b55652.png)
接下来就是对模型进行求解。一般的方法都是使用极大似然估计法来求解,即找到一组参数,使得在这组参数下,我们的数据的似然度最大
![bd9ef3e0ced9bdf9da8efe52cb7e21d3.png](https://img-blog.csdnimg.cn/img_convert/bd9ef3e0ced9bdf9da8efe52cb7e21d3.png)
3.函数求解
求解逻辑回归的方法用的比较多的有梯度下降法和牛顿法,优化的主要目标是找到一个方向,参数朝这个方向移动之后使得损失函数的值能够减小。逻辑回归的损失函数是:
![a9e56cd08d5db01c587cf276683ca9b7.png](https://img-blog.csdnimg.cn/img_convert/a9e56cd08d5db01c587cf276683ca9b7.png)
求解的步骤如下:
1- 随机一组参数w,
2- 将w代入到损失函数中,让得到的点沿着负梯度的方向移动
3- 循环以上步骤,直到函数的值最小
更新方法为求导对函数求导:
![e813e904e4585627011e861ff38a973c.png](https://img-blog.csdnimg.cn/img_convert/e813e904e4585627011e861ff38a973c.png)
其中k为迭代次数,每次更新参数后,可以通过比较
![1efedb1d15bf9aee10cb9422a4401f70.png](https://img-blog.csdnimg.cn/img_convert/1efedb1d15bf9aee10cb9422a4401f70.png)
小于阈值或者达到最大迭代次数来停止迭代。
2.牛顿法
牛顿法的思路是在现有的极小点估计值的附近对f(x)做二阶泰勒展开,进而找到极小点的下一个估计值。
![33c9afc82dac532118fe4762bff27eff.png](https://img-blog.csdnimg.cn/img_convert/33c9afc82dac532118fe4762bff27eff.png)
正则化:
正则化是为了解决过拟合现象的出现,一般的形式有L1范式,
![dde17ed5f2a8b401954abebd70806463.png](https://img-blog.csdnimg.cn/img_convert/dde17ed5f2a8b401954abebd70806463.png)
1. L1正则化又称之为LASOO回归,相当于给模型添加了一个先验知识:w服从拉普拉斯分布:
![f3c77b4a73dbd0e97a0f31b3b47e090d.png](https://img-blog.csdnimg.cn/img_convert/f3c77b4a73dbd0e97a0f31b3b47e090d.png)
加入了先验知识,那么似然函数就变成了:
![a6111d8ebf92446463aee02fae2bc2dc.png](https://img-blog.csdnimg.cn/img_convert/a6111d8ebf92446463aee02fae2bc2dc.png)
取log后得到目标函数:
![e77b4c7eec2a00779b733d2882f9e9ee.png](https://img-blog.csdnimg.cn/img_convert/e77b4c7eec2a00779b733d2882f9e9ee.png)
等价于原始损失函数的后面加上了 L1 正则。
2. L2正则化,又称为Ridge回归,它相当于给模型添加一个先验知识:w服从零均值正态分布。
首先正态分布的形式如下:
![cc8e5a2fa6dfabc2251228bfc206073b.png](https://img-blog.csdnimg.cn/img_convert/cc8e5a2fa6dfabc2251228bfc206073b.png)
当引入正态分布后,似然函数可以写为:
![347a7269626305d7cbfc0b7aafeb2bb9.png](https://img-blog.csdnimg.cn/img_convert/347a7269626305d7cbfc0b7aafeb2bb9.png)
取ln后得到目标函数:
![2fc44366f143717b251b319315fba878.png](https://img-blog.csdnimg.cn/img_convert/2fc44366f143717b251b319315fba878.png)
等价于原始的损失函数后面加上了 L2 正则
L1和L2正则的区别:
L1 正则化增加了所有权重 w 参数的绝对值之和逼迫更多w为零,也就是变稀疏.
L2 正则化中增加所有权重 w 参数的平方之和,逼迫所有w尽可能趋向零但不为零.
正则化之所以能够降低过拟合的原因在于,正则化是结构风险最小化的一种策略实现。
简单总结如下:给 loss function 加上正则化项,能使新得到的优化目标函数
![71784f6937e228c2a4f8cfcb93fada35.png](https://img-blog.csdnimg.cn/img_convert/71784f6937e228c2a4f8cfcb93fada35.png)
需要在 f 和 ||w|| 中做一个权衡,如果只优化 f 的情况下,那可能得到一组解比较复杂,使得正则项 ||w|| 比较大,那么 h 就不是最优的。那么就需要通过降低模型复杂度,得到更小的泛化误差,降低过拟合程度。L1 正则化就是在 loss function 后边所加正则项为 L1 范数,加上 L1 范数容易得到稀疏解(0 比较多)。L2 正则化就是 loss function 后边所加正则项为 L2 范数的平方,加上 L2 正则相比于 L1 正则来说,得到的解比较平滑(不是稀疏),但是同样能够保证解中接近于 0(但不是等于 0,所以相对平滑)的维度比较多,降低模型的复杂度。