1.1逻辑回归模型
考虑具有p个独立变量的向量,设条件概率为根据观测量相对于某事件发生的概率。逻辑回归模型可表示为
(1.1)
上式右侧形式的函数称为称为逻辑函数。下图给出其函数图象形式。
其中。如果含有名义变量,则将其变为dummy变量。一个具有k个取值的名义变量,将变为k-1个dummy变量。这样,有
(1.2)
定义不发生事件的条件概率为
(1.3)
那么,事件发生与事件不发生的概率之比为
(1.4)
这个比值称为事件的发生比(the odds of experiencing an event),简称为odds。因为0<p<1,故odds>0。对odds取对数,即得到线性函数,
(1.5),
1.2极大似然函数
假设有n个观测样本,观测值分别为设为给定条件下得到yi=1(原文)的概率。在同样条件下得到yi=0()的条件概率为。于是,得到一个观测值的概率为
(1.6) -----此公式实际上是综合前两个等式得出,并无特别之处
因为各项观测独立,所以它们的联合分布可以表示为各边际分布的乘积。
上式称为n个观测的似然函数。我们的目标是能够求出使这一似然函数的值最大的参数估计。于是,最大似然估计的关键就是求出参数,使上式取得最大值。
对上述函数求对数
(1.8)
上式称为对数似然函数。为了估计能使取得最大的参数的值。
对此函数求导,得到p+1个似然方程。
(1.9)
,j=1,2,..,p.-----p为独立向量个数
上式称为似然方程。为了解上述非线性方程,应用牛顿-拉斐森(Newton-Raphson)方法进行迭代求解。
1.3 牛顿-拉斐森迭代法
对求二阶偏导数,即Hessian矩阵为
(1.10)
如果写成矩阵形式,以H表示Hessian矩阵,X表示
(1.11)
令
(1.12)
则。再令(注:前一个矩阵需转置),即似然方程的矩阵形式。
得牛顿迭代法的形式为
(1.13)
注意到上式中矩阵H为对称正定的,求解即为求解线性方程HX=U中的矩阵X。对H进行cholesky分解。
最大似然估计的渐近方差(asymptotic variance)和协方差(covariance)可以由信息矩阵(information matrix)的逆矩阵估计出来。而信息矩阵实际上是二阶导数的负值,表示为。估计值的方差和协方差表示为,也就是说,估计值的方差为矩阵I的逆矩阵的对角线上的值,而估计值和的协方差(和的协方差等于?不解。。。)为除了对角线以外的值。然而在多数情况,我们将使用估计值的标准方差,表示为
,for j=0,1,2,…,p (1.14)
-----------------------------------------------------------------------------------------------------------------------------------------------
2.显著性检验
下面讨论在逻辑回归模型中自变量是否与反应变量显著相关的显著性检验。零假设:=0(表示自变量对事件发生可能性无影响作用)。如果零假设被拒绝,说明事件发生可能性依赖于的变化。
2.1 Wald test
对回归系数进行显著性检验时,通常使用Wald检验,其公式为
(2.1)
其中, 为的标准误差。这个单变量Wald统计量服从自由度等于1的分布。
如果需要检验假设:=0,计算统计量
(2.2)
其中,为去掉所在的行和列的估计值,相应地,为去掉所在的行和列的标准误差。这里,Wald统计量服从自由度等于p的分布。如果将上式写成矩阵形式,有
(2.3)
矩阵Q是第一列为零的一常数矩阵。例如,如果检验,则。
然而当回归系数的绝对值很大时,这一系数的估计标准误就会膨胀,于是会导致Wald统计值变得很小,以致第二类错误的概率增加。也就是说,在实际上会导致应该拒绝零假设时却未能拒绝。所以当发现回归系数的绝对值很大时,就不再用Wald统计值来检验零假设,而应该使用似然比检验来代替。
2.2 似然比(Likelihood ratio test)检验
在一个模型里面,含有变量与不含变量的对数似然值乘以-2的结果之差,服从分布。这一检验统计量称为似然比(likelihood ratio),用式子表示为
(2.4)
计算似然值采用公式(1.8)。
倘若需要检验假设:=0,计算统计量
(2.5)
式中,表示=0的观测值的个数,而表示=1的观测值的个数,那么n就表示所有观测值的个数了。实际上,上式的右端的右半部分表示只含有的似然值。统计量G服从自由度为p的分布
2.3 Score检验
在零假设:=0下,设参数的估计值为,即对应的=0。计算Score统计量的公式为
(2.6)
上式中,表示在=0下的对数似然函数(1.9)的一价偏导数值,而表示在=0下的对数似然函数(1.9)的二价偏导数值。Score统计量服从自由度等于1的分布。
2.4 模型拟合信息
模型建立后,考虑和比较模型的拟合程度。有三个度量值可作为拟合的判断根据。
(1)-2LogLikelihood
(2.7)
(2) Akaike信息准则(Akaike Information Criterion,简写为AIC)
(2.8)
其中K为模型中自变量的数目,S为反应变量类别总数减1,对于逻辑回归有S=2-1=1。-2LogL的值域为0至,其值越小说明拟合越好。当模型中的参数数量越大时,似然值也就越大,-2LogL就变小。因此,将2(K+S)加到AIC公式中以抵销参数数量产生的影响。在其它条件不变的情况下,较小的AIC值表示拟合模型较好。
(3)Schwarz准则
这一指标根据自变量数目和观测数量对-2LogL值进行另外一种调整。SC指标的定义为
(2.9)
其中ln(n)是观测数量的自然对数。这一指标只能用于比较对同一数据所设的不同模型。在其它条件相同时,一个模型的AIC或SC值越小说明模型拟合越好。
3.回归系数解释
3.1发生比
odds=[p/(1-p)],即事件发生的概率与不发生的概率之比。而发生比率(odds ration),即
(1)连续自变量。对于自变量,每增加一个单位,odds ration为
(3.1)
(2)二分类自变量的发生比率。变量的取值只能为0或1,称为dummy variable。当取值为1,对于取值为0的发生比率为
(3.2)
亦即对应系数的幂。
(3)分类自变量的发生比率。
如果一个分类变量包括m个类别,需要建立的dummy variable的个数为m-1,所省略的那个类别称作参照类(reference category)。设dummy variable为,其系数为,对于参照类,其发生比率为。
3.2 逻辑回归系数的置信区间
对于置信度1-,参数的100%(1-)的置信区间为
(3.3)
上式中,为与正态曲线下的临界Z值(critical value), 为系数估计的标准误差,和两值便分别是置信区间的下限和上限。当样本较大时,=0.05水平的系数的95%置信区间为
(3.4)
-----------------------------------------------------------------------------------------------------------------------------------------------
4.变量选择
4.1前向选择(forward selection):在截距模型的基础上,将符合所定显著水平的自变量一次一个地加入模型。
具体选择程序如下
(1) 常数(即截距)进入模型。
(2) 根据公式(2.6)计算待进入模型变量的Score检验值,并得到相应的P值。
(3) 找出最小的p值,如果此p值小于显著性水平,则此变量进入模型。如果此变量是某个名义变量的单面化(dummy)变量,则此名义变量的其它单面化变理同时也进入模型。不然,表明没有变量可被选入模型。选择过程终止。
(4) 回到(2)继续下一次选择。
4.2 后向选择(backward selection):在模型包括所有候选变量的基础上,将不符合保留要求显著水平的自变量一次一个地删除。
具体选择程序如下
(1) 所有变量进入模型。
(2) 根据公式(2.1)计算所有变量的Wald检验值,并得到相应的p值。
(3) 找出其中最大的p值,如果此P值大于显著性水平,则此变量被剔除。对于某个名义变量的单面化变量,其最小p值大于显著性水平,则此名义变量的其它单面化变量也被删除。不然,表明没有变量可被剔除,选择过程终止。
(4) 回到(2)进行下一轮剔除。
4.3逐步回归(stepwise selection)
(1)基本思想:逐个引入自变量。每次引入对Y影响最显著的自变量,并对方程中的老变量逐个进行检验,把变为不显著的变量逐个从方程中剔除掉,最终得到的方程中既不漏掉对Y影响显著的变量,又不包含对Y影响不显著的变量。
(2)筛选的步骤:首先给出引入变量的显著性水平和剔除变量的显著性水平,然后按下图筛选变量。
(3)逐步筛选法的基本步骤
逐步筛选变量的过程主要包括两个基本步骤:一是从不在方程中的变量考虑引入新变量的步骤;二是从回归方程中考虑剔除不显著变量的步骤。
假设有p个需要考虑引入回归方程的自变量.
① 设仅有截距项的最大似然估计值为。对p个自变量每个分别计算Score检验值,
设有最小p值的变量为,且有,对于单面化(dummy)变量,也如此。若,则此变量进入模型,不然停止。如果此变量是名义变量单面化(dummy)的变量,则此名义变量的其它单面化变量也进入模型。其中为引入变量的显著性水平。
② 为了确定当变量在模型中时其它p-1个变量也是否重要,将分别与进行拟合。对p-1个变量分别计算Score检验值,其p值设为。设有最小p值的变量为,且有.若,则进入下一步,不然停止。对于单面化变量,其方式如同上步。
③ 此步开始于模型中已含有变量与。注意到有可能在变量被引入后,变量不再重要。本步包括向后删除。根据(2.1)计算变量与的Wald检验值,和相应的p值。设为具有最大p值的变量,即=max(),.如果此p值大于,则此变量从模型中被删除,不然停止。对于名义变量,如果某个单面化变量的最小p值大于,则此名义变量从模型中被删除。
④ 如此进行下去,每当向前选择一个变量进入后,都进行向后删除的检查。循环终止的条件是:所有的p个变量都进入模型中或者模型中的变量的p值小于,不包含在模型中的变量的p值大于。或者某个变量进入模型后,在下一步又被删除,形成循环。
相关推荐
5. 多分类问题:Logistic回归不仅适用于二分类问题,还可以通过多项式逻辑回归(Multinomial Logistic Regression)或者一对多(One-vs-Rest)策略处理多分类问题。 6. 逻辑回归的适用条件:逻辑回归适用于因变量为...
逻辑回归(Logistic Regression)是一种广泛应用的统计分析方法,尤其在分类问题中。它通过构建一个线性模型来预测事件发生的概率,模型形式为输入特征的线性组合与sigmoid函数的乘积。在这个项目中,"logistic_...
机器学习应用-使用逻辑回归算法Logistic Regression实现信用卡欺诈检测项目源码+文档说明含有代码注释,新手也可看懂,个人手打98分项目,导师非常认可的高分项目,毕业设计、期末大作业和课程设计高分必看,下载...
逻辑回归(Logistic Regression)是一种广泛应用的分类算法,尽管它的名字中含有“回归”,但实际上它主要用于处理二分类问题,也可以通过扩展处理多分类问题。在机器学习领域,逻辑回归是一种基础且重要的监督学习...
在`LogisticRegression逻辑回归模型.py`文件中,开发者可能已经完成了以下步骤: 1. **数据预处理**:加载数据集,处理缺失值,进行特征选择或特征工程,将非数值特征转换为数值类型。 2. **数据划分**:将数据集...
机器学习应用实例-使用逻辑回归算法(Logistic Regression)实现信用卡欺诈检测项目源码+文档说明,含有代码注释,新手也可看懂,个人手打98分项目,导师非常认可的高分项目,毕业设计、期末大作业和课程设计高分必...
逻辑回归(Logistic Regression)是一种广泛应用的分类算法,特别是在处理二分类问题时。虽然名字中含有“回归”,但其实它主要用于解决分类任务,而非连续数值预测。其核心在于通过一个非线性的sigmoid函数将线性...
在MATLAB中实现逻辑回归可以帮助我们更直观地理解算法并进行模型训练。** **1. Logistic回归的基本原理** Logistic回归是通过构建一个logistic函数(也称为sigmoid函数)来预测离散型因变量的概率。它将线性回归的...
1. 定义:逻辑回归(Logistic Regression)并非真正的回归模型,而是一种分类模型。它通过将线性回归的结果通过Sigmoid函数转换,得到0到1之间的概率值,以此进行二分类预测。 2. 模型形式:假设输入特征为x,输出...
逻辑回归的关键在于使用逻辑函数(Logistic Function)来建模。逻辑函数定义如下: \[ F(t) = \frac{1}{1 + e^{-t}} \] 其中 \( t = \beta_0 + \beta^T x \),这里的 \(\beta_0\) 和 \(\beta\) 是模型参数,\(x\) ...
基于逻辑回归(Logistic Regression)的数据回归预测,多输入单输出模型。 逻辑回归也称作logistic回归分析,是一种广义的线性回归分析模型,属于机器学习中的监督学习。其推导过程与计算方式类似于回归的过程,但实际...
Jerome Friedman、Trevor Hastie和Robert Tibshirani这三位斯坦福大学的学者,在他们2000年发表的论文《加法逻辑回归:提升方法的统计视角》中,从统计学角度深入分析了提升方法的原理,并将其与加法逻辑回归模型...
class LogisticRegression(object): """ Logistic Regression Classifier training by Newton Method """ def __init__(self, error: float = 0.7, max_epoch: int = 100): """ :param error: float, if the ...
6. **Python实现**:在Python中,可以使用Scikit-learn的`LogisticRegression`类进行模型训练和预测,同时还可以利用`GridSearchCV`进行参数调优。 7. **数据预处理**:在实际应用中,可能需要对数据进行归一化、...
我们可以通过创建`LogisticRegression`类的实例来设定模型参数,如正则化类型(L1或L2)、惩罚系数(C)和优化算法。然后,使用`fit`方法将训练数据拟合到模型上,完成模型训练。 模型训练后,我们可以使用`predict...
逻辑回归(Logistic Regression)是一种广泛应用的统计分析方法,尤其在预测二分类问题上表现出色。在这个名为"logistic_regression-main.zip"的压缩包中,包含了一个可能的数据分析项目,涉及到了逻辑回归的核心...
Logistic回归是一种广泛应用的统计分析方法,主要用于二分类问题,如本案例中的房价预测。它在机器学习领域属于监督学习模型,与线性回归类似,但处理的是离散的目标变量,比如“高房价”和“低房价”。在这个案例中...
**逻辑斯谛回归(Logistic Regression) Python实现** 逻辑斯谛回归是统计学和机器学习领域中的一种广泛应用的分类算法,尤其...理解逻辑斯谛回归的原理并能熟练运用其Python实现,对于数据分析和机器学习工作至关重要。
**机器学习实验二:逻辑回归 Logistic Regression** 在本次实验中,我们将深入探讨机器学习领域中的一个重要算法——逻辑回归(Logistic Regression)。逻辑回归虽然名字中含有“回归”二字,但实际上它是一种广泛...
逻辑回归(Logistic Regression)是一种广泛应用的统计学方法,它在机器学习领域主要用于二分类问题。尽管其名称中包含“回归”,但逻辑回归实际上是一种分类算法,而不是传统的连续数值预测的回归算法。它通过构建...