精华内容
下载资源
问答
  • 多项logistic回归模型
    万次阅读
    2021-01-14 21:56:05

    深入解读Logistic回归结果(一):回归系数,OR

    关键词:Logistic回归分析、lasso回归系数解读、回归系数解读

    Logistic回归虽然名字叫”回归” ,但却是一种分类学习方法。使用场景大概有两个:第一用来预测,第二寻找因变量的影响因素。

    一 从线性回归到Logistic回归

    线性回归和Logistic回归都是广义线性模型的特例。

    假设有一个因变量y和一组自变量x1, x2, x3, … , xn,其中y为连续变量,我们可以拟合一个线性方程:

    y =β0+β1*x1+β2*x2+β3*x3+…+βn*xn

    并通过最小二乘法估计各个β系数的值。

    如果y为二分类变量,只能取值0或1,那么线性回归方程就会遇到困难: 方程右侧是一个连续的值,取值为负无穷到正无穷,而左侧只能取值[0,1],无法对应。为了继续使用线性回归的思想,统计学家想到了一个变换方法,就是将方程右边的取值变换为[0,1]。最后选中了Logistic函数:

    y = 1 / (1+e-x)

    这是一个S型函数,值域为(0,1),能将任何数值映射到(0,1),且具有无限阶可导等优良数学性质。

    我们将线性回归方程改写为:

    y = 1 / (1+e-z),

    其中,z =β0+β1*x1+β2*x2+β3*x3+…+βn*xn

    此时方程两边的取值都在0和1之间。

    进一步数学变换,可以写为:

    Ln(y/(1-y)) =β0+β1*x1+β2*x2+β3*x3+…+βn*xn

    Ln(y/(1-y))称为Logit变换。我们再将y视为y取值为1的概率p(y=1),因此,1-y就是y取值为0的概率p(y=0),所以上式改写为:

    p(y=1) = ez/(1+ez),

    p(y=0) = 1/(1+ez),

    其中,z =β0+β1*x1+β2*x2+β3*x3+…+βn*xn.

    接下来就可以使用”最大似然法”估计出各个系数β。

    二 odds与OR复习

    odds: 称为几率、比值、比数,是指某事件发生的可能性(概率)与不发生的可能性(概率)之比。用p表示事件发生的概率,则:odds = p/(1-p)。

    OR:比值比,为实验组的事件发生几率(odds1)/对照组的事件发生几率(odds2)。

    三 Logistic回归结果的解读

    我们用一个例子来说明,这个例子中包含200名学生数据,包括1个自变量和4个自变量:

    因变量:  hon,表示学生是否在荣誉班(honors class),1表示是,0表示否;

    自变量:

    female :性别,分类变量,1=女,0=男

    read: 阅读成绩,为连续变量

    write: 写作成绩,为连续变量

    math:数学成绩,为连续变量

    1、不包含任何变量的Logistic回归

    首先拟合一个不包含任何变量的Logistic回归,

    模型为 ln(p/(1-p) =β0

    回归结果如下(结果经过编辑):

    hon

    系数β

    标准误

    P

    截距

    -1.12546

    0.164

    0.000

    这里的系数β就是模型中的β0= -1.12546,

    我们用p表示学生在荣誉班的概率,所以有ln(p/(1-p) =β0= -1.12546,

    解方程得:p = 0.245。

    odds = p/1-p = 0.3245

    这里的p是什么意思呢?p就是所有数据中hon=1的概率。

    我们来统计一下整个hon的数据:

    hon

    例数

    百分比

    0

    151

    75.5%

    1

    49

    24.5%

    hon取值为1的概率p为49/(151+49) = 24.5% = 0.245,我们可以手动计算出ln(p/(1-p) = -1.12546,等于系数β0。可以得出关系:

    β0=ln(odds)。

    2、包含一个二分类因变量的模型

    拟合一个包含二分类因变量female的Logistic回归,

    模型为 ln(p/(1-p)  =β0+β1*female.

    回归结果如下(结果经过编辑):

    hon

    系数β

    标准误

    P

    female

    0.593

    .3414294

    0.083

    截距

    -1.47

    .2689555

    0.000

    在解读这个结果之前,先看一下hon和female的交叉表:

    hon

    female

    Total

    Male

    Female

    0

    74

    77

    151

    1

    17

    32

    49

    Total

    91

    109

    根据这个交叉表,对于男性(Male),其处在荣誉班级的概率为17/91,处在非荣誉班级的概率为74/91,所以其处在荣誉班级的几率odds1=(17/91)/(74/91) = 17/74 = 0.23;相应的,女性处于荣誉班级的几率odds2 = (32/109)/(77/109)=32/77 = 0.42。女性对男性的几率之比OR = odds2/odds1 = 0.42/0.23 = 1.809。我们可以说,女性比男性在荣誉班的几率高80.9%。

    回到Logistic回归结果。截距的系数-1.47是男性odds的对数(因为男性用female=0表示,是对照组),ln(0.23) = -1.47。变量female的系数为0.593,是女性对男性的OR值的对数,ln(1.809) = 0.593。所以我们可以得出关系: OR = exp(β),或者β= ln(OR)(exp(x)函数为指数函数,代表e的x次方)。

    3、包含一个连续变量的模型

    拟合一个包含连续变量math的Logistic回归,

    模型为 ln(p/(1-p)  =β0+β1*math.

    回归结果如下(结果经过编辑):

    hon

    系数β

    标准误

    P

    math

    .1563404

    .0256095

    0.000

    截距

    -9.793942

    1.481745

    0.000

    这里截距系数的含义是在荣誉班中math成绩为0的odds的对数。我们计算出odds = exp(-9.793942) = .00005579,是非常小的。因为在我们的数据中,没有math成绩为0的学生,所以这是一个外推出来的假想值。

    怎么解释math的系数呢?根据拟合的模型,有:

    ln(p/(1-p)) =  – 9.793942  + .1563404*math

    我们先假设math=54,有:

    ln(p/(1-p))(math=54) = – 9.793942 + .1563404 *54

    然后我们把math提高提高一个单位,令math=55,有:

    ln(p/(1-p))(math=55) = – 9.793942 + .1563404 *55

    两者之差:

    ln(p/(1-p))(math=55) – ln(p/1-p))(math = 54) = 0.1563404.

    正好是变量math的系数。

    由此我们可以说,math每提高1个单位,odds(即p/(1-p),也即处于荣誉班的几率)的对数增加0.1563404。

    那么odds增加多少呢?根据对数公式:

    ln(p/(1-p))(math=55) – ln(p/1-p))(math = 54) = ln((p/(1-p)(math=55)/ (p/(1-p)(math=54))) = ln(odds(math=55)/ odds(math=54)) = 0.1563404.

    所以:

    odds(math=55)/ odds(math=54)  =  exp(0.1563404) = 1.169.

    因此我们可以说,math每升高一个单位,odds增加16.9%。且与math的所处的绝对值无关。

    聪明的读者肯定发现,odds(math=55)/ odds(math=54)不就是OR嘛!

    4、包含多个变量的模型(无交互效应)

    拟合一个包含female、math、read的Logistic回归,

    模型为 ln(p/(1-p) = β0+β1*math+β2*female+β3*read.

    回归结果如下(结果经过编辑):

    hon

    系数β

    标准误

    P

    math

    .1229589

    0.000

    female

    0.979948

    0.020

    read

    .0590632

    0.026

    截距

    -11.77025

    0.000

    该结果说明:

    (1) 性别:在math和read成绩都相同的条件下,女性(female=1)进入荣誉班的几率(odds)是男性(female=0)的exp(0.979948) = 2.66倍,或者说,女性的几率比男性高166%。

    (2) math成绩:在female和read都相同的条件下,math成绩每提高1,进入荣誉班的几率提高13%(因为exp(0.1229589) = 1.13)。

    (3)read的解读类似math。

    5、包含交互相应的模型

    拟合一个包含female、math和两者交互相应的Logistic回归,

    模型为 ln(p/(1-p)  =β0+β1*female+β2*math+β3*female *math.

    所谓交互效应,是指一个变量对结果的影响因另一个变量取值的不同而不同。

    回归结果如下(结果经过编辑):

    hon

    系数β

    标准误

    P

    female

    -2.899863

    0.349

    math

    .1293781

    0.000

    female*math

    .0669951

    0.210

    截距

    -8.745841

    0.000

    注意:female*math项的P为0.21,可以认为没有交互相应。但这里我们为了讲解交互效应,暂时忽略P值,姑且认为他们是存在交互效应的。

    由于交互效应的存在,我们就不能说在保持math和female*math不变的情况下,female的影响如何如何,因为math和female*math是不可能保持不变的!

    对于这种简单的情况,我们可以分别拟合两个方程,

    对于男性(female=0):

    log(p/(1-p))= β0 + β2*math.

    对于女性(female=1):

    log(p/(1-p))= (β0 + β1) + (β2 + β3 )*math.

    然后分别解释。

    注:本文大量参考这篇文章:http://www.ats.ucla.edu/stat/mult_pkg/faq/general/odds_ratio.htm

    喜欢 (11)or分享 (0)

    更多相关内容
  • 多项logistic回归分析

    2011-03-31 14:16:19
    多项logistic回归在医学统计中广泛应用,但对于大多数医学生来说是一难点,分享我找到的相关资料
  • 本文脉络:logistic回归模型的含义logistic模型的决策边界函数分析logistic模型的参数最优化logistic回归模型与感知机模型的比较总结logistic回归模型的含义我们把分类模型分成两个阶段,推断阶段和决策...

    37d470dacc9b1c4161dad4418a117780.png

    logistic回归模型是一种线性生成模型。本文将介绍logistic回归模型相关的知识,为了更好地理解模型的决策边界函数,本文同时分析了多元变量的协方差对概率分布的影响。

    本文脉络:

    1. logistic回归模型的含义
    2. logistic模型的决策边界函数分析
    3. logistic模型的参数最优化
    4. logistic回归模型与感知机模型的比较
    5. 总结

    logistic回归模型的含义

    我们把分类模型分成两个阶段,推断阶段和决策阶段,推断阶段对联合概率分布建模,然后归一化,得到后验概率。决策阶段确定每个新输入x的类别。

    我们用推断阶段的方法来推导logistic回归模型,首先对类条件概率密度

    和类先验概率分布
    建模,然后通过贝叶斯定理计算后验概率密度。

    考虑二分类的情形,类别C1的后验概率密度;


    则:

    式中的

    就是logistic函数

    因此,logistic回归的值等于输入变量为x的条件下类别为C1的概率

    (1) 当

    分类结果为C1

    (2) 当
    分类结果为C2

    结论:logistic回归值表示所属类的后验概率,无论是二分类还是多分类,分类结果都是后验概率最大所对应的类。

    logistic的决策边界函数分析

    决策边界函数,简而言之,就是函数的两侧是不同的分类结果。

    可定性的分析协方差的三种情况与分布图的关系。

    (a) 图表示正常的协方差矩阵的高斯分布图。
    (b) 图表示协方差矩阵是对角矩阵的高斯分布图。
    (c) 图表示协方差矩阵是对角矩阵且对角元素都相等的高斯分布图。

    ed6eafab10f80176f8821fb8076e367c.png

    ab1d58cb1ff3744093ba4de9798d0cb6.png

    dd7c9ae7fadefc9958a8a7068a70aac3.png

    logistic的决策边界函数分析

    logistic曲线如下图,红色直线(a=0)表示决策边界函数:

    3c229a4600adc57ce68e388acec8d2e0.png

    假设类条件概率密度是高斯分布,即P(x|Ck),然后求解后验概率的表达式,即P(Ck|x)。我们知道,logistic回归值就是所求的后验概率。

    假设类条件概率密度的协方差相同,类条件概率密度为:

    由上面的推导公式得后验概率为:

    其中:

    由后验概率

    的表达式可知,当类条件的协方差矩阵相等时,决策边界函数是随x线性变化的直线。

    结论:如下图,若两类的条件概率密度的协方差相同时(如C1和C2的协方差相同),则决策边界函数是直线;若两类的条件概率密度的协方差不相同时(如C1和C3,C2和C3),则决策边界函数是曲线。判断协方差矩阵是否相同可以根据分布图形形状是否相同来判断,如C1和C2的协方差相同,C3和C1、C2的协方差不相同。

    963e5ca4fc546a105f3bd43d36796309.png

    假设类条件概率密度符合高斯分布且具有相同的协方差矩阵,则决策边界函数是一条直线;若类条件概率密度符合更一般的指数分布且缩放参数s相同,决策边界函数仍然是一条直线。

    logistic模型的参数最优化

    logistic模型损失函数

    logistic回归模型的含义是后验概率分布,因此可以从概率的角度去设计损失函数。

    考虑两分类情况,假设有N个训练样本,logistic模型是

    表示后验概率y=1的概率,则
    表示y=0的概率,变量
    取值1或0,且分别代表模型

    因此,似然函数

    损失函数

    logistic模型的参数最优化

    损失函数最小化等价于模型参数的最优化,如下图:

    利用梯度下降法求最优解,学习速率

    :

    具体求法本文不介绍,只给出算法的思想。
    为了避免过拟合问题,则在原来的损失函数增加正则项,然后利用梯度下降法求最优解,这里也不展开。

    logistic模型与感知机模型的比较

    logistic模型与感知机模型的相同点

    由上面的分析可知,假设类条件概率分布的协方差相同,则logistic模型的决策边界函数是随x线性变化的直线,因此,感知机模型与logistic模型的分类策略一样,即决策边界函数是一样的。如下图:

    d5bb1a5241499612c354f3d7371a1c6e.png

    感知机模型:当点落在直线上方,y>0,则分类结果为C1;反之为C2。
    logistic模型:当点落在上方,y>0,则后验概率P(C1|X)>0.5,分类结果为C1;反之为C2。

    考虑到对输入变量x进行非线性变换

    ,感知机和logistic模型的分类策略仍一样,决策边界函数相同,如下图:

    dba974f00771b1e18ae4ed733eed75aa.png

    感知机模型:当点落在圆外,y>0,则分类结果为C1;反之为C2。
    logistic模型:当点落在圆外,y>0,则后验概率P(C1|X)>0.5,分类结果为C1;反之为C2。

    logistic模型与感知机模型的异同点

    (1) logistic回归模型限制值的范围在0~1,感知机模型对值范围没有限制,因此logistic模型相比感知机模型,对异常点有更强的鲁棒性。如下图,当有异常数据时,logistic模型要好于感知机模型。

    b4fa6f11b6965ac6a678625e5dc4a05d.png

    (2) 感知机模型用误分类点到超平面的距离衡量损失函数,而logistic模型则从概率角度去衡量损失函数。

    总结

    logistic回归的含义是后验概率分布,用概率的角度去设计似然函数,logistic模型相比于感知机模型对异常数据具有更好的鲁棒性。

    展开全文
  • 原标题:SPSS实例教程:有序分类Logistic回归1、问题与数据在某胃癌筛查项目中,研究者想了解首诊胃癌分期(Stage)与患者的经济水平的关系,以确定胃癌筛查的重点人群。为了避免性别因素对结论的混杂影响,研究者将...

    原标题:SPSS实例教程:有序多分类Logistic回归

    1、问题与数据

    在某胃癌筛查项目中,研究者想了解首诊胃癌分期(Stage)与患者的经济水平的关系,以确定胃癌筛查的重点人群。为了避免性别因素对结论的混杂影响,研究者将性别(Sex)也纳入分析(本例仅为举例说明如何进行软件操作,实际研究中需控制的混杂因素可以更多)。研究者将所有筛查人群的结果如表1,变量赋值如表2。

    表1. 原始数据

    表2. 变量赋值情况

    2、对数据结构的分析

    该设计中,因变量为四分类,且分类间有次序关系,针对因变量为分类型数据的情况应该选用Logistic回归,故应采用有序多分类的Logistic回归分析模型进行分析。

    有序多分类的Logistic回归原理是将因变量的多个分类依次分割为多个二元的Logistic回归,例如本例中因变量首诊胃癌分期有1-4期,分析时拆分为三个二元Logistic回归,分别为(1 vs 2+3+4) 、(1+2 vs 3+4)、(1+2+3 vs 4),均是较低级与较高级对比。需注意的是,有序多分类Logistic回归的假设是,拆分后的几个二元Logistic回归的自变量系数相等,仅常数项不等。其结果也只输出一组自变量的系数。

    因此,有序多分类的Logistic回归模型中,必须对自变量系数相等的假设进行检验(又称平行线检验)。如果不满足平行线假设,则考虑使用无序多分类Logistic回归或其他统计方法。

    3、SPSS分析方法

    (1)数据录入SPSS

    首先在SPSS变量视图(Variable View)中新建四个变量:ID代表患者编号,Sex代表性别,Income代表收入水平,Stage代表首诊胃癌分期。赋值参考表1。然后在数据视图(Data View)中录入数据。

    (2)选择Analyze → Regression → Ordinal Logistic

    (3)选项设置

    将因变量Stage放入因变量(Dependent)位置,自变量性别(Sex)、收入水平(Income)为分类变量,故放入因子(Factors)位置。若研究中还有连续型变量需要调整,则放入协变量(Covariate)位置。

    点击输出(Output)选项,勾选平行线检验(Test of parallel lines)。其余选项维持默认。点击确定(OK)。

    4、结果解读

    (1)Case Processing Summary

    给出的是数据的一般情况,这里不进行介绍。

    (2)模型拟合优度检验

    有两个,一个是似然比检验结果(Model Fitting Information).该检验的原假设是所有纳入自变量的系数为0,P(Sig.)<0.001,说明至少一个变量系数不为0,且具有统计学显著性。也就是模型整体有意义。

    另一个结果是拟合优度检验(Goodness-of-Fit)结果,提供了Pearson卡方和偏差(Deviance)卡方两个检验结果。但是,这两个检验结果不如上图的似然比检验结果稳健,尤其是纳入的自变量存在连续型变量时,因此推荐以似然比检验结果为准。

    (3)伪决定系数(Pseudo R-Square)

    对于分类数据的统计分析,一般情况下伪决定系数都不会很高,对此不必在意。

    (4)参数估计(Parameter Estimates)

    阈值(Threshold)对应的Stage=1,2,3三个估计值(Estimate)分别是本次分析中拆分的三个二元Logistic回归的常数项。位置(Location)中Sex和Income变量对应的参数估计值为自变量的估计值。其中Income为多分类,在分析中被拆分成了三个哑变量(即Income 取值1、2、3),分别与Income=4的组进行对比。且有序多分类Logistic回归假定拆分的多个二元回归中自变量系数均相等,因此结果只给出了一组自变量系数。

    Income=1系数估计值(Estimate)为-1.617意味着,在调整性别变量的情况下,Income=1(即收入水平最低)的组,相比于Income=4(收入水平最高)的组,初诊胃癌分期至少低一个等级的可能性是exp(-1.617)=0.198倍。其他系数解释相同。这说明,收入水平低的人群,其初诊胃癌时病情更严重。

    Sex变量系数无统计学意义(P=0.428),如果没有其他证据证明不同性别的初诊胃癌分期有区别,那么从模型精简的角度考虑,应当将Sex变量从模型中去掉再次进行回归,得到收入水平的参数估计值。如果研究者比较肯定不同性别初诊胃癌分期会产生区别,那么即使在本研究中其系数无统计学意义也应保留在模型中(因为无统计学意义有可能是因为样本量小造成的,并不能说明该变量不产生影响)。本研究中予以保留。

    (5)平行线假设检验(Test of Parallel Lines)

    该检验的原假设是三个二元Logistic回归自变量系数相等,检验P(Sig.)值为0.052,不拒绝原假设,可以认为假设成立,可以使用多重有序Logistic回归。如果将参数无统计学意义的Sex变量去掉,会发现平行线假定检验P值会增大(P=0.175)(是否去掉Sex变量重回归,取决于是否有充足研究证据证明Sex是一个混杂变量,如果是,Sex变量应保留在模型中)。

    5、结果汇总

    胃癌患者的初诊分期与患者的收入水平有关。低等收入、中等收入与中高等收入人群与高等收入人群相比,初诊胃癌分期低至少一个等级的可能性分别为0.198(P<0.001)、0.310(P<0.001)、0.640(P=0.071)倍。

    (更多内容可关注“医咖会”微信公众号:传播医学知识和研究进展,探讨临床研究方法学。)返回搜狐,查看更多

    责任编辑:

    展开全文
  • logistic回归模型

    万次阅读 多人点赞 2020-04-13 17:44:45
    logistic回归模型 从这一期开始,我们准备介绍一系列机器学习算法模型,主要包括logistic回归,决策树,随机森林,关联规则,朴素贝叶斯,支持向量机模型,隐式马尔可夫模型,因子分析,主成分分析,聚类,多元线性...

    前言

    从这一期开始,我们准备介绍一系列机器学习算法模型,主要包括logistic回归,决策树,随机森林,关联规则,朴素贝叶斯,支持向量机,隐式马尔可夫,因子分析,主成分分析,聚类,多元线性回归,时间序列,协同过滤,XGBoost,LightGBM,神经网络等,一般会涵盖模型的引入背景,背后数学原理,模型的应用范围,模型优缺点及改进建议,具体工程实践。既适合刚入门机器学习的新手,也适合有一定基础的读者想要进一步掌握模型的核心要义,其中不免会涵盖许多数学符号和公式以及推导过程,如果你觉得晦涩难懂,可以来微信公众号“三行科创”交流群和大家一起讨论。

    logistic回归模型

    逻辑回归(Logistic Regression)是机器学习中最常见的一种用于二分类的算法模型,由于其数学原理简单易懂,作用高效,其实际应用非常广泛。虽然带回归二字,实则是分类模型,下面从logit变换开始。

    logit变换

    我们在研究某一结果 y y y与一系列因素 ( x 1 , x 2 , ⋯   , x n ) (x_1,x_2,\cdots,x_n) (x1,x2,,xn)之间的关系的时候,最直白的想法是建立因变量和自变量的多元线性关系

    y = θ 0 + θ 1 x 1 + θ 2 x 2 + ⋯ + θ n x n y=\theta_0+\theta_1x_1+\theta_2x_2+\cdots +\theta_nx_n y=θ0+θ1x1+θ2x2++θnxn

    其中 ( θ 0 , θ 1 , θ 2 , ⋯   , θ n ) (\theta_0,\theta_1,\theta_2,\cdots,\theta_n) (θ0,θ1,θ2,,θn) 为模型的参数,如果因变量是数值型的话,可以解释成某某因素 x i x_i xi变化了多少导致结果 y y y 发生了多少变化,如果因变量 y y y 是用来刻画结果是否(0-1)发生?或者更一般的来刻画某特定结果发生的概率(0~1)呢?这时候因素 x i x_i xi 变化导致结果 y y y 的变化恐怕微乎其微,有时候甚至忽略不计。然而实际生活中,我们知道某些关键因素会直接导致某一结果的发生,如亚马逊雨林一只蝴蝶偶尔振动翅膀,就会引起两周后美国德克萨斯州的一场龙卷风。于是,我们需要让不显著的线性关系变得显著,使得模型能够很好解释随因素的变化,结果也会发生较显著的变化,这时候,人们想到了logit变换,下图是对数函数图像
    log(x)
    从对数函数的图像来看,其在 ( 0 , 1 ) (0,1) (0,1)之间的因变量的变化是很迅速的,也就是说自变量的微小变化会导致因变量的巨大变化,这就符合了之前想要的效果。于是,对因变量进行对数变换,右边依然保持线性关系,有下面式子

    l o g ( y ) = θ 0 + θ 1 x 1 + θ 2 x 2 + ⋯ + θ n x n log(y)=\theta_0+\theta_1x_1+\theta_2x_2+\cdots +\theta_nx_n log(y)=θ0+θ1x1+θ2x2++θnxn

    虽然上式解决了因变量随自变量变化的敏感性问题,同时也约束了 y y y的取值范围为 ( 0 , + ∞ ) (0,+\infty) (0,+)。我们知道概率是用来描述某件事发生的可能性,一件事情发生与否,更应该是调和对称的,也就是说该事件发生与不发生有对立性,结果可以走向必然发生(概率为1),也可以走向必然不发生(概率为0),概率的取值范围为 ( 0 , 1 ) (0,1) (0,1),而等式左边 y y y 的取值范围是 ( 0 , + ∞ ) (0,+\infty) (0,+),所以需要进一步压缩,又引进了几率。

    几率

    几率(odd)是指事件发生的概率与不发生的概率之比,假设事件 A 发生的概率为 p p p,不发生的概率为 1 − p 1-p 1p,那么事件 A 的几率为

    o d d ( A ) = p 1 − p odd(A)=\frac{p}{1-p} odd(A=1pp

    几率恰好反应了某一事件两个对立面,具有很好的对称性,下面我们再来看一下概率和几率的关系
    概率vs几率

    首先,我们看到概率从0.01不断增大到 0.99,几率也从0.01随之不断变大到99,两者具有很好的正相关系,我们再对 p p p 向两端取极限有

    lim ⁡ p → 0 + ( p 1 − p ) = 0 \lim\limits _ {p \to 0^+}(\frac{p}{1-p})=0 p0+lim(1pp)=0

    lim ⁡ p → 1 − ( p 1 − p ) = + ∞ \lim\limits _ {p \to 1^-}(\frac{p}{1-p})=+\infty p1lim(1pp)=+

    于是,几率的取值范围就在 ( 0 , + ∞ ) (0,+\infty) (0+),这符合我们之前的因变量取值范围的假设。

    logistic模型

    正因为概率和几率有如此密切对等关系,于是想能不能用几率来代替概率刻画结果发生的可能性大小,这样既能满足结果对特定因素的敏感性,又能满足对称性 ,便有了下面式子

    l o g ( p 1 − p ) = θ 0 + θ 1 x 1 + θ 2 x 2 + ⋯ + θ n x n log(\frac{p}{1-p}) =\theta_0+ \theta_1x_1+\theta_2x_2+\cdots +\theta_nx_n log(1pp)=θ0+θ1x1+θ2x2++θnxn

    现在,我们稍微改一改,让等式左边对数变成自然对数 l n = l o g e ln=log_e ln=loge,等式右边改成向量乘积形式,便有

    l n ( p 1 − p ) = θ X ln(\frac{p}{1-p})=\theta X ln(1pp)=θX

    其中 θ = ( θ 0 , θ 1 , θ 2 , ⋯   , θ n ) \theta=(\theta_0,\theta_1,\theta_2,\cdots,\theta_n) θ=(θ0,θ1,θ2,,θn) X = ( 1 , x 1 , x 2 , ⋯   , x n ) T X=(1,x_1,x_2,\cdots,x_n)^T X=(1,x1,x2,,xn)T,我们解得

    p = e θ X 1 + e θ X p=\frac{e^{\theta X}} {1+ e^{\theta X}} p=1+eθXeθX

    其中 e e e 是自然常数,保留5位小数是2.71828。这就是我们常见的logistic模型表达式,作出其函数图像如下
    logistic
    我们看到logistic函数图像是一条S型曲线,又名sigmoid曲线,以 ( 0 , 0.5 ) (0,0.5) (0,0.5) 为对称中心,随着自变量 x x x 不断增大,其函数值不断增大接近1,随自变量 x x x 不断减小,其函数值不断降低接近0,函数的取值范围在 ( 0 , 1 ) (0,1) (0,1) 之间,且函数曲线在中心位置变化速度最快,在两端的变化速率较慢。

    从上面的操作,我们可以看到逻辑回归模型从最初的线性回归模型基础上对因变量进行 logit 变换,使得因变量对自变量显著,同时约束因变量取值范围为0到正无穷大,然后用概率表示几率,最后求出概率关于自变量的表达式,把线性回归的结果压缩在 ( 0 , 1 ) (0,1) (0,1) 范围内,这样最后计算出的结果是一个0到1之间的概率值,表示某事件发生的可能性大小,可以做概率建模,这也是为什么逻辑回归叫逻辑回归,而不叫逻辑分类了。

    二项逻辑回归模型

    既然logistic回归把结果压缩到连续的区间 ( 0 , 1 ) (0,1) (0,1),而不是离散的 0 或者1,然后我们可以取定一个阈值,通常以0.5为阈值,通过对比概率值与阈值的大小关系而定,如果计算出来的概率大于0.5,则将结果归为一类 (1),如果计算出来的概率小于0.5,则将结果归为另一类 (0),用分段函数写出来便是

    y = { 1 p > 0.5 0 p < 0.5 y= \begin{cases} 1&\text{p > 0.5} \\ 0 & \text{p < 0.5} \end{cases} y={10p > 0.5p < 0.5

    这样逻辑回归就可以用来进行2分类了,在本文中,不特别指出,均指二项逻辑回归,假设数据结构如下

    样本 x 1 x_1 x1 x 2 x_2 x2 x n x_n xn y y y
    1 x 11 x_{11} x11 x 12 x_{12} x12 x 1 n x_{1n} x1n y 1 y_1 y1
    2 x 21 x_{21} x21 x 22 x_{22} x22 x 2 n x_{2n} x2n y 2 y_2 y2
    ⋮ \vdots ⋮ \vdots ⋮ \vdots ⋮ \vdots ⋮ \vdots
    m x m 1 x_{m1} xm1 x m 2 x_{m2} xm2 x m n x_{mn} xmn y m y_m ym

    其中 m m m表示样本个数, n n n表示影响因数的个数, y i ( i = 0 , 1 , ⋯   , m ) y_i(i=0,1,\cdots,m) yi(i=0,1,,m) 取 0 或者 1。现在我们结合数据,利用条件概率分布模型给出基于概率的二项logistic模型如下

    p ( y = 1 ∣ X ; θ ) = e θ X 1 + e θ X p(y=1|X;\theta)=\frac{e^{\theta X}}{1+e^{\theta X}} p(y=1X;θ)=1+eθXeθX

    p ( y = 0 ∣ X ; θ ) = 1 1 + e θ X p(y=0|X;\theta)=\frac{1}{1+e^{\theta X}} p(y=0X;θ)=1+eθX1

    其中, X X X 表示自变量, y y y 表示因变量所属的类别, θ \theta θ 为模型待求的参数,模型解释为在特定的因素下,模型结果取1的概率和取0的概率。模型建好了,接下来就需要进行机器训练,而怎么来给训练一种恰当反馈呢?答案是损失函数,通过损失函数来评估模型学习的好坏和改进机制。

    损失函数

    由前面阈值的取定原则,我们知道相当于我们用一个类别值代替概率值,而类别值是sigmoid 函数的两个最值,概率不可能时时刻刻都取到最值,这势必会造成误差,我们把这种误差称为损失,为了给出损失函数表达式,我们假设模型第 i i i 个样本所求的概率值为 p i p_i pi,而真实类别值可能是 0 或者 1。

    当类别真实值是 1 的情况下,所求的概率值 p i p_i pi 越小,越接近0,被划为类别 0 的可能性越大,被划为类别 1 的可能性越小,导致的损失越大。反之,所求的概率值 p i p_i pi 越大,越接近1,被划为类别 1 的可能性越大,被划为类别 0 的可能性越小,导致的损失越小。我们用下面的函数来描述这种变化关系
    − l o g p i -log p_i logpi
    其中 p i ∈ ( 0 , 1 ) p_i\in(0,1) pi(0,1) ,其图像大致如下
    cost1
    当类别真实值是0的情况下,所求的概率值 p i p_i pi 越大,越接近1,其结果的类别判定更偏向于1,导致的损失越大。反之,所求的概率值 p i p_i pi 越小,越接近0,其结果的类别判断更偏向于 0,导致的损失越小。我们用下面的函数来描述这种变化关系

    − l o g ( 1 − p i ) -log(1-p_i) log(1pi)

    cost2
    现在就要把两种情况结合起来,就不需要分真实值是 1 还是 0 两种情况讨论,求出其期望值,做成一个交叉熵(cross entropy)的整体损失函数如下

    c o s t i = − y i l o g ( p i ) − ( 1 − y i ) l o g ( 1 − p i ) cost_i = -y_ilog(p_i)-(1-y_i)log(1-p_i) costi=yilog(pi)(1yi)log(1pi)

    其中 y i y_i yi 表示第 i i i 个样本的真实值, p i p_i pi 是根据模型计算出来的概率值,当 y i = 1 y_i=1 yi=1 时, c o s t i = − l o g ( p i ) cost_i= -log(p_i) costi=log(pi),当 y i = 0 y_i=0 yi=0时, c o s t i = − l o g ( 1 − p i ) cost_i = -log(1-p_i) costi=log(1pi),这符合前面两种情况。

    假设现在有 m m m 个样本,总体的损失函数为

    C o s t = ∑ i = 1 m c o s t i = ∑ i = 1 m [ − y i l o g ( p i ) − ( 1 − y i ) l o g ( 1 − p i ) ] \begin{aligned} Cost &= \sum\limits_{i=1}^m cost_i \\ &=\sum\limits_{i=1}^m[-y_ilog(p_i)-(1-y_i)log(1-p_i)]\\ \end{aligned} Cost=i=1mcosti=i=1m[yilog(pi)(1yi)log(1pi)]

    代入 p i = e θ X 1 + e θ X p_i=\frac{e^{\theta X}}{1+e^{\theta X}} pi=1+eθXeθX

    C o s t = ∑ i = 1 m [ − y i l o g ( e θ X 1 + e θ X ) − ( 1 − y i ) l o g ( 1 − e θ X 1 + e θ X ) ] \begin{aligned} Cost &=\sum\limits_{i=1}^m[-y_ilog(\frac{e^{\theta X}}{1+e^{\theta X}})-(1-y_i)log(1-\frac{e^{\theta X}}{1+e^{\theta X}})] \end{aligned} Cost=i=1m[yilog(1+eθXeθX)(1yi)log(11+eθXeθX)]
    上式就是二项逻辑回归的损失函数,是一个关于参数 θ \theta θ X X X的二元函数,也叫对数似然函数,现在问题转化为以对数似然函数为目标函数的最优化问题,其中 θ \theta θ 为模型待求的参数,为了求参数 θ \theta θ ,可以对目标函数求偏导数,记

    L ( X ∣ θ ) = ∑ i = 1 m [ − y l o g ( e θ X 1 + e θ X ) − ( 1 − y ) l o g ( 1 − e θ X 1 + e θ X ) ] \mathcal{L}(X|\theta)=\sum\limits_{i=1}^m[-ylog(\frac{e^{\theta X}}{1+e^{\theta X}})-(1-y)log(1-\frac{e^{\theta X}}{1+e^{\theta X}})] L(Xθ)=i=1m[ylog(1+eθXeθX)(1y)log(11+eθXeθX)]

    L ( X ∣ θ ) \mathcal{L} (X|\theta) L(Xθ) 求关于 θ \theta θ 的偏导,主要是里面对数函数关于 θ \theta θ 的偏导数求解
    ∂ L ( X ∣ θ ) ∂ θ = ∂ { ∑ i = 1 m [ − y i l o g ( e θ X 1 + e θ X ) − ( 1 − y i ) l o g ( 1 − e θ X 1 + e θ X ) ] } ∂ θ = ∑ i = 1 m [ ( − y i ) ∂ l o g ( e θ X 1 + e θ X ) ∂ θ − ( 1 − y i ) ∂ l o g ( 1 − e θ X 1 + e θ X ) ∂ θ ] = ∑ i = 1 m [ ( − y i ) c X 1 + e θ X − ( 1 − y i ) ( − c X e θ X 1 + e θ X ) ] \begin{aligned} &\frac{\partial \mathcal{L}(X|\theta)}{ \partial \theta} \\&=\frac{ \partial \{\sum\limits_{i=1}^m[-y_ilog(\frac{e^{\theta X}}{1+e^{\theta X}})-(1-y_i)log(1-\frac{e^{\theta X}}{1+e^{\theta X}})]\}}{\partial \theta}\\ &= \sum\limits_{i=1}^m[(-y_i)\frac{\partial log(\frac{e^{\theta X}}{1+e^{\theta X}})}{\partial \theta}-(1-y_i)\frac{\partial log(1-\frac{e^{\theta X}}{1+e^{\theta X}})}{\partial \theta}]\\ &= \sum\limits_{i=1}^m [ (-y_i)\frac{cX}{1+e^{\theta X}}-(1-y_i)(-\frac{cXe^{\theta X}}{1+e^{\theta X}})] \end{aligned} θL(Xθ)=θ{i=1m[yilog(1+eθXeθX)(1yi)log(11+eθXeθX)]}=i=1m[(yi)θlog(1+eθXeθX)(1yi)θlog(11+eθXeθX)]=i=1m[(yi)1+eθXcX(1yi)(1+eθXcXeθX)]
    其中 c = l n a c=ln a c=lna a a a 为对数底数,令 ∂ L ( ( X ∣ θ ) ∂ θ = 0 \frac{\partial \mathcal{L}((X|\theta)}{ \partial \theta}=0 θL((Xθ)=0,求出 θ \theta θ 值,然后带入模型便是学到的logistic模型,假设 θ ^ \hat{\theta} θ^ 是上式子所求的值,那么原二项logistic模型方程为

    p ( y = 1 ∣ X , θ ^ ) = e θ ^ X 1 + e θ ^ X p(y=1|X,\hat{\theta})=\frac{e^{\hat{\theta} X}}{1+e^{\hat{\theta} X}} p(y=1X,θ^)=1+eθ^Xeθ^X

    p ( y = 0 ∣ X , θ ^ ) = 1 1 + e θ ^ X p(y=0|X,\hat{\theta})=\frac{1}{1+e^{\hat{\theta} X}} p(y=0X,θ^)=1+eθ^X1

    logistic回归模型的应用

    既然logistic回归主要用来二分类,那么凡是涉及到二分类的场景都有logistic回归的用武之地,同时,我们还可以用logistic回归模型预测某件事情的发生概率,我们常见的logistic回归模型的应用场景有
    (1) 在P2P,汽车金融等领域,根据申请人的提供的资料,预测其违约的可能性大小,进而决定是否给其贷款。
    (2) 电商平台根据用于购买记录预测用户下一次是否会购买某件商品。
    (3) 天涯,bbs,微博,豆瓣短评等舆论平台做情感分类器。如根据某网友对某些特定主题的历史评论数据,预测其下次对某类型的主题是否会给出正面的评论。
    (4) 在医疗领域,根据病人症状,预测其肿瘤是良性的还是恶性的。
    (5) 根据CT,流行病学,旅行史,检测试剂结果等特点预测某位疑似病人是否真感染新型冠状病毒。
    (6) 在精准营销领域,预测某个产品的收益。

    logistic回归模型的评价

    从logistic回归的数学原理,在阈值取定的时候一刀切的做法上面,我们能够根据logistic回归的这些特点给出模型优缺点评价

    优点:

    • 原理简单,模型清晰,操作高效,背后的概率的推导过程经得住推敲,在研究中,通常以 Logistic 回归模型作为基准,再尝试使用更复杂的算法,可以在大数据场景中使用。
    • 使用online learning的方式更新轻松更新参数,不需要重新训练整个模型
    • 基于概率建模,输出值落在0到1之间,并且有概率意义
    • 求出来的参数 θ i \theta_i θi 代表每个特征对输出的影响,可解释性强
    • 解决过拟合的方法很多,如L1、L2正则化,L2正则化就可以解决多重共线性问题

    缺点:

    • 对数据依赖性强,很多时候需要做特征工程,且主要用来解决线性可分问题
    • 因为它本质上是一个线性的分类器,所以处理不好特征之间相关的情况,对模型中自变量多重共线性较为敏感,例如两个高度相关自变量同时放入模型,可能导致较弱的一个自变量回归符号不符合预期,符号被扭转,正好变负号。
    • logit变换过程是非线性的,在两端随着变化率微乎其微,而中间的变化很大,很敏感。 导致很多区间的变量变化对目标概率的影响没有区分度,很难确定阀值。
    • 当特征空间很大时,性能不好
    • 容易欠拟合,精度不高

    下一期,我们将用一个实例来一睹logistic魅力。

    参考文献

    1,对数函数
    2,python绘制对数函数
    3,如何理解logistic函数
    4,logit究竟是个啥?
    5,逻辑回归
    6,从原理到代码,轻松深入逻辑回归
    7,https://www.zybuluo.com/frank-shaw/note/143260

    在这里插入图片描述

    展开全文
  • 在SPSS软件的二项Logistic回归模型中,将分类变量选入categorical,软件会自动设置一系列的哑变量。由于验证假设3(自变量之间无多重共线性)需要通过线性回归实现,而在线性回归中,就需要手动设置哑变量。因此,...
  • 结合实际情况,可以将Logistic回归分析分为3类,分别是二元Logistic回归分析、多元有序Logistic回归分析和多元无序Logistic回归分析,如下图。Logistic回归分析用于研究X对Y的影响,并且对X的数据类型没有要求,X...
  • 数据回归-胃癌术后并发症的因素Logistic回归分析及风险模型建立一单中心队列研究.pdf
  • logistic回归模型分析

    千次阅读 2021-01-27 06:46:59
    本文脉络:logistic回归模型的含义logistic模型的决策边界函数分析logistic模型的参数最优化logistic回归模型与感知机模型的比较总结logistic回归模型的含义我们把分类模型分成两个阶段,推断阶段和决策...
  • Logistic回归模型是一种非常常见的统计回归模型,在处理大量数据,揭示各自变量对因变量之间的关系时有着十分重要的作用。笔者在写Logit回归模型前参加了一次市场调研比赛,在这次比赛中学到了很东西,同时发现,...
  • R实现分类logistic回归

    千次阅读 2021-01-14 02:10:11
    分类logistic回归在临床研究中,接触最多的是二分类数据,如淋巴癌...譬如临床疗效分为好,中,差,三类,或者根据指标进行分类,分为高,中,低三类,我用1、2、3代表作为因变量,进行logistic回归分析。ima...
  • Logistic回归是一种统计方法,它可根据输入字段的值对记录进行分类。这种技术与线性回归类似,但用分类目标字段代替了数值字段。 实验目的:例如,假设某个电信提供商根据服务使用情况模式对其客户群进行了细分,将...
  • 1.掌握Logistic回归分析的基本步骤、原理、软件实现、结果分析; 2.理解多重共线性的概念、原理及岭轨迹的软件实现; 3.了解高维数据分析的应用领域及分析方法。 二、实验仪器设备 电脑、SPSS、Clementine 三、...
  • 一般来说,两组或多组样本在比较检验时如果多项指标有显著差异,我们下一步通常会探讨引起组别产生质的差别的影响因素,即自变量对因变量的影响是否具有统计学意义。今天我们就来梳理一下SPSS作logistic回归分析。在...
  • 一 从线性回归到Logistic回归线性回归和Logistic回归都是广义线性模型的特例。假设有一个因变量y和一组自变量x1, x2, x3, ... , xn,其中y为连续变量,我们可以拟合一个线性方程:y =β0+β1*x...
  • 第13章Stata Logistic回归分析

    万次阅读 2021-07-17 10:16:13
    根据因变量得离散特征:常用得Logistic回归分析方法有3终,包括二元Logistic回归分析、多元Logistic回归分析以及有序Logistic回归分析等。 13.1二元Logistic回归分析 我们经常会遇到因变量只有两种取值的情况,...
  • 乳腺癌细胞数据分析&Logistic回归模型 :“关爱女性,呵护生命”
  • 一、实验目的及要求 高校扩招以来,大学生就业问题就一直是全社会关注的焦点。而对大学生来说,就业密切联系着的就是专业的选择。...线性回归模型是一种流行的定量分析因变量与自变量之间相关关系的统计分析方法。
  • spss logistic回归分析结果如何分析

    万次阅读 2020-12-24 13:09:17
    如何用spss17.0进行二元和多元logistic回归分析一、二元logistic回归分析二元logistic回归分析的前提为因变量是可以转化为0、1的二分变量,如:死亡或者生存,男性或者女性,有或无,Yes或No,是或否的情况。...
  • Logistic回归与建模

    千次阅读 2021-12-24 14:41:19
    文章目录1 Logistic回归模型1.1 模型的概念1.2 模型的建立1.3 参数的估计1.4 模型的求解1.5 模型的预测1.6 拟合优度检验1.7 计算预测正确率 1 Logistic回归模型 1.1 模型的概念 在很问题上,被解释的变量只有两个...
  • logistic回归模型中提出和讨论了许多评估拟合优度的方法,但是,拟合优度统计量的渐近分布研究较少,需要进行更的研究。 这工作将专注于评估拟合优度检验的渐近分布行为,还将进行全局拟合优度检验之间的比较...
  • SPSS二项logistic回归分析案例实践,做个预测模型自己动手实践是学习统计软件工具的捷径之一。收集到某公司各个商户id,以及他们的注册时长、营业收入、成本数据,以及合作续约的情况,现在我们想尝试基于这样的数据...
  • 利用SPSS进行Logistic回归分析

    千次阅读 2020-12-28 23:22:06
    第8章 利用SPSS进行Logistic回归分析现实中的很现象可以划分为两种可能,或者归结为两种状态,这两种状态分别用0和1表示。如果我们采用个因素对0-1表示的某种现象进行因果关系解释,就可能应用到logistic回归。...
  • R语言单因素/因素 Logistic回归

    千次阅读 2021-08-28 16:03:39
    变量因子的转换->单因素logistic回归->因素logistic回归 https://mp.weixin.qq.com/s/NowePGv6DF9_dF4blSyzVQ
  • 在一临床研究中,想要筛选变量进行建模,查阅了相似的文献,文献作者思路是这样的:先使用Lasso回归对全数据集筛选自变量,再分训练集和测试集,用Logistic回归、随机森林、神经网络对筛选后的自变量进行建模和...
  • 一文让你搞懂Logistic回归模型

    千次阅读 2020-12-30 22:58:27
    现希望构建一个模型用于描述和的关系,并对进行预测。线性模型可以吗?我们首先想到的是构建线性模型。形式如下:对于线性模型,可采用最小二乘进行估计。 但这样的模型和估计方法是否合理呢?采用线性模型对离散...
  • 利用SPSS进行logistic回归分析(二元、多项).doc
  • 如果研究X对于Y的影响,Y为定量数据则可以使用线性回归分析。如果Y是定类数据,此时则需要使用Logit(logistic)回归分析。Logit回归共分为三种,分别是二元Logit(Logistic)...如下表:Logistic回归分类哑变量问题有序...
  • 广义线性模型是线性模型的扩展,它通过连接函数建立响应变量的数学期望值与线性组合的预测变量之间的关系。 广义线性模型拟合的形式为: 其中g(μY)是条件均值的函数(称为连接函数)。另外,你可放松Y为正态...
  • 现收集到银行贷款客户的个人、负债信息,以及曾经是否有过还贷违约的记录,试分析是否违约的相关因素,并构建模型用于贷款违约风险预测。(数据来源:SPSS自带案例数据集)数据上传SPSSAU后,在 “我的数据”中查看...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 20,296
精华内容 8,118
关键字:

多项logistic回归模型