1.逻辑回归
1.1 分类问题
首先要明确,逻辑回归解决的是分类问题。比如电子邮件是否为垃圾邮件等都属于分类问题
1.1.1 二元分类
将因变量可能属于的两个类分别称为正类(用1表示)和负类(用0表示),还是使用线性回归去处理该分类问题,得到以下图像:
其中,当,预测;当,预测。对于上述训练集而言,分类的效果很好(前四个点实际为0,后四个点实际为1)。但是如果出现一个TumorSize很大,且实际值为1的样例,线性回归拟合后的直线如下图蓝线所示:
此时如果还是使用0.5作为阈值,原来被预测为的前两个样例因为拟合直线的改变,被预测为,造成很大的偏差。所以将线性回归运用于分类问题有时效果会很差,并且回归问题的分类结果为,但是线性回归通常会。下面要介绍的逻辑回归会使得
1.2 假说表示
为了使,需要使用到新模型:逻辑回归(Logistic Regression,LR)。逻辑回归模型的假设是:,其中表示特征向量,(即Sigmoid函数/逻辑函数,这也就是为什么要成为逻辑回归的原因):
知道了模型的输出范围,如何理解这个模型的输出值呢?对于给定的,的值表示预测为的可能性,采用数学表达式为
1.3 决策边界
当,预测;当,预测。根据上述逻辑函数的图像,将代替,即满足时,预测;时,预测。逻辑回归的这个特性可以帮助找出决策边界
假设有一个多特征模型,如下图所示:
其中,,现求出,则当,即时,模型将预测。于是直线就是模型的决策边界
注意:决策边界是函数的属性,不是数据集的属性,即只要知道的值就可以绘制决策边界,不是必须画出训练集中的样本点才能绘制边界,训练集用于拟合的值
1.4 代价函数
要拟合参数,需要定义一个优化目标,该目标即为代价函数。对于线性回归模型,之前定义的代价函数是所有模型误差的平方和:,如果直接将带入上述式子,得到的代价函数是一个非凸函数,意味着存在许多局部最小值,这会影响梯度下降寻找全局最小值:
于是,重新定义逻辑回归的代价函数:,其中:
所以,和的关系如图所示(横坐标为,纵坐标为):
当但是不为1时,误差随着变大而减小,一旦时,误差变为0
当但是不为0时,误差随着变大而增大,当时,误差为0
1.4.1 简化误差
上面的需要分两种情况进行书写,看起来比较繁琐。由于的值始终,所以可以将两个式子合并为一个:。当时,该式子的后一项乘积变为0;当时,该式子的前一项乘积变为0,这和分开写成两个式子效果是一样的
1.5 梯度下降
简化误差的代价函数为。还是使用梯度下降法,即求得,具体求导过程如下:
可以发现梯度和之前线性回归的一样,不过是将的定义进行了更换
1.6 多分类问题
前面学习了如何使用逻辑回归画一条直线即可完成二元分类,但是如何进行多分类?这里需要运用到一对多的分类思想
假设存在一个训练集,分为了三类,此时需要做的就是将其分为三个二元分类问题:
以其中一个二分类问题为例,将图中的类别1定为正类,类别2和3定为负类(这种分法产生的训练集称为伪训练集),此时得到的模型记为:
以此类推得到一系列模型记为。当需要对一个样本做预测时,需要将所有的模型都运行一次,即最终获得
2.正则化
2.1 过拟合
下面的回归和分类模型中,第一个模型欠拟合(具有高偏差),即没有很好的拟合训练数据;第三个模型过拟合(具有高方差),虽然很好的拟合训练集,但是丢失算法的本质,预测新的数据时可能效果不好(缺少泛化性):
那么如何解决过拟合问题?
- 丢弃一些不能帮助正确预测的特征:
- 手工选择保留哪些特征
- 使用一些模型选择的算法(如PCA等)
- 正则化:保留所有的特征,但是减少参数的大小(确保这些特征对模型预测还是存在一定影响的)
2.2 代价函数
在2.1中第三个模型之所以出现过拟合,就是由于出现了和这样的高次项导致,如果可以让这些高次项的系数接近0,就可以靠近第二个模型的状态。为了减少和的大小,需要借助到代价函数:。为了使代价函数最小,就肯定需要选择较小的和,让其接近于0,相当于给这两个参数加上了惩罚,换言之减少了和对模型的影响程度
假设存在许多特征,我们并不知道需要将哪些特征需要减少影响程度,就对所有特征的参数进行惩罚,只不过通过最小化代价函数来决定对不同特征参数的惩罚力度,所以代价函数修改为,其中为正则化参数
当值过大时,相当于所有参数(除了)都要接近于0,最终模型变为,会导致欠拟合,所以选择一个合适的很重要
2.3 正则化线性回归
在2.2中代价函数发生了改变,在使用梯度下降时计算的梯度也发生了相应的改变,下面公式中由于没有对进行正则化,所以单独列出:
可以观察到,在更新时第二项和原来的梯度更新并没有区别,只不过将第一项中的乘以了一个接近但小于1的值,相当于把每个参数都缩小了一点
除了梯度下降,之前还提到使用正规方程求得模型参数,方法如下图所示:
2.4 正则化逻辑回归
和2.3中线性回归的参数更新公式一样,只不过将的定义进行了修改
3.参考
https://www.bilibili.com/video/BV164411b7dx?p=32-42
http://www.ai-start.com/ml2014/html/week3.html