Logistic回归属于概率型的非线性回归,分为二分类多分类的回归模型。这里只讲二分类。

  对于二分类的Logistic回归,因变量y只有“是、否”两个取值,记为1和0。这种值为0/1的二值品质型变量,我们称其为二分类变量

  假设在自变量$x_{1}, x_{2}, \cdots, x_{p}$作用下,y取“是”的概率是p,则取“否”的概率是1-p,研究的是当y取“是”发生的模率p与自变量$x_{1}, x_{2}, \cdots, x_{p}$的关系。

Logistic回归模型

①Logit变

  Logit 变换以前用于人口学领域,1970年被Cox引入来解决曲线直线化问题。

  通常把某种结果出现的概率与不出现的概率之比称为称为事件的优势比odds,即假设在p个独立自变量$x_{1}, x_{2}, \cdots, x_{p}$作用下,记y取1的概率是$p=P(y=1 | X)$,取0概率是$1-p$,取1和取0的概率之比为$\frac{p}{1-p}$。Logit变换即取对数:$$\lambda  = \ln ({\rm{ odds }}) = \ln \frac{p}{{1 - p}}$$

②Logistic函数

  Logistic中文意思为“逻辑”,但是这里,并不是逻辑的意思,而是通过logit变换来命名的。

  二元logistic回归是指因变量为二分类变量的回归分析,目标概率的取值会在0~1之间,但是回归方程的因变量取值却落在实数集当中,这个是不能够接受的,所以,可以先将目标概率做Logit变换,这样它的取值区间变成了整个实数集,采用这种处理方法的回归分析,就是Logistic回归。Logistic函数为:

$$\operatorname{Logit}(p)=\ln \left(\frac{p}{1-p}\right)=Z,p=\frac{1}{1+\mathrm{e}^{-2}}$$

  

  Logistic回归模型中的因变量只有1和0(如是和否、发生和不发生)两种取值。对odds取自然对数即得Logistic变换$\operatorname{Logit}(p)=\ln \left(\frac{p}{1-p}\right) A$。

  当p在(0,1)之间变化时,odds的取值范围是(0,+oo),则Logistic函数的取值范围是(-oo,+oo)。

③Logistic回归模型

  Logistic 回归模型是建立$\ln \left(\frac{p}{1-p}\right)$与自然变量的线性回归模型。

  Logistic 回归模型的公式为:$$\ln \left(\frac{p}{1-p}\right)=\beta_{0}+\beta_{1} x_{1}+\cdots+\beta_{p} x_{p}+\varepsilon$$

  因为$\ln \left(\frac{p}{1-p}\right)$的取值范围是(-oo,+oo),这样,自变量$x_{1}, x_{2}, \cdots, x_{p}$可在任意范围内取值。

  记$g(x)=\beta_{0}+\beta_{1} x_{1}+\dots+\beta_{p} x_{p}$,得到:$$\begin{array}{c}{p=P(y=1 | X)=\frac{1}{1+e^{-\mathrm{g}(x)}}} \\ {1-p=P(y=0 | X)=1-\frac{1}{1+e^{-\mathrm{g}(x)}}=\frac{1}{1+e^{\mathrm{g}(\mathrm{x})}}}\end{array}$$

  解释:$$\frac{p}{1-p}=e^{\beta_{0}+\beta_{1}x_{1}+\ldots+\beta_\mathrm{p}x_{p} +\varepsilon}$$

  其中,$\beta_{0}$为在没有自变量,即$x_{1}, x_{2}, \cdots, x_{p}$全部取0,y=1与y=0发生概率之比的自然对数

  $\beta_{i}$为某自变量x变化时,即x=1与x=0相比,y=1优势比的对数值

和列联表、最小二乘法的区别

和列联表区别

  对于分类资料的分析,当要考察的影响因素较少,且也为分类变量时,分析者常用列联表的形式对这种资料进行整理,并使用卡方检验来进行分析。

  局限性:

  ①无法描述其作用大小及方向,更不能考察各因素间是否存在交互作用;

  ②该方法对样本含量的要求较大,当控制的分层因素较多时,单元格被划分的越来越细,列联表的格子中频数可能很小,将导致检验结果的不可靠。

  ③卡方检验无法对连续性自变量的影响进行分析,而这将大大限制其应用范围。

和最小二乘法区别

  ①取值区间:上述模型进行预报的范围为整个实数集,而模型左边的取值范围为0≤Ps1,二者并不相符。模型本身不能保证在自变量的各种组合下,因变量的估计值仍限制在0~1内。

  ②曲线关联:根据大量的观察,反应变量P与自变量的关系通常不是直线关系,而是S型曲线关系。显然,线性关联是线性回归中至关重要的一个前提假设,而在上述模型中这一假设是明显无法满足的。

建模步骤与MATLAB实现

步骤:

  ①根据挖掘的目的设置指标变量:$y, x_{1}, x_{2}, \cdots, x_{p}$。

  ②列出回归方程:$$\ln \left(\frac{p}{1-p}\right)=\beta_{0}+\beta_{1} x_{1}+\cdots+\beta_{p} x_{p}+\varepsilon$$

  ③用$\ln \left(\frac{p}{1-p}\right)$和自变量列出线性回归方程,估计回归系数。

  ④模型检验——F检验,应用方差分析表对模型进行F检验。

  根据输出的方差分析表中的F值和p值来检验该回归方程是否显著,如果p值小于显著性水平a则模型通过检验,可以进行下一步回归系数的检验;否则要重新选择指标变量,重新建立回归方程。

  ⑤回归系数检验——t检验,应用参数估计表对回归系数进行t检验。

  在多元线性回归中,回归方程显著并不意味着每个自变量对y的影响都显著,为了从回归方程中剔除那些次要的、可有可无的变量,重新建立更为简单有效的回归方程,需要对每个自变量进行显著性检验,检验结果由参数估计表得到,采用逐步回归法,首先剔除掉最不显著的因变量,重新构造回归方程,一直到模型和参与的回归系数都通过检验;

  ⑥预测控制。

   

  利用MATLAB对银行贷款拖欠率数据进行逻辑回归分析,分别采用逐步寻优(逐步剔除掉最不显著的因变量)和使用MATLAB自带的逐步向前、向后回归函数进行建模。

%% 逻辑回归 自动建模
clear;
% 参数初始化
filename = '../data/bankloan.xls' ;
%% 读取数据
[num,txt] = xlsread(filename);
X = num(:,:end-);
Y = num(:,end);
%% 递归建模
flag =;
mdl = fitglm(X,Y,'linear','distr','binomial','Link','logit');
while flag ==
disp(mdl); % 打印model
pValue = mdl.Coefficients.pValue;
pValue_gt05 =pValue>0.05 ;
if sum(pValue_gt05)== % 没有pValue值大于0.05的值
flag =;
break;
end
% 移除pValue中大于0.05的变量最大的变量
fprintf('\n移除变量:');
[t,index]= max(pValue,[],);
fprintf('%s\t',mdl.CoefficientNames{,index});
fprintf('\n模型如下:');
if index-~=
removeVariance =mdl.CoefficientNames{,index};
else
removeVariance ='';
end
% 从模型中移除变量
mdl = removeTerms(mdl,removeVariance);
end
%% 自动建模 ,添加变量
disp('添加变量,自动建模中...');
mdl2 = stepwiseglm(X,Y,'constant','Distribution','binomial','Link','logit');
disp('添加变量,自动建模模型如下:')
disp(mdl2);
%% 自动建模 , 移除变量
disp('移除变量,自动建模中...');
mdl3 =stepwiseglm(X,Y,'linear','Distribution','binomial','Link','logit');
disp('移除变量,自动建模模型如下:')
disp(mdl3);

二分类Logistic回归模型的更多相关文章

  1. SPSS数据分析—二分类Logistic回归模型

    对于分类变量,我们知道通常使用卡方检验,但卡方检验仅能分析因素的作用,无法继续分析其作用大小和方向,并且当因素水平过多时,单元格被划分的越来越细,频数有可能为0,导致结果不准确,最重要的是卡方检验不能 ...

  2. SPSS数据分析—多分类Logistic回归模型

    前面我们说过二分类Logistic回归模型,但分类变量并不只是二分类一种,还有多分类,本次我们介绍当因变量为多分类时的Logistic回归模型. 多分类Logistic回归模型又分为有序多分类Logi ...

  3. SAS学习笔记36 二分类logistic回归

    这里所拟合模型的AIC和SC统计量的值均小于只有截距的模型的相应统计量的值,说明含有自变量的模型较仅含有常数项的要好 但模型的最大重新换算 R 方为0.0993,说明模型拟合效果并不好,可能有其他危险 ...

  4. 如何在R语言中使用Logistic回归模型

    在日常学习或工作中经常会使用线性回归模型对某一事物进行预测,例如预测房价.身高.GDP.学生成绩等,发现这些被预测的变量都属于连续型变量.然而有些情况下,被预测变量可能是二元变量,即成功或失败.流失或 ...

  5. logistic回归模型

    一.模型简介 线性回归默认因变量为连续变量,而实际分析中,有时候会遇到因变量为分类变量的情况,例如阴性阳性.性别.血型等.此时如果还使用前面介绍的线性回归模型进行拟合的话,会出现问题,以二分类变量为例 ...

  6. Softmax回归——logistic回归模型在多分类问题上的推广

    Softmax回归 Contents [hide] 1 简介 2 代价函数 3 Softmax回归模型参数化的特点 4 权重衰减 5 Softmax回归与Logistic 回归的关系 6 Softma ...

  7. SPSS数据分析—配对Logistic回归模型

    Lofistic回归模型也可以用于配对资料,但是其分析方法和操作方法均与之前介绍的不同,具体表现 在以下几个方面1.每个配对组共有同一个回归参数,也就是说协变量在不同配对组中的作用相同2.常数项随着配 ...

  8. 机器学习 —— 基础整理(五)线性回归;二项Logistic回归;Softmax回归及其梯度推导;广义线性模型

    本文简单整理了以下内容: (一)线性回归 (二)二分类:二项Logistic回归 (三)多分类:Softmax回归 (四)广义线性模型 闲话:二项Logistic回归是我去年入门机器学习时学的第一个模 ...

  9. 机器学习笔记(四)Logistic回归模型实现

     一.Logistic回归实现 (一)特征值较少的情况 1. 实验数据 吴恩达<机器学习>第二课时作业提供数据1.判断一个学生能否被一个大学录取,给出的数据集为学生两门课的成绩和是否被录取 ...

随机推荐

  1. Vue-cli中的proxyTable解决开发环境的跨域问题

    https://blog.csdn.net/u012149969/article/details/80288126 https://vuejs-templates.github.io/webpack/ ...

  2. BZOJ 3218 A + B Problem (可持久化线段树+最小割)

    做法见dalao博客 geng4512的博客, 思路就是用线段树上的结点来进行区间连边.因为有一个只能往前面连的限制,所以还要可持久化.(duliu) 一直以来我都是写dinicdinicdinic做 ...

  3. Codeforces Round #551 (Div. 2) F. Serval and Bonus Problem (DP/FFT)

    yyb大佬的博客 这线段期望好神啊... 还有O(nlogn)FFTO(nlogn)FFTO(nlogn)FFT的做法 Freopen大佬的博客 本蒟蒻只会O(n2)O(n^2)O(n2) CODE ...

  4. Codeforces Round #539 (Div. 1) C. Sasha and a Patient Friend 动态开点线段树

    题解看这里 liouzhou_101的博客园 更简洁的代码看这里: #include <bits/stdc++.h> using namespace std; typedef long l ...

  5. Chrome浏览器设置自动启用Flash插件

    Chrome浏览器设置自动启用Flash插件   1.打开Chrome浏览器,输入chrome://flags/#run-all-flash-in-allow-mode,打开,找到Enable Eph ...

  6. Oracle 后台进程(二)DBWR进程

    一.DBWR进程介绍 DBWR进程执行将数据块缓冲区写入数据文件的工作,是负责缓冲存储管理的一个Oracle后台进程.在修改DB Cache中的某个缓冲区时,会将它标志为“DIRTY”,DBWR的主要 ...

  7. 025_自动为其他脚本添加解释器信息#!/bin/bash

    #!/bin/bash#先使用 grep 判断对象脚本是否已经有解释器信息,如果没有则使用 sed 添加解释器以及描述信息if ! grep -q "^#!" $1; then # ...

  8. mkdir/rmdir/install/mktemp

    mkdir rmdir很有趣,如果加上p选项,如果删除空目录后,其父目录是空,则一并删除,所以如果都是空的,那么就会全家删 a用户不能修改b用户的文件,但是却可以删除 install 创建文件并赋权 ...

  9. 2019CCPC-江西省赛C题 HDU6569 GCD预处理+二分

    Trap Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Total Subm ...

  10. Dubbo——基础

    一.分布式基础理论 1.1 什么是分布式系统? “分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统” 分布式系统(distributed system)是建立在网络之上的软件系 ...