Logistic回归的梯度上升法
2018-04-05 13:47
639 查看
一、问题引入
对于目标值是连续变量的问题来说,使用线性回归可能会解决得很好,即使问题不能用线性模型描述时,也可以使用局部加权线性回归解决。但现实生活中有一种问题,输出值只有两种情况:yes or no.这类问题常见有:电子邮箱中的垃圾邮件分类(spam or not spam),肿瘤为良性或者恶性等。在这些问题中,我们想预测的变量y,可以统一认为它只能取两个值0或1,这种问题叫分类(classification)问题,但只是最简单的二元分类问题,多类的问题待以后学习中讨论。如果我们尝试用线性回归来解决此类问题,碰巧的话,有时可能会解决得好,如图中粉红色线
但是如果出现了一个很远的样本点,训练出来的模型可能就变成蓝色线的样子。此时很明显分类的效果就很差。因此,应用线性回归来解决分类问题并不是一个好的想法。此时,我们便需要一种新的模型——logistic回归来解决分类问题。二、问题分析
对于输出值y∈{0, 1}的两类分类问题,我们作出一个假设:
函数g被称为logistic函数或sigmoid函数,至于为什么选择会选择这个函数,以后会涉及这个问题,暂时不深究。这个函数的图像是:
看起来有点像单位阶跃函数。根据这个函数,大于0.5的数据被划入1类,小于0.5的数据被归为0类。
有了这个函数,对于一个样本,我们可以得到它的概率分布:
综合起来就是:
此公式便为伯努利分布,这里的y∈{0, 1}.
现在我们就可以把问题转化为求logistic回归的最佳回归系数。由于logistic回归可以被看作是一种概率模型,且输出y发生的概率与回归参数θ有关,因此我们可以对θ进行最大似然估计(Maximum Likelihood Estimate),使得y发生的概率最大,此时的θ便是最优的回归系数。对整个数据集求似然函数得:
为了计算方便,取似然函数的对数函数:
对上式运用梯度上升法,得到θ的迭代式:
求导过程不在此赘述,计算结果为:
此式便是本算法的核心公式!其中α为梯度上升步长,与梯度下降一样,决定了函数上升的快慢。
对于目标值是连续变量的问题来说,使用线性回归可能会解决得很好,即使问题不能用线性模型描述时,也可以使用局部加权线性回归解决。但现实生活中有一种问题,输出值只有两种情况:yes or no.这类问题常见有:电子邮箱中的垃圾邮件分类(spam or not spam),肿瘤为良性或者恶性等。在这些问题中,我们想预测的变量y,可以统一认为它只能取两个值0或1,这种问题叫分类(classification)问题,但只是最简单的二元分类问题,多类的问题待以后学习中讨论。如果我们尝试用线性回归来解决此类问题,碰巧的话,有时可能会解决得好,如图中粉红色线
但是如果出现了一个很远的样本点,训练出来的模型可能就变成蓝色线的样子。此时很明显分类的效果就很差。因此,应用线性回归来解决分类问题并不是一个好的想法。此时,我们便需要一种新的模型——logistic回归来解决分类问题。二、问题分析
对于输出值y∈{0, 1}的两类分类问题,我们作出一个假设:
函数g被称为logistic函数或sigmoid函数,至于为什么选择会选择这个函数,以后会涉及这个问题,暂时不深究。这个函数的图像是:
看起来有点像单位阶跃函数。根据这个函数,大于0.5的数据被划入1类,小于0.5的数据被归为0类。
有了这个函数,对于一个样本,我们可以得到它的概率分布:
综合起来就是:
此公式便为伯努利分布,这里的y∈{0, 1}.
现在我们就可以把问题转化为求logistic回归的最佳回归系数。由于logistic回归可以被看作是一种概率模型,且输出y发生的概率与回归参数θ有关,因此我们可以对θ进行最大似然估计(Maximum Likelihood Estimate),使得y发生的概率最大,此时的θ便是最优的回归系数。对整个数据集求似然函数得:
为了计算方便,取似然函数的对数函数:
对上式运用梯度上升法,得到θ的迭代式:
求导过程不在此赘述,计算结果为:
此式便是本算法的核心公式!其中α为梯度上升步长,与梯度下降一样,决定了函数上升的快慢。
相关文章推荐
- logistic回归梯度上升优化算法
- Logistic 回归梯度上升优化函数
- 机器学习之logistic回归的梯度上升算法
- [置顶] Python3《机器学习实战》学习笔记(六):Logistic回归基础篇之梯度上升算法
- Logistic回归分类----梯度上升法
- Logistic回归,梯度上升算法理论详解和实现
- Logistic回归基础篇之梯度上升算法
- 机器学习-Logistic回归之梯度上升法
- 机器学习之logistic回归的梯度上升算法
- 机器学习——分类算法4:Logistic回归 梯度上升 思想 和 代码解释
- Logistic 回归(sigmoid函数,手机的评价,梯度上升,批处理梯度,随机梯度,从疝气病症预测病马的死亡率
- Logistic 回归与梯度上升算法
- 数据挖掘笔记-分类-回归算法-梯度上升
- Coursera | Andrew Ng (01-week-2-2.14)—向量化 logistic 回归的梯度输出
- 机器学习-Logistic回归之使用随机梯度上升算法预测病马死亡率
- Logistic回归与梯度下降法
- logistics回归--梯度上升算法以及改进--用于二分类
- Coursera | Andrew Ng (01-week-2-2.9)—Logistic 回归中的梯度下降法
- Logistic回归分类----随机梯度上升法
- logistic回归的梯度计算