机器学习逻辑回归LR原理
逻辑回归也叫对率回归,名为回归,实际上是一种分类模型。这种方法有很多有点,例如,它是直接对分类可能性建模,无需事先假设数据分布,这样就避免了假设分布不准确所带来的问题;它不是仅预测出类别,而是可得到近似概率分布,这对许多需要利用概率辅助决策的任务很有用;此外,对率函数是任意阶可导的凸函数,有很好的数学性质,现有的许多数值优化算法都可直接用于求解最优解。
课前准备知识
其针对输入样本集,假设输出结果
的取值范围为
,在线性回归中,
,在此引入Logistic函数,也被称为Sigmoid函数
其图像如下:
在线性回归中,,令
,带入上式,可得到:
(1)
由(1)得到
(2)
将视为样本
作为正例的可能性,1-
是其反例 的可能性,两者的比例
,称为几率,反应
作为正例的相对可能性,对几率取对数得到‘对数几率’
由此可以看出,式(1)实际上是在用线性回归模型的预测结果去逼近真实标记的对数几率。
式(2)重写为
LR原理推导正式开始:
在回归模型中:
其中
目标函数是最大化似然函数,假设样本之间是相互独立的,那么整个样本集生成的概率即为所有样本生成概率的乘积:
(3)
上式称为个观测的似然函数,我们的目标是能够求出使这一似然函数的值的最大参数估计。对上面的结果取对数,可以得到:
最大似然估计就是求使上式取最大值时的,这里可以使用梯度上升法求解,求得的
就是要求的最佳参数。在Andrew Ng的课程中将
取为下式,即:
,
最小值时的
则为要求的最佳参数。通过梯度下降法求最小值。
的初始值可以全部为1.0,更新过程为:
表示等
个属性,共
个,
表示学习率,控制学习速度。
因此,(可以设初始值全部为1)的更新过程为:
(4)
该公式一直被迭代执行,直至达到收敛在每一步迭代中都减小,如果某一步减小的值小于某个阈值,则判定为收敛或某个停止条件(比如迭代次数达到指定值或算法达到某个可以允许的误差范围)
逻辑回归应用
寻找危险因素:寻找某一疾病的危险因素等;
预测:根据模型,预测在不同的自变量情况下,发生某病或某种情况的概率有多大;
判别:实际上跟预测有些类似,也是根据模型,判断某人属于某病或属于某种情况的概率有多大,也就是看一下这个人有多大的可能性是属于某病。
Logistic回归主要在流行病学中应用较多,比较常用的情形是探索某疾病的危险因素,根据危险因素预测某疾病发生的概率,等等。例如,想探讨胃癌发生的危险因素,可以选择两组人群,一组是胃癌组,一组是非胃癌组,两组人群肯定有不同的体征和生活方式等。这里的因变量就是是否胃癌,即“是”或“否”,自变量就可以包括很多了,例如年龄、性别、饮食习惯、幽门螺杆菌感染等。自变量既可以是连续的,也可以是分类的。